VR-Forces 4.1.1 Class Documentation
callbackList.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2006 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 #pragma once
11 
12 #include "vrfutil/vrfutilDefines.h"
13 #include <list>
14 #include "vrfutil/vrfutilDefines.h"
15 
25 template <typename T_CallbackArg>
27 {
28 public:
30  typedef void (*DtCallbackFunctionType)(T_CallbackArg, void*);
31 
33  DtCallbackList(const DtCallbackList& orig);
36 
40  void addCallback(DtCallbackFunctionType fcn, void* usrData);
43  void removeCallback(DtCallbackFunctionType fcn, void* usrData);
44 
47  void invokeCallbacks(T_CallbackArg arg);
48 
50  void removeAll();
51 
52 protected:
53  typedef std::pair<DtCallbackFunctionType, void*> DtCallbackInfoType;
54  typedef std::list<DtCallbackInfoType> DtCallbackListType;
55 
58  bool contains(const DtCallbackListType& callbackList,
59  DtCallbackFunctionType fcn, void* usrData) const;
60 
61 protected:
70 };
71 
78 {
79 public:
81  typedef void (*DtCallbackFunctionType)(void*);
82 
86  DtNoArgumentCallbackList& operator=(const DtNoArgumentCallbackList& orig);
87 
91  void addCallback(DtCallbackFunctionType fcn, void* usrData);
94  void removeCallback(DtCallbackFunctionType fcn, void* usrData);
95 
98  void invokeCallbacks();
99 
101  void removeAll();
102 
103 protected:
104  typedef std::pair<DtCallbackFunctionType, void*> DtCallbackInfoType;
105  typedef std::list<DtCallbackInfoType> DtCallbackListType;
106 
109  bool contains(const DtCallbackListType& callbackList,
110  DtCallbackFunctionType fcn, void* usrData) const;
111 
112 protected:
121 };
122 
123 #define callbackList_inl_
124 #include "vrfutil/callbackList.inl"
125 #undef callbackList_inl_
126 

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)