CbmRoot
Loading...
Searching...
No Matches
CbmTofTrackingInterface Class Reference

#include <CbmTofTrackingInterface.h>

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

Public Member Functions

 CbmTofTrackingInterface ()
 Default constructor.
 
 ~CbmTofTrackingInterface ()
 Destructor.
 
 CbmTofTrackingInterface (const CbmTofTrackingInterface &)=delete
 Copy constructor.
 
 CbmTofTrackingInterface (CbmTofTrackingInterface &&)=delete
 Move constructor.
 
CbmTofTrackingInterfaceoperator= (const CbmTofTrackingInterface &)=delete
 Copy assignment operator.
 
CbmTofTrackingInterfaceoperator= (CbmTofTrackingInterface &&)=delete
 Move assignment operator.
 
std::string GetDetectorName () const override
 Gets name of this subsystem.
 
std::tuple< double, double > GetStereoAnglesSensor (int) const override
 Gets stereo angles of the two independent measured coordinates.
 
int GetTrackingStationIndex (const CbmHit *hit) const override
 Gets a tracking station of a ToF hit.
 
int GetTrackingStationIndex (int address) const override
 Gets a tracking station by the address of element.
 
int GetTrackingStationIndex (const FairMCPoint *point) const override
 Gets a tracking station of a FairMCPoint.
 
double GetZrefModule (int address) override
 Gets reference z of the detector module (e.g., RPC for TOF)
 
bool IsTimeInfoProvided (int) const override
 Check if station provides time measurements.
 
InitStatus Init () override
 FairTask: Init method.
 
InitStatus ReInit () override
 FairTask: ReInit method.
 
void SetParContainers () override
 FairTask: sets parameter containers up.
 
bool Check () const
 Checks detector interface: boundary conditions of the parameters.
 
int GetNtrackingStations () const
 Gets actual number of stations, provided by the current geometry setup.
 
double GetXmax (int stationId) const
 Gets upper bound of a station passive volume along the X-axis.
 
double GetXmin (int stationId) const
 Gets lower bound of a station passive volume along the X-axis.
 
double GetYmax (int stationId) const
 Gets upper bound of a station passive volume along the Y-axis.
 
double GetYmin (int stationId) const
 Gets lower bound of a station passive volume along the Y-axis.
 
double GetZref (int stationId) const
 Gets reference z of the station passive volume.
 
double GetZmin (int stationId) const
 Gets min z of the station passive volume.
 
double GetZmax (int stationId) const
 Gets max z of the station passive volume.
 
double GetActiveXmin (int stationId) const
 Gets lower bound of the station active volume along x-axis.
 
double GetActiveXmax (int stationId) const
 Gets upper bound of the station active volume along x-axis.
 
double GetActiveYmin (int stationId) const
 Gets lower bound of the station active volume along y-axis.
 
double GetActiveYmax (int stationId) const
 Gets upper bound of the station active volume along y-axis.
 
double GetActiveZmin (int stationId) const
 Gets lower bound of the station active volume along z-axis.
 
double GetActiveZmax (int stationId) const
 Gets upper bound of the station active volume along z-axis.
 
virtual std::tuple< double, double, double > GetHitRanges (const CbmPixelHit &hit) const
 Gets x,y,t ranges of a CbmPixelHit.
 
std::string ToString () const
 Prints all the parameters into table and saves the table as a string.
 

Static Public Member Functions

static CbmTofTrackingInterfaceInstance ()
 Gets pointer to the instance of the CbmTofTrackingInterface.
 

Static Public Attributes

static constexpr bool kUseDynamicCast {true}
 

Protected Member Functions

std::vector< TString > CollectNodes (const TString &detector, const TString &component, const TString &path, TGeoNode *pNode)
 Collects paths of the components.
 
VolumeInfo ReadVolume (const TString &path)
 Creates volume info from a geo node provided by path.
 

Protected Attributes

std::vector< VolumeInfofvStationFullVolume {}
 Geometric properties of each station passive volume.
 
