BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnScWallRaw2Digit Class Reference

#include <BmnScWallRaw2Digit.h>

Inheritance diagram for BmnScWallRaw2Digit:
Collaboration diagram for BmnScWallRaw2Digit:

Public Member Functions

 BmnScWallRaw2Digit (int period, int run, const std::string &mappingFile, const std::string &calibrationFile="")
 BmnScWallRaw2Digit ()
 ~BmnScWallRaw2Digit ()
TString GetName ()
BmnStatus ParseConfig (const std::string &file)
BmnStatus ParseCalibration (const std::string &file)
BmnStatus LoadCalibration (int period, int run)
void FillEvent (TClonesArray *data, TClonesArray *ScWalldigit)
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)
 BmnScWallRaw2Digit (int period, int run, const std::string &mappingFile, const std::string &calibrationFile="")
 BmnScWallRaw2Digit ()
 ~BmnScWallRaw2Digit ()
TString GetName ()
BmnStatus ParseConfig (const std::string &file)
BmnStatus ParseCalibration (const std::string &file)
BmnStatus LoadCalibration (int period, int run)
void FillEvent (TClonesArray *data, TClonesArray *ScWalldigit)
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< uint32_t, std::pair< float, float > > fuoCalibMap
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

Detailed Description

Definition at line 20 of file BmnScWallRaw2Digit.h.

Constructor & Destructor Documentation

◆ BmnScWallRaw2Digit() [1/4]

BmnScWallRaw2Digit::BmnScWallRaw2Digit ( int period,
int run,
const std::string & mappingFile,
const std::string & calibrationFile = "" )

Definition at line 25 of file BmnScWallRaw2Digit.cxx.

References WfmProcessor::WfmProcessor(), fworkTime_cpu, fworkTime_real, GetName(), kBMNERROR, LoadCalibration(), ParseCalibration(), and ParseConfig().

Referenced by ParseCalibrationJson().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BmnScWallRaw2Digit() [2/4]

BmnScWallRaw2Digit::BmnScWallRaw2Digit ( )

Definition at line 18 of file BmnScWallRaw2Digit.cxx.

References WfmProcessor::WfmProcessor(), fworkTime_cpu, and fworkTime_real.

Here is the call graph for this function:

◆ ~BmnScWallRaw2Digit() [1/2]

BmnScWallRaw2Digit::~BmnScWallRaw2Digit ( )

Definition at line 271 of file BmnScWallRaw2Digit.cxx.

References fworkTime_cpu, fworkTime_real, and GetName().

Here is the call graph for this function:

◆ BmnScWallRaw2Digit() [3/4]

BmnScWallRaw2Digit::BmnScWallRaw2Digit ( int period,
int run,
const std::string & mappingFile,
const std::string & calibrationFile = "" )

◆ BmnScWallRaw2Digit() [4/4]

BmnScWallRaw2Digit::BmnScWallRaw2Digit ( )

◆ ~BmnScWallRaw2Digit() [2/2]

BmnScWallRaw2Digit::~BmnScWallRaw2Digit ( )

Member Function Documentation

◆ FillEvent() [1/2]

◆ FillEvent() [2/2]

void BmnScWallRaw2Digit::FillEvent ( TClonesArray * data,
TClonesArray * ScWalldigit )

◆ GetAddressFromBoard() [1/2]

std::optional< uint32_t > BmnScWallRaw2Digit::GetAddressFromBoard ( std::pair< size_t, size_t > key)

Definition at line 204 of file BmnScWallRaw2Digit.cxx.

References fuoChannelMap.

Referenced by FillEvent().

Here is the caller graph for this function:

◆ GetAddressFromBoard() [2/2]

std::optional< uint32_t > BmnScWallRaw2Digit::GetAddressFromBoard ( std::pair< size_t, size_t > key)

◆ GetCalibPairFromAddress() [1/2]

std::optional< std::pair< float, float > > BmnScWallRaw2Digit::GetCalibPairFromAddress ( uint32_t address)

Definition at line 215 of file BmnScWallRaw2Digit.cxx.

References fuoCalibMap.

Referenced by FillEvent().

Here is the caller graph for this function:

◆ GetCalibPairFromAddress() [2/2]

std::optional< std::pair< float, float > > BmnScWallRaw2Digit::GetCalibPairFromAddress ( uint32_t address)

◆ GetChannelMap() [1/2]

auto BmnScWallRaw2Digit::GetChannelMap ( )
inline

Definition at line 37 of file BmnScWallRaw2Digit.h.

References fuoChannelMap.

◆ GetChannelMap() [2/2]

auto BmnScWallRaw2Digit::GetChannelMap ( )
inline

Definition at line 37 of file BmnScWallRaw2Digit.h.

References fuoChannelMap.

◆ GetDigiPars() [1/2]

