FairRoot/PandaRoot
PndFsmResponse.h
Go to the documentation of this file.
1 //--------------------------------------------------------------------------
2 // File and Version Information:
3 // $Id: PndFsmResponse.hh,v 1.6 2007/05/24 08:07:40 klausg Exp $
4 //
5 // Description:
6 // Class PndFsmResponse
7 //
8 // Response of FsmDet for a FsmTrack
9 //
10 // This software was developed for the PANDA collaboration. If you
11 // use all or part of it, please give an appropriate acknowledgement.
12 //
13 // Author List:
14 // Klaus Goetzen Original Author
15 //
16 // Copyright Information:
17 // Copyright (C) 2006 GSI
18 //
19 //------------------------------------------------------------------------
20 
21 #ifndef PNDFSMRESPONSE_H
22 #define PNDFSMRESPONSE_H
23 
24 //----------------------
25 // Base Class Headers --
26 //----------------------
27 
28 //-------------------------------
29 // Collaborating class Headers --
30 //-------------------------------
31 
32 //--------------------------------------------
33 // Collaborating class forward declarations --
34 // -------------------------------------------
35 #include <iosfwd>
36 #include "TVector3.h"
37 
38 class PndFsmAbsDet;
39 
40 
42 {
43 public:
44 
45  //--------------------
46  // Public interface --
47  //--------------------
48 
49  //
50  // Constructors
51  //
52 
55  /* Destructor
56  */
57  virtual ~PndFsmResponse();
58 
59 
64  bool detected() {return _detected;}
65 
66  double dE() {return _dE;}
67  double dp() {return _dp;}
68  double dtheta() {return _dtheta;}
69  double dphi() {return _dphi;}
70  double dt() {return _dt;}
71  double dm() {return _dm;}
72  double m2() {return _m2;}
73  double MvddEdx() {return _MvddEdx;}
74  double TpcdEdx() {return _TpcdEdx;}
75  double SttdEdx() {return _SttdEdx;}
76  double DrcDiscThtc() {return _DrcDiscThtc;}
77  double DrcBarrelThtc() {return _DrcBarrelThtc;}
78  double RichThtc() {return _RichThtc;}
79  double EmcEcal() {return _EmcEcal;}
80  double MuoIron() {return _MuoIron;}
81 
82  double m2Err() {return _m2Err;}
83  double MvddEdxErr() {return _MvddEdxErr;}
84  double TpcdEdxErr() {return _TpcdEdxErr;}
85  double SttdEdxErr() {return _SttdEdxErr;}
86  double DrcDiscThtcErr() {return _DrcDiscThtcErr;}
88  double RichThtcErr() {return _RichThtcErr;}
89 
90 
91  TVector3 dV() {return _dV;}
92  double dVx() {return _dV.X();}
93  double dVy() {return _dV.Y();}
94  double dVz() {return _dV.Z();}
95 
96  double LHElectron() {return _LHElectron;}
97  double LHMuon() {return _LHMuon;}
98  double LHPion() {return _LHPion;}
99  double LHKaon() {return _LHKaon;}
100  double LHProton() {return _LHProton;}
101 
102  //
103  // Modifiers
104  //
106  void setDetected(bool isdet);
107 
108  void setdE(double val);
109  void setdp(double val);
110  void setdtheta(double val);
111  void setdphi(double val);
112  void setdt(double val);
113  void setdm(double val);
114  void setm2(double val, double err=0);
115  void setMvddEdx(double val, double err=0);
116  void setTpcdEdx(double val, double err=0);
117  void setSttdEdx(double val, double err=0);
118  void setDrcDiscThtc(double val, double err=0);
119  void setDrcBarrelThtc(double val, double err=0);
120  void setRichThtc(double val, double err=0);
121  void setEmcEcal(double val) {_EmcEcal = val;} // , double err=0 //[R.K.03/2017] unused variable(s)
122  void setMuoIron(double val) {_MuoIron = val;} // , double err=0 //[R.K.03/2017] unused variable(s)
123 
124  void setdV(TVector3 v);
125  void setdV(double dx, double dy, double dz);
126 
127  void setLHElectron(double val);
128  void setLHMuon(double val);
129  void setLHPion(double val);
130  void setLHKaon(double val);
131  void setLHProton(double val);
132 
133  void print(std::ostream &o);
134 
135 private:
136  //reference to the responding detector
138  bool _detected;
139 
140  //resolutions (absolute values) of: energy, momentum, theta, phi, time
141  double _dE;
142  double _dp;
143  double _dtheta;
144  double _dphi;
145  double _dt;
146  double _dm; //smearing of mass
147 
148  double _m2; //square of particle mass in Tof
149  double _MvddEdx; //dEdx in Mvd
150  double _TpcdEdx; //dEdx in Tpc
151  double _SttdEdx; //dEdx in Stt
152  double _DrcDiscThtc; //Theta_c Disc Dirc
153  double _DrcBarrelThtc; //Theta_c Barrel Dirc
154  double _RichThtc; //Theta_c Rich
155  double _EmcEcal; //calibrated energy deposit in calorimeter
156  double _MuoIron; //penetration depth in Muon detector iron
157 
158  double _m2Err; //error of square of particle mass in Tof
159  double _MvddEdxErr; //error of dEdx in Mvd
160  double _TpcdEdxErr; //error of dEdx in Tpc
161  double _SttdEdxErr; //error of dEdx in Stt
162  double _DrcDiscThtcErr; //error of Theta_c Disc Dirc
163  double _DrcBarrelThtcErr; //error of Theta_c Barrel Dirc
164  double _RichThtcErr; //error of Theta_c Rich
165 
166  //resolution of vertex
167  TVector3 _dV;
168 
169  //PID likelihoods for various particle hypotheses
170  double _LHElectron;
171  double _LHMuon;
172  double _LHPion;
173  double _LHKaon;
174  double _LHProton;
175 };
176 
177 #endif
TVector3 dV()
double MuoIron()
void setDrcBarrelThtc(double val, double err=0)
void setdV(TVector3 v)
double dy
void setdphi(double val)
void setLHElectron(double val)
void setLHProton(double val)
double _DrcBarrelThtcErr
void setTpcdEdx(double val, double err=0)
Double_t val[nBoxes][nFEBox]
Definition: createCalib.C:11
double MvddEdxErr()
void setLHMuon(double val)
void print(std::ostream &o)
double MvddEdx()
double RichThtcErr()
PndFsmAbsDet * detector()
PndFsmAbsDet * _detector
__m128 v
Definition: P4_F32vec4.h:4
void setm2(double val, double err=0)
double RichThtc()
double DrcDiscThtcErr()
void setMuoIron(double val)
void setdt(double val)
double SttdEdxErr()
double TpcdEdx()
void setDetector(PndFsmAbsDet *detector)
double SttdEdx()
void setDrcDiscThtc(double val, double err=0)
void setdp(double val)
double LHElectron()
void setLHKaon(double val)
double dx
void setEmcEcal(double val)
void setdE(double val)
double DrcDiscThtc()
void setRichThtc(double val, double err=0)
void setDetected(bool isdet)
void setdtheta(double val)
virtual ~PndFsmResponse()
void setSttdEdx(double val, double err=0)
void setdm(double val)
double TpcdEdxErr()
double DrcBarrelThtcErr()
double EmcEcal()
void setMvddEdx(double val, double err=0)
double DrcBarrelThtc()
double _DrcDiscThtcErr
void setLHPion(double val)