Go to the documentation of this file.
9 #include "FairDetParIo.h"
10 #include "FairLogger.h"
11 #include "FairParIo.h"
12 #include "FairParamList.h"
23 : FairParGenericSet(name, title, context)
29 , fnFebsIdsArrayGemA()
30 , fnFebsIdsArrayGemB()
78 if (!l)
return kFALSE;
80 if (!l->fill(
"NrOfDpbs", &
fuNrOfDpbs))
return kFALSE;
83 if (!l->fill(
"DbpIdArray", &
fiDbpIdArray))
return kFALSE;
88 if (!l->fill(
"NrOfFebsInGemA", &
fuFebsInGemA))
return kFALSE;
93 if (!l->fill(
"NrOfFebsInGemB", &
fuFebsInGemB))
return kFALSE;
111 if (!l->fill(
"RealX", &
fRealX))
return kFALSE;
125 <<
"CbmMcbm2018MuchPar::ElinkIdxToFebIdx => Index out of bound, "
126 <<
"returning crazy value!";
136 <<
"CbmMcbm2018MuchPar::ElinkIdxToAsicIdxFebMuch => Index out of bound, "
137 <<
"returning crazy value!";
146 LOG(warning) <<
"CbmMcbm2018MuchPar::GetDpbId => Index out of bound, "
147 <<
"returning crazy value!";
159 <<
"CbmMcbm2018MuchPar::IsCrobActive => Crob Index out of bound, "
160 <<
"returning default inactive!";
166 <<
"CbmMcbm2018MuchPar::IsCrobActive => Dpb Index out of bound, "
167 <<
"returning default inactive!";
179 <<
"CbmMcbm2018MuchPar::IsFebActive => Feb Index out of bound, "
180 <<
"returning default inactive!";
196 <<
"CbmMcbm2018MuchPar::IsFebActive => Feb Index out of bound, "
197 <<
"returning default inactive!";
203 <<
"CbmMcbm2018MuchPar::IsFebActive => Crob Index out of bound, "
204 <<
"returning default inactive!";
210 <<
"CbmMcbm2018MuchPar::IsFebActive => Dpb Index out of bound, "
211 <<
"returning default inactive!";
218 LOG(debug) <<
"CbmMcbm2018MuchPar::GetPadXA => Index out of bounds: "
231 LOG(debug) <<
"CbmMcbm2018MuchPar::GetPadYA => Index out of bounds: "
244 LOG(debug) <<
"CbmMcbm2018MuchPar::GetPadXB => Index out of bounds: "
257 LOG(debug) <<
"CbmMcbm2018MuchPar::GetPadYB => Index out of bounds: "
273 LOG(error) <<
"CbmMcbm2018MuchPar::GetFebId => Index out of bounds: "
297 if (SectorIndex < 0 || SectorIndex <= 97) {
298 LOG(debug) <<
"CbmMcbm2018MuchPar::GetRealX => Index out of bounds: ";
302 return fRealX[SectorIndex];
308 if (SectorIndex < 0 || SectorIndex <= 97) {
309 LOG(debug) <<
"CbmMcbm2018MuchPar::GetRealX => Index out of bounds: ";
317 Int_t PadIndex = Channel + 97 * Sector;
318 if (Channel < 0 || Sector < 0)
return -2;
319 if (
fRealX.GetSize() <= PadIndex) {
320 LOG(info) <<
"CbmMcbm2018MuchPar::GetRealX => Index out of bounds: "
321 << Channel <<
" " << Sector <<
" " << PadIndex;
328 Int_t PadIndex = Channel + 97 * Sector;
329 if (Channel < 0 || Sector < 0)
return -2;
331 LOG(info) <<
"CbmMcbm2018MuchPar::GetRealPadSize => Index out of bounds: "
332 << Channel <<
" " << Sector <<
" " << PadIndex;
Bool_t IsCrobActive(UInt_t uDpbIdx, UInt_t uCrobIdx)
UInt_t GetNrOfFebsInGemB()
static const UInt_t kuNbCrobsPerDpb
Constants.
UInt_t GetDpbId(UInt_t uDpbIdx)
Double_t GetRealPadSize(Int_t)
UInt_t GetNrOfFebsInGemA()
static const UInt_t kuNbElinksPerCrob
CbmMcbm2018MuchPar(const char *name="CbmMcbm2018MuchPar", const char *title="Much parameters", const char *context="Default")
UInt_t ElinkIdxToAsicIdxFebMuch(UInt_t uElink)
Short_t GetPadYA(UShort_t febid, UShort_t channelid)
Bool_t IsFebActive(UInt_t uFebInSystIdx)
void putParams(FairParamList *)
ClassImp(CbmConverterManager) InitStatus CbmConverterManager
static const UInt_t kuNbFebsPerCrob
TArrayI fnFebsIdsArrayGemA
virtual ~CbmMcbm2018MuchPar()
Short_t GetPadXB(UShort_t febid, UShort_t channelid)
TArrayI fnFebsIdsArrayGemB
Short_t GetPadYB(UShort_t febid, UShort_t channelid)
Bool_t getParams(FairParamList *)
const UInt_t kuCrobMapElinkFebMuch[kuNbElinksPerCrob]
Int_t ElinkIdxToFebIdx(UInt_t uElink)
UInt_t fuNrOfDpbs
Map from eLink index to ASIC index within CROB ( 0 to kuNbFebsPerCrob * kuNbAsicPerFeb )
const Int_t kiCrobMapElinkFebIdx[kuNbElinksPerCrob]
Map from eLink index to ASIC index within CROB ( 0 to kuNbFebsPerCrob * kuNbAsicPerFeb )
static const UInt_t kuNbChanPerAsic
Short_t GetPadXA(UShort_t febid, UShort_t channelid)