CbmRoot
Loading...
Searching...
No Matches
cbm::algo::TrackingSetupIfs< ConcreteDetector > Class Template Reference

An interface for the setup representation in tracking. More...

#include <TrackingSetupIfs.h>

Inheritance diagram for cbm::algo::TrackingSetupIfs< ConcreteDetector >:
[legend]

Public Member Functions

virtual ~TrackingSetupIfs ()=default
 Destructor.
 
bool IsValid () const
 Validates the interface.
 
const GeoVolumeGetActiveVolume (int stationId) const
 Gets active volume for a tracking station.
 
template<class HitType>
HitRange GetHitRange (const HitType &hit) const
 Returns default hit range for x, y and time measurements.
 
int GetNofTrackingStations () const
 Gets number of tracking stations.
 
int GetTrackingStationId (uint32_t address) const
 Gets a local index of a tracking station by a hardware address.
 
const GeoVolumeGetFullVolume (int stationId) const
 Gets full volume for a tracking station.
 
bool IsTimeInfoProvided (int stationId) const
 Checks, if station provides time measurements.
 
std::string TableOfTrackingStations () const
 Dumps table of tracking stations to string.
 

Protected Member Functions

 TrackingSetupIfs ()=default
 
 TrackingSetupIfs (const TrackingSetupIfs &)=default
 
 TrackingSetupIfs (TrackingSetupIfs &&)=default
 
TrackingSetupIfsoperator= (const TrackingSetupIfs &)=default
 
TrackingSetupIfsoperator= (TrackingSetupIfs &&)=default
 
 TrackingSetupIfs (std::pair< std::vector< GeoVolume >, std::vector< GeoVolume > > &&volumes)
 Constructor from parameters.
 
template<class HitType>
HitRange ImplGetHitRange (const HitType &hit) const
 Returns default hit range factor.
 

Private Member Functions

template<class Archive>
void serialize (Archive &ar, const unsigned int)
 

Private Attributes

std::vector< GeoVolumefvStationFullVolumes {}
 Geometric properties of each station passive volume.
 
std::vector< GeoVolumefvStationActiveVolumes {}
 Geometric properties of each station active volume.
 

Friends

class boost::serialization::access
 Serialization method.
 

Detailed Description

template<class ConcreteDetector>
class cbm::algo::TrackingSetupIfs< ConcreteDetector >

An interface for the setup representation in tracking.

Template Parameters
ConcreteDetectorA concrete detector interface, which is derived from this class (CRTP)

Definition at line 65 of file TrackingSetupIfs.h.

Constructor & Destructor Documentation

◆ ~TrackingSetupIfs()

template<class ConcreteDetector>
virtual cbm::algo::TrackingSetupIfs< ConcreteDetector >::~TrackingSetupIfs ( )
virtualdefault

Destructor.

◆ TrackingSetupIfs() [1/4]

template<class ConcreteDetector>
cbm::algo::TrackingSetupIfs< ConcreteDetector >::TrackingSetupIfs ( )
protecteddefault

◆ TrackingSetupIfs() [2/4]

template<class ConcreteDetector>
cbm::algo::TrackingSetupIfs< ConcreteDetector >::TrackingSetupIfs ( const TrackingSetupIfs< ConcreteDetector > & )
protecteddefault

References TrackingSetupIfs().

◆ TrackingSetupIfs() [3/4]

template<class ConcreteDetector>
cbm::algo::TrackingSetupIfs< ConcreteDetector >::TrackingSetupIfs ( TrackingSetupIfs< ConcreteDetector > && )
protecteddefault

References TrackingSetupIfs().

◆ TrackingSetupIfs() [4/4]

template<class ConcreteDetector>
cbm::algo::TrackingSetupIfs< ConcreteDetector >::TrackingSetupIfs ( std::pair< std::vector< GeoVolume >, std::vector< GeoVolume > > && volumes)
inlineprotected

Constructor from parameters.

Parameters
volumesA pair of containers of station full and active volumes {full, active}

Definition at line 124 of file TrackingSetupIfs.h.

References first, fvStationActiveVolumes, and fvStationFullVolumes.

Member Function Documentation

◆ GetActiveVolume()

template<class ConcreteDetector>
const GeoVolume & cbm::algo::TrackingSetupIfs< ConcreteDetector >::GetActiveVolume ( int stationId) const
inline

Gets active volume for a tracking station.

Parameters
stationIdLocal index of the tracking station

Definition at line 77 of file TrackingSetupIfs.h.

References fvStationActiveVolumes.

Referenced by TableOfTrackingStations().

◆ GetFullVolume()

template<class ConcreteDetector>
const GeoVolume & cbm::algo::TrackingSetupIfs< ConcreteDetector >::GetFullVolume ( int stationId) const
inline

Gets full volume for a tracking station.

Parameters
stationIdLocal index of the tracking station

Definition at line 103 of file TrackingSetupIfs.h.

References fvStationFullVolumes.

Referenced by TableOfTrackingStations().

