Skip to content
Snippets Groups Projects
Commit 2b882872 authored by Dominik Smith's avatar Dominik Smith Committed by Florian Uhlig
Browse files

Minor updates to doxygen tags and copyright headers for cbm::algo unpackers.

parent b7253ffe
No related branches found
No related tags found
1 merge request!1173Minor updates to doxygen tags and copyright headers for cbm::algo unpackers.
Pipeline #22492 passed
......@@ -2,12 +2,6 @@
SPDX-License-Identifier: GPL-3.0-only
Authors: Dominik Smith [committer] */
// -------------------------------------------------------------------------
// ----- BmonReadoutConfig header file -----
// ----- Created 22/02/22 by P.-A. Loizeau -----
// ----- Modified 07/12/18 by A Kumar -----
// -------------------------------------------------------------------------
#ifndef ALGO_DETECTORS_BMON_BMONREADOUTCONFIG_H
#define ALGO_DETECTORS_BMON_BMONREADOUTCONFIG_H
......@@ -55,14 +49,14 @@ namespace cbm::algo
/// Constants
/// Taken from mBmonCriPar.par
static const uint16_t numComp = 4; // Total number of TOF DPBs in system
static const uint32_t numFebsPerComp = 10; // Number of FEEs which are connected to one GDPB
static const uint32_t numAsicsPerFeb = 8; // Number of ASICs connected in each FEB for TOF
static const uint32_t numChanPerAsic = 4; // Number of channels in each ASIC
static const uint32_t numCrob = 8; // Total number of Gbtx links
static const uint16_t numComp = 4; ///< Total number of TOF DPBs in system
static const uint32_t numFebsPerComp = 10; ///< Number of FEEs which are connected to one GDPB
static const uint32_t numAsicsPerFeb = 8; ///< Number of ASICs connected in each FEB for TOF
static const uint32_t numChanPerAsic = 4; ///< Number of channels in each ASIC
static const uint32_t numCrob = 8; ///< Total number of Gbtx links
/// Taken from CbmMcbm2018TofPar.h
static const uint32_t numFebsPerCrob = 5; // Number of FEBs connected to each CROB for mTof 2019
static const uint32_t numFebsPerCrob = 5; ///< Number of FEBs connected to each CROB for mTof 2019
static const uint32_t numElinksPerCrob = numAsicsPerFeb * numFebsPerCrob;
// Module Identifier connected to Gbtx link, has to match geometry
......@@ -74,7 +68,7 @@ namespace cbm::algo
// side of Rpcs connected to Gbtx link, i.e. 0 or 1
const int32_t rpcSide[numCrob] = {0, 0, 0, 0, 0, 0, 0, 0};
std::vector<int32_t> fviRpcChUId = {}; // UID/address for each channel, build from type, side and module
std::vector<int32_t> fviRpcChUId = {}; ///< UID/address for each channel, build from type, side and module
void BuildChannelsUidMap();
void BuildChannelsUidMapT0(uint32_t& uCh, uint32_t uGbtx);
......
......@@ -79,6 +79,7 @@ namespace cbm::algo
/** @class UnpackBmon
** @author Pierre-Alain Loizeau <p.-a.loizeau@gsi.de>
** @author Volker Friese <v.friese@gsi.de>
** @author Dominik Smith <d.smith@gsi.de>
** @since 25 November 2021
** @brief Unpack algorithm for STS
**/
......
/* Copyright (C) 2021 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
SPDX-License-Identifier: GPL-3.0-only
Authors: Florian Uhlig [committer] */
// -------------------------------------------------------------------------
// ----- MuchReadoutConfig header file -----
// ----- Created 22/02/22 by P.-A. Loizeau -----
// ----- Modified 07/12/18 by A Kumar -----
// -------------------------------------------------------------------------
Authors: Dominik Smith [committer] */
#ifndef ALGO_DETECTORS_MUCH_MUCHREADOUTCONFIG_H
#define ALGO_DETECTORS_MUCH_MUCHREADOUTCONFIG_H
......@@ -57,28 +51,32 @@ namespace cbm::algo
uint32_t CreateMuchAddress(uint32_t dpbidx, int32_t iFebId, uint32_t usChan);
/// Constants
static const uint16_t numCrobPerComp = 1; // Number of CROBs possible per DPB
static const uint16_t numElinksPerCrob = 42; // Number of elinks in each CROB ?
static const uint16_t numFebsPerCrob = 9; // Number of FEBs connected to each CROB for mMuch 2019
static const uint16_t numAsicsPerFeb = 1; // Number of ASICs connected in each FEB for MUCH
static const uint16_t numChanPerAsic = 128; // Number of channels in each ASIC
static const uint16_t numComp = 6; // Total number of MUCH DPBs in system
static const uint16_t numCrobPerComp = 1; ///< Number of CROBs possible per DPB
static const uint16_t numElinksPerCrob = 42; ///< Number of elinks in each CROB ?
static const uint16_t numFebsPerCrob = 9; ///< Number of FEBs connected to each CROB for mMuch 2019
static const uint16_t numAsicsPerFeb = 1; ///< Number of ASICs connected in each FEB for MUCH
static const uint16_t numChanPerAsic = 128; ///< Number of channels in each ASIC
static const uint16_t numComp = 6; ///< Total number of MUCH DPBs in system
/// Variables
uint16_t numFebsInGemA = 27; // Number of FEBs connected in GEM Module A
uint16_t numFebsInGemB = 18; // Number of FEBs connected in GEM Module B
uint16_t numFebsInRpc = 9; // Number of FEBs connected in RPC Module
std::vector<int16_t> fnFebsIdsArrayGemA; // Array to hold FEB IDs connected to GEM Module A
std::vector<int16_t> fnFebsIdsArrayGemB; // Array to hold FEB IDs connected to GEM Module B
std::vector<int16_t> fnFebsIdsArrayRpc; // Array to hold FEB IDs connected to RPC Module
std::vector<int16_t> fChannelsToPadXA; // Array which stores the corresponding x position of PAD of entire module A
std::vector<int16_t> fChannelsToPadYA; // Array which stores the corresponding y position of PAD of entire module A
std::vector<int16_t> fChannelsToPadXB; // Array which stores the corresponding x position of PAD of entire module B
std::vector<int16_t> fChannelsToPadYB; // Array which stores the corresponding y position of PAD of entire module B
std::vector<int16_t> fChannelsToPadXRpc; // Array which stores the corresponding x position of PAD of RPC module
std::vector<int16_t> fChannelsToPadYRpc; // Array which stores the corresponding y position of PAD of RPC module
void InitChannelToPadMaps(); //Init arrays which store positions of PADs
uint16_t numFebsInGemA = 27; ///< Number of FEBs connected in GEM Module A
uint16_t numFebsInGemB = 18; ///< Number of FEBs connected in GEM Module B
uint16_t numFebsInRpc = 9; ///< Number of FEBs connected in RPC Module
std::vector<int16_t> fnFebsIdsArrayGemA; ///< Array to hold FEB IDs connected to GEM Module A
std::vector<int16_t> fnFebsIdsArrayGemB; ///< Array to hold FEB IDs connected to GEM Module B
std::vector<int16_t> fnFebsIdsArrayRpc; ///< Array to hold FEB IDs connected to RPC Module
std::vector<int16_t>
fChannelsToPadXA; ///< Array which stores the corresponding x position of PAD of entire module A
std::vector<int16_t>
fChannelsToPadYA; ///< Array which stores the corresponding y position of PAD of entire module A
std::vector<int16_t>
fChannelsToPadXB; ///< Array which stores the corresponding x position of PAD of entire module B
std::vector<int16_t>
fChannelsToPadYB; ///< Array which stores the corresponding y position of PAD of entire module B
std::vector<int16_t> fChannelsToPadXRpc; ///< Array which stores the corresponding x position of PAD of RPC module
std::vector<int16_t> fChannelsToPadYRpc; ///< Array which stores the corresponding y position of PAD of RPC module
void InitChannelToPadMaps(); ///<Init arrays which store positions of PADs
int32_t GetFebId(uint16_t);
int8_t GetPadXA(uint8_t febid, uint8_t channelid);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment