// $Id$ // // File: JEventProcessor_RF_online.h // Created: Wed Apr 8 11:58:09 EST 2015 // Creator: pmatt (on Linux stan.jlab.org 2.6.32-279.11.1.el6.x86_64 x86_64) // #ifndef _JEventProcessor_RF_online_ #define _JEventProcessor_RF_online_ #include #include #include #include #include #include "TH1I.h" #include "TDirectoryFile.h" #include #include #include "GlueX.h" #include "DAQ/DCODAROCInfo.h" #include #include #include #include #include using namespace std; using namespace jana; class JEventProcessor_RF_online : public jana::JEventProcessor { public: const char* className(void){return "JEventProcessor_RF_online";} private: DRFTime_factory* dRFTimeFactory; TDirectoryFile* dROCTIDirectory; double dRFSignalPeriod; //not the same as the period of the beam //before multiplexing map dRFSamplingRateMap; vector dRFSignalSystems; map dHistMap_ROCInfoDeltaT; //key is rocid map dHistMap_NumSignals; map dHistMap_RFSignalPeriod; map dHistMap_RFFirstTimeDeltaT; TH1I* dHist_RFBeamBunchPeriod; map dHistMap_SelfResolution; map dHistMap_RFTaggerDeltaT; map, TH1I*> dHistMap_RFRFDeltaTs; map, TH1I*> dHistMap_AverageRFRFDeltaTs; map, TH1I*> dHistMap_AbsoluteRFRFDeltaTs; jerror_t init(void); ///< Called once at program start. jerror_t brun(jana::JEventLoop* locEventLoop, int runnumber); ///< Called everytime a new run number is detected. jerror_t evnt(jana::JEventLoop* locEventLoop, int eventnumber); ///< Called every event. jerror_t erun(void); ///< Called everytime run number changes, provided brun has been called. jerror_t fini(void); ///< Called after last event of last event source has been processed. }; #endif // _JEventProcessor_RF_online_