digiPars BmnScWallRaw2Digit::GetDigiPars ( )
inline

Definition at line 36 of file BmnScWallRaw2Digit.h.

References WfmProcessor::fdigiPars.

Referenced by calibrate_wfm().

Here is the caller graph for this function:

◆ GetDigiPars() [2/2]

digiPars BmnScWallRaw2Digit::GetDigiPars ( )
inline

Definition at line 36 of file BmnScWallRaw2Digit.h.

References WfmProcessor::fdigiPars.

◆ GetName() [1/2]

TString BmnScWallRaw2Digit::GetName ( )
inline

Definition at line 29 of file BmnScWallRaw2Digit.h.

Referenced by BmnScWallRaw2Digit(), ~BmnScWallRaw2Digit(), LoadCalibration(), ParseCalibration(), ParseCalibrationJson(), ParseConfig(), and print().

Here is the caller graph for this function:

◆ GetName() [2/2]

TString BmnScWallRaw2Digit::GetName ( )
inline

Definition at line 29 of file BmnScWallRaw2Digit.h.

◆ LoadCalibration() [1/2]

BmnStatus BmnScWallRaw2Digit::LoadCalibration ( int period,
int run )

Definition at line 85 of file BmnScWallRaw2Digit.cxx.

References UniDetectorParameter::GetDetectorParameter(), GetName(), UniDetectorParameter::GetValue(), ParseCalibration(), ParseCalibrationJson(), and JsonValue::value.

Referenced by BmnScWallRaw2Digit().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LoadCalibration() [2/2]

BmnStatus BmnScWallRaw2Digit::LoadCalibration ( int period,
int run )

◆ ParseCalibration() [1/2]

BmnStatus BmnScWallRaw2Digit::ParseCalibration ( const std::string & file)

Definition at line 116 of file BmnScWallRaw2Digit.cxx.

References GetName(), kBMNERROR, and ParseCalibrationJson().

Referenced by BmnScWallRaw2Digit(), calibrate_wfm(), and LoadCalibration().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseCalibration() [2/2]

BmnStatus BmnScWallRaw2Digit::ParseCalibration ( const std::string & file)

◆ ParseCalibrationJson() [1/2]

BmnStatus BmnScWallRaw2Digit::ParseCalibrationJson ( const nlohmann::json & j)
private

Definition at line 136 of file BmnScWallRaw2Digit.cxx.

References WfmProcessor::fAZik, WfmProcessor::fdigiPars, WfmProcessor::fSignalLength, fuoCalibMap, BmnScWallAddress::GetAddress(), GetName(), i, PsdSignalFitting::PronyFitter::Initialize(), kBMNERROR, kBMNSUCCESS, PsdSignalFitting::PronyFitter::MakeInvHarmoMatrix(), and PsdSignalFitting::PronyFitter::SetExternalHarmonics().

Referenced by LoadCalibration(), and ParseCalibration().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseCalibrationJson() [2/2]

BmnStatus BmnScWallRaw2Digit::ParseCalibrationJson ( const nlohmann::json & j)
private

References BmnScWallRaw2Digit(), fuoCalibMap, fuoChannelMap, fworkTime_cpu, and fworkTime_real.

Here is the call graph for this function:

◆ ParseConfig() [1/2]

BmnStatus BmnScWallRaw2Digit::ParseConfig ( const std::string & file)

Definition at line 52 of file BmnScWallRaw2Digit.cxx.

References fuoChannelMap, BmnScWallAddress::GetAddress(), GetName(), kBMNERROR, and kBMNSUCCESS.

Referenced by BmnScWallRaw2Digit(), and scan().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseConfig() [2/2]

BmnStatus BmnScWallRaw2Digit::ParseConfig ( const std::string & file)

◆ print() [1/2]

void BmnScWallRaw2Digit::print ( )

Definition at line 13 of file BmnScWallRaw2Digit.cxx.

References GetName().

Here is the call graph for this function:

◆ print() [2/2]

void BmnScWallRaw2Digit::print ( )

Member Data Documentation

◆ fuoCalibMap

std::unordered_map< uint32_t, std::pair< float, float > > BmnScWallRaw2Digit::fuoCalibMap
private

Definition at line 46 of file BmnScWallRaw2Digit.h.

Referenced by GetCalibPairFromAddress(), and ParseCalibrationJson().

◆ fuoChannelMap

std::unordered_map< std::pair< size_t, size_t >, uint32_t, boost::hash< std::pair< size_t, size_t > > > BmnScWallRaw2Digit::fuoChannelMap
private

◆ fworkTime_cpu

double BmnScWallRaw2Digit::fworkTime_cpu
private

◆ fworkTime_real

double BmnScWallRaw2Digit::fworkTime_real
private

The documentation for this class was generated from the following files: