// $Id$ // // File: JEventProcessor_event_size.h // Created: Tue Jun 7 10:07:36 EDT 2011 // Creator: davidl (on Darwin eleanor.jlab.org 10.7.0 i386) // #ifndef _JEventProcessor_event_size_ #define _JEventProcessor_event_size_ #include #include #include "Event.h" #include "FDC_cathode.h" #include "FDC_anode.h" #include "CDC.h" #include "FCAL.h" #include "TOF.h" class JEventProcessor_event_size:public jana::JEventProcessor{ public: JEventProcessor_event_size(); ~JEventProcessor_event_size(); const char* className(void){return "JEventProcessor_event_size";} // Time windows for various detectors. For each detector // an offset time and a window time is used. The offset // represents the time *before* the trigger time that hits // are recorded. e.g. hits are recroded from // (t0 - toffset_XXX) to (t0 - toffset_XXX + twindow_XXX) double toffset_bcal; // ns (lead time before trigger) double twindow_bcal; // ns (full window width) double toffset_fcal; // ns (lead time before trigger) double twindow_fcal; // ns (full window width) double toffset_ccal; // ns (lead time before trigger) double twindow_ccal; // ns (full window width) double toffset_cdc; // ns (lead time before trigger) double twindow_cdc; // ns (full window width) double toffset_fdc; // ns (lead time before trigger) double twindow_fdc; // ns (full window width) double toffset_tof; // ns (lead time before trigger) double twindow_tof; // ns (full window width) double toffset_sc; // ns (lead time before trigger) double twindow_sc; // ns (full window width) double toffset_tagger; // ns (lead time before trigger) double twindow_tagger; // ns (full window width) TTree *evt_tree; Event *evt; pthread_mutex_t evt_mutex; TTree *fdc_cathode_tree; FDC_cathode *fdc_cathode; pthread_mutex_t fdc_mutex; TTree *fdc_anode_tree; FDC_anode *fdc_anode; TTree *cdc_tree; CDC *cdc; pthread_mutex_t cdc_mutex; TTree *fcal_tree; FCAL *fcal; pthread_mutex_t fcal_mutex; TTree *tof_tree; TOF *tof; pthread_mutex_t tof_mutex; private: jerror_t init(void); ///< Called once at program start. jerror_t brun(jana::JEventLoop *eventLoop, int runnumber); ///< Called everytime a new run number is detected. jerror_t evnt(jana::JEventLoop *eventLoop, 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. double tmin_bcal, tmax_bcal; double tmin_fcal, tmax_fcal; double tmin_ccal, tmax_ccal; double tmin_cdc, tmax_cdc; double tmin_fdc, tmax_fdc; double tmin_tof, tmax_tof; double tmin_sc, tmax_sc; double tmin_tagger, tmax_tagger; }; #endif // _JEventProcessor_event_size_