CbmRoot
Loading...
Searching...
No Matches
cbm::algo::trd::RecoSetupUnit Class Reference

#include <RecoSetupUnit.h>

Inheritance diagram for cbm::algo::trd::RecoSetupUnit:
[legend]
Collaboration diagram for cbm::algo::trd::RecoSetupUnit:
[legend]

Classes

struct  ModuleInfo
 Different characteristics of TRD module. More...
 

Public Types

using ModuleInfoMap_t = std::pair<std::vector<ModuleInfo>, uint32_t>
 A map of TRD module info vs.
 

Public Member Functions

 RecoSetupUnit ()=default
 Default constructor (note: needed for serialization)
 
 RecoSetupUnit (std::pair< std::vector< GeoVolume >, std::vector< GeoVolume > > &&stationVolumes, ModuleInfoMap_t &&moduleTypeMap)
 Constructor from parameters.
 
bool IsValid () const
 Validates the interface.
 
const GeoVolumeGetActiveVolume (int stationId) const
 Gets active volume for a tracking station.
 
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.
 

Static Public Member Functions

static constexpr std::string_view GetDetectorName ()
 Name of the detector.
 
static constexpr ECbmModuleId GetModuleId ()
 Module ID.
 

Private Member Functions

ModuleInfo GetModuleInfo (uint32_t address) const
 Returns a TRD module type by its address.
 
template<class HitType>
HitRange ImplGetHitRange (const HitType &hit) const
 Returns default hit range.
 
int ImplGetTrackingStationId (uint32_t address) const
 Returns tracking station index by the TRD address.
 
bool ImplIsTimeInfoProvided (int) const
 Returns a flag, if time information is provided by the detector.
 
bool IsInitialized () const
 Validates initialization of the concrete class.
 
template<class Archive>
void serialize (Archive &ar, const unsigned int)
 Serialization rule.
 

Private Attributes

ModuleInfoMap_t fvModuleInfoMap {}
 map of TRD module types vs [layerId x moduleId]
 
std::vector< GeoVolumefvStationFullVolumes
 Geometric properties of each station passive volume.
 
std::vector< GeoVolumefvStationActiveVolumes
 Geometric properties of each station active volume.
 

Friends

class TrackingSetupIfs< RecoSetupUnit >
 
class boost::serialization::access
 

Detailed Description

Definition at line 28 of file trd/RecoSetupUnit.h.

Member Typedef Documentation

◆ ModuleInfoMap_t

using cbm::algo::trd::RecoSetupUnit::ModuleInfoMap_t = std::pair<std::vector<ModuleInfo>, uint32_t>

A map of TRD module info vs.

.second stores number of modules in a single layer .first stores a vector of module types, indexed as nModules * layerId + moduleId

Definition at line 62 of file trd/RecoSetupUnit.h.

Constructor & Destructor Documentation

◆ RecoSetupUnit() [1/2]

cbm::algo::trd::RecoSetupUnit::RecoSetupUnit ( )
default

Default constructor (note: needed for serialization)

Referenced by RecoSetupUnit().

◆ RecoSetupUnit() [2/2]

RecoSetupUnit::RecoSetupUnit ( std::pair< std::vector< GeoVolume >, std::vector< GeoVolume > > && stationVolumes,
RecoSetupUnit::ModuleInfoMap_t && moduleInfoMap )

Constructor from parameters.

Parameters
stationVolumesA pair of containers of station full and active volumes {full, active}
moduleInfoMapA map [layerID x moduleID] -> module info

Definition at line 17 of file trd/RecoSetupUnit.cxx.

References fvModuleInfoMap, RecoSetupUnit(), and cbm::algo::TrackingSetupIfs< RecoSetupUnit >::TrackingSetupIfs().

Member Function Documentation

◆ GetActiveVolume()

const GeoVolume & cbm::algo::TrackingSetupIfs< RecoSetupUnit >::GetActiveVolume ( int stationId) const
inlineinherited

Gets active volume for a tracking station.

Parameters
stationIdLocal index of the tracking station

Definition at line 77 of file TrackingSetupIfs.h.

◆ GetDetectorName()

static constexpr std::string_view cbm::algo::trd::RecoSetupUnit::GetDetectorName ( )
inlinestaticconstexpr

Name of the detector.

Definition at line 74 of file trd/RecoSetupUnit.h.

◆ GetFullVolume()

const GeoVolume & cbm::algo::TrackingSetupIfs< RecoSetupUnit >::GetFullVolume ( int stationId) const
inlineinherited

Gets full volume for a tracking station.

Parameters
stationIdLocal index of the tracking station

Definition at line 103 of file TrackingSetupIfs.h.

◆ GetHitRange()

HitRange cbm::algo::TrackingSetupIfs< RecoSetupUnit >::GetHitRange ( const HitType & hit) const
inlineinherited

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.

◆ GetModuleId()

