00001 #ifndef TPLASTICSPROC_H 00002 #define TPLASTICSPROC_H 00003 00004 #include "TGsiAug12Analysis.h" 00005 #include "TGsiAug12Param.h" 00006 00007 #include "TCBMBeamtimeProc.h" 00008 00009 #include "MBSUNPACK/TMbsCrateEvent.h" 00010 #include "TTriglogEvent.h" 00011 #include "VFTX/TVftxEvent.h" 00012 #include "VFTX/TVftxParam.h" 00013 #include "GET4V10/TGet4v1Event.h" 00014 #include "GET4V10/TGet4v1Param.h" 00015 00016 #include "TPlasticsEvent.h" 00017 #include "TPlasticsParam.h" 00018 00019 #include "TGo4Picture.h" 00020 #include "TH1.h" 00021 #include "TH2.h" 00022 00023 class TGo4EventElement; 00024 class TGo4MbsSubEvent; 00025 00026 class TPlasticsProc : public TCBMBeamtimeProc { 00027 // friend class TCBMBeamtimeProc; 00028 public: 00029 TPlasticsProc(const char* name = 0); 00030 virtual ~TPlasticsProc(); 00031 00032 virtual void InitEvent(TGo4EventElement*); 00033 00034 virtual void FinalizeEvent(); 00035 private: 00036 void ProcessCaenPlasticSingle( UInt_t uPlasticIndex, Double_t dCaenOtherOffset = 0 ); 00037 void ProcessCaenPlasticDouble( UInt_t uPlasticIndex, Double_t dCaenOtherOffset = 0 ); 00038 00039 void ProcessVftxPlasticSingle( UInt_t uPlasticIndex, Double_t dVftxOtherOffset = 0 ); 00040 void ProcessVftxPlasticDouble( UInt_t uPlasticIndex, Double_t dVftxOtherOffset = 0 ); 00041 00042 void ProcessGet4v10PlasticSingle( UInt_t uEventIndex , UInt_t uPlasticIndex, Double_t dGet4v10OtherOffset = 0 ); 00043 void ProcessGet4v10PlasticDouble( UInt_t uEventIndex , UInt_t uPlasticIndex, Double_t dGet4v10OtherOffset = 0 ); 00044 00045 00046 protected: 00047 TPlasticsParam * fPar; 00048 TVftxParam * fVftxPar; 00049 TGet4v1Param * fGet4v1Par; 00050 TGsiAug12Param * fParAnalysis; 00051 TMbsCrateEvent * fCrateInputEvent; 00052 TTriglogEvent * fTriglogInputEvent; 00053 TVftxEvent * fVftxInputEvent; 00054 TGet4v1Event * fGet4v1InputEvent; 00055 00056 TPlasticsEvent * fOutputEvent; 00057 00058 protected: 00059 Double_t dCaenBinSize; 00060 Plastics_Hit hitCurrent; 00061 00062 TH2 * fBeamProfilePlasticsTime; 00063 TH2 * fReference1ProfilePlastics; 00064 TH2 * fReference2ProfilePlastics; 00065 TH2 * fMeanRefProfilePlastics; 00066 TH2 * fTotLeftPlastics; 00067 TH2 * fTotRightPlastics; 00068 TH2 * fMultiplicityPlastics; 00069 00070 ClassDef(TPlasticsProc,1) 00071 }; 00072 #endif //TPLASTICSPROC_H 00073