Go to the documentation of this file.
8 #include "FairDetParIo.h"
9 #include "FairLogger.h"
10 #include "FairParIo.h"
11 #include "FairParamList.h"
22 : FairParGenericSet(name, title, context)
83 if (!l)
return kFALSE;
85 if (!l->fill(
"NbModules", &
fuNbModules))
return kFALSE;
93 if (!l->fill(
"ModAddress", &
fiModAddress))
return kFALSE;
96 if (!l->fill(
"ModSwapXY", &
fiModSwapXY))
return kFALSE;
97 if (!l->fill(
"ModInvertX", &
fiModInvertX))
return kFALSE;
98 if (!l->fill(
"ModInvertY", &
fiModInvertY))
return kFALSE;
100 if (!l->fill(
"NrOfDpbs", &
fuNrOfDpbs))
return kFALSE;
103 if (!l->fill(
"DbpIdArray", &
fiDbpIdArray))
return kFALSE;
114 if (!l->fill(
"FebAdcGain", &
fdFebAdcGain))
return kFALSE;
115 if (!l->fill(
"FebAdcBase", &
fdFebAdcBase))
return kFALSE;
128 <<
"CbmMcbm2018HodoPar::ElinkIdxToFebIdx => Index out of bound, "
129 <<
"returning crazy value!";
139 <<
"CbmMcbm2018HodoPar::ElinkIdxToAsicIdxFebMuch => Index out of bound, "
140 <<
"returning crazy value!";
149 LOG(warning) <<
"CbmMcbm2018HodoPar::ChannelToFiber => Index out of bound, "
150 <<
"returning crazy value!";
158 LOG(warning) <<
"CbmMcbm2018HodoPar::ChannelToPixel => Index out of bound, "
159 <<
"returning crazy value!";
167 LOG(warning) <<
"CbmMcbm2018HodoPar::ChannelToAxis => Index out of bound, "
168 <<
"returning crazy value!";
178 <<
"CbmMcbm2018HodoPar::CheckModuleIndex => Index out of bound!";
187 <<
"CbmMcbm2018HodoPar::GetModuleAddress => Index out of bound, "
188 <<
"returning crazy value!";
197 <<
"CbmMcbm2018HodoPar::GetModuleCenterPosX => Index out of bound, "
198 <<
"returning crazy value!";
207 <<
"CbmMcbm2018HodoPar::GetModuleCenterPosY => Index out of bound, "
208 <<
"returning crazy value!";
217 <<
"CbmMcbm2018HodoPar::GetModuleSwapXY => Index out of bound, "
218 <<
"returning false!";
227 <<
"CbmMcbm2018HodoPar::GetModuleInvertX => Index out of bound, "
228 <<
"returning false!";
237 <<
"CbmMcbm2018HodoPar::GetModuleInvertY => Index out of bound, "
238 <<
"returning false!";
247 LOG(warning) <<
"CbmMcbm2018HodoPar::GetDpbId => Index out of bound, "
248 <<
"returning crazy value!";
260 <<
"CbmMcbm2018HodoPar::IsCrobActive => Crob Index out of bound, "
261 <<
"returning default inactive!";
267 <<
"CbmMcbm2018HodoPar::IsCrobActive => Dpb Index out of bound, "
268 <<
"returning default inactive!";
279 <<
"CbmMcbm2018HodoPar::IsFebActive => Feb Index out of bound, "
280 <<
"returning default inactive!";
296 <<
"CbmMcbm2018HodoPar::IsFebActive => Feb Index out of bound, "
297 <<
"returning default inactive!";
303 <<
"CbmMcbm2018HodoPar::IsFebActive => Crob Index out of bound, "
304 <<
"returning default inactive!";
310 <<
"CbmMcbm2018HodoPar::IsFebActive => Dpb Index out of bound, "
311 <<
"returning default inactive!";
327 <<
"CbmMcbm2018HodoPar::GetFebModuleIdx => Feb Index out of bound, "
328 <<
"returning default inactive!";
334 <<
"CbmMcbm2018HodoPar::GetFebModuleIdx => Crob Index out of bound, "
335 <<
"returning default inactive!";
341 <<
"CbmMcbm2018HodoPar::GetFebModuleIdx => Dpb Index out of bound, "
342 <<
"returning default inactive!";
358 <<
"CbmMcbm2018HodoPar::GetFebAdcGain => Feb Index out of bound, "
359 <<
"returning default value!";
365 <<
"CbmMcbm2018HodoPar::GetFebAdcGain => Crob Index out of bound, "
366 <<
"returning default value!";
372 <<
"CbmMcbm2018HodoPar::GetFebAdcGain => Dpb Index out of bound, "
373 <<
"returning default value!";
390 <<
"CbmMcbm2018HodoPar::GetFebAdcOffset => Feb Index out of bound, "
391 <<
"returning default value!";
397 <<
"CbmMcbm2018HodoPar::GetFebAdcOffset => Crob Index out of bound, "
398 <<
"returning default value!";
404 <<
"CbmMcbm2018HodoPar::GetFebAdcOffset => Dpb Index out of bound, "
405 <<
"returning default value!";
421 <<
"CbmMcbm2018HodoPar::GetFebAdcBase => Feb Index out of bound, "
422 <<
"returning default value!";
428 <<
"CbmMcbm2018HodoPar::GetFebAdcBase => Crob Index out of bound, "
429 <<
"returning default value!";
435 <<
"CbmMcbm2018HodoPar::GetFebAdcBase => Dpb Index out of bound, "
436 <<
"returning default value!";
452 <<
"CbmMcbm2018HodoPar::GetFebAdcThrGain => Feb Index out of bound, "
453 <<
"returning default value!";
459 <<
"CbmMcbm2018HodoPar::GetFebAdcThrGain => Crob Index out of bound, "
460 <<
"returning default value!";
466 <<
"CbmMcbm2018HodoPar::GetFebAdcThrGain => Dpb Index out of bound, "
467 <<
"returning default value!";
483 <<
"CbmMcbm2018HodoPar::GetFebAdcThrOffs => Feb Index out of bound, "
484 <<
"returning default value!";
490 <<
"CbmMcbm2018HodoPar::GetFebAdcThrOffs => Crob Index out of bound, "
491 <<
"returning default value!";
497 <<
"CbmMcbm2018HodoPar::GetFebAdcThrOffs => Dpb Index out of bound, "
498 <<
"returning default value!";
522 <<
"CbmMcbm2018HodoPar::GetChannelInModule => Index out of bound, "
523 <<
"returning crazy value!";
UInt_t ChannelToAxis(UInt_t uChan)
Double_t GetFebAdcOffset(UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)
virtual ~CbmMcbm2018HodoPar()
Bool_t CheckModuleIndex(UInt_t uModuleIdx)
Int_t GetFebModuleIdx(UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)
Double_t GetFebAdcBase(UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)
void putParams(FairParamList *)
Int_t ElinkIdxToFebIdx(UInt_t uElink)
const UInt_t kuCrobMapElinkFebMuch[kuNbElinksPerCrob]
static const UInt_t kuNbCrobsPerDpb
Constants.
Double_t GetModuleCenterPosX(UInt_t uModuleIdx)
Int_t GetFebAdcThrOffs(UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)
UInt_t GetModuleAddress(UInt_t uModuleIdx)
const UInt_t kuChannelToPixelMap[kuNbChanPerAsic]
Map from channel index to Hodoscope Fiber.
const Int_t kiCrobMapElinkFebIdx[kuNbElinksPerCrob]
Map from eLink index to ASIC index within CROB ( 0 to kuNbFebsPerCrob * kuNbAsicPerFeb )
static const UInt_t kuNbFiberPerAxis
UInt_t GetChannelInModule(UInt_t uModuleIdx, UInt_t uChan)
const UInt_t kuChannelToPlaneMap[kuNbChanPerAsic]
Map from channel index to PMT pixel.
const UInt_t kuChannelToFiberMap[kuNbChanPerAsic]
Map from eLink index to ASIC index within CROB ( 0 to kuNbFebsPerCrob * kuNbAsicPerFeb )
ClassImp(CbmConverterManager) InitStatus CbmConverterManager
CbmMcbm2018HodoPar(const char *name="CbmMcbm2018HodoPar", const char *title="Much parameters", const char *context="Default")
UInt_t ElinkIdxToAsicIdxFebMuch(UInt_t uElink)
Double_t GetFebAdcGain(UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)
static const UInt_t kuNbFebsPerCrob
Bool_t GetModuleInvertX(UInt_t uModuleIdx)
Bool_t GetModuleSwapXY(UInt_t uModuleIdx)
static const UInt_t kuNbElinksPerCrob
Bool_t getParams(FairParamList *)
Bool_t GetModuleInvertY(UInt_t uModuleIdx)
Bool_t IsFebActive(UInt_t uFebInSystIdx)
Double_t GetModuleCenterPosY(UInt_t uModuleIdx)
UInt_t fuNbModules
Map from channel index to Hodoscope Axis (X or Y)
Bool_t IsCrobActive(UInt_t uDpbIdx, UInt_t uCrobIdx)
Double_t GetFebAdcThrGain(UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)
UInt_t GetDpbId(UInt_t uDpbIdx)
UInt_t ChannelToPixel(UInt_t uChan)
static const UInt_t kuNbChanPerAsic
UInt_t ChannelToFiber(UInt_t uChan)