3 #ifndef SZA_UTIL_ERRHANDLER_H
4 #define SZA_UTIL_ERRHANDLER_H
17 #define ERR_HANDLER_FN(fn) \
18 void (fn)(std::ostringstream& os, const char* fileName, const int lineNumber, const char* functionName, bool isErr, bool isSimple, bool isSysErr)
34 virtual ~ErrHandler();
36 static ERR_HANDLER_FN(defaultThrowFn);
37 static ERR_HANDLER_FN(defaultReportFn);
38 static ERR_HANDLER_FN(defaultLogFn);
42 static void installThrowFn(ERR_HANDLER_FN(*throwFn));
43 static void installReportFn(ERR_HANDLER_FN(*reportFn));
44 static void installLogFn(ERR_HANDLER_FN(*logFn));
46 static ERR_HANDLER_FN(throwError);
47 static ERR_HANDLER_FN(report);
48 static ERR_HANDLER_FN(log);
52 static ERR_HANDLER_FN(*throwFn_);
53 static ERR_HANDLER_FN(*reportFn_);
54 static ERR_HANDLER_FN(*logFn_);
63 #endif // End #ifndef SZA_UTIL_ERRHANDLER_H