15#include "FairDetector.h"
16#include "FairRootManager.h"
18#include "TClonesArray.h"
19#include "TLorentzVector.h"
41 CbmPsdMC(Bool_t active = kTRUE,
const char* name =
"PSDMC");
57 return (TString(name).Contains(
"scint", TString::kIgnoreCase) ? kTRUE : kFALSE);
100 virtual void Print(Option_t* opt =
"")
const;
112 virtual Bool_t
ProcessHits(FairVolume* volume = 0);
119 virtual void Register() { FairRootManager::Instance()->Register(
"PsdPoint", GetName(),
fPsdPoints, kTRUE); }
Class for the MC transport of the CBM-PSD.
Int_t fLayerID
energy loss
void SetPosition(Double_t xPos, Double_t zPos, Double_t rotY)
Define the PSD position in the cave.
CbmPsdMC(const CbmPsdMC &)=delete
TClonesArray * fPsdPoints
virtual void ConstructGeometry()
Construct the PSD geometry in the TGeoManager.
virtual void Reset()
Clear output array.
CbmPsdMC(Bool_t active=kTRUE, const char *name="PSDMC")
Constructor.
virtual void EndOfEvent()
Action at end of event.
virtual TClonesArray * GetCollection(Int_t iColl) const
Get output array of CbmPsdPoints.
virtual Bool_t ProcessHits(FairVolume *volume=0)
Stepping action.
void RegisterSensitiveVolumes(TGeoNode *node)
module ID
virtual Bool_t CheckIfSensitive(std::string name)
Check whether a volume is sensitive.
CbmPsdMC operator=(const CbmPsdMC &)=delete
Int_t fAddress
track index
TLorentzVector fMom
position
Int_t fTrackID
Output array.
TLorentzVector fPos
address (module and layer)
virtual void Print(Option_t *opt="") const
Screen log Prints current number of StsPoints in array. Virtual from TObject.
virtual Bool_t IsSensitive(const std::string &name)
Check whether a volume is sensitive.
virtual void Register()
Register the output array.