EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CbmBaseHit.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file CbmBaseHit.h
1 
11 #ifndef CBMBASEHIT_H_
12 #define CBMBASEHIT_H_
13 
14 enum HitType {
26 };
27 
28 #include "TObject.h"
29 #include <string>
30 using std::string;
32 
33 class CbmBaseHit : public TObject
34 {
35 public:
39  CbmBaseHit();
40 
44  virtual ~CbmBaseHit();
45 
46  /* Accessors */
47  HitType GetType() const { return fType; }
48  Double_t GetZ() const { return fZ; }
49  Double_t GetDz() const { return fDz; }
50  Int_t GetRefId() const { return fRefId; }
51  Int_t GetAddress() const { return fAddress; }
52  FairMultiLinkedData* GetLinks() const { return fLinks; }
53 
54  /* Setters */
55  void SetZ(Double_t z) { fZ = z; }
56  void SetDz(Double_t dz) { fDz = dz; }
57  void SetRefId(Int_t refId) { fRefId = refId; }
58  void SetAddress(Int_t address) { fAddress = address; }
59  void SetLinks(FairMultiLinkedData* links) { fLinks = links; }
60 
67  virtual Int_t GetPlaneId() const = 0;
68 
73  virtual string ToString() const = 0;
74 
75 protected:
80  void SetType(HitType type) { fType = type; }
81 
82  CbmBaseHit(const CbmBaseHit&);
84 
85 private:
87  Double_t fZ;
88  Double_t fDz;
89  Int_t fRefId;
90  Int_t fAddress;
92 
93 
94  ClassDef(CbmBaseHit, 1);
95 };
96 
97 #endif /* CBMBASEHIT_H_ */