#ifndef ROOT_TError #define ROOT_TError //+SEQ,CopyRight,T=NOINCLUDE. ////////////////////////////////////////////////////////////////////////// // // // Error handling routines. // // // // This file defines a number of global error handling routines: // // Warning(), Error(), SysError() and Fatal(). They all take a // // location string (where the error happened) and a printf style format // // string plus vararg's. In the end these functions call an // // errorhanlder function. By default DefaultErrorHandler() is used. // // // ////////////////////////////////////////////////////////////////////////// #ifndef ROOT_Rtypes //*KEEP,Rtypes. #include "Rtypes.h" //*KEND. #endif #ifndef ROOT_Varargs //*KEEP,Varargs. #include "Varargs.h" //*KEND. #endif const int kWarning = 0; const int kError = 1000; const int kSysError = 2000; const int kFatal = 3000; typedef void (*ErrorHandlerFunc_t)(int level, Bool_t abort, const char *location, const char *msg); extern "C" void ErrorHandler(int level, const char *location, const char *fmt, va_list va); extern void DefaultErrorHandler(int level, Bool_t abort, const char *location, const char *msg); extern ErrorHandlerFunc_t SetErrorHandler(ErrorHandlerFunc_t newhandler); extern ErrorHandlerFunc_t GetErrorHandler(); extern void Error(const char *location, const char *msgfmt, ...); extern void SysError(const char *location, const char *msgfmt, ...); extern void Warning(const char *location, const char *msgfmt, ...); extern void Fatal(const char *location, const char *msgfmt, ...); extern void AbstractMethod(const char *method); extern void MayNotUse(const char *method); R__EXTERN const char *kAssertMsg; R__EXTERN const char *kCheckMsg; #define Assert(e) \ if (!(e)) Fatal("", kAssertMsg, _QUOTE_(e), __LINE__, __FILE__) #define Check(e) \ if (!(e)) Warning("", kCheckMsg, _QUOTE_(e), __LINE__, __FILE__) R__EXTERN int gErrorIgnoreLevel; R__EXTERN int gErrorAbortLevel; #endif