EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CbmMCEpoch.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file CbmMCEpoch.h
1 
12 #ifndef CBMEPOCH_H
13 #define CBMEPOCH_H 1
14 
15 
16 #include <FairMCPoint.h>
17 //#include "sts/CbmStsPoint.h"
18 //#include "much/CbmMuchPoint.h"
19 #include "CbmDetectorList.h"
20 
21 
22 #include "TClonesArray.h"
23 #include "TNamed.h"
24 
25 #include <vector>
26 
27 
28 
29 
30 class CbmMCEpoch : public TNamed
31 {
32 
33  public:
34 
35 
37  CbmMCEpoch();
38 
39 
44  CbmMCEpoch(Double_t startTime, Double_t epochLength);
45 
46 
48  virtual ~CbmMCEpoch();
49 
50 
61  Int_t eventId = -1, Double_t eventTime = 0.);
62 
63 
65  void Clear();
66 
67 
71  Int_t GetNofPoints(DetectorId det) const;
72 
73 
75  TClonesArray* GetPoints(DetectorId det) { return fPoints[det]; }
76 
77 
83  FairMCPoint* GetPoint(DetectorId det, Int_t index);
84 
85 
87  Double_t GetStartTime() { return fStartTime; }
88 
89 
91  Bool_t IsEmpty();
92 
93 
95  virtual void Print(Option_t* opt ="") const;
96 
97 
99  void SetStartTime(Double_t time) { fStartTime = time; }
100 
101 
102 
103 
104  private:
105 
106  Double_t fStartTime;
107  Double_t fEpochLength;
109  TClonesArray* fPoints[kTutDet];
115  void CreateArrays();
116 
117  CbmMCEpoch(const CbmMCEpoch&);
119 
120  ClassDef(CbmMCEpoch,1);
121 
122 
123 };
124 
125 #endif
126 
127