[vtkusers] How to use internal classes without all the auto-generated code ?

Zsolt Zsoldos zsolt at simbiosys.ca
Fri Apr 25 15:27:23 EDT 2003

Hi All,

I've been using VTK 3.2 for a long while and now trying to 
upgrade to 4.2. I have a fairly complex extra class added
which is a PolyData to PolyData filter. The code of this
filter is implemented using several internal classes, because
of the complexity of the algorithm. The total code is several
thousands of lines, so it would be very impracticle to 
keep it in a single class or single compilation unit.

The internal classes do not inherit from VtkObject, there is
no point having them so (extra size and time to construct,
destruct  it when used many times internally). I have managed
to get it compiled and used from Java under 3.2, although
I had to "clear" soem auto-generated wrapper files which
used to be generated with an error message inside.

Now, with 4.2 version, my problem is, that there are other 
auto-generated references to it, e.g. 
vtkInstatiator* creates references to *New which then 
becomes an unresolved reference at link time.

Under 3.2 I just added my files into the contrib directory
and listed them in the Makefile.in.  How can I add my
own contributed class in such way that only 1 of them
is exposed and "visible" as a proper vtk object, but
the other clases (that implement internal implementation
details only and should not be visible outside) do not
get all the auto-generated wrapper stuff for Java ?

Thanks in advance,
Zsolt Zsoldos, zsolt at simbiosys.ca, http://www.simbiosys.ca/

More information about the vtkusers mailing list