PandaRoot
PndSdsDigiTopix4.h
Go to the documentation of this file.
1 // --------------------------------------------------------
2 // ---- PndSdsDigiTopix4 header file ---
3 // ---- Created 19.6.06 by T.Stockmanns ---
4 // --------------------------------------------------------
5 
13 #ifndef PndSdsDigiTopix4_H
14 #define PndSdsDigiTopix4_H
15 
16 #include "PndSdsDigiPixel.h"
17 #include "PndDetectorList.h"
18 
19 #include "TObject.h"
20 #include "TString.h"
21 #include <iostream>
22 #include <vector>
23 
25  friend std::ostream &operator<<(std::ostream &out, PndSdsDigiTopix4 &digi)
26  {
27  out << "PndSdsDigiTopix4 in Sensor: " << digi.GetSensorID() << " FE: " << digi.GetFE() << " Col/Row " << digi.GetPixelColumn() << "/" << digi.GetPixelRow() << " charge "
28  << digi.GetCharge() << " e"
29  << " timestamp " << digi.GetTimeStamp() << " leadingEdge " << digi.GetLeadingEdge() << " trailingEdge " << digi.GetTrailingEdge() << " frameCount " << digi.GetFrameCount()
30  << std::endl;
31 
32  // out << std::endl;
33 
34  return out;
35  }
36 
37  public:
39  PndSdsDigiTopix4(std::vector<Int_t> index, Int_t detID, Int_t sensorID, Int_t fe, Int_t col, Int_t row, UInt_t leadingEdge, UInt_t trailingEdge, UInt_t frameCount,
40  Double_t timeStamp, UInt_t hitcountcorrect, UInt_t hitCounterIndependent, Double_t timeStampIndependent);
41 
42  UInt_t GetLeadingEdge() const { return fLeadingEdge; }
43  UInt_t GetTrailingEdge() const { return fTrailingEdge; }
44  UInt_t GetFrameCount() const { return fFrameCount; }
45  Double_t GetTimeStampIndependent() const { return fTimeStampIndependent; }
46  UInt_t GetHitCountIndependent() const { return fHitCountIndependent; }
47  UInt_t GetHitCountCorrect() const { return fHitCountCorrect; }
48 
49  void SetLeadingEdge(UInt_t le) { fLeadingEdge = le; }
50  void SetTrailingEdge(UInt_t te) { fTrailingEdge = te; }
51  void SetFrameCount(UInt_t fc) { fFrameCount = fc; }
52  void SetHitCountIndependent(UInt_t hci) { fHitCountIndependent = hci; }
53  void SetTimeStampIndependent(Double_t tsi) { fTimeStampIndependent = tsi; }
54  void SetHitCountCorrect(UInt_t hcc) { fHitCountCorrect = hcc; }
55 
57 
58  void Print() { std::cout << *this; }
59 
61  {
62  if (this != &pix) {
63  this->PndSdsDigiPixel::operator=(pix);
64  }
71  return *this;
72  }
73 
74  template <class Archive>
75  void serialize(Archive &ar, const unsigned int version)
76  {
77  ar &boost::serialization::base_object<PndSdsDigiPixel>(*this);
78  ar &fLeadingEdge;
79  ar &fTrailingEdge;
80  ar &fFrameCount;
81  }
82 
83  private:
84 #ifndef __CINT__ // for BOOST serialization
86 
87 #endif // for BOOST serialization
88  UInt_t fLeadingEdge;
89  UInt_t fTrailingEdge;
90  UInt_t fFrameCount;
91  UInt_t fHitCountCorrect;
92  UInt_t fHitCountIndependent;
93  Double_t fTimeStampIndependent;
94 
95  ClassDef(PndSdsDigiTopix4, 3);
96 };
97 
98 #endif
Int_t GetPixelColumn() const
void SetTrailingEdge(UInt_t te)
PndSdsDigiPixel & operator=(const PndSdsDigiPixel &pix)
Data class to store the digi output of a pixel module.
Double_t GetTimeStampIndependent() const
Double_t GetCharge() const
Definition: PndSdsDigi.h:58
void SetLeadingEdge(UInt_t le)
void serialize(Archive &ar, const unsigned int version)
UInt_t GetHitCountIndependent() const
friend class boost::serialization::access
Int_t GetPixelRow() const
void SetFrameCount(UInt_t fc)
UInt_t GetHitCountCorrect() const
friend std::ostream & operator<<(std::ostream &out, PndSdsDigiTopix4 &digi)
UInt_t GetTrailingEdge() const
UInt_t GetLeadingEdge() const
void SetHitCountCorrect(UInt_t hcc)
void SetHitCountIndependent(UInt_t hci)
Data class to store the digi output of a pixel module.
Int_t GetSensorID() const
Definition: PndSdsDigi.h:57
UInt_t GetFrameCount() const
void SetTimeStampIndependent(Double_t tsi)
PndSdsDigiTopix4 & operator=(const PndSdsDigiTopix4 &pix)
Int_t GetFE() const
Definition: PndSdsDigi.h:55