#include <sigc_addon.h>
This template basically makes a signal of type: Signal2<Ret, VDKObject*, P1> what also accepts slots of type: Slot1<Ret,P1> for VDKSignal1<Ret, P1>. Attention: To emit a signal like this you have to call 'emit(VDKObject* ob, P1)' , that means 'emit(P1)' is not available. This must be as we must handle all subscribed signal_receivers equal. This nameing convention also applies on the other classes, so VDKSignal0<Ret> wraps Signal0<Ret> and Signal1<Ret, VDKObject*>.
For the moment you can not connect two VDKSignal#'s dircetly, as VDKSignal#.slot() is not availbale. But in real life (code) you should not do it either. Coupling a SigC::Signal# on a VDKSignal# works, what is what you (probably) want instead.