40template<
typename FuncPtr>
54template<
typename FuncPtr>
81 nRetVal =
m_toAdd.AddLast(pCallback);
174 for (
typename CallbackPtrList::ConstIterator it =
m_toAdd.Begin(); it !=
m_toAdd.End(); ++it)
181 for (
typename CallbackPtrList::ConstIterator it =
m_toRemove.Begin(); it !=
m_toRemove.End(); ++it)
193 typename CallbackPtrList::Iterator it = list.
Find(pCallback);
194 if (it != list.
End())
224 typedef void (XN_CALLBACK_TYPE*
FuncPtr)(
void* pCookie);
230 typedef void (XN_CALLBACK_TYPE*
FuncPtr)(TArg1 arg1,
void* pCookie);
233template<
class TArg1,
class TArg2>
236 typedef void (XN_CALLBACK_TYPE*
FuncPtr)(TArg1 arg1, TArg2 arg2,
void* pCookie);
239template<
class TArg1,
class TArg2,
class TArg3>
242 typedef void (XN_CALLBACK_TYPE*
FuncPtr)(TArg1 arg1, TArg2 arg2, TArg3 arg3,
void* pCookie);
245template<
class TArg1,
class TArg2,
class TArg3,
class TArg4>
248 typedef void (XN_CALLBACK_TYPE*
FuncPtr)(TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4,
void* pCookie);
251template<
class TArg1,
class TArg2,
class TArg3,
class TArg4,
class TArg5>
254 typedef void (XN_CALLBACK_TYPE*
FuncPtr)(TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4, TArg5 arg5,
void* pCookie);
289 for (
typename Base::CallbackPtrList::ConstIterator it = this->
m_callbacks.Begin(); it != this->m_callbacks.End(); ++it)
291 typename Base::TCallback* pCallback = *it;
292 pCallback->pFunc(arg, pCallback->pCookie);
300template<
class TEventArgs>
304template<
class TArg1,
class TArg2>
315 for (
typename Base::CallbackPtrList::ConstIterator it = this->
m_callbacks.Begin(); it != this->m_callbacks.End(); ++it)
317 typename Base::TCallback* pCallback = *it;
318 pCallback->pFunc(arg1, arg2, pCallback->pCookie);
326template<
class TArg1,
class TArg2,
class TArg3>
337 for (
typename Base::CallbackPtrList::ConstIterator it = this->
m_callbacks.Begin(); it != this->m_callbacks.End(); ++it)
339 typename Base::TCallback* pCallback = *it;
340 pCallback->pFunc(arg1, arg2, arg3, pCallback->pCookie);
348template<
class TArg1,
class TArg2,
class TArg3,
class TArg4>
359 for (
typename Base::CallbackPtrList::ConstIterator it = this->
m_callbacks.Begin(); it != this->m_callbacks.End(); ++it)
361 typename Base::TCallback* pCallback = *it;
362 pCallback->pFunc(arg1, arg2, arg3, arg4, pCallback->pCookie);
370template<
class TArg1,
class TArg2,
class TArg3,
class TArg4,
class TArg5>
381 for (
typename Base::CallbackPtrList::ConstIterator it = this->
m_callbacks.Begin(); it != this->m_callbacks.End(); ++it)
383 typename Base::TCallback* pCallback = *it;
384 pCallback->pFunc(arg1, arg2, arg3, arg4, arg5, pCallback->pCookie);
#define XN_IS_STATUS_OK(x)
Definition XnMacros.h:59
#define XN_VALIDATE_INPUT_PTR(x)
Definition XnOS.h:126
XN_C_API XnStatus XN_C_DECL xnOSCloseCriticalSection(XN_CRITICAL_SECTION_HANDLE *pCriticalSectionHandle)
#define XN_DELETE(p)
Definition XnOS.h:339
#define XN_VALIDATE_NEW(ptr, type,...)
Definition XnOS.h:171
XN_C_API XnStatus XN_C_DECL xnOSCreateCriticalSection(XN_CRITICAL_SECTION_HANDLE *pCriticalSectionHandle)
XnUInt32 XnStatus
Definition XnStatus.h:33
#define XN_STATUS_OK
Definition XnStatus.h:36
void * XnCallbackHandle
Definition XnTypes.h:270
Definition XnEventT.h:280
XnStatus Raise(TArg1 arg)
Definition XnEventT.h:284
Definition XnEventT.h:306
XnStatus Raise(TArg1 arg1, TArg2 arg2)
Definition XnEventT.h:310
Definition XnEventT.h:328
XnStatus Raise(TArg1 arg1, TArg2 arg2, TArg3 arg3)
Definition XnEventT.h:332
Definition XnEventT.h:350
XnStatus Raise(TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4)
Definition XnEventT.h:354
Definition XnEventT.h:372
XnStatus Raise(TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4, TArg5 arg5)
Definition XnEventT.h:376
XnBool RemoveCallback(CallbackPtrList &list, TCallback *pCallback)
Definition XnEventT.h:191
XnStatus Clear()
Definition XnEventT.h:152
XnStatus ApplyListChanges()
Definition XnEventT.h:169
CallbackPtrList m_callbacks
Definition XnEventT.h:205
CallbackPtrList m_toRemove
Definition XnEventT.h:207
CallbackPtrList m_toAdd
Definition XnEventT.h:206
XnListT< TCallback * > CallbackPtrList
Definition XnEventT.h:120
XnEventInterfaceT & operator=(const XnEventInterfaceT &other)
Definition XnEventT.h:134
XnEventInterfaceT TInterface
Definition XnEventT.h:60
XnEventInterfaceT(const XnEventInterfaceT &other)
Definition XnEventT.h:128
XnStatus Unregister(XnCallbackHandle hCallback)
Definition XnEventT.h:96
XN_CRITICAL_SECTION_HANDLE m_hLock
Definition XnEventT.h:204
FuncPtr HandlerPtr
Definition XnEventT.h:58
~XnEventInterfaceT()
Definition XnEventT.h:62
XnEventInterfaceT()
Definition XnEventT.h:123
XnCallbackT< FuncPtr > TCallback
Definition XnEventT.h:59
XnStatus Register(FuncPtr pFunc, void *pCookie, XnCallbackHandle &hCallback)
Definition XnEventT.h:68
Definition XnEventT.h:259
XnStatus Raise()
Definition XnEventT.h:261
Definition XnEventT.h:302
Iterator End()
Definition XnListT.h:301
ConstIterator Find(T const &value) const
Definition XnListT.h:415
XnStatus Remove(ConstIterator where)
Definition XnListT.h:446
void * pCookie
Definition XnEventT.h:46
FuncPtr pFunc
Definition XnEventT.h:45
XnCallbackT(FuncPtr func, void *cookie)
Definition XnEventT.h:43
Definition XnEventT.h:229
void(* FuncPtr)(TArg1 arg1, void *pCookie)
Definition XnEventT.h:230
Definition XnEventT.h:235
void(* FuncPtr)(TArg1 arg1, TArg2 arg2, void *pCookie)
Definition XnEventT.h:236
Definition XnEventT.h:241
void(* FuncPtr)(TArg1 arg1, TArg2 arg2, TArg3 arg3, void *pCookie)
Definition XnEventT.h:242
Definition XnEventT.h:247
void(* FuncPtr)(TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4, void *pCookie)
Definition XnEventT.h:248
Definition XnEventT.h:253
void(* FuncPtr)(TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4, TArg5 arg5, void *pCookie)
Definition XnEventT.h:254
Definition XnEventT.h:223
void(* FuncPtr)(void *pCookie)
Definition XnEventT.h:224