BOSS 7.0.3
BESIII Offline Software System
Loading...
Searching...
No Matches
InstallArea/include/RhopiAlg/RhopiAlg/Rhopi.h
Go to the documentation of this file.
1#ifndef Physics_Analysis_Rhopi_H
2#define Physics_Analysis_Rhopi_H
3
4#include "GaudiKernel/AlgFactory.h"
5#include "GaudiKernel/Algorithm.h"
6#include "GaudiKernel/NTuple.h"
7//#include "VertexFit/ReadBeamParFromDb.h"
8
9
10class Rhopi : public Algorithm {
11
12public:
13 Rhopi(const std::string& name, ISvcLocator* pSvcLocator);
14 StatusCode initialize();
15 StatusCode execute();
16 StatusCode finalize();
17
18private:
19
20 //ReadBeamParFromDb m_reader;
21 // Declare r0, z0 cut for charged tracks
22 double m_vr0cut;
23 double m_vz0cut;
24
25 //Declare energy, dphi, dthe cuts for fake gamma's
26 double m_energyThreshold;
27 double m_gammaPhiCut;
28 double m_gammaThetaCut;
29 double m_gammaAngleCut;
30
31 //
32 int m_test4C;
33 int m_test5C;
34
35 //
36 int m_checkDedx;
37 int m_checkTof;
38
39 // define Ntuples here
40
41 NTuple::Tuple* m_tuple1; // charged track vertex
42 NTuple::Item<double> m_vx0;
43 NTuple::Item<double> m_vy0;
44 NTuple::Item<double> m_vz0;
45 NTuple::Item<double> m_vr0;
46 NTuple::Item<double> m_rvxy0;
47 NTuple::Item<double> m_rvz0;
48 NTuple::Item<double> m_rvphi0;
49
50 NTuple::Tuple* m_tuple2; // fake photon
51 NTuple::Item<double> m_dthe;
52 NTuple::Item<double> m_dphi;
53 NTuple::Item<double> m_dang;
54 NTuple::Item<double> m_eraw;
55
56 NTuple::Tuple* m_tuple3; // rhopi: raw mgg, etot
57 NTuple::Item<double> m_m2gg;
58 NTuple::Item<double> m_etot;
59
60 NTuple::Tuple* m_tuple4; // rhopi 4C
61 NTuple::Item<double> m_chi1;
62 NTuple::Item<double> m_mpi0;
63
64 NTuple::Tuple* m_tuple5; // rhopi 5C
65 NTuple::Item<double> m_chi2;
66 NTuple::Item<double> m_mrh0;
67 NTuple::Item<double> m_mrhp;
68 NTuple::Item<double> m_mrhm;
69
70 NTuple::Tuple* m_tuple6; // photons
71 NTuple::Item<double> m_fcos;
72 NTuple::Item<double> m_elow;
73
74 NTuple::Tuple* m_tuple7; // dE/dx
75 NTuple::Item<double> m_ptrk;
76 NTuple::Item<double> m_chie;
77 NTuple::Item<double> m_chimu;
78 NTuple::Item<double> m_chipi;
79 NTuple::Item<double> m_chik;
80 NTuple::Item<double> m_chip;
81 NTuple::Item<double> m_probPH;
82 NTuple::Item<double> m_normPH;
83 NTuple::Item<double> m_ghit;
84 NTuple::Item<double> m_thit;
85
86 NTuple::Tuple* m_tuple8; // endcap tof
87 NTuple::Item<double> m_ptot_etof;
88 NTuple::Item<double> m_cntr_etof;
89 NTuple::Item<double> m_te_etof;
90 NTuple::Item<double> m_tmu_etof;
91 NTuple::Item<double> m_tpi_etof;
92 NTuple::Item<double> m_tk_etof;
93 NTuple::Item<double> m_tp_etof;
94 NTuple::Item<double> m_ph_etof;
95 NTuple::Item<double> m_rhit_etof;
96 NTuple::Item<double> m_qual_etof;
97
98 NTuple::Tuple* m_tuple9; // barrel inner tof
99 NTuple::Item<double> m_ptot_btof1;
100 NTuple::Item<double> m_cntr_btof1;
101 NTuple::Item<double> m_te_btof1;
102 NTuple::Item<double> m_tmu_btof1;
103 NTuple::Item<double> m_tpi_btof1;
104 NTuple::Item<double> m_tk_btof1;
105 NTuple::Item<double> m_tp_btof1;
106 NTuple::Item<double> m_ph_btof1;
107 NTuple::Item<double> m_zhit_btof1;
108 NTuple::Item<double> m_qual_btof1;
109
110 NTuple::Tuple* m_tuple10; // barrel outer tof
111 NTuple::Item<double> m_ptot_btof2;
112 NTuple::Item<double> m_cntr_btof2;
113 NTuple::Item<double> m_te_btof2;
114 NTuple::Item<double> m_tmu_btof2;
115 NTuple::Item<double> m_tpi_btof2;
116 NTuple::Item<double> m_tk_btof2;
117 NTuple::Item<double> m_tp_btof2;
118 NTuple::Item<double> m_ph_btof2;
119 NTuple::Item<double> m_zhit_btof2;
120 NTuple::Item<double> m_qual_btof2;
121
122 NTuple::Tuple* m_tuple11; // Particle ID info.
123 NTuple::Item<double> m_ptrk_pid;
124 NTuple::Item<double> m_cost_pid;
125 NTuple::Item<double> m_dedx_pid;
126 NTuple::Item<double> m_tof1_pid;
127 NTuple::Item<double> m_tof2_pid;
128 NTuple::Item<double> m_prob_pid;
129
130};
131
132#endif
StatusCode execute()
StatusCode finalize()
StatusCode initialize()
Rhopi(const std::string &name, ISvcLocator *pSvcLocator)