CbmRoot
|
#include <ReadoutConfig.h>
Public Member Functions | |
ReadoutConfig (const ReadoutSetup &pars) | |
Constructor. | |
~ReadoutConfig () | |
Destructor. | |
i32 | GetSystemTimeOffset () const |
System time offset for TOF. | |
std::vector< uint16_t > | GetEquipmentIds () |
Equipment in the configuration. | |
size_t | GetNumElinks (uint16_t equipmentId) |
Number of elinks of a component. | |
std::vector< uint32_t > | Map (uint16_t equipId, uint16_t elink) |
API: Mapping from component and elink to addresses per channel. | |
int32_t | GetElinkTimeOffset (uint16_t equipId, uint16_t elink) |
API: Mapping from component and elink to time offset. | |
Private Types | |
using | CROB = ReadoutSetup::CROB |
Private Member Functions | |
void | Init (const ReadoutSetup &pars) |
Initialisation of readout map. | |
int32_t | ElinkIdxToGet4Idx (uint32_t elink, const ReadoutSetup &pars) |
Mapping to eLink to ASIC number within DPB. Mapping is the same for each DPB. | |
int32_t | ElinkIdxToGet4IdxInner (uint32_t elink, const ReadoutSetup &pars) |
Mapping to eLink to ASIC number within DPB for 2024 inner TOF FEBs. Mapping is the same for each DPB. | |
int32_t | Get4ChanToPadiChan (uint32_t channelInFee, const ReadoutSetup &pars) |
void | BuildChannelsUidMap (const ReadoutSetup &pars) |
void | BuildChannelsUidMapCbm (uint32_t &uCh, const CROB &crob) |
void | BuildChannelsUidMapStar (uint32_t &uCh, const CROB &crob) |
void | BuildChannelsUidMapCern (uint32_t &uCh, const CROB &crob) |
void | BuildChannelsUidMapCera (uint32_t &uCh, const CROB &crob) |
void | BuildChannelsUidMapStar2 (uint32_t &uCh, const CROB &crob) |
void | BuildChannelsUidMapStar2Inner (uint32_t &uCh, const CROB &crob) |
void | BuildChannelsUidMapBuc (uint32_t &uCh, const CROB &crob) |
Private Attributes | |
int32_t | fTimeOffset = 0 |
std::map< uint16_t, std::vector< uint64_t > > | fTimeOffsetMap = {} |
std::map< uint16_t, std::vector< std::vector< uint32_t > > > | fReadoutMap = {} |
std::vector< int32_t > | fviRpcChUId = {} |
Definition at line 76 of file tof/ReadoutConfig.h.
|
private |
Definition at line 78 of file tof/ReadoutConfig.h.
cbm::algo::tof::ReadoutConfig::ReadoutConfig | ( | const ReadoutSetup & | pars | ) |
cbm::algo::tof::ReadoutConfig::~ReadoutConfig | ( | ) |
Destructor.
Definition at line 27 of file tof/ReadoutConfig.cxx.
|
private |
2022 case: 69 is followed by 4 and 9
Map also 4 and 9 (equivalent to fallthrough to 4 then 9 but without changing past behaviors)
Definition at line 166 of file tof/ReadoutConfig.cxx.
References BuildChannelsUidMapBuc(), BuildChannelsUidMapCbm(), BuildChannelsUidMapCera(), BuildChannelsUidMapCern(), BuildChannelsUidMapStar(), BuildChannelsUidMapStar2(), BuildChannelsUidMapStar2Inner(), cbm::algo::tof::ReadoutSetup::crobs, cbm::algo::tof::ReadoutSetup::elink2AsicInner, cbm::algo::tof::ReadoutSetup::eqIds, fviRpcChUId, L_, cbm::algo::tof::ReadoutSetup::nAsicsPerFeb, cbm::algo::tof::ReadoutSetup::nChannelsPerAsic, cbm::algo::tof::ReadoutSetup::NComponents(), cbm::algo::tof::ReadoutSetup::NCrobs(), and cbm::algo::tof::ReadoutSetup::nFebsPerComponent.
Referenced by Init().
|
private |
SM Rpc St Si Type
SM Rpc St Si Type
Definition at line 598 of file tof/ReadoutConfig.cxx.
References fviRpcChUId, CbmTofAddress::GetUniqueAddress(), cbm::algo::tof::ReadoutSetup::CROB::moduleId, cbm::algo::tof::ReadoutSetup::CROB::rpcSide, and cbm::algo::tof::ReadoutSetup::CROB::rpcType.
Referenced by BuildChannelsUidMap().
|
private |
Definition at line 322 of file tof/ReadoutConfig.cxx.
References fviRpcChUId, CbmTofAddress::GetUniqueAddress(), cbm::algo::tof::ReadoutSetup::CROB::moduleId, cbm::algo::tof::ReadoutSetup::CROB::nRPC, cbm::algo::tof::ReadoutSetup::CROB::rpcSide, and cbm::algo::tof::ReadoutSetup::CROB::rpcType.
Referenced by BuildChannelsUidMap().
|
private |
Definition at line 411 of file tof/ReadoutConfig.cxx.
References fviRpcChUId, CbmTofAddress::GetUniqueAddress(), and L_.
Referenced by BuildChannelsUidMap().
|
private |
Definition at line 385 of file tof/ReadoutConfig.cxx.
References fviRpcChUId, CbmTofAddress::GetUniqueAddress(), and L_.
Referenced by BuildChannelsUidMap().
|
private |
Definition at line 357 of file tof/ReadoutConfig.cxx.
References fviRpcChUId, CbmTofAddress::GetUniqueAddress(), L_, cbm::algo::tof::ReadoutSetup::CROB::moduleId, cbm::algo::tof::ReadoutSetup::CROB::nRPC, cbm::algo::tof::ReadoutSetup::CROB::rpcSide, and cbm::algo::tof::ReadoutSetup::CROB::rpcType.
Referenced by BuildChannelsUidMap().
|
private |
Definition at line 425 of file tof/ReadoutConfig.cxx.
References fviRpcChUId, CbmTofAddress::GetUniqueAddress(), cbm::algo::tof::ReadoutSetup::CROB::moduleId, cbm::algo::tof::ReadoutSetup::CROB::rpcSide, and cbm::algo::tof::ReadoutSetup::CROB::rpcType.
Referenced by BuildChannelsUidMap().
|
private |
Definition at line 480 of file tof/ReadoutConfig.cxx.
References fviRpcChUId, CbmTofAddress::GetUniqueAddress(), cbm::algo::tof::ReadoutSetup::CROB::moduleId, cbm::algo::tof::ReadoutSetup::CROB::nRPC, cbm::algo::tof::ReadoutSetup::CROB::rpcSide, and cbm::algo::tof::ReadoutSetup::CROB::rpcType.
Referenced by BuildChannelsUidMap().
|
private |
Mapping to eLink to ASIC number within DPB. Mapping is the same for each DPB.
Definition at line 118 of file tof/ReadoutConfig.cxx.
References cbm::algo::tof::ReadoutSetup::elink2Asic, gdpbv100::kuChipIdMergedEpoch, cbm::algo::tof::ReadoutSetup::NElinksPerComponent(), and cbm::algo::tof::ReadoutSetup::NElinksPerCrob().
Referenced by Init().
|
private |
Mapping to eLink to ASIC number within DPB for 2024 inner TOF FEBs. Mapping is the same for each DPB.
Definition at line 132 of file tof/ReadoutConfig.cxx.
References cbm::algo::tof::ReadoutSetup::elink2AsicInner, gdpbv100::kuChipIdMergedEpoch, cbm::algo::tof::ReadoutSetup::NElinksPerComponent(), and cbm::algo::tof::ReadoutSetup::NElinksPerCrob().
Referenced by Init().
|
private |
Definition at line 153 of file tof/ReadoutConfig.cxx.
References cbm::algo::tof::ReadoutSetup::asic2PadI, and cbm::algo::tof::ReadoutSetup::NChansPerFeb().
Referenced by Init().
int32_t cbm::algo::tof::ReadoutConfig::GetElinkTimeOffset | ( | uint16_t | equipId, |
uint16_t | elink ) |
API: Mapping from component and elink to time offset.
equipId | Equipment identifier (component) |
elink | Elink number within component |
Definition at line 67 of file tof/ReadoutConfig.cxx.
References fTimeOffsetMap.
Referenced by cbm::algo::tof::Unpack::Unpack().
std::vector< uint16_t > cbm::algo::tof::ReadoutConfig::GetEquipmentIds | ( | ) |
Equipment in the configuration.
Definition at line 31 of file tof/ReadoutConfig.cxx.
References fReadoutMap.
Referenced by cbm::algo::tof::Unpack::Unpack().
size_t cbm::algo::tof::ReadoutConfig::GetNumElinks | ( | uint16_t | equipmentId | ) |
Number of elinks of a component.
Equipment | ID |
Definition at line 41 of file tof/ReadoutConfig.cxx.
References fReadoutMap.
Referenced by cbm::algo::tof::Unpack::Unpack().
|
inline |
System time offset for TOF.
Definition at line 90 of file tof/ReadoutConfig.h.
References fTimeOffset.
Referenced by cbm::algo::tof::Unpack::Unpack().
|
private |
Initialisation of readout map.
Definition at line 81 of file tof/ReadoutConfig.cxx.
References BuildChannelsUidMap(), cbm::algo::tof::ReadoutSetup::CheckInnerComp(), cbm::algo::tof::ReadoutSetup::crobs, ElinkIdxToGet4Idx(), ElinkIdxToGet4IdxInner(), cbm::algo::tof::ReadoutSetup::eqIds, fReadoutMap, fTimeOffset, fTimeOffsetMap, fviRpcChUId, Get4ChanToPadiChan(), cbm::algo::tof::ReadoutSetup::nAsicsPerFeb, cbm::algo::tof::ReadoutSetup::nChannelsPerAsic, cbm::algo::tof::ReadoutSetup::NChansPerComponent(), cbm::algo::tof::ReadoutSetup::NChansPerFeb(), cbm::algo::tof::ReadoutSetup::NComponents(), cbm::algo::tof::ReadoutSetup::NCrobsPerComponent(), cbm::algo::tof::ReadoutSetup::NElinksPerComponent(), cbm::algo::tof::ReadoutSetup::NElinksPerCrob(), and cbm::algo::tof::ReadoutSetup::timeOffset.
Referenced by ReadoutConfig().
std::vector< uint32_t > cbm::algo::tof::ReadoutConfig::Map | ( | uint16_t | equipId, |
uint16_t | elink ) |
API: Mapping from component and elink to addresses per channel.
equipId | Equipment identifier (component) |
elink | Elink number within component |
Definition at line 52 of file tof/ReadoutConfig.cxx.
References fReadoutMap.
Referenced by cbm::algo::tof::Unpack::Unpack().
|
private |
Definition at line 127 of file tof/ReadoutConfig.h.
Referenced by GetEquipmentIds(), GetNumElinks(), Init(), and Map().
|
private |
Definition at line 119 of file tof/ReadoutConfig.h.
Referenced by GetSystemTimeOffset(), and Init().
|
private |
Definition at line 123 of file tof/ReadoutConfig.h.
Referenced by GetElinkTimeOffset(), and Init().
|
private |
Definition at line 139 of file tof/ReadoutConfig.h.
Referenced by BuildChannelsUidMap(), BuildChannelsUidMapBuc(), BuildChannelsUidMapCbm(), BuildChannelsUidMapCera(), BuildChannelsUidMapCern(), BuildChannelsUidMapStar(), BuildChannelsUidMapStar2(), BuildChannelsUidMapStar2Inner(), and Init().