PandaRoot
PndSdsDigiPixelMCInfo.h
Go to the documentation of this file.
1 /*
2  * PndSdsDigiPixelMCInfo.h
3  *
4  * Created on: Oct 25, 2010
5  * Author: esch
6  * brief class to save additional information for a digi
7  *
8  *
9  */
10 
11 #ifndef PNDSDSDIGIPIXELMCINFO_H_
12 #define PNDSDSDIGIPIXELMCINFO_H_
13 
14 #include "PndSdsDigiPixel.h"
15 
17 
18  friend std::ostream &operator<<(std::ostream &out, PndSdsDigiPixelMCInfo &digi)
19  {
20  out << "PndSdsDigiPixelMCInfo in: " << digi.GetSensorID() << " FE: " << digi.GetFE() << " Col/Row " << digi.GetPixelColumn() << "/" << digi.GetPixelRow() << " charge "
21  << digi.GetCharge() << " e"
22  << " timestamp " << digi.GetTimeStamp() << ", from Point(s) ";
23  std::vector<Int_t> indices = digi.GetIndices();
24  for (unsigned int i = 0; i < indices.size(); i++) {
25  std::cout << indices[i] << " ";
26  }
27 
28  out << " MCCharge: " << digi.GetMCCharge() << " AddNoise: " << digi.GetAddNoise() << " TimeWalk: " << digi.GetTimeWalk()
29  << " TimeWalkCorrection: " << digi.GetTimeWalkCorrection();
30  std::cout << std::endl;
31 
32  return out;
33  }
34 
35  public:
37  PndSdsDigiPixelMCInfo(std::vector<Int_t> index, Int_t detID, Int_t sensorID, Int_t fe, Int_t col, Int_t row, Double_t totcharge, Double_t timeStamp, Double_t chargewonoise,
38  Double_t addnoise, Double_t timewalk, Double_t timewalkcorrection, Double_t tof, Double_t digicharge);
39  virtual ~PndSdsDigiPixelMCInfo();
40 
41  void SetMCCharge(Double_t charge) { fMCCharge = charge; }
42  Double_t GetMCCharge() { return fMCCharge; }
43 
44  void SetAddNoise(Double_t charge) { fAddNoise = charge; }
45  Double_t GetAddNoise() { return fAddNoise; }
46 
47  void SetTimeWalk(Double_t timewalk) { fTimeWalk = timewalk; }
48  Double_t GetTimeWalk() { return fTimeWalk; }
49 
50  void SetTimeWalkCorrection(Double_t timewalkcorrection) { fTimeWalkCorrection = timewalkcorrection; }
51  Double_t GetTimeWalkCorrection() { return fTimeWalkCorrection; }
52 
53  void SetTof(Double_t tof) { fTof = tof; }
54  Double_t GetTof() { return fTof; }
55 
56  void SetDigiCharge(Double_t digicharge) { fDigiCharge = digicharge; }
57  Double_t GetDigiCharge() { return fDigiCharge; }
58 
59  private:
60  Double_t fMCCharge; // MC Charge in a Pixel w/o gaussian noise
61  Double_t fAddNoise; // gaussian noise for a pixel
62  Double_t fTimeWalk;
63  Double_t fTimeWalkCorrection;
64  Double_t fTof;
65  Double_t fDigiCharge; // MC Charge in a Pixel with gaussian noise
66 
67  ClassDef(PndSdsDigiPixelMCInfo, 2);
68 };
69 
70 #endif /* PNDSDSDIGIPIXELMCINFO_H_ */
Int_t GetPixelColumn() const
std::vector< Int_t > GetIndices() const
Definition: PndSdsDigi.h:60
friend std::ostream & operator<<(std::ostream &out, PndSdsDigiPixelMCInfo &digi)
Double_t GetCharge() const
Definition: PndSdsDigi.h:58
virtual ~PndSdsDigiPixelMCInfo()
void SetTof(Double_t tof)
unsigned int i
Definition: P4_F32vec4.h:21
void SetDigiCharge(Double_t digicharge)
void SetAddNoise(Double_t charge)
Int_t GetPixelRow() const
void SetTimeWalkCorrection(Double_t timewalkcorrection)
void SetTimeWalk(Double_t timewalk)
void SetMCCharge(Double_t charge)
Data class to store the digi output of a pixel module.
Int_t GetSensorID() const
Definition: PndSdsDigi.h:57
Int_t GetFE() const
Definition: PndSdsDigi.h:55