|
Public Types |
enum | BS_EX_SETTING {
BS_EX_SETTING_NONE = 0x00,
BS_EX_WRITE_TO_TRACE = 0x01,
BS_EX_SHOW_MESSAGE_BOX = 0x02,
BS_EX_EXIT_THREAD_IF_NONE_CONTINUABLE = 0x04,
BS_EX_EXIT_PROC_IF_NONE_CONTINUABLE = 0x08,
BS_EX_EXIT_THREAD_ALWAYS = 0x10,
BS_EX_EXIT_PROC_ALWAYS = 0x20,
BS_EX_THROW_ON_BREAKPOINT_EXCEPTION = 0x40,
BS_EX_SETTING_DEFAULT = BS_EX_WRITE_TO_TRACE
} |
typedef void(* | FP_EXIT_PROCESS_CB )(LPVOID, CBS_Exception *) |
typedef void(* | FP_EXIT_THREAD_CB )(LPVOID, CBS_Exception *) |
typedef void(* | FP_FREE_LIB_CB )(LPVOID) |
Public Member Functions |
| DECLARE_BS_GENERAL_BASE_FUNCTIONS (CBS_Exception) |
| DECLARE_DLL_OPERATORS (CBS_Exception::BS_EX_SETTING, GSUPPORT_IMP_EXP_DECL) |
| DECLARE_SET_GET_MODE (CBS_Exception::BS_EX_SETTING, m_Setting, Setting) |
| DECLARE_STATIC_SET_GET_MODE (CBS_Exception::BS_EX_SETTING, m_DefaultSetting, DefaultSetting) |
virtual void | FreeResources (BOOL bFromDestructor=FALSE) |
HWND | GetAppTopWnd () |
virtual DWORD | GetErrorMessage (LPTSTR lpMessage, DWORD dwBufLen)=NULL |
DWORD | GetMBTimeout () |
CBS_Trace * | GetTrace () |
virtual CBS_Trace::BS_TRACE_MODE | GetTraceOutput ()=NULL |
virtual BOOL | IsContinuable ()=NULL |
virtual BOOL | ReportError (LPCSTR lpFileName, UINT nLine) |
LPVOID | SetAppData (LPVOID lpAppData) |
HWND | SetAppTopWnd (HWND hWnd) |
FP_EXIT_PROCESS_CB | SetExitProcess (FP_EXIT_PROCESS_CB fpExitProcess) |
FP_EXIT_THREAD_CB | SetExitThread (FP_EXIT_THREAD_CB fpExitThread) |
DWORD | SetMBTimeout (DWORD dwTimeout) |
CBS_Trace * | SetTrace (CBS_Trace *pTrace) |
virtual | ~CBS_Exception () |
Static Public Member Functions |
HWND | GetDefaultAppTopWnd () |
DWORD | GetDefaultMBTimeout () |
CBS_Trace * | GetDefaultTrace () |
LPCTSTR | GetSettingFile () |
BOOL | IsInit () |
LPVOID | SetDefaultAppData (LPVOID lpAppData) |
HWND | SetDefaultAppTopWnd (HWND hWnd) |
FP_EXIT_PROCESS_CB | SetDefaultExitProcess (FP_EXIT_PROCESS_CB fpExitProcess) |
FP_EXIT_THREAD_CB | SetDefaultExitThread (FP_EXIT_THREAD_CB fpExitThread) |
DWORD | SetDefaultMBTimeout (DWORD dwTimeout) |
CBS_Trace * | SetDefaultTrace (CBS_Trace *pTrace) |
Protected Member Functions |
| CBS_Exception () |
Protected Attributes |
LPVOID | m_pExceptionData |
| Private member for internal use.
|
BS_EX_SETTING | m_Setting |
| The setting flags.
|
Static Protected Attributes |
BS_EX_SETTING | m_DefaultSetting = CBS_Exception::BS_EX_SETTING_NONE |
| The default setting, the m_Setting of every new object will be initiate with this value.
|
Another specialty of this class is the default values. All of the configuration values have a matched default values. At object creation time, the default values of the class will be assigned to the object configuration value. The object configuration value can be explicitly overwritten and do have higher priority at execution time.