Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DEventProcessor_BCAL_Shower.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // File: DEventProcessor_BCAL_Shower.h
4 // Created: Fri Oct 10 16:41:18 EDT 2014
5 // Creator: wmcginle (on Linux ifarm1101 2.6.32-220.7.1.el6.x86_64 x86_64)
6 //
7 
8 #ifndef _DEventProcessor_BCAL_Shower_
9 #define _DEventProcessor_BCAL_Shower_
10 
11 #include <JANA/JEventProcessor.h>
12 #include <JANA/JApplication.h>
13 
15 #include <HDDM/DEventWriterREST.h>
18 //#include "TRACKING/DTrackFinder.h"
19 
20 #include "DLorentzVector.h"
21 
22 
23 using namespace jana;
24 using namespace std;
25 
26 class DEventProcessor_BCAL_Shower : public jana::JEventProcessor
27 {
28  public:
31  const char* className(void){return "DEventProcessor_BCAL_Shower";}
32  DVector3 Calc_CrudeVertex(const deque<const DKinematicData*>& locParticles) const;
36  TTree *BCAL_Neutrals;
37  TTree *FCAL_Neutrals;
42  //uint32_t shower_energy;
43  Float_t energy_shower;
45  Float_t energy_point;
46  Float_t track_momentum;
51  //uint32_t hit_energy;
52  uint32_t module;
53  uint32_t layer;
54  uint32_t sector;
55  uint32_t eventnum;
56  Float_t theta;
57  uint32_t channel;
58  Float_t phi;
59  Float_t r;
60  Float_t z;
61  Float_t L1_pathlength;
62  Float_t L2_pathlength;
63  Float_t L3_pathlength;
64  Float_t L4_pathlength;
65  Float_t E1;
66  Float_t E1_raw;
67  Float_t E2;
68  Float_t E2_raw;
69  Float_t E3;
70  Float_t t1;
71  Float_t t2;
72  Float_t t3;
73  Float_t z1;
74  Float_t z2;
75  Float_t z3;
76  Float_t x1;
77  Float_t x2;
78  Float_t x3;
79  Float_t y1;
80  Float_t y2;
81  Float_t y3;
82  Float_t phi1;
83  Float_t phi2;
84  Float_t vertexZ;
85  Float_t vertexX;
86  Float_t vertexY;
90  Float_t p1_mag;
91  Float_t p1_raw_mag;
92  Float_t p2_mag;
93  Float_t p2_raw_mag;
94  Float_t p3_mag;
95  Float_t inv_mass;
96  Float_t inv_mass_raw;
97  Float_t bcal_E;
98  Float_t bcal_x;
99  Float_t bcal_y;
100  Float_t bcal_z;
101  Float_t bcal_phi;
102  Float_t bcal_t;
103  Float_t bcal_p;
104  Float_t fcal_E;
105  Float_t fcal_x;
106  Float_t fcal_y;
107  Float_t fcal_z;
108  Float_t fcal_t;
109  Float_t fcal_p;
110 
111  //Float_t charge;
112  //uint32_t end;
113 
114 
115  private:
117  jerror_t init(void); ///< Called once at program start.
118  jerror_t brun(jana::JEventLoop* locEventLoop, int locRunNumber); ///< Called every time a new run number is detected.
119  jerror_t evnt(jana::JEventLoop* locEventLoop, uint64_t locEventNumber); ///< Called every event.
120  jerror_t erun(void); ///< Called every time run number changes, provided brun has been called.
121  jerror_t fini(void); ///< Called after last event of last event source has been processed.
122 
126  //TH1F* two_gamma_mass_corr,
127  //TH1F* two_gamma_mass_cut;
129  //TH1F* bcal_fcal_two_gamma_mass_cut;
130  // TH2F* xy_shower;
131  TH1F* z_shower;
132  TH1F* E_shower;
133  TH1F* Neutral_E;
134  TH1F* Assoc_E;
136  TH1F* mass_summed;
147  TH1F* VertexZ;
148  TH1F* goodVertexZ;
158  TH1F* Point_z;
177  TH1F* Time_Diff;
182  TH2F* Evsp_plus;
183  TH2F* Evsp_minus;
186  TH2F* FCAL_Evsp;
194  // TH2F* Erec_over_Ethrown_vs_z;
195  // TH2F* Ecorr_over_Erec_vs_z;
196  // TH2F* Ereconstructed_vs_Ethrown;
197  // TH1F* Etot_truth,
198  TH1F* Etot_hits;
199  // TH2F* Etruth_over_Ethrown_vs_z;
200  // TH2F *Edeposited_over_Ethrown_vs_z;
201 
203 
204  //DTrackFinder *finder;
205 
208 };
209 
210 #endif // _DEventProcessor_BCAL_Shower_
211 
const DAnalysisUtilities * dAnalysisUtilities
const DEventWriterREST * dEventWriterREST
TVector3 DVector3
Definition: DVector3.h:14
const DEventWriterROOT * dEventWriterROOT