Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
JEventProcessor_ST_online_Tresolution.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // File: JEventProcessor_ST_online_Tresolution.h
4 // Created: Fri Jan 8 09:07:34 EST 2016
5 // Creator: mkamel (on Linux ifarm1401 2.6.32-431.el6.x86_64 x86_64)
6 //
7 
8 #ifndef _JEventProcessor_ST_online_Tresolution_
9 #define _JEventProcessor_ST_online_Tresolution_
10 
11 #include <JANA/JEventProcessor.h>
12 // ROOT header files
13 #include <TMath.h>
14 #include <TDirectory.h>
15 #include <TH1.h>
16 #include <TH2.h>
17 #include <TTree.h>
18 // C++ header files
19 #include <stdint.h>
20 #include <vector>
21 #include <stdio.h>
22 // PID libraries
23 #include <PID/DEventRFBunch.h>
24 #include <PID/DParticleID.h>
25 #include <PID/DDetectorMatches.h>
26 #include <PID/DParticleID.h>
27 #include <PID/DChargedTrack.h>
28 // Tracking libraries
30 // RF libraries
31 #include <RF/DRFTDCDigiTime.h>
32 #include <RF/DRFTime_factory.h>
33 // ST libraries
34 #include <START_COUNTER/DSCHit.h>
38 // TOF libraries
39 #include <TOF/DTOFHit.h>
40 // DAQ/EPICS libraries
41 #include <DAQ/DEPICSvalue.h>
42 // Translation table libraries
43 #include <TTAB/DTTabUtilities.h>
44 #include <TTAB/DTranslationTable.h>
45 //
46 const Int_t NCHANNELS = 30;
47 class JEventProcessor_ST_online_Tresolution:public jana::JEventProcessor{
48  public:
51  const char* className(void){return "JEventProcessor_ST_online_Tresolution";}
52 
53  private:
54  jerror_t init(void); ///< Called once at program start.
55  jerror_t brun(jana::JEventLoop *eventLoop, int32_t runnumber); ///< Called everytime a new run number is detected.
56  jerror_t evnt(jana::JEventLoop *eventLoop, uint64_t eventnumber); ///< Called every event.
57  jerror_t erun(void); ///< Called everytime run number changes, provided brun has been called.
58  jerror_t fini(void); ///< Called after last event of last event source has been processed.
59 
60  double z_target_center; // Target center along z
61  double dRFBunchPeriod; // RF bunch period from CCDBr
62  //////////////////////////////////
68  double locSCPropTime;
74  vector<vector<DVector3> >sc_pos; // SC geometry vector
75  vector<vector<DVector3> >sc_norm;
76  // Grab match track detector parameters
79  // Declare event vertex vector
81  // Declare a vector which quantizes the point of the intersection of a charged particle
82  // with a plane in the middle of the scintillator
84  // Declare a vector which quantizes the unit vector of the charged particle track traversing
85  // through the scintillator with its origin at the intersection point
87  // Grab the paramteres associated to a track matched to the ST
88  vector<shared_ptr<const DSCHitMatchParams>> st_params;
89  // Declare r and z coord. of track vertex, sc array index
90  double z_v, r_v;
91  int sc_index;
92  // Cuts
94  double pim_pmag_cut;
98  // ******************* 2D histos **************
100  //Define Calibration parameters variable called from CCDB
101  vector<vector<double> >propagation_time_corr;
102 
103 
104 };
105 
106 #endif // _JEventProcessor_ST_online_Tresolution_
107 
jerror_t init(void)
Called once at program start.
jerror_t brun(jana::JEventLoop *eventLoop, int32_t runnumber)
Called everytime a new run number is detected.
TVector3 DVector3
Definition: DVector3.h:14
const Int_t NCHANNELS
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.
vector< shared_ptr< const DSCHitMatchParams > > st_params
jerror_t evnt(jana::JEventLoop *eventLoop, uint64_t eventnumber)
Called every event.