CbmRoot
CbmMuchModule.h
Go to the documentation of this file.
1 
11 #ifndef CBMMUCHMODULE_H
12 #define CBMMUCHMODULE_H 1
13 
14 #include <Rtypes.h> // for THashConsistencyHolder, ClassDef
15 #include <RtypesCore.h> // for Int_t, Double_t, Bool_t, Color_t, kTRUE
16 #include <TPave.h> // for TPave
17 #include <TVector3.h> // for TVector3
18 
19 #include <map> // for multimap
20 #include <utility> // for pair
21 
22 class TClonesArray;
23 
24 class CbmMuchModule : public TPave {
25 public:
27  CbmMuchModule();
37  CbmMuchModule(Int_t iStation,
38  Int_t iLayer,
39  Bool_t iSide,
40  Int_t iModule,
41  TVector3 position,
42  TVector3 size,
43  Double_t cutRadius);
45  virtual ~CbmMuchModule() {}
46 
48  Int_t GetDetectorId() const { return fDetectorId; }
49  Double_t GetCutRadius() const { return fCutRadius; }
50  TVector3 GetSize() const { return fSize; }
51  TVector3 GetPosition() const { return fPosition; }
52  Int_t GetDetectorType() const { return fDetectorType; }
53  TClonesArray* GetPoints() const { return fPoints; }
54  TClonesArray* GetHits() const { return fHits; }
55  TClonesArray* GetClusters() const { return fClusters; }
56 
57  virtual Bool_t InitModule() { return kTRUE; }
58  virtual void DrawModule(Color_t) {}
59 
60  void SetPoints(TClonesArray* points) { fPoints = points; }
61  void SetHits(TClonesArray* hits) { fHits = hits; }
62  void SetClusters(TClonesArray* clusters) { fClusters = clusters; }
64  void AddDigi(Double_t time, Int_t id) {
65  fDigis.insert(std::pair<Double_t, Int_t>(time, id));
66  }
68  void ClearDigis() { fDigis.clear(); }
70  std::multimap<Double_t, Int_t> GetDigis() { return fDigis; }
71 
72 protected:
73  Int_t fDetectorId; // Unique detector ID
74  Int_t fDetectorType; // Detector type
75  Double_t fCutRadius; // Radius of the cut (if any, otherwise = -1.) [cm]
76  TVector3 fSize; // Size vector of the module (all dimensions in [cm])
77  TVector3
78  fPosition; // Location vector of the module center in global c.s. (all dimensions in [cm])
79  TClonesArray* fPoints;
80  TClonesArray* fHits;
81  TClonesArray* fClusters;
82  std::multimap<Double_t, Int_t> fDigis;
83 
84 private:
87 
89 };
90 #endif
CbmMuchModule::fClusters
TClonesArray * fClusters
Definition: CbmMuchModule.h:81
CbmMuchModule::fDetectorId
Int_t fDetectorId
Definition: CbmMuchModule.h:73
CbmMuchModule::operator=
CbmMuchModule & operator=(const CbmMuchModule &)
CbmMuchModule::fPosition
TVector3 fPosition
Definition: CbmMuchModule.h:78
CbmMuchModule::SetPoints
void SetPoints(TClonesArray *points)
Definition: CbmMuchModule.h:60
CbmMuchModule::CbmMuchModule
CbmMuchModule(const CbmMuchModule &)
CbmMuchModule::ClearDigis
void ClearDigis()
Definition: CbmMuchModule.h:68
CbmMuchModule::SetClusters
void SetClusters(TClonesArray *clusters)
Definition: CbmMuchModule.h:62
CbmMuchModule::DrawModule
virtual void DrawModule(Color_t)
Definition: CbmMuchModule.h:58
CbmMuchModule::GetPosition
TVector3 GetPosition() const
Definition: CbmMuchModule.h:51
CbmMuchModule::GetSize
TVector3 GetSize() const
Definition: CbmMuchModule.h:50
CbmMuchModule::fHits
TClonesArray * fHits
Definition: CbmMuchModule.h:80
CbmMuchModule::fSize
TVector3 fSize
Definition: CbmMuchModule.h:76
CbmMuchModule::InitModule
virtual Bool_t InitModule()
Definition: CbmMuchModule.h:57
CbmMuchModule::GetCutRadius
Double_t GetCutRadius() const
Definition: CbmMuchModule.h:49
CbmMuchModule::fDetectorType
Int_t fDetectorType
Definition: CbmMuchModule.h:74
CbmMuchModule::fDigis
std::multimap< Double_t, Int_t > fDigis
Definition: CbmMuchModule.h:82
CbmMuchModule::SetHits
void SetHits(TClonesArray *hits)
Definition: CbmMuchModule.h:61
CbmMuchModule::CbmMuchModule
CbmMuchModule()
Definition: CbmMuchModule.cxx:17
CbmMuchModule
Definition: CbmMuchModule.h:24
CbmMuchModule::GetDetectorId
Int_t GetDetectorId() const
Definition: CbmMuchModule.h:48
CbmMuchModule::GetPoints
TClonesArray * GetPoints() const
Definition: CbmMuchModule.h:53
CbmMuchModule::GetClusters
TClonesArray * GetClusters() const
Definition: CbmMuchModule.h:55
CbmMuchModule::GetDetectorType
Int_t GetDetectorType() const
Definition: CbmMuchModule.h:52
CbmMuchModule::ClassDef
ClassDef(CbmMuchModule, 2)
CbmMuchModule::fCutRadius
Double_t fCutRadius
Definition: CbmMuchModule.h:75
points
TClonesArray * points
Definition: Analyze_matching.h:18
CbmMuchModule::~CbmMuchModule
virtual ~CbmMuchModule()
Definition: CbmMuchModule.h:45
hits
static vector< vector< QAHit > > hits
Definition: CbmTofHitFinderTBQA.cxx:114
CbmMuchModule::GetDigis
std::multimap< Double_t, Int_t > GetDigis()
Definition: CbmMuchModule.h:70
CbmMuchModule::fPoints
TClonesArray * fPoints
Definition: CbmMuchModule.h:79
CbmMuchModule::AddDigi
void AddDigi(Double_t time, Int_t id)
Definition: CbmMuchModule.h:64
CbmMuchModule::GetHits
TClonesArray * GetHits() const
Definition: CbmMuchModule.h:54