CbmRoot
|
CbmMvdTrackingInterface. More...
#include <CbmMvdTrackingInterface.h>
Public Member Functions | |
CbmMvdTrackingInterface () | |
Default constructor. | |
~CbmMvdTrackingInterface () | |
Destructor. | |
CbmMvdTrackingInterface (const CbmMvdTrackingInterface &)=delete | |
Copy constructor. | |
CbmMvdTrackingInterface (CbmMvdTrackingInterface &&)=delete | |
Move constructor. | |
CbmMvdTrackingInterface & | operator= (const CbmMvdTrackingInterface &)=delete |
Copy assignment operator. | |
CbmMvdTrackingInterface & | operator= (CbmMvdTrackingInterface &&)=delete |
Move assignment operator. | |
std::string | GetDetectorName () const override |
Gets name of this subsystem. | |
double | GetRadLength (int stationId) const |
std::tuple< double, double > | GetStereoAnglesSensor (int) const override |
Gets stereo angles of the two independent measured coordinates. | |
double | GetSensorThickness (int stationId) const |
int | GetTrackingStationIndex (const CbmHit *hit) const override |
Gets a tracking station of a CbmHit. | |
int | GetTrackingStationIndex (const FairMCPoint *point) const override |
Gets a tracking station of a FairMCPoint. | |
int | GetTrackingStationIndex (int detectorId) const override |
Gets a tracking station by the address of element (detectorID in terms of MVD) | |
InitStatus | Init () override |
FairTask: Init method. | |
bool | IsTimeInfoProvided (int) const override |
Check if the detector provides time measurements. | |
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. | |
virtual double | GetZrefModule (int address) |
Gets reference z of the detector module (e.g., RPC for TOF) | |
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. | |
int32_t | DetectorId (int32_t iStation) const |
int32_t | SystemId (int32_t detectorId) const |
int32_t | StationNr (int32_t detectorId) const |
ClassDef (CbmMvdDetectorId, 1) | |
Static Public Member Functions | |
static CbmMvdTrackingInterface * | Instance () |
Gets pointer to the instance of the CbmMvdTrackingInterface. | |
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< VolumeInfo > | fvStationFullVolume {} |
Geometric properties of each station passive volume. | |
std::vector< VolumeInfo > | fvStationActiveVolume {} |
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 (CbmMvdTrackingInterface, 0) | |
Private Attributes | |
const CbmMvdStationPar * | fMvdStationPar {nullptr} |
Pointer to the Mvd station parameters. | |
Static Private Attributes | |
static CbmMvdTrackingInterface * | fpInstance {nullptr} |
Instance of the class. | |
A CbmL1 subtask, which provides necessary methods for L1 tracker to access the geometry and dataflow settings.
Definition at line 38 of file CbmMvdTrackingInterface.h.
CbmMvdTrackingInterface::CbmMvdTrackingInterface | ( | ) |
Default constructor.
CbmMvdTrackingInterface::~CbmMvdTrackingInterface | ( | ) |
|
delete |
Copy constructor.
|
delete |
Move constructor.
|
inherited |
Checks detector interface: boundary conditions of the parameters.
Definition at line 27 of file CbmTrackingDetectorInterfaceBase.cxx.
References CbmTrackingDetectorInterfaceBase::GetDetectorName(), CbmTrackingDetectorInterfaceBase::GetNtrackingStations(), CbmTrackingDetectorInterfaceBase::GetXmax(), CbmTrackingDetectorInterfaceBase::GetXmin(), CbmTrackingDetectorInterfaceBase::GetYmax(), CbmTrackingDetectorInterfaceBase::GetYmin(), CbmTrackingDetectorInterfaceBase::GetZmax(), CbmTrackingDetectorInterfaceBase::GetZmin(), CbmTrackingDetectorInterfaceBase::GetZref(), and CbmTrackingDetectorInterfaceBase::ToString().
Referenced by CbmMuchTrackingInterface::Init(), Init(), CbmStsTrackingInterface::Init(), CbmTofTrackingInterface::Init(), and CbmTrdTrackingInterface::Init().
|
inherited |
|
private |
|
protectedinherited |
Collects paths of the components.
[in] | detector | Name hint of the detector |
[in] | component | Name of the active node component |
[in,out] | path | Path to the node |
[in,out] | pNode | Pointer to the node |
Definition at line 127 of file CbmTrackingDetectorInterfaceBase.cxx.
References CbmTrackingDetectorInterfaceBase::CollectNodes().
Referenced by CbmTrackingDetectorInterfaceBase::CollectNodes(), CbmTofTrackingInterface::Init(), and CbmTrdTrackingInterface::Init().
|
inlineinherited |
Create unique detector ID from station number
Definition at line 49 of file CbmMvdDetectorId.h.
References kMvd, and ToIntegralType().
Referenced by CbmMvdDetector::AddSensor(), CbmMvdHit::CbmMvdHit(), CbmMvdPoint::CbmMvdPoint(), CbmMvdCluster::GetDetectorId(), and CbmMvdHitfinder::ProcessData().
|
inlineinherited |
Gets upper bound of the station active volume along x-axis.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 161 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationActiveVolume.
Referenced by CbmTrackingDetectorInterfaceBase::ToString().
|
inlineinherited |
Gets lower bound of the station active volume along x-axis.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 156 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationActiveVolume.
Referenced by CbmTrackingDetectorInterfaceBase::ToString().
|
inlineinherited |
Gets upper bound of the station active volume along y-axis.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 171 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationActiveVolume.
Referenced by CbmTrackingDetectorInterfaceBase::ToString().
|
inlineinherited |
Gets lower bound of the station active volume along y-axis.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 166 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationActiveVolume.
Referenced by CbmTrackingDetectorInterfaceBase::ToString().
|
inlineinherited |
Gets upper bound of the station active volume along z-axis.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 181 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationActiveVolume.
Referenced by CbmTrackingDetectorInterfaceBase::GetZref(), and CbmTrackingDetectorInterfaceBase::ToString().
|
inlineinherited |
Gets lower bound of the station active volume along z-axis.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 176 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationActiveVolume.
Referenced by CbmTrackingDetectorInterfaceBase::GetZref(), and CbmTrackingDetectorInterfaceBase::ToString().
|
inlineoverridevirtual |
Gets name of this subsystem.
Implements CbmTrackingDetectorInterfaceBase.
Definition at line 59 of file CbmMvdTrackingInterface.h.
|
inlinevirtualinherited |
Gets x,y,t ranges of a CbmPixelHit.
hit | A hit |
Reimplemented in CbmTrdTrackingInterface.
Definition at line 191 of file CbmTrackingDetectorInterfaceBase.h.
References CbmPixelHit::GetDx(), CbmPixelHit::GetDy(), and CbmHit::GetTimeError().
Referenced by CbmTrdTrackingInterface::GetHitRanges().
|
inlineinherited |
Gets actual number of stations, provided by the current geometry setup.
Definition at line 90 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.
Referenced by CbmTrackingDetectorInterfaceBase::Check(), CbmTrdTrackingInterface::Init(), cbm::ca::InputQaSetup::InitQa(), CbmCaInputQaSts::InitQa(), and CbmTrackingDetectorInterfaceBase::ToString().
|
inline |
— to be removed — Gets the tracking station radiation length
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 65 of file CbmMvdTrackingInterface.h.
References fMvdStationPar, CbmMvdStationPar::GetZRadThickness(), and CbmMvdStationPar::GetZThickness().
|
inline |
— to be removed — Gets the tracking station thickness along the Z-axis
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 83 of file CbmMvdTrackingInterface.h.
References fMvdStationPar, and CbmMvdStationPar::GetZThickness().
|
inlineoverridevirtual |
Gets stereo angles of the two independent measured coordinates.
address | detector unique identifier |
Implements CbmTrackingDetectorInterfaceBase.
Definition at line 74 of file CbmMvdTrackingInterface.h.
|
inlineoverridevirtual |
Gets a tracking station of a CbmHit.
hit | A pointer to CbmHit |
Implements CbmTrackingDetectorInterfaceBase.
Definition at line 88 of file CbmMvdTrackingInterface.h.
References CbmTrackingDetectorInterfaceBase::kUseDynamicCast.
|
overridevirtual |
Gets a tracking station of a FairMCPoint.
point | A pointer to FairMCHit |
Implements CbmTrackingDetectorInterfaceBase.
Definition at line 81 of file CbmMvdTrackingInterface.cxx.
References CbmMvdDetector::GetSensorMap(), CbmMvdSensor::GetStationNr(), CbmMvdDetector::Instance(), and CbmTrackingDetectorInterfaceBase::kUseDynamicCast.
|
inlineoverridevirtual |
Gets a tracking station by the address of element (detectorID in terms of MVD)
detectorId | Unique element address (detectorID in terms of MVD) |
Implements CbmTrackingDetectorInterfaceBase.
Definition at line 107 of file CbmMvdTrackingInterface.h.
References CbmMvdDetectorId::StationNr().
|
inlineinherited |
Gets upper bound of a station passive volume along the X-axis.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 116 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.
Referenced by CbmTrackingDetectorInterfaceBase::Check(), and CbmTrackingDetectorInterfaceBase::ToString().
|
inlineinherited |
Gets lower bound of a station passive volume along the X-axis.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 121 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.
Referenced by CbmTrackingDetectorInterfaceBase::Check(), and CbmTrackingDetectorInterfaceBase::ToString().
|
inlineinherited |
Gets upper bound of a station passive volume along the Y-axis.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 126 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.
Referenced by CbmTrackingDetectorInterfaceBase::Check(), and CbmTrackingDetectorInterfaceBase::ToString().
|
inlineinherited |
Gets lower bound of a station passive volume along the Y-axis.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 131 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.
Referenced by CbmTrackingDetectorInterfaceBase::Check(), and CbmTrackingDetectorInterfaceBase::ToString().
|
inlineinherited |
Gets max z of the station passive volume.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 151 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.
Referenced by CbmTrackingDetectorInterfaceBase::Check(), and CbmTrackingDetectorInterfaceBase::ToString().
|
inlineinherited |
Gets min z of the station passive volume.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 146 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::fvStationFullVolume.
Referenced by CbmTrackingDetectorInterfaceBase::Check(), and CbmTrackingDetectorInterfaceBase::ToString().
|
inlineinherited |
Gets reference z of the station passive volume.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Definition at line 136 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::GetActiveZmax(), and CbmTrackingDetectorInterfaceBase::GetActiveZmin().
Referenced by CbmTrackingDetectorInterfaceBase::Check(), CbmTrackingDetectorInterfaceBase::GetZrefModule(), and CbmTrackingDetectorInterfaceBase::ToString().
|
inlinevirtualinherited |
Gets reference z of the detector module (e.g., RPC for TOF)
address | Address of the module |
Reimplemented in CbmTofTrackingInterface.
Definition at line 141 of file CbmTrackingDetectorInterfaceBase.h.
References CbmTrackingDetectorInterfaceBase::GetTrackingStationIndex(), and CbmTrackingDetectorInterfaceBase::GetZref().
|
override |
FairTask: Init method.
Definition at line 39 of file CbmMvdTrackingInterface.cxx.
References CbmTrackingDetectorInterfaceBase::Check(), fMvdStationPar, CbmTrackingDetectorInterfaceBase::fvStationActiveVolume, CbmTrackingDetectorInterfaceBase::fvStationFullVolume, CbmMvdStationPar::GetHeight(), CbmMvdDetector::GetParameterFile(), CbmMvdStationPar::GetStationCount(), CbmMvdStationPar::GetWidth(), CbmMvdStationPar::GetZPosition(), CbmMvdStationPar::GetZThickness(), and CbmMvdDetector::Instance().
Referenced by ReInit().
|
inlinestatic |
Gets pointer to the instance of the CbmMvdTrackingInterface.
Definition at line 114 of file CbmMvdTrackingInterface.h.
References fpInstance.
Referenced by CbmKfTrackFitter::CreateGlobalTrack(), cbm::kf::GetTrackingInterface(), cbm::ca::IdealHitProducerDet< DetID >::Init(), cbm::kf::TrackingSetupBuilder::Init(), CbmKF::Init(), CbmL1::Init(), cbm::ca::InputQaSetup::InitQa(), CbmCaInputQaMvd::InitQa(), cbm::ca::MCModule::InitRun(), and cbm::ca::TimeSliceReader::InitRun().
|
inlineoverridevirtual |
Check if the detector provides time measurements.
stationId | Tracking station ID in the setup (NOTE: must be in range [0..GetNstations()-1]) |
Implements CbmTrackingDetectorInterfaceBase.
Definition at line 119 of file CbmMvdTrackingInterface.h.
|
delete |
Move assignment operator.
|
delete |
Copy assignment operator.
|
protectedinherited |
Creates volume info from a geo node provided by path.
path | Path to volume in TGeoManager |
std::runtime_error | If node is not found by path |
Definition at line 154 of file CbmTrackingDetectorInterfaceBase.cxx.
References CbmTrackingDetectorInterfaceBase::VolumeInfo::fXmax, CbmTrackingDetectorInterfaceBase::VolumeInfo::fXmin, CbmTrackingDetectorInterfaceBase::VolumeInfo::fYmax, CbmTrackingDetectorInterfaceBase::VolumeInfo::fYmin, CbmTrackingDetectorInterfaceBase::VolumeInfo::fZmax, CbmTrackingDetectorInterfaceBase::VolumeInfo::fZmin, max(), min(), and shape.
Referenced by CbmTofTrackingInterface::Init(), and CbmTrdTrackingInterface::Init().
|
override |
FairTask: ReInit method.
Definition at line 69 of file CbmMvdTrackingInterface.cxx.
References Init(), and SetParContainers().
|
override |
FairTask: sets parameter containers up.
Definition at line 77 of file CbmMvdTrackingInterface.cxx.
Referenced by ReInit().
|
inlineinherited |
Get station number from detector ID
Definition at line 65 of file CbmMvdDetectorId.h.
Referenced by CbmMvdDigi::GetStationNr(), CbmMvdHit::GetStationNr(), CbmMvdPoint::GetStationNr(), and GetTrackingStationIndex().
|
inlineinherited |
Get System identifier from detector ID
Definition at line 53 of file CbmMvdDetectorId.h.
References kMvd, and ToIntegralType().
Referenced by CbmMvdHit::GetSystemId(), and CbmMvdPoint::GetSystemId().
|
inherited |
Prints all the parameters into table and saves the table as a string.
Definition at line 101 of file CbmTrackingDetectorInterfaceBase.cxx.
References CbmTrackingDetectorInterfaceBase::GetActiveXmax(), CbmTrackingDetectorInterfaceBase::GetActiveXmin(), CbmTrackingDetectorInterfaceBase::GetActiveYmax(), CbmTrackingDetectorInterfaceBase::GetActiveYmin(), CbmTrackingDetectorInterfaceBase::GetActiveZmax(), CbmTrackingDetectorInterfaceBase::GetActiveZmin(), CbmTrackingDetectorInterfaceBase::GetNtrackingStations(), CbmTrackingDetectorInterfaceBase::GetXmax(), CbmTrackingDetectorInterfaceBase::GetXmin(), CbmTrackingDetectorInterfaceBase::GetYmax(), CbmTrackingDetectorInterfaceBase::GetYmin(), CbmTrackingDetectorInterfaceBase::GetZmax(), CbmTrackingDetectorInterfaceBase::GetZmin(), CbmTrackingDetectorInterfaceBase::GetZref(), and CbmTrackingDetectorInterfaceBase::IsTimeInfoProvided().
Referenced by CbmTrackingDetectorInterfaceBase::Check().
|
private |
Pointer to the Mvd station parameters.
Definition at line 130 of file CbmMvdTrackingInterface.h.
Referenced by GetRadLength(), GetSensorThickness(), and Init().
|
inlinestaticprivate |
Instance of the class.
Definition at line 128 of file CbmMvdTrackingInterface.h.
Referenced by Instance(), and ~CbmMvdTrackingInterface().
|
protectedinherited |
Geometric properties of each station active volume.
Definition at line 228 of file CbmTrackingDetectorInterfaceBase.h.
Referenced by CbmTrackingDetectorInterfaceBase::GetActiveXmax(), CbmTrackingDetectorInterfaceBase::GetActiveXmin(), CbmTrackingDetectorInterfaceBase::GetActiveYmax(), CbmTrackingDetectorInterfaceBase::GetActiveYmin(), CbmTrackingDetectorInterfaceBase::GetActiveZmax(), CbmTrackingDetectorInterfaceBase::GetActiveZmin(), CbmMuchTrackingInterface::Init(), Init(), CbmStsTrackingInterface::Init(), CbmTofTrackingInterface::Init(), and CbmTrdTrackingInterface::Init().
|
protectedinherited |
Geometric properties of each station passive volume.
Definition at line 227 of file CbmTrackingDetectorInterfaceBase.h.
Referenced by CbmTrackingDetectorInterfaceBase::GetNtrackingStations(), CbmTrackingDetectorInterfaceBase::GetXmax(), CbmTrackingDetectorInterfaceBase::GetXmin(), CbmTrackingDetectorInterfaceBase::GetYmax(), CbmTrackingDetectorInterfaceBase::GetYmin(), CbmTrackingDetectorInterfaceBase::GetZmax(), CbmTrackingDetectorInterfaceBase::GetZmin(), CbmMuchTrackingInterface::Init(), Init(), CbmStsTrackingInterface::Init(), CbmTofTrackingInterface::Init(), and CbmTrdTrackingInterface::Init().
|
staticconstexprprotectedinherited |
If use legacy tracking detector interface definition FIXME: Remove after testing.
Definition at line 208 of file CbmTrackingDetectorInterfaceBase.h.
Referenced by CbmStsTrackingInterface::Init(), CbmTofTrackingInterface::Init(), and CbmTrdTrackingInterface::Init().
|
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 GetTrackingStationIndex(), and GetTrackingStationIndex().