• Main Page
  • Related Pages
  • Namespaces
  • Data Structures
  • Files
  • File List
  • Globals

beamtime/gsi-aug12/get4v10/go4/ROOTCONV/TRootConverterProc.h (r4864/r3846)

Go to the documentation of this file.
00001 #ifndef TROOTCONVPROC_H
00002 #define TROOTCONVPROC_H
00003 
00004 #include "TRootConverterEvent.h"
00005 #include "TRootConverterParam.h"
00006 
00007 // 4th level events
00008 #include "../MATCHING/TMatchingEvent.h"
00009 
00010 // 3rd level events
00011 #include "../RPC/TRpcEvent.h"
00012 
00013 // 2nd level events
00014 #include "../VFTX/TVftxEvent.h"
00015 
00016 // 1st level events
00017 #include "MBSUNPACK/TMbsCrateEvent.h"
00018 #include "TTriglogEvent.h"
00019 #include "TEpicsEvent.h"
00020 
00021 #include "TCBMBeamtimeProc.h"
00022 
00023 #include "TFile.h"
00024 #include "TTree.h"
00025 #include "TH3.h"
00026 
00027 class TGo4EventElement;
00028 class TGo4MbsSubEvent;
00029 
00030 class TMbsCrateEvent;
00031 class TTriglogEvent;
00032 class TEpicsEvent;
00033 
00034 class TVftxEvent;
00035 
00036 class TRootConverterProc : public TCBMBeamtimeProc {
00037    public:
00038    
00039       TRootConverterProc(const char* name = 0);
00040       virtual ~TRootConverterProc();
00041 
00042 
00043       virtual void InitEvent(TGo4EventElement*); 
00044 
00045       /* this is the main processing function here*/
00046       virtual void FinalizeEvent();
00047 
00048    protected:
00049 
00050    protected:
00051       TRootConverterParam * fRootConvPar;
00052 
00054       TVftxEvent    * fVftxInputEvent;
00055 
00057       TMbsCrateEvent * fCrateInputEvent;
00058 
00060       TTriglogEvent  * fTriglogInputEvent;
00061 
00063       TEpicsEvent    * fEpicsInputEvent;
00064 
00066       TRpcEvent      * fRpcHdInputEvent;
00067 
00069       TRpcEvent      * fRpcBucInputEvent;
00070 
00072       TMatchingEvent * fMatchingInputEvent;
00073       
00074       TRootConverterEvent * fOutputEvent;
00075       
00076       // Options readout from setup file or assigned from #define
00077       UInt_t fNumRocs;
00078   
00079       // General counters
00080       UInt_t uNbEvents;
00081       UInt_t uFirstEventIndex;
00082       UInt_t uPrevEventIndex;
00083 
00084       // Tree outputs
00085       TString     sOutputFilename;
00086       TDirectory* oldDir;
00087       TFile*      fRootOut;
00088       TTree*      cleanTree;
00089 
00090       // EPICS Slow control
00091       UInt_t uSlowControlUpdateTime;
00092       vector< Double_t > vdPositiveHvI;
00093       vector< Double_t > vdPositiveHvU;
00094       vector< Double_t > vdNegativeHvI;
00095       vector< Double_t > vdNegativeHvU;
00096 
00097       // Beam spot evolution histogramming
00098       UInt_t uFirstMbsTime;
00099       UInt_t uSpillStartMbsTime;
00100       UInt_t uLastMbsTime;
00101 
00102       UInt_t uFirstMbsTimeMs;
00103       UInt_t uSpillStartMbsTimeMs;
00104 
00105       // Histograms
00106       
00107          // A bit of control, can be disabled
00108       TH1* hNbClustersPerEventHodoscope;
00109       TH3* hHit2DvsSeconds;
00110       TH3* hHit2DvsSecondsInSpill;
00111       TH3* hHit2DvsMilliSecondsInSpill;
00112       TH2* hHitXvsMilliSecondsInSpill;
00113       TH2* hHitYvsMilliSecondsInSpill;
00114          // Control over a flying pointer, not disableable
00115       UInt_t uEpicsTimeOrigin;
00116       TH1* hTimeEpicsUpdates;
00117   
00118    private:
00119       
00120       ClassDef(TRootConverterProc,1)
00121 };
00122 
00123 #endif //TROOTCONVPROC_H
00124 

Generated on Tue Dec 10 2013 04:52:18 for ROCsoft by  doxygen 1.7.1