#if !defined (__CINT__) || defined (__MAKECINT__) #include "TH1.h" #include "TH2.h" #include "TProfile.h" #include #include #include #include #endif class TTrigAnaModule: public TStnModule { public: struct Hist_t { TH1F* fNBits; // after prescale TH1F* fUnprescaledBits; TH1F* fPrescaledBits; TH1F* fMyronFlag; TH1F* fBunchCounter; TH1F* fCalibType; TH1F* fAbortMarker; TH1F* fB0Marker; TH1F* fBCMarker; TH1F* fL1Bits[64]; struct Tl1dHist_t { TH1F* fEt; TH1F* fEtx; TH1F* fEty; TH1F* fMetsq; TH1F* fMets; } fTl1d; struct Tl2dHist_t { TH1F* fNClusters; TH1F* fNXtrpTracks; TH1F* fNSvtTracks; } fTl2d; // TL3D histograms TH1F* fEventNumber[10]; TH2F* fPassedPathVsEventNumber; TH1F* fNPassedPaths; TH1F* fNPaths; }; protected: // pointers to the data blocks used TStnTriggerBlock* fTriggerBlock; // histograms filled Hist_t fHist; public: TTrigAnaModule(const char* name="TrigAna", const char* title="TrigAna"); ~TTrigAnaModule(); // ****** accessors Hist_t* GetHist () { return &fHist; } TStnTriggerBlock* GetTriggerBlock() { return fTriggerBlock; } // ****** overloaded methods of // TStnModule int BeginJob(); int BeginRun(); int Event (int ientry); int EndJob (); // ****** other methods void BookHistograms(); void PlotHistograms(int run_number, int slide); ClassDef(TTrigAnaModule,0) };