static constexpr ECbmModuleId cbm::algo::trd::RecoSetupUnit::GetModuleId ( )
inlinestaticconstexpr

Module ID.

Definition at line 77 of file trd/RecoSetupUnit.h.

References kTrd.

◆ GetModuleInfo()

RecoSetupUnit::ModuleInfo RecoSetupUnit::GetModuleInfo ( uint32_t address) const
inlineprivate

Returns a TRD module type by its address.

Parameters
addressAn TRD hardware address
Returns
parameters of the module

Definition at line 121 of file trd/RecoSetupUnit.h.

References fvModuleInfoMap, CbmTrdAddress::GetLayerId(), and CbmTrdAddress::GetModuleId().

Referenced by ImplGetHitRange().

◆ GetNofTrackingStations()

◆ GetTrackingStationId()

int cbm::algo::TrackingSetupIfs< RecoSetupUnit >::GetTrackingStationId ( uint32_t address) const
inlineinherited

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 HitType>
HitRange RecoSetupUnit::ImplGetHitRange ( const HitType & hit) const
inlineprivate

Returns default hit range.

Template Parameters
HitTypeA type of the hit
Parameters
hitA particular hit

Definition at line 132 of file trd/RecoSetupUnit.h.

References GetModuleInfo(), cbm::algo::TrackingSetupIfs< ConcreteDetector >::ImplGetHitRange(), sqrt(), cbm::algo::HitRange::t, cbm::algo::HitRange::x, and cbm::algo::HitRange::y.

◆ ImplGetTrackingStationId()

int RecoSetupUnit::ImplGetTrackingStationId ( uint32_t address) const
inlineprivate

Returns tracking station index by the TRD address.

Parameters
addressUnique hardware address of a TRD element
Returns
Local index of tracking station

Definition at line 166 of file trd/RecoSetupUnit.h.

References CbmTrdAddress::GetLayerId().

◆ ImplIsTimeInfoProvided()

bool cbm::algo::trd::RecoSetupUnit::ImplIsTimeInfoProvided ( int ) const
inlineprivate

Returns a flag, if time information is provided by the detector.

Parameters
stationIdLocal index of tracking station

Definition at line 98 of file trd/RecoSetupUnit.h.

◆ IsInitialized()

bool RecoSetupUnit::IsInitialized ( ) const
private

Validates initialization of the concrete class.

Returns
true The instance is valid
false The instance is not valid

Definition at line 26 of file trd/RecoSetupUnit.cxx.

References fvModuleInfoMap, and cbm::algo::TrackingSetupIfs< RecoSetupUnit >::GetNofTrackingStations().

◆ IsTimeInfoProvided()

bool cbm::algo::TrackingSetupIfs< RecoSetupUnit >::IsTimeInfoProvided ( int stationId) const
inlineinherited

Checks, if station provides time measurements.

Parameters
stationIdLocal index of the tracking station

Definition at line 107 of file TrackingSetupIfs.h.

◆ IsValid()

bool cbm::algo::TrackingSetupIfs< RecoSetupUnit >::IsValid ( ) const
inherited

Validates the interface.

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

Definition at line 73 of file TrackingSetupIfs.h.

◆ serialize()

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

Serialization rule.

Definition at line 108 of file trd/RecoSetupUnit.h.

References fvModuleInfoMap.

◆ TableOfTrackingStations()

std::string cbm::algo::TrackingSetupIfs< RecoSetupUnit >::TableOfTrackingStations ( ) const
inherited

Dumps table of tracking stations to string.

Definition at line 113 of file TrackingSetupIfs.h.

Friends And Related Symbol Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 105 of file trd/RecoSetupUnit.h.

References boost::serialization::access.

Referenced by boost::serialization::access.

◆ TrackingSetupIfs< RecoSetupUnit >

friend class TrackingSetupIfs< RecoSetupUnit >
friend

Definition at line 166 of file trd/RecoSetupUnit.h.

Member Data Documentation

◆ fvModuleInfoMap

ModuleInfoMap_t cbm::algo::trd::RecoSetupUnit::fvModuleInfoMap {}
private

map of TRD module types vs [layerId x moduleId]

Definition at line 114 of file trd/RecoSetupUnit.h.

Referenced by GetModuleInfo(), IsInitialized(), RecoSetupUnit(), and serialize().

◆ fvStationActiveVolumes

std::vector<GeoVolume> cbm::algo::TrackingSetupIfs< RecoSetupUnit >::fvStationActiveVolumes
privateinherited

Geometric properties of each station active volume.

Definition at line 151 of file TrackingSetupIfs.h.

◆ fvStationFullVolumes

std::vector<GeoVolume> cbm::algo::TrackingSetupIfs< RecoSetupUnit >::fvStationFullVolumes
privateinherited

Geometric properties of each station passive volume.

Definition at line 150 of file TrackingSetupIfs.h.


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