32 #include "../api_core.h"
34 #include "signal_v0.h"
35 #include "signal_v1.h"
36 #include "signal_v2.h"
37 #include "signal_v3.h"
38 #include "signal_v4.h"
39 #include "signal_v5.h"
65 template<
class SigClass>
66 void connect(SigClass &sig,
void (*func)())
68 slots.push_back(sig.connect(func));
72 template<
class SigClass,
class Class>
73 void connect(SigClass &sig, Class *
self,
void(Class::*func)())
75 slots.push_back(sig.connect(
self, func));
80 template<
class SigClass,
class UserData>
83 slots.push_back(sig.connect(func, user_data));
88 template<
class SigClass,
class Class,
class UserData>
91 slots.push_back(sig.connect(
self, func, user_data));
95 template<
class SigClass,
class Param1>
96 void connect(SigClass &sig,
void(*func)(Param1))
98 slots.push_back(sig.connect(func));
102 template<
class SigClass,
class Class,
class Param1>
103 void connect(SigClass &sig, Class *
self,
void(Class::*func)(Param1))
105 slots.push_back(sig.connect(
self, func));
110 template<
class SigClass,
class Param1,
class UserData>
113 slots.push_back(sig.connect(func, user_data));
118 template<
class SigClass,
class Class,
class Param1,
class UserData>
121 slots.push_back(sig.connect(
self, func, user_data));
125 template<
class SigClass,
class Param1,
class Param2>
126 void connect(SigClass &sig,
void(*func)(Param1, Param2))
128 slots.push_back(sig.connect(func));
132 template<
class SigClass,
class Class,
class Param1,
class Param2>
133 void connect(SigClass &sig, Class *
self,
void(Class::*func)(Param1, Param2))
135 slots.push_back(sig.connect(
self, func));
140 template<
class SigClass,
class Param1,
class Param2,
class UserData>
143 slots.push_back(sig.connect(func, user_data));
148 template<
class SigClass,
class Class,
class Param1,
class Param2,
class UserData>
151 slots.push_back(sig.connect(
self, func, user_data));
155 template<
class SigClass,
class Param1,
class Param2,
class Param3>
156 void connect(SigClass &sig,
void(*func)(Param1, Param2, Param3))
158 slots.push_back(sig.connect(func));
162 template<
class SigClass,
class Class,
class Param1,
class Param2,
class Param3>
163 void connect(SigClass &sig, Class *
self,
void(Class::*func)(Param1, Param2, Param3))
165 slots.push_back(sig.connect(
self, func));
170 template<
class SigClass,
class Param1,
class Param2,
class Param3,
class UserData>
173 slots.push_back(sig.connect(func, user_data));
178 template<
class SigClass,
class Class,
class Param1,
class Param2,
class Param3,
class UserData>
181 slots.push_back(sig.connect(
self, func, user_data));
185 template<
class SigClass,
class Param1,
class Param2,
class Param3,
class Param4>
186 void connect(SigClass &sig,
void(*func)(Param1, Param2, Param3, Param4))
188 slots.push_back(sig.connect(func));
192 template<
class SigClass,
class Class,
class Param1,
class Param2,
class Param3,
class Param4>
193 void connect(SigClass &sig, Class *
self,
void(Class::*func)(Param1, Param2, Param3, Param4))
195 slots.push_back(sig.connect(
self, func));
200 template<
class SigClass,
class Param1,
class Param2,
class Param3,
class Param4,
class UserData>
203 slots.push_back(sig.connect(func, user_data));
208 template<
class SigClass,
class Class,
class Param1,
class Param2,
class Param3,
class Param4,
class UserData>
209 void connect(SigClass &sig, Class *
self,
void(Class::*func)(Param1, Param2, Param3, Param4,
UserData user_data),
UserData user_data)
211 slots.push_back(sig.connect(
self, func, user_data));
215 template<
class SigClass,
class Param1,
class Param2,
class Param3,
class Param4,
class Param5>
216 void connect(SigClass &sig,
void(*func)(Param1, Param2, Param3, Param4, Param5))
218 slots.push_back(sig.connect(func));
222 template<
class SigClass,
class Class,
class Param1,
class Param2,
class Param3,
class Param4,
class Param5>
223 void connect(SigClass &sig, Class *
self,
void(Class::*func)(Param1, Param2, Param3, Param4, Param5))
225 slots.push_back(sig.connect(
self, func));
230 template<
class SigClass,
class Param1,
class Param2,
class Param3,
class Param4,
class Param5,
class UserData>
233 slots.push_back(sig.connect(func, user_data));
238 template<
class SigClass,
class Class,
class Param1,
class Param2,
class Param3,
class Param4,
class Param5,
class UserData>
239 void connect(SigClass &sig, Class *
self,
void(Class::*func)(Param1, Param2, Param3, Param4, Param5,
UserData user_data),
UserData user_data)
241 slots.push_back(sig.connect(
self, func, user_data));
245 template<
class SigClass,
class Functor>
248 slots.push_back(sig.connect_functor(functor));
252 std::vector<Slot> slots;
void connect(SigClass &sig, void(*func)(Param1, Param2, Param3, Param4))
Connect a slot to a Signal_v4 signal.
Definition: slot_container.h:186
void connect(SigClass &sig, void(*func)(Param1, Param2, Param3, Param4, UserData user_data), UserData user_data)
Connect a slot to a Signal_v4 signal with an user data parameter.
Definition: slot_container.h:201
void connect(SigClass &sig, Class *self, void(Class::*func)(Param1))
Connect a slot to a Signal_v1 signal.
Definition: slot_container.h:103
void connect(SigClass &sig, void(*func)(Param1, Param2, Param3, Param4, Param5, UserData user_data), UserData user_data)
Connect a slot to a Signal_v5 signal with an user data parameter.
Definition: slot_container.h:231
void connect(SigClass &sig, Class *self, void(Class::*func)(Param1, Param2, Param3, Param4, Param5))
Connect a slot to a Signal_v5 signal.
Definition: slot_container.h:223
void connect(SigClass &sig, Class *self, void(Class::*func)(Param1, Param2, Param3))
Connect a slot to a Signal_v3 signal.
Definition: slot_container.h:163
void connect(SigClass &sig, Class *self, void(Class::*func)(Param1, Param2, Param3, UserData), UserData user_data)
Connect a slot to a Signal_v3 signal with an user data parameter.
Definition: slot_container.h:179
void connect(SigClass &sig, Class *self, void(Class::*func)(Param1, Param2))
Connect a slot to a Signal_v2 signal.
Definition: slot_container.h:133
void connect(SigClass &sig, Class *self, void(Class::*func)(Param1, Param2, Param3, Param4, UserData user_data), UserData user_data)
Connect a slot to a Signal_v4 signal with an user data parameter.
Definition: slot_container.h:209
void connect(SigClass &sig, void(*func)(Param1, Param2, Param3))
Connect a slot to a Signal_v3 signal.
Definition: slot_container.h:156
void connect(SigClass &sig, void(*func)(UserData), UserData user_data)
Connect a slot to a Signal_v0 signal with an user data parameter.
Definition: slot_container.h:81
void connect(SigClass &sig, void(*func)(Param1, Param2, Param3, UserData), UserData user_data)
Connect a slot to a Signal_v3 signal with an user data parameter.
Definition: slot_container.h:171
void connect(SigClass &sig, Class *self, void(Class::*func)(UserData), UserData user_data)
Connect a slot to a Signal_v0 signal with an user data parameter.
Definition: slot_container.h:89
void connect_functor(SigClass &sig, const Functor &functor)
Connect a functor slot to a signal.
Definition: slot_container.h:246
Definition: userdata.h:47
void connect(SigClass &sig, Class *self, void(Class::*func)(Param1, Param2, UserData), UserData user_data)
Connect a slot to a Signal_v2 signal with an user data parameter.
Definition: slot_container.h:149
void connect(SigClass &sig, Class *self, void(Class::*func)(Param1, Param2, Param3, Param4))
Connect a slot to a Signal_v4 signal.
Definition: slot_container.h:193
void connect(SigClass &sig, void(*func)(Param1))
Connect a slot to a Signal_v1 signal.
Definition: slot_container.h:96
void connect(SigClass &sig, void(*func)(Param1, Param2))
Connect a slot to a Signal_v2 signal.
Definition: slot_container.h:126
Slot Generic Container.
Definition: slot_container.h:58
void connect(SigClass &sig, Class *self, void(Class::*func)(Param1, UserData), UserData user_data)
Connect a slot to a Signal_v1 signal with an user data parameter.
Definition: slot_container.h:119
void connect(SigClass &sig, void(*func)(Param1, UserData), UserData user_data)
Connect a slot to a Signal_v1 signal with an user data parameter.
Definition: slot_container.h:111
void connect(SigClass &sig, Class *self, void(Class::*func)(Param1, Param2, Param3, Param4, Param5, UserData user_data), UserData user_data)
Connect a slot to a Signal_v5 signal with an user data parameter.
Definition: slot_container.h:239
void connect(SigClass &sig, Class *self, void(Class::*func)())
Connect a slot to a Signal_v0 signal.
Definition: slot_container.h:73
void connect(SigClass &sig, void(*func)())
Connect a slot to a Signal_v0 signal.
Definition: slot_container.h:66
void connect(SigClass &sig, void(*func)(Param1, Param2, Param3, Param4, Param5))
Connect a slot to a Signal_v5 signal.
Definition: slot_container.h:216
void connect(SigClass &sig, void(*func)(Param1, Param2, UserData), UserData user_data)
Connect a slot to a Signal_v2 signal with an user data parameter.
Definition: slot_container.h:141