I've been working through my CUDA Pd project, and I ran into the problem of making externals that copy the canvas class.

My first idea was that I wanted a completely separate class with different methods using glist.  Calls from Pd looking for t_canvas work just fine, but functions like pd_findbyclass that look for canvas_class fail.  I started mucking around in the pd src, and I think it's just too difficult and would make onerous changes that I don't like. 

Is there something I'm not getting about canvas classes and externals?

My second approach to creating an external library is to modify glist by adding an "unsigned int gl_hascuda" variable.  I'd still prefer solutions that make use of entirely external libraries over modifying src, but this small change gets me half the way there.  Then, I just need to write the creator functions and the class works.

Chuck