CbmRoot
CbmTof Class Reference

#include <CbmTof.h>

Inheritance diagram for CbmTof:
[legend]
Collaboration diagram for CbmTof:
[legend]

Public Member Functions

 CbmTof ()
 
 CbmTof (const char *name, Bool_t active)
 
virtual ~CbmTof ()
 
virtual void PreTrack ()
 
virtual void FinishEvent ()
 
virtual Bool_t ProcessHits (FairVolume *vol=0)
 
virtual void EndOfEvent ()
 
virtual void Register ()
 
virtual TClonesArray * GetCollection (Int_t iColl) const
 
virtual void Print (Option_t *="") const
 
virtual void Reset ()
 
virtual void CopyClones (TClonesArray *cl1, TClonesArray *cl2, Int_t offset)
 
virtual void ConstructGeometry ()
 
virtual void Initialize ()
 
void GenerateOnePointPerTrack (Bool_t bOnePointPerTrack=kTRUE)
 
void SetProcessAnyTrack (Bool_t bProcess=kTRUE)
 
void SetAllCountersInactive (Bool_t bInactive=kTRUE)
 
void SetCounterActive (Int_t iModuleType, Int_t iModuleIndex, Int_t iCounterIndex)
 
void SetCounterInactive (Int_t iModuleType, Int_t iModuleIndex, Int_t iCounterIndex)
 
void SetCounterInBeam (Int_t iModuleType, Int_t iModuleIndex, Int_t iCounterIndex)
 

Private Member Functions

CbmTofPointAddHit (Int_t trackID, Int_t detID, TVector3 pos, TVector3 mom, Double_t time, Double_t length, Double_t eLoss)
 
void ResetParameters ()
 
Bool_t CheckIfSensitive (std::string name)
 
virtual void ConstructRootGeometry (TGeoMatrix *shift=NULL)
 
void CreateInBeamNodes ()
 
 CbmTof (const CbmTof &)
 
CbmTofoperator= (const CbmTof &)
 

Private Attributes

Int_t fTrackID
 
Int_t fVolumeID
 track index More...
 
TLorentzVector fPos
 volume id More...
 
TLorentzVector fMom
 position More...
 
Double32_t fTime
 momentum More...
 
Double32_t fLength
 time More...
 
Double32_t fELoss
 length More...
 
Int_t fPosIndex
 energy loss More...
 
TClonesArray * fTofCollection
 
CbmTofGeoHandlerfGeoHandler
 Hit collection. More...
 
TGeoCombiTrans * fCombiTrans
 Interface to gMC and gGeoManager. More...
 
std::string fVolumeName
 Transformation matrix for geometry positioning. More...
 
Bool_t fbOnePointPerTrack
 Name of Volume to be imported. More...
 
Bool_t fbIsNewTrack
 
TString fTofNodePath
 
TString fCurrentNodePath
 Path to physical ToF node. More...
 
Int_t fCurrentModuleType
 Path to current physical node. More...
 
Int_t fCurrentModuleIndex
 Current module type. More...
 
Int_t fCurrentCounterIndex
 Current module index. More...
 
std::set< std::tuple< Int_t, Int_t, Int_t > > fActiveCounters
 Current counter index. More...
 
std::set< std::tuple< Int_t, Int_t, Int_t > > fInactiveCounters
 Set of active counters. More...
 
std::set< Int_t > fInactiveCounterIDs
 Set of inactive counters. More...
 
std::map< std::tuple< Int_t, Int_t, Int_t >, std::pair< TString, TGeoPhysicalNode * > > fCountersInBeam
 Set of inactive counter IDs. More...
 
Int_t fOutputTreeEntry
 Map of counters in beam. More...
 
Bool_t fbProcessAnyTrack
 
Bool_t fbAllCountersInactive
 

Detailed Description

Definition at line 35 of file CbmTof.h.

Constructor & Destructor Documentation

◆ CbmTof() [1/3]

CbmTof::CbmTof ( )

Default constructor

Definition at line 38 of file CbmTof.cxx.

◆ CbmTof() [2/3]

CbmTof::CbmTof ( const char *  name,
Bool_t  active 
)

Standard constructor.

Parameters
namedetetcor name
activesensitivity flag

Definition at line 72 of file CbmTof.cxx.

◆ ~CbmTof()

CbmTof::~CbmTof ( )
virtual

Destructor

Definition at line 106 of file CbmTof.cxx.

References fCountersInBeam, fGeoHandler, and fTofCollection.

◆ CbmTof() [3/3]

CbmTof::CbmTof ( const CbmTof )
private

Member Function Documentation

◆ AddHit()

CbmTofPoint * CbmTof::AddHit ( Int_t  trackID,
Int_t  detID,
TVector3  pos,
TVector3  mom,
Double_t  time,
Double_t  length,
Double_t  eLoss 
)
private

Private method AddHit

Adds a CbmTofPoint to the HitCollection

Definition at line 593 of file CbmTof.cxx.

References fTofCollection, and pos.

Referenced by ProcessHits().