◆ GetHitRange()

template<class ConcreteDetector>
template<class HitType>
HitRange cbm::algo::TrackingSetupIfs< ConcreteDetector >::GetHitRange ( const HitType & hit) const
inline

Returns default hit range for x, y and time measurements.

Template Parameters
HitTypeA type of a hit
Parameters
hitA hit
Returns
A HitRange object

The default ranges are defined under an assumption, that all the uncertainties obey a gaussian distribution

Definition at line 86 of file TrackingSetupIfs.h.

References ImplGetHitRange().

◆ GetNofTrackingStations()

template<class ConcreteDetector>
int cbm::algo::TrackingSetupIfs< ConcreteDetector >::GetNofTrackingStations ( ) const
inline

Gets number of tracking stations.

Definition at line 92 of file TrackingSetupIfs.h.

References fvStationFullVolumes.

Referenced by IsValid(), and TableOfTrackingStations().

◆ GetTrackingStationId()

template<class ConcreteDetector>
int cbm::algo::TrackingSetupIfs< ConcreteDetector >::GetTrackingStationId ( uint32_t address) const
inline

Gets a local index of a tracking station by a hardware address.

Parameters
addressHardware address

Definition at line 96 of file TrackingSetupIfs.h.

◆ ImplGetHitRange()

template<class ConcreteDetector>
template<class HitType>
HitRange cbm::algo::TrackingSetupIfs< ConcreteDetector >::ImplGetHitRange ( const HitType & hit) const
inlineprotected

Returns default hit range factor.

Template Parameters
HitTypeA type of the hit
Parameters
hitA particular hit

Definition at line 135 of file TrackingSetupIfs.h.

Referenced by GetHitRange(), and cbm::algo::trd::RecoSetupUnit::ImplGetHitRange().

◆ IsTimeInfoProvided()

template<class ConcreteDetector>
bool cbm::algo::TrackingSetupIfs< ConcreteDetector >::IsTimeInfoProvided ( int stationId) const
inline

Checks, if station provides time measurements.

Parameters
stationIdLocal index of the tracking station

Definition at line 107 of file TrackingSetupIfs.h.

Referenced by TableOfTrackingStations().

◆ IsValid()

template<class ConcreteDetector>
bool cbm::algo::TrackingSetupIfs< ConcreteDetector >::IsValid ( ) const

Validates the interface.

Returns
true The interface is valid
false The interface is not valid

Definition at line 160 of file TrackingSetupIfs.h.

References fvStationActiveVolumes, fvStationFullVolumes, and GetNofTrackingStations().

◆ operator=() [1/2]

template<class ConcreteDetector>
TrackingSetupIfs & cbm::algo::TrackingSetupIfs< ConcreteDetector >::operator= ( const TrackingSetupIfs< ConcreteDetector > & )
protecteddefault

References TrackingSetupIfs().

◆ operator=() [2/2]

template<class ConcreteDetector>
TrackingSetupIfs & cbm::algo::TrackingSetupIfs< ConcreteDetector >::operator= ( TrackingSetupIfs< ConcreteDetector > && )
protecteddefault

References TrackingSetupIfs().

◆ serialize()

template<class ConcreteDetector>
template<class Archive>
void cbm::algo::TrackingSetupIfs< ConcreteDetector >::serialize ( Archive & ar,
const unsigned int  )
inlineprivate

Definition at line 144 of file TrackingSetupIfs.h.

References fvStationActiveVolumes, and fvStationFullVolumes.

◆ TableOfTrackingStations()

template<class ConcreteDetector>
std::string cbm::algo::TrackingSetupIfs< ConcreteDetector >::TableOfTrackingStations ( ) const

Dumps table of tracking stations to string.

Definition at line 228 of file TrackingSetupIfs.h.

References GetActiveVolume(), GetFullVolume(), GetNofTrackingStations(), and IsTimeInfoProvided().

Friends And Related Symbol Documentation

◆ boost::serialization::access

template<class ConcreteDetector>
friend class boost::serialization::access
friend

Serialization method.

Definition at line 142 of file TrackingSetupIfs.h.

References boost::serialization::access.

Referenced by boost::serialization::access.

Member Data Documentation

◆ fvStationActiveVolumes

template<class ConcreteDetector>
std::vector<GeoVolume> cbm::algo::TrackingSetupIfs< ConcreteDetector >::fvStationActiveVolumes {}
private

Geometric properties of each station active volume.

Definition at line 151 of file TrackingSetupIfs.h.

Referenced by GetActiveVolume(), IsValid(), serialize(), and TrackingSetupIfs().

◆ fvStationFullVolumes

template<class ConcreteDetector>
std::vector<GeoVolume> cbm::algo::TrackingSetupIfs< ConcreteDetector >::fvStationFullVolumes {}
private

Geometric properties of each station passive volume.

Definition at line 150 of file TrackingSetupIfs.h.

Referenced by GetFullVolume(), GetNofTrackingStations(), IsValid(), serialize(), and TrackingSetupIfs().


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