Go to the documentation of this file.00001 #ifndef baciError_H
00002 #define baciError_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00037 #ifndef __cplusplus
00038 #error This is a C++ include file and cannot be used from plain C
00039 #endif
00040
00041 #include <baci.h>
00042 #include <baciC.h>
00043 #include <acserr.h>
00044 #include <ACSErrTypeOKC.h>
00045
00053 #define ACS_COMPLETION(arg...) ACSErrHelper::ACSErrStack(__FILE__, __LINE__,## arg)
00054
00062 #define ACS_COMPLETION_LOG(arg...) ACSErrHelper::ACSErrStackLog(__FILE__, __LINE__,## arg)
00063
00064 class ACSErrHelper
00065 {
00066 public:
00067
00069 static const unsigned int LOG_FLAG_M;
00070
00072 static const unsigned int COMPLETION_FLAG_M;
00073
00075 static void ACSErrStack(const ACE_TCHAR * file, int line,
00076 ACSErr::Completion &completion, ACSError& error);
00077
00079 static void ACSErrStack(const ACE_TCHAR * file, int line,
00080 ACSErr::Completion &completion, const ACE_TCHAR * routine,
00081
00082 ACSErr::ACSErrType errtype = ACSErr::ACSErrTypeOK, ACSErr::ErrorCode errcode = ACSErrTypeOK::ACSErrOK,
00083 const ACE_TCHAR * msgname = 0, const ACE_TCHAR * msg = 0,
00084 int flag = COMPLETION_FLAG_M);
00085
00087 static void ACSErrStackLog(const ACE_TCHAR * file, int line,
00088 ACSErr::Completion &completion, const ACE_TCHAR * routine,
00089
00090 ACSErr::ACSErrType errtype = ACSErr::ACSErrTypeOK, ACSErr::ErrorCode errcode = ACSErrTypeOK::ACSErrOK,
00091 const ACE_TCHAR * msgname = 0, const ACE_TCHAR * msg = 0,
00092 int flag = COMPLETION_FLAG_M | LOG_FLAG_M);
00093 };
00094
00095 #endif