|
BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
|
#include <BmnHodoRaw2Digit.h>
Public Member Functions | |
| BmnHodoRaw2Digit (int period, int run, const std::string &mappingFile, const std::string &calibrationFile="") | |
| BmnHodoRaw2Digit () | |
| ~BmnHodoRaw2Digit () | |
| TString | GetName () |
| BmnStatus | ParseConfig (const std::string &file) |
| BmnStatus | ParseCalibration (const std::string &file) |
| BmnStatus | LoadCalibration (int period, int run) |
| BmnStatus | ParseINLcorrections () |
| uint32_t | correctINL (uint32_t time, std::pair< size_t, size_t > key) |
| void | FillEvent (TClonesArray *tdc_data, TClonesArray *adc_data, TClonesArray *Hododigit) |
| void | print () |
| digiPars | GetDigiPars () |
| auto | GetChannelMap () |
| std::optional< std::pair< float, float > > | GetCalibPairFromAddress (uint32_t address) |
| std::optional< uint32_t > | GetAddressFromBoard (std::pair< size_t, size_t > key) |
| BmnHodoRaw2Digit (int period, int run, const std::string &mappingFile, const std::string &calibrationFile="") | |
| BmnHodoRaw2Digit () | |
| ~BmnHodoRaw2Digit () | |
| TString | GetName () |
| BmnStatus | ParseConfig (const std::string &file) |
| BmnStatus | ParseCalibration (const std::string &file) |
| BmnStatus | LoadCalibration (int period, int run) |
| BmnStatus | ParseINLcorrections () |
| uint32_t | correctINL (uint32_t time, std::pair< size_t, size_t > key) |
| void | FillEvent (TClonesArray *tdc_data, TClonesArray *adc_data, TClonesArray *Hododigit) |
| void | print () |
| digiPars | GetDigiPars () |
| auto | GetChannelMap () |
| std::optional< std::pair< float, float > > | GetCalibPairFromAddress (uint32_t address) |
| std::optional< uint32_t > | GetAddressFromBoard (std::pair< size_t, size_t > key) |
| Public Member Functions inherited from WfmProcessor | |
| WfmProcessor () | |
| virtual | ~WfmProcessor () |
| WfmProcessor () | |
| virtual | ~WfmProcessor () |
Private Member Functions | |
| BmnStatus | ParseCalibrationJson (const nlohmann::json &j) |
| BmnStatus | ParseCalibrationJson (const nlohmann::json &j) |
Private Attributes | |
| std::unordered_map< std::pair< size_t, size_t >, uint32_t, boost::hash< std::pair< size_t, size_t > > > | fuoChannelMap |
| std::unordered_map< std::pair< size_t, size_t >, std::vector< float >, boost::hash< std::pair< size_t, size_t > > > | fINLcorrMap |
| std::unordered_map< uint32_t, std::pair< float, float > > | fuoCalibMap |
| int | fSaturation |
| bool | fDoRLdeconvolve |
| int | fRLthresold |
| float | fR2converge |
| size_t | fMaxIters |
| size_t | fMaxPeaks |
| std::vector< float > | fEthalon |
| double | fworkTime_real |
| double | fworkTime_cpu |
Additional Inherited Members | |
| Protected Member Functions inherited from WfmProcessor | |
| void | ProcessWfm (std::vector< float > &wfm, BmnDigiContainerTemplate *digi) |
| void | ProcessWfm (std::vector< float > &wfm, BmnDigiContainerTemplate *digi) |
| Protected Attributes inherited from WfmProcessor | |
| struct WfmProcessor::digiPars | fdigiPars |
| int | fSignalLength |
| std::complex< float > ** | fAZik |
Definition at line 23 of file BmnHodoRaw2Digit.h.
| BmnHodoRaw2Digit::BmnHodoRaw2Digit | ( | int | period, |
| int | run, | ||
| const std::string & | mappingFile, | ||
| const std::string & | calibrationFile = "" ) |
Definition at line 37 of file BmnHodoRaw2Digit.cxx.
References WfmProcessor::WfmProcessor(), fDoRLdeconvolve, fMaxIters, fMaxPeaks, fR2converge, fRLthresold, fSaturation, fworkTime_cpu, fworkTime_real, GetName(), kBMNERROR, LoadCalibration(), max(), ParseCalibration(), and ParseConfig().
Referenced by ParseCalibrationJson().
| BmnHodoRaw2Digit::BmnHodoRaw2Digit | ( | ) |
Definition at line 25 of file BmnHodoRaw2Digit.cxx.
References WfmProcessor::WfmProcessor(), fDoRLdeconvolve, fMaxIters, fMaxPeaks, fR2converge, fRLthresold, fSaturation, fworkTime_cpu, fworkTime_real, and max().
| BmnHodoRaw2Digit::~BmnHodoRaw2Digit | ( | ) |
Definition at line 429 of file BmnHodoRaw2Digit.cxx.
References fworkTime_cpu, fworkTime_real, and GetName().
| BmnHodoRaw2Digit::BmnHodoRaw2Digit | ( | int | period, |
| int | run, | ||
| const std::string & | mappingFile, | ||
| const std::string & | calibrationFile = "" ) |
| BmnHodoRaw2Digit::BmnHodoRaw2Digit | ( | ) |
| BmnHodoRaw2Digit::~BmnHodoRaw2Digit | ( | ) |
| uint32_t BmnHodoRaw2Digit::correctINL | ( | uint32_t | time, |
| std::pair< size_t, size_t > | key ) |
Definition at line 289 of file BmnHodoRaw2Digit.cxx.
References fINLcorrMap, and GetName().
Referenced by FillEvent().
| uint32_t BmnHodoRaw2Digit::correctINL | ( | uint32_t | time, |
| std::pair< size_t, size_t > | key ) |
| void BmnHodoRaw2Digit::FillEvent | ( | TClonesArray * | tdc_data, |
| TClonesArray * | adc_data, | ||
| TClonesArray * | Hododigit ) |
Definition at line 311 of file BmnHodoRaw2Digit.cxx.
References ADC_CLOCK_TQDC16VS, TObjArray::At(), correctINL(), TStopwatch::CpuTime(), BmnDigiContainerTemplate::fAmpl, BmnHodoDigi::fCrosstalk, WfmProcessor::fdigiPars, fDoRLdeconvolve, fEthalon, BmnDigiContainerTemplate::fFitAmpl, BmnDigiContainerTemplate::fFitR2, BmnDigiContainerTemplate::fFitTimeMax, BmnDigiContainerTemplate::fFitWfm, BmnDigiContainerTemplate::fIntegral, fMaxIters, fMaxPeaks, fR2converge, BmnHodoDigi::fR2history, fRLthresold, fSaturation, BmnHodoDigi::fSignalIntegral, BmnDigiContainerTemplate::fTimeMax, BmnDigiContainerTemplate::fWfm, fworkTime_cpu, fworkTime_real, BmnDigiContainerTemplate::fZL, GetAddressFromBoard(), GetCalibPairFromAddress(), BmnTDCDigit::GetChannel(), TObjArray::GetEntriesFast(), GetName(), RLDeconvolutor::getR2(), BmnTDCDigit::GetSerial(), BmnAbstractDigit::GetSignal(), RLDeconvolutor::getSignalDecomposition(), RLDeconvolutor::getSignalInfo(), BmnTDCDigit::GetSlot(), BmnTQDCADCDigit< IntType >::GetSlot(), BmnTDCDigit::GetValue(), WfmProcessor::ProcessWfm(), TStopwatch::RealTime(), BmnHodoDigi::reset(), RLDeconvolutor::runDeconvolution(), BmnAbstractDigit::SetAddress(), BmnHodoDigit::SetIsSaturated(), BmnAbstractDigit::SetSignal(), BmnAbstractDigit::SetTime(), TStopwatch::Start(), TStopwatch::Stop(), TDC_BIN_COUNT, and TDC_CLOCK.
| void BmnHodoRaw2Digit::FillEvent | ( | TClonesArray * | tdc_data, |
| TClonesArray * | adc_data, | ||
| TClonesArray * | Hododigit ) |
| std::optional< uint32_t > BmnHodoRaw2Digit::GetAddressFromBoard | ( | std::pair< size_t, size_t > | key | ) |
Definition at line 278 of file BmnHodoRaw2Digit.cxx.
References fuoChannelMap, and GetName().
Referenced by FillEvent().
| std::optional< uint32_t > BmnHodoRaw2Digit::GetAddressFromBoard | ( | std::pair< size_t, size_t > | key | ) |
| std::optional< std::pair< float, float > > BmnHodoRaw2Digit::GetCalibPairFromAddress | ( | uint32_t | address | ) |
Definition at line 300 of file BmnHodoRaw2Digit.cxx.
References fuoCalibMap, and GetName().
Referenced by FillEvent(), and simple_analysis().
| std::optional< std::pair< float, float > > BmnHodoRaw2Digit::GetCalibPairFromAddress | ( | uint32_t | address | ) |
|
inline |
Definition at line 42 of file BmnHodoRaw2Digit.h.
References fuoChannelMap.
|
inline |
Definition at line 42 of file BmnHodoRaw2Digit.h.
References fuoChannelMap.
|
inline |
Definition at line 41 of file BmnHodoRaw2Digit.h.
References WfmProcessor::fdigiPars.
Referenced by calibrate_wfm().
|
inline |
Definition at line 41 of file BmnHodoRaw2Digit.h.
References WfmProcessor::fdigiPars.
|
inline |
Definition at line 32 of file BmnHodoRaw2Digit.h.
Referenced by BmnHodoRaw2Digit(), ~BmnHodoRaw2Digit(), correctINL(), FillEvent(), GetAddressFromBoard(), GetCalibPairFromAddress(), LoadCalibration(), ParseCalibration(), ParseCalibrationJson(), ParseConfig(), ParseINLcorrections(), and print().
|
inline |
Definition at line 32 of file BmnHodoRaw2Digit.h.
| BmnStatus BmnHodoRaw2Digit::LoadCalibration | ( | int | period, |
| int | run ) |
Definition at line 104 of file BmnHodoRaw2Digit.cxx.
References UniDetectorParameter::GetDetectorParameter(), GetName(), UniDetectorParameter::GetValue(), ParseCalibration(), ParseCalibrationJson(), and JsonValue::value.
Referenced by BmnHodoRaw2Digit().
| BmnStatus BmnHodoRaw2Digit::LoadCalibration | ( | int | period, |
| int | run ) |
| BmnStatus BmnHodoRaw2Digit::ParseCalibration | ( | const std::string & | file | ) |
Definition at line 134 of file BmnHodoRaw2Digit.cxx.
References GetName(), kBMNERROR, and ParseCalibrationJson().
Referenced by BmnHodoRaw2Digit(), calibrate_wfm(), LoadCalibration(), and simple_analysis().
| BmnStatus BmnHodoRaw2Digit::ParseCalibration | ( | const std::string & | file | ) |
|
private |
Definition at line 154 of file BmnHodoRaw2Digit.cxx.
References WfmProcessor::fAZik, WfmProcessor::fdigiPars, fDoRLdeconvolve, fEthalon, fMaxIters, fMaxPeaks, fR2converge, fRLthresold, fSaturation, WfmProcessor::fSignalLength, fuoCalibMap, BmnHodoAddress::GetAddress(), GetName(), i, PsdSignalFitting::PronyFitter::Initialize(), kBMNERROR, kBMNSUCCESS, PsdSignalFitting::PronyFitter::MakeInvHarmoMatrix(), ParseINLcorrections(), and PsdSignalFitting::PronyFitter::SetExternalHarmonics().
Referenced by LoadCalibration(), and ParseCalibration().
|
private |
References BmnHodoRaw2Digit(), fDoRLdeconvolve, fEthalon, fINLcorrMap, fMaxIters, fMaxPeaks, fR2converge, fRLthresold, fSaturation, fuoCalibMap, fuoChannelMap, fworkTime_cpu, and fworkTime_real.
| BmnStatus BmnHodoRaw2Digit::ParseConfig | ( | const std::string & | file | ) |
Definition at line 69 of file BmnHodoRaw2Digit.cxx.
References fuoChannelMap, BmnHodoAddress::GetAddress(), GetName(), kBMNERROR, and kBMNSUCCESS.
Referenced by BmnHodoRaw2Digit().
| BmnStatus BmnHodoRaw2Digit::ParseConfig | ( | const std::string & | file | ) |
| BmnStatus BmnHodoRaw2Digit::ParseINLcorrections | ( | ) |
Definition at line 243 of file BmnHodoRaw2Digit.cxx.
References fINLcorrMap, fuoChannelMap, GetName(), kBMNSUCCESS, and TQDC16_CHANNEL_COUNT.
Referenced by ParseCalibrationJson().
| BmnStatus BmnHodoRaw2Digit::ParseINLcorrections | ( | ) |
| void BmnHodoRaw2Digit::print | ( | ) |
Definition at line 20 of file BmnHodoRaw2Digit.cxx.
References GetName().
| void BmnHodoRaw2Digit::print | ( | ) |
|
private |
Definition at line 56 of file BmnHodoRaw2Digit.h.
Referenced by BmnHodoRaw2Digit(), BmnHodoRaw2Digit(), FillEvent(), and ParseCalibrationJson().
|
private |
Definition at line 61 of file BmnHodoRaw2Digit.h.
Referenced by FillEvent(), and ParseCalibrationJson().
|
private |
Definition at line 52 of file BmnHodoRaw2Digit.h.
Referenced by correctINL(), ParseCalibrationJson(), and ParseINLcorrections().
|
private |
Definition at line 59 of file BmnHodoRaw2Digit.h.
Referenced by BmnHodoRaw2Digit(), BmnHodoRaw2Digit(), FillEvent(), and ParseCalibrationJson().
|
private |
Definition at line 60 of file BmnHodoRaw2Digit.h.
Referenced by BmnHodoRaw2Digit(), BmnHodoRaw2Digit(), FillEvent(), and ParseCalibrationJson().
|
private |
Definition at line 58 of file BmnHodoRaw2Digit.h.
Referenced by BmnHodoRaw2Digit(), BmnHodoRaw2Digit(), FillEvent(), and ParseCalibrationJson().
|
private |
Definition at line 57 of file BmnHodoRaw2Digit.h.
Referenced by BmnHodoRaw2Digit(), BmnHodoRaw2Digit(), FillEvent(), and ParseCalibrationJson().
|
private |
Definition at line 54 of file BmnHodoRaw2Digit.h.
Referenced by BmnHodoRaw2Digit(), BmnHodoRaw2Digit(), FillEvent(), and ParseCalibrationJson().
|
private |
Definition at line 53 of file BmnHodoRaw2Digit.h.
Referenced by GetCalibPairFromAddress(), and ParseCalibrationJson().
|
private |
Definition at line 50 of file BmnHodoRaw2Digit.h.
Referenced by GetAddressFromBoard(), GetChannelMap(), ParseCalibrationJson(), ParseConfig(), and ParseINLcorrections().
|
private |
Definition at line 64 of file BmnHodoRaw2Digit.h.
Referenced by BmnHodoRaw2Digit(), BmnHodoRaw2Digit(), ~BmnHodoRaw2Digit(), FillEvent(), and ParseCalibrationJson().
|
private |
Definition at line 63 of file BmnHodoRaw2Digit.h.
Referenced by BmnHodoRaw2Digit(), BmnHodoRaw2Digit(), ~BmnHodoRaw2Digit(), FillEvent(), and ParseCalibrationJson().