Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HImManager.h
Go to the documentation of this file.
1 //
2 // Copyright (c) 2000 by Tech Soft 3D, LLC.
3 // The information contained herein is confidential and proprietary to
4 // Tech Soft 3D, LLC., and considered a trade secret as defined under
5 // civil and criminal statutes. Tech Soft 3D shall pursue its civil
6 // and criminal remedies in the event of unauthorized use or misappropriation
7 // of its trade secrets. Use of this information by anyone other than
8 // authorized employees of Tech Soft 3D, LLC. is granted only under a
9 // written non-disclosure agreement, expressly prescribing the scope and
10 // manner of such use.
11 //
12 // $Id: c8f74d2da8fcdb906b34bd3cc3f71dead4896d40 $
13 //
14 
16 
20 #ifndef _HIM_MANAGER_H
21 #define _HIM_MANAGER_H
22 
23 #ifdef H_PACK_8
24 #pragma pack(push)
25 #pragma pack(8)
26 #endif
27 
28 #include "HTools.h"
29 
30 
31 
32 
37 #define HImRegisterCallback(callback_name, callback_function) \
38  do{ (HImManager::GetCurrentHImManager())->RegisterOneCallback( \
39  (const char *)callback_name, (void*)callback_function); }while(0);
40 
44 #define HImSetCallback(callback_type, callback_name) \
45  do{ (HImManager::GetCurrentHImManager())->SetCallback( \
46  (const char *)callback_type, (const char *)callback_name); }while(0);
47 
51 #define HImSetCallbackByKey(segment_key, callback_type, callback_name) \
52  do{ (HImManager::GetCurrentHImManager())->SetCallback( \
53  segment_key, (const char *)callback_type, (const char *)callback_name); }while(0);
54 
58 #define HImUnSetOneCallback(callback_type) \
59  do{ (HImManager::GetCurrentHImManager())->UnSetOneCallback( \
60  callback_type); }while(0);
61 
66 #define HImUnSetOneCallbackByKey(segment_key, callback_type) \
67  do{ (HImManager::GetCurrentHImManager())->UnSetOneCallback( \
68  segment_key, (const char *)callback_type); }while(0);
69 
75 #define HImShowCallback(callback_name, callback_type) \
76  do{ (HImManager::GetCurrentHImManager())->ShowCallback( \
77  (const char *)callback_name, (char *)callback_type); }while(0);
78 
79 
80 
81 
82 
84 
95 class MVO_API HImManager
96 {
97 
98  public:
99 
100  HImManager();
101  virtual ~HImManager();
102 
104  virtual void RegisterCallbacks();
105 
113  virtual void RegisterOneCallback(const char * callback_name, void * callback);
114 
123  virtual void SetCallback(HC_KEY segment_key, const char * callback_type, const char * callback_name);
124 
133  virtual void SetCallback(const char * callback_type, const char * callback_name);
134 
142  virtual void UnSetOneCallback(HC_KEY segment_key, const char * callback_type);
143 
150  virtual void UnSetOneCallback(const char * callback_type);
151 
159  virtual void ShowCallback(const char *callback_type, char * callback);
160 
166  static HImManager *GetCurrentHImManager();
167 
168 };
169 
170 
171 #ifdef H_PACK_8
172 #pragma pack(pop)
173 #endif
174 
175 #endif
176 
177 
178 
179 
180 
181 
182 
#define HC_KEY
The HImManager class serves as a manager for IM callbacks.
Definition: HImManager.h:95