32 #include "../System/exception.h"
41 template <
typename P1>
49 virtual void invoke(P1 p1)
const = 0;
53 template <
typename P1>
71 template <
typename P1,
typename UserData>
92 template <
typename P1,
typename InstanceClass>
98 : instance(instance), member_func(member_func)
109 void (InstanceClass::*member_func)(P1);
113 template <
typename P1,
typename InstanceClass,
typename UserData>
119 : instance(instance), member_func(member_func), user_data(user_data)
136 template <
class P1,
class Functor>
155 template <
typename P1>
178 template<
typename UserData>
184 template<
class InstanceClass>
185 Callback_v1(InstanceClass *instance,
void (InstanceClass::*
function)(P1))
190 template<
class InstanceClass,
typename UserData>
196 void set(
void (*
function)(P1))
201 template<
typename UserData>
207 template<
class InstanceClass>
208 void set(InstanceClass *instance,
void (InstanceClass::*
function)(P1))
213 template<
class InstanceClass,
typename UserData>
214 void set(InstanceClass *instance,
void (InstanceClass::*
function)(P1,
UserData),
const UserData &user_data)
221 impl = std::shared_ptr< Callback_Impl_v1<P1> >();
235 std::shared_ptr< Callback_Impl_v1<P1> > impl;
240 template <
typename P1>
253 template<
class Functor>
Callback_v1(void(*function)(P1))
Definition: callback_v1.h:173
InstanceClass * instance
Definition: callback_v1.h:128
Callback_v1_functor(Functor functor)
Definition: callback_v1.h:254
void set(InstanceClass *instance, void(InstanceClass::*function)(P1, UserData), const UserData &user_data)
Definition: callback_v1.h:214
Callback_v1(Callback_Impl_v1< P1 > *impl)
Definition: callback_v1.h:168
(Internal ClanLib Class)
Definition: callback_v1.h:42
void clear()
Definition: callback_v1.h:219
void set(InstanceClass *instance, void(InstanceClass::*function)(P1))
Definition: callback_v1.h:208
void invoke(P1 p1) const
Definition: callback_v1.h:123
(Internal ClanLib Class)
Definition: callback_v1.h:114
Callback_Impl_v1_functor(Functor functor)
Definition: callback_v1.h:140
void(InstanceClass::* member_func)(P1)
Definition: callback_v1.h:109
void invoke(P1 p1) const
Definition: callback_v1.h:102
void invoke(P1 p1) const
Definition: callback_v1.h:145
UserData user_data
Definition: callback_v1.h:88
void invoke(P1 p1) const
Definition: callback_v1.h:81
Callback_Impl_v1_member(InstanceClass *instance, void(InstanceClass::*member_func)(P1))
Definition: callback_v1.h:96
void invoke(P1 p1) const
Definition: callback_v1.h:224
void set(void(*function)(P1, UserData), const UserData &user_data)
Definition: callback_v1.h:202
UserData user_data
Definition: callback_v1.h:132
Callback_v1_functor()
Definition: callback_v1.h:244
Callback_v1_functor(const Callback_v1_functor ©)
Definition: callback_v1.h:248
void invoke(P1 p1) const
Definition: callback_v1.h:62
Definition: userdata.h:47
virtual ~Callback_Impl_v1()
Definition: callback_v1.h:45
virtual void invoke(P1 p1) const =0
Callback_Impl_v1_member_user(InstanceClass *instance, void(InstanceClass::*member_func)(P1, UserData), const UserData &user_data)
Definition: callback_v1.h:117
bool is_null() const
Definition: callback_v1.h:229
(Internal ClanLib Class)
Definition: callback_v1.h:54
Callback_v1.
Definition: callback_v1.h:156
InstanceClass * instance
Definition: callback_v1.h:107
Callback_Impl_v1_static_user(void(*static_func)(P1, UserData), const UserData &user_data)
Definition: callback_v1.h:75
Callback_v1_functor.
Definition: callback_v1.h:241
void set(void(*function)(P1))
Definition: callback_v1.h:196
Callback_v1()
Definition: callback_v1.h:159
Functor functor
Definition: callback_v1.h:150
(Internal ClanLib Class)
Definition: callback_v1.h:72
Callback_v1(InstanceClass *instance, void(InstanceClass::*function)(P1, UserData), const UserData &user_data)
Definition: callback_v1.h:191
void(* static_func)(P1, UserData)
Definition: callback_v1.h:86
Callback_Impl_v1_static(void(*static_func)(P1))
Definition: callback_v1.h:57
Callback_v1(void(*function)(P1, UserData), const UserData &user_data)
Definition: callback_v1.h:179
(Internal ClanLib Class)
Definition: callback_v1.h:93
Callback_v1(const Callback_v1 ©)
Definition: callback_v1.h:163
void(* static_func)(P1)
Definition: callback_v1.h:67
(Internal ClanLib Class)
Definition: callback_v1.h:137
void(InstanceClass::* member_func)(P1, UserData)
Definition: callback_v1.h:130
Callback_v1(InstanceClass *instance, void(InstanceClass::*function)(P1))
Definition: callback_v1.h:185