Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
JEventProcessor_event_size.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // File: JEventProcessor_event_size.h
4 // Created: Tue Jun 7 10:07:36 EDT 2011
5 // Creator: davidl (on Darwin eleanor.jlab.org 10.7.0 i386)
6 //
7 
8 #ifndef _JEventProcessor_event_size_
9 #define _JEventProcessor_event_size_
10 
11 #include <TTree.h>
12 
13 #include <JANA/JEventProcessor.h>
14 
15 #include "Event.h"
16 #include "FDC_cathode.h"
17 #include "FDC_anode.h"
18 #include "CDC.h"
19 #include "FCAL.h"
20 #include "TOF.h"
21 
22 class JEventProcessor_event_size:public jana::JEventProcessor{
23  public:
26  const char* className(void){return "JEventProcessor_event_size";}
27 
28  // Time windows for various detectors. For each detector
29  // an offset time and a window time is used. The offset
30  // represents the time *before* the trigger time that hits
31  // are recorded. e.g. hits are recroded from
32  // (t0 - toffset_XXX) to (t0 - toffset_XXX + twindow_XXX)
33  double toffset_bcal; // ns (lead time before trigger)
34  double twindow_bcal; // ns (full window width)
35  double toffset_fcal; // ns (lead time before trigger)
36  double twindow_fcal; // ns (full window width)
37  double toffset_ccal; // ns (lead time before trigger)
38  double twindow_ccal; // ns (full window width)
39  double toffset_cdc; // ns (lead time before trigger)
40  double twindow_cdc; // ns (full window width)
41  double toffset_fdc; // ns (lead time before trigger)
42  double twindow_fdc; // ns (full window width)
43  double toffset_tof; // ns (lead time before trigger)
44  double twindow_tof; // ns (full window width)
45  double toffset_sc; // ns (lead time before trigger)
46  double twindow_sc; // ns (full window width)
47  double toffset_tagger; // ns (lead time before trigger)
48  double twindow_tagger; // ns (full window width)
49 
50  TTree *evt_tree;
52  pthread_mutex_t evt_mutex;
53 
56  pthread_mutex_t fdc_mutex;
57 
60 
61  TTree *cdc_tree;
62  CDC *cdc;
63  pthread_mutex_t cdc_mutex;
64 
65  TTree *fcal_tree;
67  pthread_mutex_t fcal_mutex;
68 
69  TTree *tof_tree;
70  TOF *tof;
71  pthread_mutex_t tof_mutex;
72 
73  private:
74  jerror_t init(void); ///< Called once at program start.
75  jerror_t brun(jana::JEventLoop *eventLoop, int32_t runnumber); ///< Called everytime a new run number is detected.
76  jerror_t evnt(jana::JEventLoop *eventLoop, uint64_t eventnumber); ///< Called every event.
77  jerror_t erun(void); ///< Called everytime run number changes, provided brun has been called.
78  jerror_t fini(void); ///< Called after last event of last event source has been processed.
79 
83  double tmin_cdc, tmax_cdc;
84  double tmin_fdc, tmax_fdc;
85  double tmin_tof, tmax_tof;
86  double tmin_sc, tmax_sc;
88 
89  int dBCALMid;
90 };
91 
92 #endif // _JEventProcessor_event_size_
93 
jerror_t brun(jana::JEventLoop *eventLoop, int32_t runnumber)
Called everytime a new run number is detected.
jerror_t erun(void)
Called everytime run number changes, provided brun has been called.
Definition: CDC.h:14
jerror_t evnt(jana::JEventLoop *eventLoop, uint64_t eventnumber)
Called every event.
jerror_t fini(void)
Called after last event of last event source has been processed.
jerror_t init(void)
Called once at program start.
Definition: FCAL.h:14
Definition: TOF.h:14