std::vector< VolumeInfofvStationActiveVolume {}
 Geometric properties of each station active volume.
 

Static Protected Attributes

static constexpr bool kLegacy {false}
 If use legacy tracking detector interface definition FIXME: Remove after testing.
 

Private Member Functions

 ClassDefOverride (CbmTofTrackingInterface, 0)
 

Private Attributes

CbmTofDigiParfDigiPar {nullptr}
 
CbmTofDigiBdfParfDigiBdfPar {nullptr}
 
std::vector< double > fTofStationZ {}
 Centers of TOF stations along z-axis [cm].
 
std::vector< double > fTofStationZMin {}
 Lower bounds of TOF stations along z-axis [cm].
 
std::vector< double > fTofStationZMax {}
 Upper bounds of TOF stations along z-axis [cm].
 

Static Private Attributes

static CbmTofTrackingInterfacefpInstance {nullptr}
 Instance of the class.
 

Detailed Description

Class CbmTofTrackingInterface is a CbmTrackingDetetorInterfaceInit subtask, which provides necessary methods for L1 tracker to access the geometry and dataflow settings.

Definition at line 33 of file CbmTofTrackingInterface.h.

Constructor & Destructor Documentation

◆ CbmTofTrackingInterface() [1/3]

CbmTofTrackingInterface::CbmTofTrackingInterface ( )

Default constructor.

◆ ~CbmTofTrackingInterface()

CbmTofTrackingInterface::~CbmTofTrackingInterface ( )

Destructor.

Definition at line 37 of file CbmTofTrackingInterface.cxx.

References fpInstance.

◆ CbmTofTrackingInterface() [2/3]

CbmTofTrackingInterface::CbmTofTrackingInterface ( const CbmTofTrackingInterface & )
delete

Copy constructor.

◆ CbmTofTrackingInterface() [3/3]

CbmTofTrackingInterface::CbmTofTrackingInterface ( CbmTofTrackingInterface && )
delete

Move constructor.

Member Function Documentation

◆ Check()

◆ ClassDefOverride()

CbmTofTrackingInterface::ClassDefOverride ( CbmTofTrackingInterface ,
0  )
private

◆ CollectNodes()

std::vector< TString > CbmTrackingDetectorInterfaceBase::CollectNodes ( const TString & detector,
const TString & component,
const TString & path,
TGeoNode * pNode )
protectedinherited

Collects paths of the components.

Parameters
[in]detectorName hint of the detector
[in]componentName of the active node component
[in,out]pathPath to the node
[in,out]pNodePointer to the node
Returns
Vector of paths to the matched components

Definition at line 127 of file CbmTrackingDetectorInterfaceBase.cxx.

References CbmTrackingDetectorInterfaceBase::CollectNodes().

Referenced by CbmTrackingDetectorInterfaceBase::CollectNodes(), Init(), and CbmTrdTrackingInterface::Init().

◆ GetActiveXmax()

double CbmTrackingDetectorInterfaceBase::GetActiveXmax ( int stationId) const
inlineinherited

Gets upper bound of the station active volume along x-axis.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
max X of the station active volume [cm]

Definition at line 161 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::fvStationActiveVolume.

Referenced by CbmTrackingDetectorInterfaceBase::ToString().

◆ GetActiveXmin()

double CbmTrackingDetectorInterfaceBase::GetActiveXmin ( int stationId) const
inlineinherited

Gets lower bound of the station active volume along x-axis.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
min X of the station active volume [cm]

Definition at line 156 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::fvStationActiveVolume.

Referenced by CbmTrackingDetectorInterfaceBase::ToString().

◆ GetActiveYmax()

double CbmTrackingDetectorInterfaceBase::GetActiveYmax ( int stationId) const
inlineinherited

Gets upper bound of the station active volume along y-axis.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
max Y of the station active volume [cm]

Definition at line 171 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::fvStationActiveVolume.

Referenced by CbmTrackingDetectorInterfaceBase::ToString().

◆ GetActiveYmin()

