32 #include "../System/exception.h"
48 virtual void invoke()
const = 0;
69 template <
typename UserData>
90 template <
typename InstanceClass>
96 : instance(instance), member_func(member_func)
107 void (InstanceClass::*member_func)();
111 template <
typename InstanceClass,
typename UserData>
117 : instance(instance), member_func(member_func), user_data(user_data)
134 template <
class Functor>
174 template<
typename UserData>
180 template<
class InstanceClass>
181 Callback_v0(InstanceClass *instance,
void (InstanceClass::*
function)())
186 template<
class InstanceClass,
typename UserData>
192 void set(
void (*
function)())
197 template<
typename UserData>
203 template<
class InstanceClass>
204 void set(InstanceClass *instance,
void (InstanceClass::*
function)())
209 template<
class InstanceClass,
typename UserData>
217 impl = std::shared_ptr< Callback_Impl_v0 >();
231 std::shared_ptr< Callback_Impl_v0 > impl;
247 template<
class Functor>
(Internal ClanLib Class)
Definition: callback_v0.h:135
Functor functor
Definition: callback_v0.h:148
(Internal ClanLib Class)
Definition: callback_v0.h:112
UserData user_data
Definition: callback_v0.h:86
InstanceClass * instance
Definition: callback_v0.h:105
void clear()
Definition: callback_v0.h:215
Callback_v0_functor.
Definition: callback_v0.h:235
void set(void(*function)())
Definition: callback_v0.h:192
Callback_v0(InstanceClass *instance, void(InstanceClass::*function)())
Definition: callback_v0.h:181
Callback_v0()
Definition: callback_v0.h:155
void invoke() const
Definition: callback_v0.h:143
void(* static_func)()
Definition: callback_v0.h:65
Callback_Impl_v0_member(InstanceClass *instance, void(InstanceClass::*member_func)())
Definition: callback_v0.h:94
void invoke() const
Definition: callback_v0.h:121
void invoke() const
Definition: callback_v0.h:220
bool is_null() const
Definition: callback_v0.h:225
Definition: userdata.h:47
Callback_v0(InstanceClass *instance, void(InstanceClass::*function)(UserData), const UserData &user_data)
Definition: callback_v0.h:187
virtual ~Callback_Impl_v0()
Definition: callback_v0.h:44
Callback_Impl_v0_static_user(void(*static_func)(UserData), const UserData &user_data)
Definition: callback_v0.h:73
(Internal ClanLib Class)
Definition: callback_v0.h:41
InstanceClass * instance
Definition: callback_v0.h:126
virtual void invoke() const =0
Callback_Impl_v0_functor(Functor functor)
Definition: callback_v0.h:138
void set(InstanceClass *instance, void(InstanceClass::*function)())
Definition: callback_v0.h:204
void invoke() const
Definition: callback_v0.h:79
(Internal ClanLib Class)
Definition: callback_v0.h:52
void(InstanceClass::* member_func)(UserData)
Definition: callback_v0.h:128
Callback_Impl_v0_member_user(InstanceClass *instance, void(InstanceClass::*member_func)(UserData), const UserData &user_data)
Definition: callback_v0.h:115
void(InstanceClass::* member_func)()
Definition: callback_v0.h:107
Callback_v0(const Callback_v0 ©)
Definition: callback_v0.h:159
Callback_v0(void(*function)(UserData), const UserData &user_data)
Definition: callback_v0.h:175
void set(InstanceClass *instance, void(InstanceClass::*function)(UserData), const UserData &user_data)
Definition: callback_v0.h:210
void invoke() const
Definition: callback_v0.h:100
void invoke() const
Definition: callback_v0.h:60
(Internal ClanLib Class)
Definition: callback_v0.h:70
Callback_v0(void(*function)())
Definition: callback_v0.h:169
Callback_v0(Callback_Impl_v0 *impl)
Definition: callback_v0.h:164
Callback_Impl_v0_static(void(*static_func)())
Definition: callback_v0.h:55
Callback_v0_functor()
Definition: callback_v0.h:238
UserData user_data
Definition: callback_v0.h:130
(Internal ClanLib Class)
Definition: callback_v0.h:91
void set(void(*function)(UserData), const UserData &user_data)
Definition: callback_v0.h:198
void(* static_func)(UserData)
Definition: callback_v0.h:84
Callback_v0_functor(Functor functor)
Definition: callback_v0.h:248
Callback_v0_functor(const Callback_v0_functor ©)
Definition: callback_v0.h:242
Callback_v0.
Definition: callback_v0.h:152