Tuple(typename TypeOp<P1>::RefConstT a1, typename TypeOp<NullT>::RefConstT = NullT(), typename TypeOp<NullT>::RefConstT = NullT(), typename TypeOp<NullT>::RefConstT = NullT(), typename TypeOp<NullT>::RefConstT = NullT()) : BaseT(a1) { }
Tuple(typename TypeOp<P1>::RefConstT a1, typename TypeOp<P2>::RefConstT a2, typename TypeOp<P3>::RefConstT a3 = NullT(), typename TypeOp<P4>::RefConstT a4 = NullT(), typename TypeOp<P5>::RefConstT a5 = NullT()) : BaseT(a1, Tuple<P2,P3,P4,P5,NullT>(a2,a3,a4,a5)) { }
Slots(const P1& plugin1 = P1(), const P2& plugin2 = P2(), const P3& plugin3 = P3(), const P4& plugin4 = P4(), const P5& plugin5 = P5()) : BaseT( plugin1, BaseSlots(plugin2, plugin3, plugin4, plugin5, NullT()) ) { }
Slots(const P1& plugin1 = P1(), const NullT& plugin2 = NullT(), const NullT& plugin3 = NullT(), const NullT& plugin4 = NullT(), const NullT& plugin5 = NullT()) : BaseT(plugin1) { }
Extension(const NullT& p = NullT(), const NullT& b = NullT()) { }
Extension(const PluginT& p, const NullT& b = NullT()) : plugin(p) { }