71 bool CheckBmonComp(uint32_t uCompId)
const {
return ((uCompId & 0xFFF0) == 0xABF0); }
72 bool CheckInnerComp(uint32_t uCompId)
const {
return ((uCompId & 0xFFF0) == 0xBBC0); }
108 std::vector<uint32_t>
Map(uint16_t equipId, uint16_t elink);
127 std::map<uint16_t, std::vector<std::vector<uint32_t>>>
fReadoutMap = {};
#define CBM_YAML_EXTERN_DECL(type)
Declare the external instantiation of the Read and Dump functions for a type.
void BuildChannelsUidMapStar(uint32_t &uCh, const CROB &crob)
void BuildChannelsUidMapCern(uint32_t &uCh, const CROB &crob)
void BuildChannelsUidMapStar2Inner(uint32_t &uCh, const CROB &crob)
int32_t ElinkIdxToGet4Idx(uint32_t elink, const ReadoutSetup &pars)
Mapping to eLink to ASIC number within DPB. Mapping is the same for each DPB.
std::map< uint16_t, std::vector< std::vector< uint32_t > > > fReadoutMap
~ReadoutConfig()
Destructor.
void BuildChannelsUidMapStar2(uint32_t &uCh, const CROB &crob)
void BuildChannelsUidMapCera(uint32_t &uCh, const CROB &crob)
std::vector< int32_t > fviRpcChUId
int32_t GetElinkTimeOffset(uint16_t equipId, uint16_t elink)
API: Mapping from component and elink to time offset.
void BuildChannelsUidMapCbm(uint32_t &uCh, const CROB &crob)
std::map< uint16_t, std::vector< uint64_t > > fTimeOffsetMap
void BuildChannelsUidMap(const ReadoutSetup &pars)
void Init(const ReadoutSetup &pars)
Initialisation of readout map.
std::vector< uint32_t > Map(uint16_t equipId, uint16_t elink)
API: Mapping from component and elink to addresses per channel.
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.
ReadoutConfig(const ReadoutSetup &pars)
Constructor.
std::vector< uint16_t > GetEquipmentIds()
Equipment in the configuration.
i32 GetSystemTimeOffset() const
System time offset for TOF.
void BuildChannelsUidMapBuc(uint32_t &uCh, const CROB &crob)
int32_t Get4ChanToPadiChan(uint32_t channelInFee, const ReadoutSetup &pars)
size_t GetNumElinks(uint16_t equipmentId)
Number of elinks of a component.
Property(T Class::*member, std::string_view key, std::string_view description) -> Property< Class, T >
CBM_YAML_PROPERTIES(yaml::Property(&CROB::moduleId, "moduleId", "Unique ID of module the CROB resides in"), yaml::Property(&CROB::rpcType, "rpcType", "add explanation."), yaml::Property(&CROB::rpcSide, "rpcSide", "add explanation."), yaml::Property(&CROB::nRPC, "nRPC", "number of RPCs."), yaml::Property(&CROB::timeOffset, "timeOffset", "time offset for CROB"))
Readout setup / Hardware cabling for TOF Used to create the hardware mapping for the TOF unpacker.
i32 NCrobsPerComponent() const
i32 NElinksPerComponent() const
std::vector< i32 > elink2Asic
std::vector< i32 > asic2PadI
i32 NElinksPerCrob() const
CBM_YAML_PROPERTIES(yaml::Property(&ReadoutSetup::timeOffset, "timeOffset", "Time offset for TOF"), yaml::Property(&ReadoutSetup::nFebsPerComponent, "nFebsPerComponent", "Number of FEBs per component"), yaml::Property(&ReadoutSetup::nAsicsPerFeb, "nAsicsPerFeb", "Number of ASICs per FEB"), yaml::Property(&ReadoutSetup::nChannelsPerAsic, "nChannelsPerAsic", "Number of channels per ASIC"), yaml::Property(&ReadoutSetup::nCrobPerComponent, "nCrobPerComponent", "Number of CROBs per component"), yaml::Property(&ReadoutSetup::crobs, "crobs", "Crobs", {}, YAML::Flow), yaml::Property(&ReadoutSetup::eqIds, "eqIds", "Array to hold the unique IDs (equipment ID) for all TOF DPBs", YAML::Flow, YAML::Hex), yaml::Property(&ReadoutSetup::elink2Asic, "elink2Asic", "Mapping to eLink to ASIC number within CROB. Mapping is the same for each CROB. (size: nElinksPerCrob)", YAML::Flow), yaml::Property(&ReadoutSetup::elink2AsicInner, "elink2AsicInner", "add explanation", YAML::Flow), yaml::Property(&ReadoutSetup::asic2PadI, "asic2PadI", "Mapping in Readout chain PCBs; Map from GET4 channel to PADI channel (size: nChansPerFeb)", YAML::Flow))
bool CheckBmonComp(uint32_t uCompId) const
std::vector< i32 > elink2AsicInner
size_t NComponents() const
std::vector< CROB > crobs
i32 NChansPerComponent() const
bool CheckInnerComp(uint32_t uCompId) const