Hello Christian, If I understand your problem right, you could use class pointers (but you won't achieve strong typing at compile time), or templates.
TEMPLATE EXAMPLE: template <class T> class A { virtual void foo(T param); }; CLASS POINTER EXAMPLE: class A { public: virtual void foo(A* param); }; class B : A { virtual void foo(A* param) { B* cast = dynamic_cast<B*>(a); if (cast) { ... } } }; cheers, Manuel _______________________________________________ Flightgear-devel mailing list Flightgear-devel@flightgear.org http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d