00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef TGO4EVENTPROCESSOR_H
00017 #define TGO4EVENTPROCESSOR_H
00018
00019 #include "TGo4EventSource.h"
00020
00021 class TGo4EventCalibration;
00022 class TGo4EventElement;
00023 class TGo4Parameter;
00024 class TGo4Picture;
00025 class TGo4Condition;
00026 class TH1;
00027 class TCanvas;
00028
00039 class TGo4EventProcessor : public TGo4EventSource {
00040 friend class TGo4EventElement;
00041
00042 public:
00043
00044 TGo4EventProcessor(const char* name);
00045
00046
00047 ~TGo4EventProcessor();
00048
00054 void SetInputEvent(TGo4EventElement * raw)
00055 {
00056 fxInputEvent=raw;
00057 }
00058
00062 TGo4EventElement * GetInputEvent()
00063 {
00064 return fxInputEvent;
00065 }
00066
00073 virtual Bool_t CheckInputEvent(const char* classname);
00074
00080 void SetCalibration(TGo4EventCalibration * cali)
00081 {
00082 fxCalibration=cali;
00083 }
00084
00088 TGo4EventCalibration * GetCalibration()
00089 {
00090 return fxCalibration;
00091 }
00092
00099 virtual Bool_t CheckCalibration(const char* classname);
00100
00101
00103 Bool_t AddObject(TNamed * anything, const Text_t* subfolder=0);
00104
00106 Bool_t AddHistogram(TH1* his, const Text_t* subfolder=0, Bool_t replace=kTRUE);
00107
00109 Bool_t AddParameter(TGo4Parameter* par, const Text_t* subfolder=0);
00110
00112 Bool_t AddAnalysisCondition(TGo4Condition* con, const Text_t* subfolder=0);
00113
00115 Bool_t AddPicture(TGo4Picture* pic, const Text_t* subfolder=0);
00116
00118 Bool_t AddCanvas(TCanvas* can, const Text_t* subfolder=0);
00119
00120
00122 Bool_t RemoveHistogram(const Text_t* name);
00123
00125 Bool_t RemoveParameter(const Text_t* name);
00126
00128 Bool_t RemoveAnalysisCondition(const Text_t* name);
00129
00131 Bool_t RemovePicture(const Text_t* name);
00132
00134 Bool_t RemoveCanvas(const Text_t* name);
00135
00137 TNamed * GetObject(const Text_t* name, const Text_t* folder=0);
00138
00140 TH1* GetHistogram(const Text_t* name);
00141
00143 TGo4Parameter* GetParameter(const Text_t* name);
00144
00146 TGo4Condition* GetAnalysisCondition(const Text_t* name);
00147
00149 TGo4Picture* GetPicture(const Text_t* name);
00150
00152 TCanvas* GetCanvas(const Text_t* name);
00153
00158 TGo4EventElement* GetInputEvent(const Text_t* stepname);
00159
00164 TGo4EventElement* GetOutputEvent(const Text_t* stepname);
00165
00174 void Message(Int_t prio, const Text_t* text,...);
00175
00177 void SendObjectToGUI(TNamed* ob);
00178
00179
00180
00181
00182
00183
00184 virtual void Clear(Option_t* opt="");
00185
00186
00187 private:
00189 TGo4EventProcessor(){}
00190
00192 TGo4EventElement * fxInputEvent;
00193
00195 TGo4EventCalibration * fxCalibration;
00196 ClassDef(TGo4EventProcessor,2)
00197 };
00198
00199 #endif //TGO4EVENTPROCESSOR_H
00200
00201