◆ CheckIfSensitive()

Bool_t CbmTof::CheckIfSensitive ( std::string  name)
private

◆ ConstructGeometry()

void CbmTof::ConstructGeometry ( )
virtual

Virtual method Construct geometry

Constructs the TOF geometry

Definition at line 511 of file CbmTof.cxx.

References ConstructRootGeometry(), and CreateInBeamNodes().

◆ ConstructRootGeometry()

void CbmTof::ConstructRootGeometry ( TGeoMatrix *  shift = NULL)
privatevirtual

◆ CopyClones()

void CbmTof::CopyClones ( TClonesArray *  cl1,
TClonesArray *  cl2,
Int_t  offset 
)
virtual

Virtual method CopyClones

Copies the hit collection with a given track index offset

Parameters
cl1Origin
cl2Target
offsetIndex offset

Definition at line 496 of file CbmTof.cxx.

References fPosIndex, and i.

◆ CreateInBeamNodes()

void CbmTof::CreateInBeamNodes ( )
private

Definition at line 562 of file CbmTof.cxx.

References fCountersInBeam.

Referenced by ConstructGeometry().

◆ EndOfEvent()

void CbmTof::EndOfEvent ( )
virtual

Virtual method EndOfEvent

If verbosity level is set, print hit collection at the end of the event and resets it afterwards.

Definition at line 449 of file CbmTof.cxx.

References fPosIndex, fTofCollection, and Print().

◆ FinishEvent()

◆ GenerateOnePointPerTrack()

void CbmTof::GenerateOnePointPerTrack ( Bool_t  bOnePointPerTrack = kTRUE)
inline

Definition at line 117 of file CbmTof.h.

References fbOnePointPerTrack.

◆ GetCollection()

TClonesArray * CbmTof::GetCollection ( Int_t  iColl) const
virtual

Accessor to the hit collection

Definition at line 466 of file CbmTof.cxx.

References fTofCollection.

◆ Initialize()

void CbmTof::Initialize ( )
virtual

◆ operator=()

CbmTof& CbmTof::operator= ( const CbmTof )
private

◆ PreTrack()

void CbmTof::PreTrack ( )
virtual

Definition at line 157 of file CbmTof.cxx.

References fbIsNewTrack, and fbOnePointPerTrack.

◆ Print()

void CbmTof::Print ( Option_t *  = "") const
virtual

Virtual method Print

Screen output of hit collection.

Definition at line 476 of file CbmTof.cxx.

References fTofCollection, and i.

Referenced by EndOfEvent().

◆ ProcessHits()

◆ Register()

void CbmTof::Register ( )
virtual

Virtual method Register

Registers the hit collection in the ROOT manager.

Definition at line 458 of file CbmTof.cxx.

References fTofCollection.

◆ Reset()

void CbmTof::Reset ( )
virtual

Virtual method Reset

Clears the hit collection

Definition at line 488 of file CbmTof.cxx.

References fTofCollection, and ResetParameters().

◆ ResetParameters()

void CbmTof::ResetParameters ( )
inlineprivate

Private method ResetParameters

Resets the private members for the track parameters

Definition at line 231 of file CbmTof.h.

References fELoss, fLength, fMom, fPos, fPosIndex, fTime, fTrackID, and fVolumeID.

Referenced by ProcessHits(), and Reset().

◆ SetAllCountersInactive()

void CbmTof::SetAllCountersInactive ( Bool_t  bInactive = kTRUE)
inline

Definition at line 123 of file CbmTof.h.

References fbAllCountersInactive.

◆ SetCounterActive()

void CbmTof::SetCounterActive ( Int_t  iModuleType,
Int_t  iModuleIndex,
Int_t  iCounterIndex 
)

Definition at line 533 of file CbmTof.cxx.

References fActiveCounters.

◆ SetCounterInactive()

void CbmTof::SetCounterInactive ( Int_t  iModuleType,
Int_t  iModuleIndex,
Int_t  iCounterIndex 
)

Set a counter inactive

Parameters
iModuleTypetype of inactive module
iModuleIndexindex of inactive module
iCounterIndexindex of inactive counter

If a counter is set inactive, no CbmTofPoint objects will be created for collision products traversing its Cell volumes.

Definition at line 543 of file CbmTof.cxx.

References fInactiveCounters.

◆ SetCounterInBeam()

void CbmTof::SetCounterInBeam ( Int_t  iModuleType,
Int_t  iModuleIndex,
Int_t  iCounterIndex 
)

Set a counter in beam

Parameters
iModuleTypetype of inactive module
iModuleIndexindex of inactive module
iCounterIndexindex of inactive counter

If a counter is set in beam, the beam line will be extrapolated to the counter coordinate system and create a CbmTofPoint object if it actually traverses the counter volume.

Definition at line 553 of file CbmTof.cxx.

References fCountersInBeam.

◆ SetProcessAnyTrack()

void CbmTof::SetProcessAnyTrack ( Bool_t  bProcess = kTRUE)
inline

Definition at line 120 of file CbmTof.h.

References fbProcessAnyTrack.

Member Data Documentation

◆ fActiveCounters

std::set<std::tuple<Int_t, Int_t, Int_t> > CbmTof::fActiveCounters
private

Current counter index.

Definition at line 184 of file CbmTof.h.

Referenced by Initialize(), and SetCounterActive().

◆ fbAllCountersInactive

Bool_t CbmTof::fbAllCountersInactive
private

Definition at line 197 of file CbmTof.h.

Referenced by SetAllCountersInactive().

◆ fbIsNewTrack

Bool_t CbmTof::fbIsNewTrack
private

Definition at line 175 of file CbmTof.h.

Referenced by PreTrack(), and ProcessHits().

◆ fbOnePointPerTrack

Bool_t CbmTof::fbOnePointPerTrack
private

Name of Volume to be imported.

Definition at line 174 of file CbmTof.h.

Referenced by FinishEvent(), GenerateOnePointPerTrack(), Initialize(), PreTrack(), and ProcessHits().

◆ fbProcessAnyTrack

Bool_t CbmTof::fbProcessAnyTrack
private

Definition at line 195 of file CbmTof.h.

Referenced by ProcessHits(), and SetProcessAnyTrack().

◆ fCombiTrans

TGeoCombiTrans* CbmTof::fCombiTrans
private

Interface to gMC and gGeoManager.

Definition at line 170 of file CbmTof.h.

Referenced by ConstructRootGeometry().

◆ fCountersInBeam

std::map<std::tuple<Int_t, Int_t, Int_t>, std::pair<TString, TGeoPhysicalNode*> > CbmTof::fCountersInBeam
private

Set of inactive counter IDs.

Definition at line 191 of file CbmTof.h.

Referenced by CreateInBeamNodes(), FinishEvent(), SetCounterInBeam(), and ~CbmTof().

◆ fCurrentCounterIndex

Int_t CbmTof::fCurrentCounterIndex
private

Current module index.

Definition at line 181 of file CbmTof.h.

Referenced by CheckIfSensitive().

◆ fCurrentModuleIndex

Int_t CbmTof::fCurrentModuleIndex
private

Current module type.

Definition at line 180 of file CbmTof.h.

Referenced by CheckIfSensitive().

◆ fCurrentModuleType

Int_t CbmTof::fCurrentModuleType
private

Path to current physical node.

Definition at line 179 of file CbmTof.h.

Referenced by CheckIfSensitive().

◆ fCurrentNodePath

TString CbmTof::fCurrentNodePath
private

Path to physical ToF node.

Definition at line 178 of file CbmTof.h.

◆ fELoss

Double32_t CbmTof::fELoss
private

length

Definition at line 163 of file CbmTof.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fGeoHandler

CbmTofGeoHandler* CbmTof::fGeoHandler
private

Hit collection.

Definition at line 167 of file CbmTof.h.

Referenced by FinishEvent(), Initialize(), ProcessHits(), and ~CbmTof().

◆ fInactiveCounterIDs

std::set<Int_t> CbmTof::fInactiveCounterIDs
private

Set of inactive counters.

Definition at line 187 of file CbmTof.h.

Referenced by Initialize(), and ProcessHits().

◆ fInactiveCounters

std::set<std::tuple<Int_t, Int_t, Int_t> > CbmTof::fInactiveCounters
private

Set of active counters.

Definition at line 186 of file CbmTof.h.

Referenced by CheckIfSensitive(), Initialize(), and SetCounterInactive().

◆ fLength

Double32_t CbmTof::fLength
private

time

Definition at line 162 of file CbmTof.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fMom

TLorentzVector CbmTof::fMom
private

position

Definition at line 160 of file CbmTof.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fOutputTreeEntry

Int_t CbmTof::fOutputTreeEntry
private

Map of counters in beam.

Definition at line 193 of file CbmTof.h.

Referenced by FinishEvent(), and ProcessHits().

◆ fPos

TLorentzVector CbmTof::fPos
private

volume id

Definition at line 159 of file CbmTof.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fPosIndex

Int_t CbmTof::fPosIndex
private

energy loss

Definition at line 165 of file CbmTof.h.

Referenced by CopyClones(), EndOfEvent(), and ResetParameters().

◆ fTime

Double32_t CbmTof::fTime
private

momentum

Definition at line 161 of file CbmTof.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fTofCollection

TClonesArray* CbmTof::fTofCollection
private

◆ fTofNodePath

TString CbmTof::fTofNodePath
private

Definition at line 177 of file CbmTof.h.

◆ fTrackID

Int_t CbmTof::fTrackID
private

Track information to be stored until the track leaves the active volume.

Definition at line 157 of file CbmTof.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fVolumeID

Int_t CbmTof::fVolumeID
private

track index

Definition at line 158 of file CbmTof.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fVolumeName

std::string CbmTof::fVolumeName
private

Transformation matrix for geometry positioning.

Definition at line 172 of file CbmTof.h.


The documentation for this class was generated from the following files: