Belle II Software
release-08-01-10
|
This class provides access to ECL channel map that is either a) Loaded from the database (see ecl/dbobject/include/ECLChannelMap.h). More...
#include <ECLChannelMapper.h>
Public Member Functions | |
ECLChannelMapper () | |
Default constructor. | |
~ECLChannelMapper () | |
Default destructor. | |
bool | initFromFile () |
Initialize channel mapper using data stored in default location. | |
bool | initFromFile (const char *eclMapFile) |
Initialize channel mapper using data stored in the ASCII file. | |
bool | initFromDB () |
Initialize channel mapper from the conditions database. | |
ECLChannelMap | getDBObject () |
Convert internal data to ECLChannelMap database object. | |
int | getCrateID (int iCOPPERNode, int iFINESSE, bool pcie40=false) |
Get crate number by given COPPER node number and FINESSE number. More... | |
int | getCellId (int iCrate, int iShaper, int iChannel) |
Get CellId by given crate number, shaper position in the crate and DSP channel number in the shaper. | |
int | getCOPPERNode (int iCrate) |
Get number of COPPER node by given crate number. | |
int | getFINESSE (int iCrate) |
Get number of FINESSE (0/1) in COPPER by given crate number. | |
int | getSubSystem (int iCrate) |
Get ECL subsystem ID by given crate number: 0 – barrel, 1 – forward. 2 – backward endcap. | |
int | getCrateID (int cellID) |
Get crate number by given CellId. | |
int | getShaperPosition (int cellID) |
Get position of the shaper in the crate by given CellId. | |
int | getShaperChannel (int cellID) |
Get number of DSP channel in the shaper by given number of CellId. | |
int | getElectronicsID (int cellID) |
Return channel index in ECLChannelMap. | |
int | getNShapersInCrate (int iCrate) |
Get number of ShaperDSP modules in the given VME crate number. | |
ClassDef (ECLChannelMapper, 1) | |
ClassDef. | |
Static Public Member Functions | |
static ECLChannelMapper * | getInstance (bool use_db=true) |
Return main instance of ECLChannelMapper. More... | |
Private Attributes | |
bool | isInitialized |
initialization flag | |
int | convertArrayBarrel [ECL_BARREL_CRATES *ECL_BARREL_SHAPERS_IN_CRATE *ECL_CHANNELS_IN_SHAPER] |
convert (iCrate, iShaper, iChannel) to CellId for Barrel ECL | |
int | convertArrayFWD [ECL_FWD_CRATES *ECL_FWD_SHAPERS_IN_CRATE *ECL_CHANNELS_IN_SHAPER] |
convert (iCrate, iShaper, iChannel) to CellId for Forward endcap | |
int | convertArrayBKW [ECL_BKW_CRATES *ECL_BKW_SHAPERS_IN_CRATE *ECL_CHANNELS_IN_SHAPER] |
convert (iCrate, iShaper, iChannel) to CellId Backward endcap | |
int | convertArrayInv [ECL_TOTAL_CHANNELS][3] |
convert CellId to (iCrate, iShaper, iChannel) | |
Static Private Attributes | |
static ECLChannelMapper * | instance = nullptr |
Main instance of ECLChannelMapper. | |
This class provides access to ECL channel map that is either a) Loaded from the database (see ecl/dbobject/include/ECLChannelMap.h).
b) (** NOT SUPPORTED **) Loaded from the text file (standard location is FileSystem::findFile("ecl/data/ecl_channels_map.txt"))
Please note that (a) is recommended and (b) should be used only for very specific rare cases (such as prepation of new ECLChannelMap payloads)
Definition at line 29 of file ECLChannelMapper.h.
int getCrateID | ( | int | iCOPPERNode, |
int | iFINESSE, | ||
bool | pcie40 = false |
||
) |
Get crate number by given COPPER node number and FINESSE number.
iCOPPERNode | Node ID (26 nodes in COPPER case, 3 nodes in PCIe40 case) |
iFINESSE | Channel number (0 or 1 in COPPER case, 0-17 in PCIe40 case) |
pcie40 | Set to true if unpacking PCIe40 data |
Definition at line 233 of file ECLChannelMapper.cc.
|
static |
Return main instance of ECLChannelMapper.
use_db | If true, run initFromDB() at the creation of main instance |
Definition at line 49 of file ECLChannelMapper.cc.