Hall C ROOT/C++ Analyzer (hcana)
THcHodoHit.h
Go to the documentation of this file.
1 #ifndef ROOT_THcHodoHit
2 #define ROOT_THcHodoHit
3 
5 // //
6 // THcHodoHit //
7 // //
9 
10 #include "TObject.h"
11 #include "THcScintillatorPlane.h"
12 //#include "THcDriftChamber.h"
13 #include "THcRawHodoHit.h"
14 #include <cstdio>
15 
16 class THcHodoHit : public TObject {
17 
18 public:
19 
20  THcHodoHit(Int_t postdc, Int_t negtdc, Double_t posadc, Double_t negadc,
21  Int_t ipad, THcScintillatorPlane* sp) :
22  fPosTDC(postdc), fNegTDC(negtdc), fPosADC_Ped(posadc), fNegADC_Ped(negadc),
24  fTwoGoodTimes(kFALSE), fPlane(sp) {};
25 
26  virtual ~THcHodoHit() {}
27 
28  Bool_t IsSortable () const { return kFALSE; }
29 
30  // Get and Set Functions
31  Double_t GetPosADC() const { return fPosADC_Ped; }
32  Double_t GetNegADC() const { return fNegADC_Ped; }
33  Double_t GetPosADCpeak() const { return fPosADC_Peak; }
34  Double_t GetNegADCpeak() const { return fNegADC_Peak; }
35  Double_t GetPosADCtime() const { return fPosADC_Time; }
36  Double_t GetNegADCtime() const { return fNegADC_Time; }
40  Int_t GetPosTDC() const { return fPosTDC; }
41  Int_t GetNegTDC() const { return fNegTDC; }
49  Int_t GetPaddleNumber() const { return fPaddleNumber; }
51 
55  }
57  Double_t postof, Double_t negtof,
58  Double_t timeave) {
60  fPosTOFCorrectedTime = postof; fNegTOFCorrectedTime = negtof;
61  fScinCorrectedTime = timeave;
63  }
64  void SetTwoGoodTimes(Bool_t flag) {
65  fTwoGoodTimes = flag;
66  }
67  void SetPaddleCenter(Double_t padcenter) {
68  fPaddleCenter = padcenter;
69  }
70  void SetPosADCpeak( Double_t adc) {
71  fPosADC_Peak =adc;
72  }
73  void SetNegADCpeak( Double_t adc) {
74  fNegADC_Peak =adc;
75  }
76  void SetPosADCtime( Double_t ptime) {
77  fPosADC_Time =ptime;
78  }
79  void SetNegADCtime( Double_t ptime) {
80  fNegADC_Time =ptime;
81  }
82  void SetPosADCCorrtime( Double_t ptime) {
83  fPosADC_CorrTime =ptime;
84  }
85  void SetNegADCCorrtime( Double_t ptime) {
86  fNegADC_CorrTime =ptime;
87  }
88  void SetCalcPosition( Double_t calcpos) {
89  fCalcPosition =calcpos;
90  }
91 protected:
92  static const Double_t kBig;
93 
96  Double_t fPosADC_Ped; // Pedestal subtracted ADC
97  Double_t fNegADC_Ped; // Pedestal subtracted ADC
98  Double_t fPosADC_Peak; // ADC peak amplitude
99  Double_t fNegADC_Peak; // ADC peak amplitude
100  Double_t fPosADC_Time; // ADC time
101  Double_t fNegADC_Time; // ADC time
104  Double_t fCalcPosition; // Position along paddle calculated by time diff
106 
107  Double_t fPosCorrectedTime; // Pulse height corrected time
108  Double_t fNegCorrectedTime; // Pulse height corrected time
109  Double_t fScinCorrectedTime; // Time average corrected for position
110  // based on ADCs.
111  Double_t fPosTOFCorrectedTime; // Times corrected for z position
112  Double_t fNegTOFCorrectedTime; // using nominal beta
113 
117 
118  THcScintillatorPlane* fPlane; // Pointer to parent scintillator plane
119 
120 
121 private:
122  THcHodoHit( const THcHodoHit& );
123  THcHodoHit& operator=( const THcHodoHit& );
124 
125  ClassDef(THcHodoHit,0) // Drift Chamber Hit
126 };
127 
129 
130 #endif
Double_t GetPosCorrectedTime() const
Definition: THcHodoHit.h:42
Double_t fPosADC_Peak
Definition: THcHodoHit.h:98
A single plane of scintillators.
Int_t fPosTDC
Definition: THcHodoHit.h:94
Double_t GetPosADCtime() const
Definition: THcHodoHit.h:35
Double_t fNegTOFCorrectedTime
Definition: THcHodoHit.h:112
Class representing a single hit for the Hodoscopes.
Definition: THcHodoHit.h:16
Double_t GetPosTOFCorrectedTime() const
Definition: THcHodoHit.h:44
Double_t fNegADC_Peak
Definition: THcHodoHit.h:99
Int_t GetNegTDC() const
Definition: THcHodoHit.h:41
Double_t GetPosADC() const
Definition: THcHodoHit.h:31
int Int_t
bool Bool_t
THcScintillatorPlane * fPlane
Definition: THcHodoHit.h:118
Double_t GetCalcPosition() const
Definition: THcHodoHit.h:39
void SetNegADCpeak(Double_t adc)
Definition: THcHodoHit.h:73
void SetNegADCCorrtime(Double_t ptime)
Definition: THcHodoHit.h:85
void SetCorrectedTimes(Double_t pos, Double_t neg)
Definition: THcHodoHit.h:52
Int_t fPaddleNumber
Definition: THcHodoHit.h:105
void SetTwoGoodTimes(Bool_t flag)
Definition: THcHodoHit.h:64
static const Double_t kBig
Definition: THcHodoHit.h:92
Double_t GetNegADCCorrtime() const
Definition: THcHodoHit.h:38
void SetCalcPosition(Double_t calcpos)
Definition: THcHodoHit.h:88
#define ClassDef(name, id)
Double_t GetPosADCpeak() const
Definition: THcHodoHit.h:33
Bool_t GetTwoGoodTimes() const
Definition: THcHodoHit.h:47
Int_t GetPaddleNumber() const
Definition: THcHodoHit.h:49
Double_t fPosADC_Ped
Definition: THcHodoHit.h:96
void SetPosADCtime(Double_t ptime)
Definition: THcHodoHit.h:76
THcHodoHit(Int_t postdc, Int_t negtdc, Double_t posadc, Double_t negadc, Int_t ipad, THcScintillatorPlane *sp)
Definition: THcHodoHit.h:20
Double_t fPosADC_CorrTime
Definition: THcHodoHit.h:102
virtual ~THcHodoHit()
Definition: THcHodoHit.h:26
Double_t fCalcPosition
Definition: THcHodoHit.h:104
Int_t GetPosTDC() const
Definition: THcHodoHit.h:40
Bool_t IsSortable() const
Definition: THcHodoHit.h:28
Double_t fNegADC_Time
Definition: THcHodoHit.h:101
Double_t GetNegCorrectedTime() const
Definition: THcHodoHit.h:43
void SetNegADCtime(Double_t ptime)
Definition: THcHodoHit.h:79
Double_t GetPaddleCenter() const
Definition: THcHodoHit.h:50
Bool_t fHasCorrectedTimes
Definition: THcHodoHit.h:114
Double_t GetNegADCpeak() const
Definition: THcHodoHit.h:34
Double_t fPaddleCenter
Definition: THcHodoHit.h:116
Int_t fNegTDC
Definition: THcHodoHit.h:95
Double_t fPosCorrectedTime
Definition: THcHodoHit.h:107
const Bool_t kFALSE
Bool_t fTwoGoodTimes
Definition: THcHodoHit.h:115
double Double_t
Double_t GetPosADCCorrtime() const
Definition: THcHodoHit.h:37
Double_t fPosADC_Time
Definition: THcHodoHit.h:100
void SetPosADCCorrtime(Double_t ptime)
Definition: THcHodoHit.h:82
string::size_type pos
Double_t fScinCorrectedTime
Definition: THcHodoHit.h:109
Double_t fPosTOFCorrectedTime
Definition: THcHodoHit.h:111
Bool_t GetHasCorrectedTimes() const
Definition: THcHodoHit.h:48
Double_t GetNegADCtime() const
Definition: THcHodoHit.h:36
Double_t GetNegADC() const
Definition: THcHodoHit.h:32
Double_t fNegCorrectedTime
Definition: THcHodoHit.h:108
Double_t GetScinCorrectedTime() const
Definition: THcHodoHit.h:46
Double_t fNegADC_CorrTime
Definition: THcHodoHit.h:103
void SetCorrectedTimes(Double_t pos, Double_t neg, Double_t postof, Double_t negtof, Double_t timeave)
Definition: THcHodoHit.h:56
void SetPosADCpeak(Double_t adc)
Definition: THcHodoHit.h:70
void SetPaddleCenter(Double_t padcenter)
Definition: THcHodoHit.h:67
Double_t fNegADC_Ped
Definition: THcHodoHit.h:97
const Bool_t kTRUE
THcHodoHit & operator=(const THcHodoHit &)
Double_t GetNegTOFCorrectedTime() const
Definition: THcHodoHit.h:45