HImErrorHandler.h
1 // Copyright (c) Tech Soft 3D
2 //
3 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc.,
4 // and considered a trade secret as defined under civil and criminal statutes.
5 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of
6 // unauthorized use or misappropriation of its trade secrets. Use of this information
7 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under
8 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use.
9 
10 #ifndef _HIM_ERROR_HANDLER_H
11 #define _HIM_ERROR_HANDLER_H
12 
13 #ifdef H_PACK_8
14 #pragma pack(push)
15 #pragma pack(8)
16 #endif
17 
18 #include "HTools.h"
19 
20 /* forward declaration.
21  * private helper class */
22 class HErrorDescriptorNode;
23 
24 
26 
44 class MVO_API HImErrorHandler
45 {
46 private:
47  static bool IsBlocked( int category, int specific, int severity );
48  static bool IsPassed( int category, int specific, int severity );
49 
50  static HErrorDescriptorNode *m_Block;
51  static HErrorDescriptorNode *m_Pass;
52  static bool m_BlockByDefault;
53 
54 public:
58  HImErrorHandler( bool BlockByDefault = false );
59  ~HImErrorHandler();
62  static void RegisterCallbacks();
63 
70  static void Block( int cat, int spec, int sev );
71 
77  static void Pass( int cat, int spec, int sev );
78 
82  void SetBlockByDefault( bool bbd ) { m_BlockByDefault = bbd; }
83 
85  static bool BlockByDefault() { return m_BlockByDefault; }
86 
90  static void CallbackEntryPoint(
91  int category, int specific, int severity,
92  int msgc, char *msgv[], int stackc, char *stackv[]);
93 };
94 
95 
96 
97 #ifdef H_PACK_8
98 #pragma pack(pop)
99 #endif
100 
101 #endif
102 
103 
104 
void SetBlockByDefault(bool bbd)
Definition: HImErrorHandler.h:82
static bool BlockByDefault()
Definition: HImErrorHandler.h:85
The HImErrorHandler class implements a set of rules for when info/warnings/errors should be passed to...
Definition: HImErrorHandler.h:44