00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include "TGo4UserException.h"
00017
00018 #include "snprintf.h"
00019
00020 #include "TGo4Log.h"
00021 #include "TGo4AnalysisImp.h"
00022
00023 TGo4UserException::TGo4UserException() :
00024 TGo4RuntimeException(),
00025 fxMessage(),
00026 fiPriority(0)
00027 {
00028 }
00029
00030 TGo4UserException::TGo4UserException (Int_t prio, const char* text,...) :
00031 TGo4RuntimeException(),
00032 fxMessage(),
00033 fiPriority(prio)
00034 {
00035 TRACE((14,"TGo4UserException:TGo4UserException (TGo4TaskHandler*)", __LINE__, __FILE__));
00036 fxDescription= "!!!-- Go4 User Exception --!!!";
00037
00038 Text_t txtbuf[TGo4Log::fguMESLEN];
00039 va_list args;
00040 va_start(args, text);
00041 vsnprintf(txtbuf, TGo4Log::fguMESLEN, text, args);
00042 va_end(args);
00043 fxMessage = txtbuf;
00044 }
00045
00046 TGo4UserException::~TGo4UserException()
00047 {
00048 TRACE((14,"TGo4UserException:~TGo4UserException", __LINE__, __FILE__));
00049
00050 }
00051
00052 TGo4UserException & TGo4UserException::operator= (const TGo4UserException & right)
00053 {
00054 TRACE((14,"TGo4UserException:operator=",__LINE__, __FILE__));
00055 if (&right!=this)
00056 {
00057 TGo4RuntimeException::operator=(right);
00058
00059 fxMessage=right.fxMessage;
00060 fiPriority=right.fiPriority;
00061 return *this;
00062 }
00063 else
00064 {
00065
00066 return *this;
00067 }
00068 }
00069
00070 TGo4UserException::TGo4UserException(const TGo4UserException &right)
00071 :TGo4RuntimeException(right)
00072 {
00073 TRACE((14,"TGo4UserException:TGo4UserException(right)", __LINE__, __FILE__));
00074 fxMessage=right.fxMessage;
00075 fiPriority=right.fiPriority;
00076 }
00077
00078 Int_t TGo4UserException::Handle()
00079 {
00080 TRACE((12,"TGo4UserException::Handle()", __LINE__, __FILE__));
00081 TGo4Log::Message(GetPriority(),GetMessage());
00082
00083 return 0;
00084 }
00085
00086