00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include "TGo4EventSource.h"
00017
00018 #include "Riostream.h"
00019 #include "snprintf.h"
00020
00021 #include "TGo4EventErrorException.h"
00022 #include "TGo4Log.h"
00023
00024 const Int_t TGo4EventSource::fgiTIMEOUTDEFAULT=1;
00025
00026 TGo4EventSource::TGo4EventSource(const char* name)
00027 :TNamed(name, "This is a Go4 Event Source"),
00028 fiCreateStatus(0), fiEventStatus(0)
00029 {
00030 TRACE((15,"TGo4EventSource::TGo4EventSource()",__LINE__, __FILE__));
00031 }
00032
00033 TGo4EventSource::TGo4EventSource()
00034 :TNamed("default eventsource","This is a Go4 EventSource"),
00035 fiCreateStatus(0), fiEventStatus(0)
00036 {
00037 }
00038
00039 TGo4EventSource::~TGo4EventSource()
00040 {
00041 TRACE((15,"TGo4EventSource::~TGo4EventSource()",__LINE__, __FILE__));
00042
00043 }
00044
00045 void TGo4EventSource::ThrowError(Int_t crestat, Int_t errstat, const char* message,...)
00046 {
00047
00048 UInt_t lbuflen = TGo4EventSource::fguTXTLEN;
00049 Text_t* txtbuf = new Text_t[lbuflen];
00050 va_list args;
00051 va_start(args, message);
00052 vsnprintf(txtbuf, lbuflen, message, args);
00053 va_end(args);
00054 if(crestat!=0)
00055 SetCreateStatus(crestat);
00056 if(errstat!=0)
00057 SetEventStatus(errstat);
00058 SetErrMess(txtbuf);
00059 delete[] txtbuf;
00060 throw TGo4EventErrorException(this);
00061 }
00062
00063 void TGo4EventSource::Clear(Option_t* opt)
00064 {
00065
00066 cout <<"default clear of eventsource "<<GetName() << endl;
00067 }
00068 const char* TGo4EventSource::GetActiveName()
00069 {
00070 return GetName();
00071 }
00072
00073