00001 //------------------------------------------------------------- 00002 // Go4 Release Package v3.04-01 (build 30401) 00003 // 28-November-2008 00004 //--------------------------------------------------------------- 00005 // The GSI Online Offline Object Oriented (Go4) Project 00006 // Experiment Data Processing at EE department, GSI 00007 //--------------------------------------------------------------- 00008 // 00009 //Copyright (C) 2000- Gesellschaft f. Schwerionenforschung, GSI 00010 // Planckstr. 1, 64291 Darmstadt, Germany 00011 //Contact: http://go4.gsi.de 00012 //---------------------------------------------------------------- 00013 //This software can be used under the license agreements as stated 00014 //in Go4License.txt file which is part of the distribution. 00015 //---------------------------------------------------------------- 00016 #ifndef TGO4EVENTSOURCE_H 00017 #define TGO4EVENTSOURCE_H 00018 00019 #include "TNamed.h" 00020 #include "TString.h" 00021 00030 class TGo4EventElement; 00031 00032 class TGo4EventSource : public TNamed { 00033 public: 00034 00035 TGo4EventSource(const char* name); 00036 00037 virtual ~TGo4EventSource(); 00038 00039 TGo4EventSource(); 00040 00041 /* We overwrite the default TNamed::Clear that would 00042 * erase our name and title! 00043 * Implement this method in your parameter class 00044 * if you would like to reset any values with the 00045 * eraser button in the gui remote browser*/ 00046 virtual void Clear(Option_t* opt=""); 00047 00049 Int_t GetCreateStatus() const { return fiCreateStatus; } 00050 00052 Int_t GetEventStatus() const { return fiEventStatus; } 00053 00055 const char* GetErrMess() const { return fxErrMess.Data(); } 00056 00059 virtual const char* GetActiveName(); 00060 00062 virtual Bool_t BuildEvent(TGo4EventElement* dest) { return kTRUE; } 00063 00065 static const Int_t fgiTIMEOUTDEFAULT; 00066 00067 00068 protected: 00073 void SetErrMess(const char* txt) { fxErrMess = txt; } 00074 00076 void SetEventStatus(Int_t status) { fiEventStatus=status; } 00077 00079 void SetCreateStatus(Int_t status) { fiCreateStatus=status; } 00080 00082 void ThrowError(Int_t creastat, Int_t errstat, const char* message,...); 00083 00085 enum { fguTXTLEN = 256 }; 00086 00087 private: 00088 00090 Int_t fiCreateStatus; 00091 00093 Int_t fiEventStatus; 00094 00096 TString fxErrMess; 00097 00098 ClassDef(TGo4EventSource,1) 00099 }; 00100 00101 #endif //TGO4EVENTSOURCE_H 00102 00103 //----------------------------END OF GO4 SOURCE FILE ---------------------