23#include <FairDetector.h>
24#include <FairRootManager.h>
26#include <TClonesArray.h>
27#include <TLorentzVector.h>
39 CbmFsdMC(Bool_t active = kTRUE,
const char* name =
"FSDMC")
60 return (TString(name).Contains(
"scint", TString::kIgnoreCase) ? kTRUE : kFALSE);
112 virtual void Print(Option_t* opt =
"")
const;
124 virtual Bool_t
ProcessHits(FairVolume* volume = 0);
131 virtual void Register() { FairRootManager::Instance()->Register(
"FsdPoint", GetName(),
fFsdPoints, kTRUE); }
XPU_D constexpr auto ToIntegralType(T enumerator) -> typename std::underlying_type< T >::type
@ kFsd
Forward spectator detector.
Class for the MC transport of the CBM-FSD.
virtual Bool_t CheckIfSensitive(std::string name)
Check whether a volume is sensitive.
virtual Bool_t ProcessHits(FairVolume *volume=0)
Stepping action.
CbmFsdMC operator=(const CbmFsdMC &)=delete
virtual void Register()
Register the output array.
virtual Bool_t IsSensitive(const std::string &name)
Check whether a volume is sensitive.
Int_t fTrackID
Output array.
TLorentzVector fMom
position
virtual void Print(Option_t *opt="") const
Screen log Prints current number of StsPoints in array. Virtual from TObject.
TClonesArray * fFsdPoints
CbmFsdMC(Bool_t active=kTRUE, const char *name="FSDMC")
Constructor.
virtual void Reset()
Clear output array.
CbmFsdMC(const CbmFsdMC &)=delete
TLorentzVector fPos
address (module and layer)
Int_t fAddress
track index
virtual void EndOfEvent()
Action at end of event.
virtual void ConstructGeometry()
Construct the FSD geometry in the TGeoManager.
void RegisterSensitiveVolumes(TGeoNode *node)
energy loss
virtual void Initialize()
Initialisation.
virtual TClonesArray * GetCollection(Int_t iColl) const
Get output array of CbmFsdPoints.