12#include "FairDetParIo.h"
14#include "FairParamList.h"
24 : FairParGenericSet(name, title, context)
89 if (!l)
return kFALSE;
91 if (!l->fill(
"NbModules", &
fuNbModules))
return kFALSE;
99 if (!l->fill(
"ModAddress", &
fiModAddress))
return kFALSE;
102 if (!l->fill(
"ModSwapXY", &
fiModSwapXY))
return kFALSE;
103 if (!l->fill(
"ModInvertX", &
fiModInvertX))
return kFALSE;
104 if (!l->fill(
"ModInvertY", &
fiModInvertY))
return kFALSE;
106 if (!l->fill(
"NrOfDpbs", &
fuNrOfDpbs))
return kFALSE;
109 if (!l->fill(
"DbpIdArray", &
fiDbpIdArray))
return kFALSE;
120 if (!l->fill(
"FebAdcGain", &
fdFebAdcGain))
return kFALSE;
121 if (!l->fill(
"FebAdcBase", &
fdFebAdcBase))
return kFALSE;
133 LOG(warning) <<
"CbmCosy2019HodoPar::ElinkIdxToFebIdx => Index out of bound, "
134 <<
"returning crazy value!";
143 LOG(warning) <<
"CbmCosy2019HodoPar::ElinkIdxToAsicIdxFebMuch => Index out of bound, "
144 <<
"returning crazy value!";
153 LOG(warning) <<
"CbmCosy2019HodoPar::ChannelToFiber => Index out of bound, "
154 <<
"returning crazy value!";
162 LOG(warning) <<
"CbmCosy2019HodoPar::ChannelToPixel => Index out of bound, "
163 <<
"returning crazy value!";
171 LOG(warning) <<
"CbmCosy2019HodoPar::ChannelToAxis => Index out of bound, "
172 <<
"returning crazy value!";
181 LOG(warning) <<
"CbmCosy2019HodoPar::CheckModuleIndex => Index out of bound!";
189 LOG(warning) <<
"CbmCosy2019HodoPar::GetModuleAddress => Index out of bound, "
190 <<
"returning crazy value!";
198 LOG(warning) <<
"CbmCosy2019HodoPar::GetModuleCenterPosX => Index out of bound, "
199 <<
"returning crazy value!";
207 LOG(warning) <<
"CbmCosy2019HodoPar::GetModuleCenterPosY => Index out of bound, "
208 <<
"returning crazy value!";
216 LOG(warning) <<
"CbmCosy2019HodoPar::GetModuleSwapXY => Index out of bound, "
217 <<
"returning false!";
225 LOG(warning) <<
"CbmCosy2019HodoPar::GetModuleInvertX => Index out of bound, "
226 <<
"returning false!";
234 LOG(warning) <<
"CbmCosy2019HodoPar::GetModuleInvertY => Index out of bound, "
235 <<
"returning false!";
244 LOG(warning) <<
"CbmCosy2019HodoPar::GetDpbId => Index out of bound, "
245 <<
"returning crazy value!";
254 LOG(warning) <<
"CbmCosy2019HodoPar::IsCrobActive => Crob Index out of bound, "
255 <<
"returning default inactive!";
260 LOG(warning) <<
"CbmCosy2019HodoPar::IsCrobActive => Dpb Index out of bound, "
261 <<
"returning default inactive!";
272 LOG(warning) <<
"CbmCosy2019HodoPar::IsFebActive => Feb Index out of bound, "
273 <<
"returning default inactive!";
286 LOG(warning) <<
"CbmCosy2019HodoPar::IsFebActive => Feb Index out of bound, "
287 <<
"returning default inactive!";
292 LOG(warning) <<
"CbmCosy2019HodoPar::IsFebActive => Crob Index out of bound, "
293 <<
"returning default inactive!";
298 LOG(warning) <<
"CbmCosy2019HodoPar::IsFebActive => Dpb Index out of bound, "
299 <<
"returning default inactive!";
312 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebModuleIdx => Feb Index out of bound, "
313 <<
"returning default inactive!";
318 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebModuleIdx => Crob Index out of bound, "
319 <<
"returning default inactive!";
324 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebModuleIdx => Dpb Index out of bound, "
325 <<
"returning default inactive!";
338 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcGain => Feb Index out of bound, "
339 <<
"returning default value!";
344 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcGain => Crob Index out of bound, "
345 <<
"returning default value!";
350 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcGain => Dpb Index out of bound, "
351 <<
"returning default value!";
364 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcOffset => Feb Index out of bound, "
365 <<
"returning default value!";
370 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcOffset => Crob Index out of bound, "
371 <<
"returning default value!";
376 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcOffset => Dpb Index out of bound, "
377 <<
"returning default value!";
390 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcBase => Feb Index out of bound, "
391 <<
"returning default value!";
396 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcBase => Crob Index out of bound, "
397 <<
"returning default value!";
402 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcBase => Dpb Index out of bound, "
403 <<
"returning default value!";
416 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcThrGain => Feb Index out of bound, "
417 <<
"returning default value!";
422 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcThrGain => Crob Index out of bound, "
423 <<
"returning default value!";
428 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcThrGain => Dpb Index out of bound, "
429 <<
"returning default value!";
442 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcThrOffs => Feb Index out of bound, "
443 <<
"returning default value!";
448 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcThrOffs => Crob Index out of bound, "
449 <<
"returning default value!";
454 LOG(warning) <<
"CbmCosy2019HodoPar::GetFebAdcThrOffs => Dpb Index out of bound, "
455 <<
"returning default value!";
477 LOG(warning) <<
"CbmCosy2019HodoPar::GetChannelInModule => Index out of bound, "
478 <<
"returning crazy value!";
ClassImp(CbmConverterManager)
UInt_t GetChannelInModule(UInt_t uModuleIdx, UInt_t uChan)
UInt_t fuNbModules
Map from channel index to Hodoscope Axis (X or Y)
Int_t ElinkIdxToFebIdx(UInt_t uElink)
Double_t GetFebAdcBase(UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)
Int_t GetFebModuleIdx(UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)
void putParams(FairParamList *)
Int_t GetFebAdcThrOffs(UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)
Bool_t GetModuleSwapXY(UInt_t uModuleIdx)
UInt_t GetModuleAddress(UInt_t uModuleIdx)
const UInt_t kuChannelToPlaneMap[kuNbChanPerAsic]
Map from channel index to PMT pixel.
CbmCosy2019HodoPar(const char *name="CbmCosy2019HodoPar", const char *title="Much parameters", const char *context="Default")
static const UInt_t kuNbCrobsPerDpb
Constants.
Double_t GetFebAdcOffset(UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)
UInt_t ChannelToPixel(UInt_t uChan)
Bool_t CheckModuleIndex(UInt_t uModuleIdx)
const UInt_t kuCrobMapElinkFebMuch[kuNbElinksPerCrob]
Bool_t getParams(FairParamList *)
static const UInt_t kuNbFiberPerAxis
Bool_t IsFebActive(UInt_t uFebInSystIdx)
Double_t GetModuleCenterPosX(UInt_t uModuleIdx)
UInt_t ChannelToAxis(UInt_t uChan)
const UInt_t kuChannelToFiberMap[kuNbChanPerAsic]
Map from eLink index to ASIC index within CROB ( 0 to kuNbFebsPerCrob * kuNbAsicPerFeb )
Bool_t GetModuleInvertY(UInt_t uModuleIdx)
UInt_t GetDpbId(UInt_t uDpbIdx)
static const UInt_t kuNbFebsPerCrob
Double_t GetModuleCenterPosY(UInt_t uModuleIdx)
Bool_t IsCrobActive(UInt_t uDpbIdx, UInt_t uCrobIdx)
static const UInt_t kuNbElinksPerCrob
static const UInt_t kuNbChanPerAsic
UInt_t ElinkIdxToAsicIdxFebMuch(UInt_t uElink)
Double_t GetFebAdcGain(UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)
UInt_t ChannelToFiber(UInt_t uChan)
const UInt_t kuChannelToPixelMap[kuNbChanPerAsic]
Map from channel index to Hodoscope Fiber.
virtual ~CbmCosy2019HodoPar()
const Int_t kiCrobMapElinkFebIdx[kuNbElinksPerCrob]
Map from eLink index to ASIC index within CROB ( 0 to kuNbFebsPerCrob * kuNbAsicPerFeb )
Bool_t GetModuleInvertX(UInt_t uModuleIdx)
Double_t GetFebAdcThrGain(UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)