22#include "FairDetector.h"
24#include "TLorentzVector.h"
37class TGeoPhysicalNode;
50 CbmTof(
const char* name, Bool_t active);
92 virtual void Print(Option_t* =
"")
const;
109 virtual void CopyClones(TClonesArray* cl1, TClonesArray* cl2, Int_t offset);
125 void SetCounterActive(Int_t iModuleType, Int_t iModuleIndex, Int_t iCounterIndex);
146 void SetCounterInBeam(Int_t iModuleType, Int_t iModuleIndex, Int_t iCounterIndex);
149 virtual Bool_t
IsSensitive(
const std::string& name);
183 std::map<std::tuple<Int_t, Int_t, Int_t>, std::pair<TString, TGeoPhysicalNode*>>
196 CbmTofPoint*
AddHit(Int_t trackID, Int_t detID, TVector3
pos, TVector3 mom, Double_t time, Double_t length,
221 fPos.SetXYZM(0.0, 0.0, 0.0, 0.0);
222 fMom.SetXYZM(0.0, 0.0, 0.0, 0.0);
Geometric intersection of a MC track with a TOFb detector.
virtual void CopyClones(TClonesArray *cl1, TClonesArray *cl2, Int_t offset)
TLorentzVector fMom
position
Int_t fCurrentCounterIndex
Current module index.
CbmTof & operator=(const CbmTof &)
TGeoCombiTrans * fCombiTrans
Interface to gMC and gGeoManager.
Int_t fOutputTreeEntry
Map of counters in beam.
TClonesArray * fTofCollection
std::set< Int_t > fInactiveCounterIDs
Set of inactive counters.
TString fCurrentNodePath
Path to physical ToF node.
virtual void Initialize()
virtual Bool_t ProcessHits(FairVolume *vol=0)
virtual void ConstructGeometry()
virtual void FinishEvent()
Int_t fPosIndex
energy loss
Bool_t fbOnePointPerTrack
Name of Volume to be imported.
CbmTofPoint * AddHit(Int_t trackID, Int_t detID, TVector3 pos, TVector3 mom, Double_t time, Double_t length, Double_t eLoss)
std::set< std::tuple< Int_t, Int_t, Int_t > > fInactiveCounters
Set of active counters.
virtual void Print(Option_t *="") const
CbmTofGeoHandler * fGeoHandler
Hit collection.
virtual void EndOfEvent()
virtual void ConstructRootGeometry(TGeoMatrix *shift=NULL)
void SetProcessAnyTrack(Bool_t bProcess=kTRUE)
std::set< std::tuple< Int_t, Int_t, Int_t > > fActiveCounters
Current counter index.
void SetCounterActive(Int_t iModuleType, Int_t iModuleIndex, Int_t iCounterIndex)
std::string fVolumeName
Transformation matrix for geometry positioning.
void SetAllCountersInactive(Bool_t bInactive=kTRUE)
Int_t fCurrentModuleIndex
Current module type.
void GenerateOnePointPerTrack(Bool_t bOnePointPerTrack=kTRUE)
std::map< std::tuple< Int_t, Int_t, Int_t >, std::pair< TString, TGeoPhysicalNode * > > fCountersInBeam
Set of inactive counter IDs.
TLorentzVector fPos
volume id
void SetCounterInactive(Int_t iModuleType, Int_t iModuleIndex, Int_t iCounterIndex)
Bool_t fbAllCountersInactive
virtual TClonesArray * GetCollection(Int_t iColl) const
Int_t fVolumeID
track index
Bool_t CheckIfSensitive(std::string name)
Int_t fCurrentModuleType
Path to current physical node.
void SetCounterInBeam(Int_t iModuleType, Int_t iModuleIndex, Int_t iCounterIndex)
virtual Bool_t IsSensitive(const std::string &name)