FairRoot/PandaRoot
PndGeoHitList.h
Go to the documentation of this file.
1 #ifndef PNDGEOHITLIST_H
2 #define PNDGEOHITLIST_H
3 
4 #include "FairHit.h"
5 
6 #include "TGeoManager.h"
7 #include "TGeoNode.h"
8 #include "TGeoMatrix.h"
9 #include "TGeoVolume.h"
10 #include "TString.h"
11 #include "TClonesArray.h"
12 
13 #include <vector>
14 #include <iostream>
15 
17 {
18 public:
19  PndGeoHitList();
20  PndGeoHitList(TString groupName, TString topNodeName, TGeoVolume* baseVolume);
21  virtual ~PndGeoHitList();
22  PndGeoHitList(const PndGeoHitList& ) = delete;
23  PndGeoHitList& operator=(const PndGeoHitList& ) = delete;
24 
25  void CreateNewGroup(TString groupName, TString topNodeName, TGeoVolume* baseVolume);
26  void AddHit(FairHit* hit, Bool_t vis = kTRUE);
27  void AddHit(Double_t x, Double_t y, Double_t z, Bool_t vis = kTRUE);
28  void AddHit(TGeoMatrix* mat, Bool_t vis = kTRUE);
29  void AddHits(TClonesArray* hitList, Bool_t vis = kTRUE);
30  void SetHits(TClonesArray* hitList, Bool_t vis = kTRUE);
31  void RemoveGeoHits(Int_t from);
32  void CreateGeoHit(TGeoMatrix* mat);
33 
34  TString GetName()const {return fGroupName;};
35  const std::vector<TGeoNode*> GetNodes()const {return fNodeList;};
36  void SetVisibility(TString NodeName, bool value);
37  void SetVisibility(TGeoHMatrix pos, bool value);
38  void SetVisibility(Int_t id, bool value);
39  void SetAllInvisible();
40  Int_t GetNodeId(TString NodeName);
41  Int_t GetNodeId(TGeoHMatrix pos);
42 
43 
44 private:
47  std::vector<TGeoNode*> fNodeList;
48  TGeoVolume* fGroupVolume;
49  TGeoVolume* fTopVolume;
50  TGeoVolume* fBaseVolume;
51 
52  void CreateGeoHits(Int_t number);
53  void SetGeoHitsInvisible(Int_t from);
54 
56 };
57 
58 #endif /*PNDGEOHITLIST_H*/
TVector3 pos
void SetVisibility(TString NodeName, bool value)
TGeoVolume * fTopVolume
Definition: PndGeoHitList.h:49
virtual ~PndGeoHitList()
TString fVolName
Definition: PndGeoHitList.h:46
void SetAllInvisible()
void AddHit(FairHit *hit, Bool_t vis=kTRUE)
void AddHits(TClonesArray *hitList, Bool_t vis=kTRUE)
void CreateGeoHit(TGeoMatrix *mat)
void RemoveGeoHits(Int_t from)
TString fGroupName
Definition: PndGeoHitList.h:45
Double_t
TGeoVolume * fGroupVolume
Definition: PndGeoHitList.h:48
TGeoVolume * fBaseVolume
Definition: PndGeoHitList.h:50
Int_t GetNodeId(TString NodeName)
Double_t z
std::vector< CbmEmcHit * > hitList
Definition: digi_analys.C:26
ClassDef(PndGeoHitList, 1)
void SetHits(TClonesArray *hitList, Bool_t vis=kTRUE)
TString GetName() const
Definition: PndGeoHitList.h:34
Double_t x
PndGeoHitList & operator=(const PndGeoHitList &)=delete
void CreateGeoHits(Int_t number)
void SetGeoHitsInvisible(Int_t from)
std::vector< TGeoNode * > fNodeList
Definition: PndGeoHitList.h:47
PndSdsMCPoint * hit
Definition: anasim.C:70
Double_t y
const std::vector< TGeoNode * > GetNodes() const
Definition: PndGeoHitList.h:35
void CreateNewGroup(TString groupName, TString topNodeName, TGeoVolume *baseVolume)