double CbmTrackingDetectorInterfaceBase::GetActiveYmin ( int stationId) const
inlineinherited

Gets lower bound of the station active volume along y-axis.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
min Y of the station active volume [cm]

Definition at line 166 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::fvStationActiveVolume.

Referenced by CbmTrackingDetectorInterfaceBase::ToString().

◆ GetActiveZmax()

double CbmTrackingDetectorInterfaceBase::GetActiveZmax ( int stationId) const
inlineinherited

Gets upper bound of the station active volume along z-axis.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
max Z of the station active volume [cm]

Definition at line 181 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::fvStationActiveVolume.

Referenced by CbmTrackingDetectorInterfaceBase::GetZref(), and CbmTrackingDetectorInterfaceBase::ToString().

◆ GetActiveZmin()

double CbmTrackingDetectorInterfaceBase::GetActiveZmin ( int stationId) const
inlineinherited

Gets lower bound of the station active volume along z-axis.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
min Z of the station active volume [cm]

Definition at line 176 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::fvStationActiveVolume.

Referenced by CbmTrackingDetectorInterfaceBase::GetZref(), and CbmTrackingDetectorInterfaceBase::ToString().

◆ GetDetectorName()

std::string CbmTofTrackingInterface::GetDetectorName ( ) const
inlineoverridevirtual

Gets name of this subsystem.

Implements CbmTrackingDetectorInterfaceBase.

Definition at line 54 of file CbmTofTrackingInterface.h.

◆ GetHitRanges()

virtual std::tuple< double, double, double > CbmTrackingDetectorInterfaceBase::GetHitRanges ( const CbmPixelHit & hit) const
inlinevirtualinherited

Gets x,y,t ranges of a CbmPixelHit.

Parameters
hitA hit
Returns
range X, Y, T

Reimplemented in CbmTrdTrackingInterface.

Definition at line 191 of file CbmTrackingDetectorInterfaceBase.h.

References CbmPixelHit::GetDx(), CbmPixelHit::GetDy(), and CbmHit::GetTimeError().

Referenced by CbmTrdTrackingInterface::GetHitRanges().

◆ GetNtrackingStations()

int CbmTrackingDetectorInterfaceBase::GetNtrackingStations ( ) const
inlineinherited

◆ GetStereoAnglesSensor()

std::tuple< double, double > CbmTofTrackingInterface::GetStereoAnglesSensor ( int ) const
inlineoverridevirtual

Gets stereo angles of the two independent measured coordinates.

Note
The tracking does not use this method. It is only used by the QA task.
Parameters
addressdetector unique identifier
Returns
[phiU, phiV] - Stereo angles [rad]

Implements CbmTrackingDetectorInterfaceBase.

Definition at line 60 of file CbmTofTrackingInterface.h.

◆ GetTrackingStationIndex() [1/3]

int CbmTofTrackingInterface::GetTrackingStationIndex ( const CbmHit * hit) const
inlineoverridevirtual

Gets a tracking station of a ToF hit.

Parameters
hitA pointer to ToF hit
Returns
Local index of the tracking station

Implements CbmTrackingDetectorInterfaceBase.

Definition at line 68 of file CbmTofTrackingInterface.h.

References CbmHit::GetAddress(), and GetTrackingStationIndex().

Referenced by GetTrackingStationIndex(), and GetTrackingStationIndex().

◆ GetTrackingStationIndex() [2/3]

int CbmTofTrackingInterface::GetTrackingStationIndex ( const FairMCPoint * point) const
inlineoverridevirtual

Gets a tracking station of a FairMCPoint.

Parameters
pointA pointer to FairMCHit
Returns
Local index of the tracking station

Implements CbmTrackingDetectorInterfaceBase.

Definition at line 83 of file CbmTofTrackingInterface.h.

References GetTrackingStationIndex().

◆ GetTrackingStationIndex() [3/3]

int CbmTofTrackingInterface::GetTrackingStationIndex ( int address) const
inlineoverridevirtual

Gets a tracking station by the address of element.

Parameters
addressUnique element address
Returns
Local index of the tracking station

Implements CbmTrackingDetectorInterfaceBase.

Definition at line 73 of file CbmTofTrackingInterface.h.

References fDigiBdfPar, CbmTofAddress::GetRpcId(), CbmTofAddress::GetSmId(), CbmTofAddress::GetSmType(), and CbmTofDigiBdfPar::GetTrackingStation().

◆ GetXmax()

double CbmTrackingDetectorInterfaceBase::GetXmax ( int stationId) const
inlineinherited

Gets upper bound of a station passive volume along the X-axis.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
Size of station along the X-axis [cm]

Definition at line 116 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.

Referenced by CbmTrackingDetectorInterfaceBase::Check(), and CbmTrackingDetectorInterfaceBase::ToString().

◆ GetXmin()

double CbmTrackingDetectorInterfaceBase::GetXmin ( int stationId) const
inlineinherited

Gets lower bound of a station passive volume along the X-axis.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
Size of station along the X-axis [cm]

Definition at line 121 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.

Referenced by CbmTrackingDetectorInterfaceBase::Check(), and CbmTrackingDetectorInterfaceBase::ToString().

◆ GetYmax()

double CbmTrackingDetectorInterfaceBase::GetYmax ( int stationId) const
inlineinherited

Gets upper bound of a station passive volume along the Y-axis.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
Size of station along the Y-axis [cm]

Definition at line 126 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.

Referenced by CbmTrackingDetectorInterfaceBase::Check(), and CbmTrackingDetectorInterfaceBase::ToString().

◆ GetYmin()

double CbmTrackingDetectorInterfaceBase::GetYmin ( int stationId) const
inlineinherited

Gets lower bound of a station passive volume along the Y-axis.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
Size of station along the Y-axis [cm]

Definition at line 131 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.

Referenced by CbmTrackingDetectorInterfaceBase::Check(), and CbmTrackingDetectorInterfaceBase::ToString().

◆ GetZmax()

double CbmTrackingDetectorInterfaceBase::GetZmax ( int stationId) const
inlineinherited

Gets max z of the station passive volume.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
max Z of the station [cm]

Definition at line 151 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.

Referenced by CbmTrackingDetectorInterfaceBase::Check(), and CbmTrackingDetectorInterfaceBase::ToString().

◆ GetZmin()

double CbmTrackingDetectorInterfaceBase::GetZmin ( int stationId) const
inlineinherited

Gets min z of the station passive volume.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
min Z of the station [cm]

Definition at line 146 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.

Referenced by CbmTrackingDetectorInterfaceBase::Check(), and CbmTrackingDetectorInterfaceBase::ToString().

◆ GetZref()

double CbmTrackingDetectorInterfaceBase::GetZref ( int stationId) const
inlineinherited

Gets reference z of the station passive volume.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
Reference z position of the station [cm]

Definition at line 136 of file CbmTrackingDetectorInterfaceBase.h.

References CbmTrackingDetectorInterfaceBase::GetActiveZmax(), and CbmTrackingDetectorInterfaceBase::GetActiveZmin().

Referenced by CbmTrackingDetectorInterfaceBase::Check(), CbmTrackingDetectorInterfaceBase::GetZrefModule(), and CbmTrackingDetectorInterfaceBase::ToString().

◆ GetZrefModule()

double CbmTofTrackingInterface::GetZrefModule ( int address)
inlineoverridevirtual

Gets reference z of the detector module (e.g., RPC for TOF)

Parameters
addressAddress of the module
Returns
Reference z of module (if not defined, the ref z of the station will be returned)

Reimplemented from CbmTrackingDetectorInterfaceBase.

Definition at line 91 of file CbmTofTrackingInterface.h.

References fDigiPar, and CbmTofDigiPar::GetCell().

◆ Init()

◆ Instance()

◆ IsTimeInfoProvided()

bool CbmTofTrackingInterface::IsTimeInfoProvided ( int ) const
inlineoverridevirtual

Check if station provides time measurements.

