ARA ROOT v3.6 Software

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 Mon Mar 18 16:04:45 2013 for ARA ROOT v3.6 Software by doxygen 1.4.7