AraWebPlotter/AraEventPlotter.h
00001 00002 00003 00004 00005 00006 00007 00008 #ifndef ARAEVENTPLOTTER_H 00009 #define ARAEVENTPLOTTER_H 00010 00011 #include "TFile.h" 00012 #include "TCanvas.h" 00013 #include "TPad.h" 00014 #include "TH1.h" 00015 #include "AraTimeHistoHandler.h" 00016 #include "AraHistoHandler.h" 00017 #include "RawIcrrStationEvent.h" 00018 #include "UsefulIcrrStationEvent.h" 00019 #include "araIcrrDefines.h" 00020 00021 class AraEventPlotter 00022 { 00023 public: 00024 AraEventPlotter(char *plotDir, char *dataDir); 00025 ~AraEventPlotter(); 00026 void addEvent(int runNumber,RawIcrrStationEvent *rawEvent); 00027 void makePlots(); 00028 void makeLatestRunPlots(); 00029 void saveFiles(); 00030 void plotEvent(Int_t runNumber,UsefulIcrrStationEvent *usefulEvent); 00031 void setEventPlotFlag(int flag) { fEventPlotFlag=flag;} 00032 00033 void loadAllTimeHists(); 00034 private: 00035 void initialiseCurrentRunTimeHists(); 00036 void initialiseTimeHists(Int_t binWidth=60); 00037 TFile *fHistoFile; 00038 //The time histo handlers 00039 AraTimeHistoHandler *fEventNumberHisto; 00040 AraTimeHistoHandler *fEventRateHisto; 00041 AraTimeHistoHandler *fPriorityHisto; 00042 AraTimeHistoHandler *fCalibStatusBitHistos[8]; 00043 AraTimeHistoHandler *fErrorFlagBitHistos[8]; 00044 //The trig time histo handlers 00045 AraTimeHistoHandler *fTrigTypeBitHistos[8]; 00046 AraTimeHistoHandler *fPpsNumHisto; 00047 AraTimeHistoHandler *fDeadTimeHisto; 00048 AraTimeHistoHandler *fTrigPatternHisto[16]; 00049 AraTimeHistoHandler *fRoVddHisto[3]; 00050 AraTimeHistoHandler *fRcoCountHisto[3]; 00051 00052 //Now the event FFT averages 00053 AraHistoHandler *fAverageFFTHisto[ANTS_PER_ICRR]; 00054 AraHistoHandler *fAverageTriggerPattern; 00055 AraHistoHandler *fAverageUnixTimeUs; 00056 00057 //Now some simple event analysis stuff 00058 AraTimeHistoHandler *fWaveformRMSHisto[ANTS_PER_ICRR]; 00059 AraTimeHistoHandler *fWaveformSNRHisto[ANTS_PER_ICRR]; 00060 00061 //The histogram pointers 00062 TH1D *histTrigPat; 00063 TH1D *fftHist; 00064 TH1D *histUnixTimeUs; 00065 00066 00067 //Run summary plotting nonsense 00068 Int_t fCurrentRun; 00069 UInt_t fEarliestTime; 00070 UInt_t fLatestTime; 00071 00072 char fTouchFile[180]; 00073 char fPlotDir[180]; 00074 char fDataDir[180]; 00075 00076 //Event plotting fun 00077 TCanvas *fAraDisplayCanvas; 00078 TPad *fAraDisplayEventInfoPad; 00079 TPad *fAraDisplayMainPad; 00080 Int_t fEventPlotFlag; 00081 }; 00082 00083 #endif //ARAEVENTPLOTTER_H
Generated on Tue Jul 16 16:58:01 2013 for ARA ROOT v3.10 Software by