Parameters
stationIdTracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1])
Returns
Flag: true - station provides time measurements, false - station does not provide time measurements

Implements CbmTrackingDetectorInterfaceBase.

Definition at line 101 of file CbmTofTrackingInterface.h.

◆ operator=() [1/2]

CbmTofTrackingInterface & CbmTofTrackingInterface::operator= ( CbmTofTrackingInterface && )
delete

Move assignment operator.

◆ operator=() [2/2]

CbmTofTrackingInterface & CbmTofTrackingInterface::operator= ( const CbmTofTrackingInterface & )
delete

Copy assignment operator.

◆ ReadVolume()

CbmTrackingDetectorInterfaceBase::VolumeInfo CbmTrackingDetectorInterfaceBase::ReadVolume ( const TString & path)
protectedinherited

◆ ReInit()

InitStatus CbmTofTrackingInterface::ReInit ( )
override

FairTask: ReInit method.

Definition at line 163 of file CbmTofTrackingInterface.cxx.

References Init(), and SetParContainers().

◆ SetParContainers()

void CbmTofTrackingInterface::SetParContainers ( )
override

FairTask: sets parameter containers up.

Definition at line 171 of file CbmTofTrackingInterface.cxx.

References fDigiBdfPar, and fDigiPar.

Referenced by ReInit().

◆ ToString()

Member Data Documentation

◆ fDigiBdfPar

CbmTofDigiBdfPar* CbmTofTrackingInterface::fDigiBdfPar {nullptr}
private

Definition at line 119 of file CbmTofTrackingInterface.h.

Referenced by GetTrackingStationIndex(), Init(), and SetParContainers().

◆ fDigiPar

CbmTofDigiPar* CbmTofTrackingInterface::fDigiPar {nullptr}
private

Definition at line 118 of file CbmTofTrackingInterface.h.

Referenced by GetZrefModule(), Init(), and SetParContainers().

◆ fpInstance

CbmTofTrackingInterface* CbmTofTrackingInterface::fpInstance {nullptr}
inlinestaticprivate

Instance of the class.

Definition at line 116 of file CbmTofTrackingInterface.h.

Referenced by Instance(), and ~CbmTofTrackingInterface().

◆ fTofStationZ

std::vector<double> CbmTofTrackingInterface::fTofStationZ {}
private

Centers of TOF stations along z-axis [cm].

Definition at line 121 of file CbmTofTrackingInterface.h.

Referenced by Init().

◆ fTofStationZMax

std::vector<double> CbmTofTrackingInterface::fTofStationZMax {}
private

Upper bounds of TOF stations along z-axis [cm].

Definition at line 123 of file CbmTofTrackingInterface.h.

Referenced by Init().

◆ fTofStationZMin

std::vector<double> CbmTofTrackingInterface::fTofStationZMin {}
private

Lower bounds of TOF stations along z-axis [cm].

Definition at line 122 of file CbmTofTrackingInterface.h.

Referenced by Init().

◆ fvStationActiveVolume

◆ fvStationFullVolume

◆ kLegacy

bool CbmTrackingDetectorInterfaceBase::kLegacy {false}
staticconstexprprotectedinherited

If use legacy tracking detector interface definition FIXME: Remove after testing.

Definition at line 208 of file CbmTrackingDetectorInterfaceBase.h.

Referenced by CbmStsTrackingInterface::Init(), Init(), and CbmTrdTrackingInterface::Init().

◆ kUseDynamicCast

bool CbmTrackingDetectorInterfaceBase::kUseDynamicCast {true}
staticconstexprinherited

Technical flag: true - all downcasts are done with dynamic_cast followed by checks for nullptr (increases computing time, better for debug), false - all downcasts are done with static_cast without sanity checks (decreases computing time, but can cause bugs)

Definition at line 200 of file CbmTrackingDetectorInterfaceBase.h.

Referenced by CbmMvdTrackingInterface::GetTrackingStationIndex(), and CbmMvdTrackingInterface::GetTrackingStationIndex().


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