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

#include <BmnAdcProcessor.h>

Inheritance diagram for BmnAdcProcessor:
Collaboration diagram for BmnAdcProcessor:

Public Member Functions

 BmnAdcProcessor (uint32_t period, uint32_t run, TString det, uint16_t nCh, const uint16_t nSmpl, BmnSetup setup=kBMNSETUP)
virtual ~BmnAdcProcessor ()
BmnStatus RecalculatePedestals ()
BmnStatus RecalculatePedestalsAugmented ()
void PrecalcEventMods (TClonesArray *adc)
void PrecalcEventMods_simd (TClonesArray *adc)
void CalcEventMods ()
void CalcEventMods_simd ()
Double_t CalcCMS (Double_t *samples, Int_t size)
BmnStatus SaveFilterInfo (TFile *cTalibFile)
BmnStatus LoadFilterInfo (TFile *cTalibFile)
Double_t **** GetPedData ()
void SetApplyThreshold (bool b)
bool GetApplyThreshold ()
size_t GetNSerials ()
const uint16_t GetNChannels ()
const uint16_t GetNSamples ()
Float_t GetPedestal (uint32_t iSer, Int_t ch, Int_t smpl)
Float_t *** GetPedestals ()
Double_t *** GetPedestalsRMS ()
Bool_t *** GetNoisyChipChannels ()
uint32_t GetPeriod ()
uint32_t GetRun ()
Int_t GetVerbose ()
void SetVerbose (Int_t v)
vector< uint32_t > & GetSerials ()
unordered_map< uint32_t, size_t > & GetSerialMap ()
uint32_t GetBoundaryRun (uint16_t nSmpl)
void SetEvForPedestals (uint32_t v)
uint32_t GetEvForPedestals ()
TString & GetDetName ()
void DrawDebugHists ()
void DrawDebugHists2D ()
void ClearDebugHists ()
void CopyData2PedMap (TClonesArray *adc, UInt_t ev)
void SetThreshold (Double_t final_thr, Double_t thr_dif=-1, Double_t n_iters=-1, Double_t cmod_cut=-1)
 BmnAdcProcessor (uint32_t period, uint32_t run, TString det, uint16_t nCh, const uint16_t nSmpl, BmnSetup setup=kBMNSETUP)
virtual ~BmnAdcProcessor ()
BmnStatus RecalculatePedestals ()
BmnStatus RecalculatePedestalsAugmented ()
void PrecalcEventMods (TClonesArray *adc)
void PrecalcEventMods_simd (TClonesArray *adc)
void CalcEventMods ()
void CalcEventMods_simd ()
Double_t CalcCMS (Double_t *samples, Int_t size)
BmnStatus SaveFilterInfo (TFile *cTalibFile)
BmnStatus LoadFilterInfo (TFile *cTalibFile)
Double_t **** GetPedData ()
void SetApplyThreshold (bool b)
bool GetApplyThreshold ()
size_t GetNSerials ()
const uint16_t GetNChannels ()
const uint16_t GetNSamples ()
Float_t GetPedestal (uint32_t iSer, Int_t ch, Int_t smpl)
Float_t *** GetPedestals ()
Double_t *** GetPedestalsRMS ()
Bool_t *** GetNoisyChipChannels ()
uint32_t GetPeriod ()
uint32_t GetRun ()
Int_t GetVerbose ()
void SetVerbose (Int_t v)
vector< uint32_t > & GetSerials ()
unordered_map< uint32_t, size_t > & GetSerialMap ()
uint32_t GetBoundaryRun (uint16_t nSmpl)
void SetEvForPedestals (uint32_t v)
uint32_t GetEvForPedestals ()
TString & GetDetName ()
void DrawDebugHists ()
void DrawDebugHists2D ()
void ClearDebugHists ()
void CopyData2PedMap (TClonesArray *adc, UInt_t ev)
void SetThreshold (Double_t final_thr, Double_t thr_dif=-1, Double_t n_iters=-1, Double_t cmod_cut=-1)

Static Public Member Functions

static BmnStatus DrawFilterInfo (BmnCalibData *data)
static BmnStatus DrawFilterInfo (BmnCalibData *data)

Public Attributes

void(BmnAdcProcessor::* PrecalcEventModsImp )(TClonesArray *adc)

Protected Types

typedef std::tuple< uint16_t, uint16_t, uint8_t > KeySML
typedef std::tuple< uint16_t, uint16_t > KeySM
typedef vector< Int_t > StripMap
typedef std::tuple< uint16_t, uint16_t, uint8_t > KeySML
typedef std::tuple< uint16_t, uint16_t > KeySM
typedef vector< Int_t > StripMap

Protected Member Functions

void InitChipNoiseArrays ()
void GrabNewSerial (UInt_t serial)
template<typename cl>
void GrabSerialsFromMap (unordered_map< UInt_t, cl > m)
template<typename SST>
void InitStripNoiseArrays (SST &ss)
template<typename SST>
void DeleteStripNoiseArrays (SST &ss)
void InitChipNoiseArrays ()
void GrabNewSerial (UInt_t serial)
template<typename cl>
void GrabSerialsFromMap (unordered_map< UInt_t, cl > m)
template<typename SST>
void InitStripNoiseArrays (SST &ss)
template<typename SST>
void DeleteStripNoiseArrays (SST &ss)

Protected Attributes

Int_t fVerbose
Int_t drawCnt
Int_t drawCnt2d
Double_t thrDif
Double_t FinalThr
Int_t fNIters
Double_t cmodcut
Double_t thrMax
vector< uint32_t > fAdcSerials
 list of serial id for ADC-detector
const uint16_t fNSamples
const uint16_t fNChannels
uint32_t fEvForPedestals
Double_t **** fPedDat
 data set to calculate pedestals
bool fApplyThreshold
map< PlMapKey, Double_t > fSpecThreshMap
Double_t workTime_cpu = 0.0
Double_t workTime_real = 0.0
Double_t workTime_cpu_p = 0.0
Double_t workTime_real_p = 0.0
unordered_map< UInt_t, size_t > fSerMap
 ADC serials map.
TH1F **** fSigProf
Bool_t **** fNoisyChannels
Float_t *** fAdc
Double_t *** fPedRms
Float_t *** fPedVal
Double_t *** fPedValTemp
Float_t ** fCMode
Float_t ** fCMode0
Float_t ** fSMode
Float_t ** fSMode0
vector< vector< TH1 * > > hPedLine
vector< vector< TH1 * > > hCMode
vector< vector< TH1 * > > hSMode
vector< vector< TH1 * > > hPedLineSi
vector< TH1 * > hPedSi
vector< TH1 * > hCModeSi
vector< TH1 * > hSModeSi
Bool_t *** fNoisyChipChannels
Float_t ** fNvals
UInt_t *** fNvalsCMod
UInt_t *** fNvalsADC
Double_t *** fPedCMod
Double_t *** fPedCMod2
Double_t ** fSumRmsV
TString fDetName
uint32_t fPeriod
uint32_t fRun
BmnSetup fSetup

Private Attributes

UInt_t *** fAdcProfiles
TH2F * hcms
TH2F * hscms_adc
TH1F * hcms1
TH2F * hscms1_adc
TH1F * hcms1p
TH1F * hscms1p_adc
TH2F * hp
TH2F * hfilter
TH2F * hfilterMK
TCanvas * canStrip

Detailed Description

Definition at line 51 of file BmnAdcProcessor.h.

Member Typedef Documentation

◆ KeySM [1/2]

typedef std::tuple<uint16_t, uint16_t> BmnAdcProcessor::KeySM
protected

Definition at line 129 of file BmnAdcProcessor.h.

◆ KeySM [2/2]

typedef std::tuple<uint16_t, uint16_t> BmnAdcProcessor::KeySM
protected

Definition at line 129 of file BmnAdcProcessor.h.

◆ KeySML [1/2]

typedef std::tuple<uint16_t, uint16_t, uint8_t> BmnAdcProcessor::KeySML
protected

Definition at line 128 of file BmnAdcProcessor.h.

◆ KeySML [2/2]

typedef std::tuple<uint16_t, uint16_t, uint8_t> BmnAdcProcessor::KeySML
protected

Definition at line 128 of file BmnAdcProcessor.h.

◆ StripMap [1/2]

typedef vector<Int_t> BmnAdcProcessor::StripMap
protected

Definition at line 130 of file BmnAdcProcessor.h.

◆ StripMap [2/2]

typedef vector<Int_t> BmnAdcProcessor::StripMap
protected

Definition at line 130 of file BmnAdcProcessor.h.

Constructor & Destructor Documentation

◆ BmnAdcProcessor() [1/2]

BmnAdcProcessor::BmnAdcProcessor ( uint32_t period,
uint32_t run,
TString det,
uint16_t nCh,
const uint16_t nSmpl,
BmnSetup setup = kBMNSETUP )

Definition at line 11 of file BmnAdcProcessor.cxx.

References cmodcut, drawCnt, drawCnt2d, fAdc, fApplyThreshold, fCMode, fCMode0, fDetName, fEvForPedestals, FinalThr, fNChannels, fNIters, fNoisyChannels, fNoisyChipChannels, fNSamples, fNvals, fNvalsADC, fNvalsCMod, fPedCMod, fPedCMod2, fPedDat, fPedRms, fPedVal, fPedValTemp, fPeriod, fRun, fSetup, fSigProf, fSMode, fSMode0, fSumRmsV, fVerbose, N_EV_FOR_PEDESTALS, PrecalcEventMods(), PrecalcEventMods_simd(), PrecalcEventModsImp, thrDif, and thrMax.

Referenced by BmnCscRaw2Digit::BmnCscRaw2Digit(), BmnGemRaw2Digit::BmnGemRaw2Digit(), BmnProfRaw2Digit::BmnProfRaw2Digit(), BmnSiBTRaw2Digit::BmnSiBTRaw2Digit(), BmnSiliconRaw2Digit::BmnSiliconRaw2Digit(), and PrecalcEventMods_simd().

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

◆ ~BmnAdcProcessor() [1/2]

BmnAdcProcessor::~BmnAdcProcessor ( )
virtual

Definition at line 200 of file BmnAdcProcessor.cxx.

References fAdc, fAdcProfiles, fCMode, fCMode0, fDetName, fNChannels, fNoisyChipChannels, fNvals, fNvalsADC, fNvalsCMod, fPedCMod, fPedCMod2, fPedDat, fPedRms, fPedVal, fPedValTemp, fSMode, fSMode0, fSumRmsV, GetNSerials(), N_EV_FOR_PEDESTALS, workTime_cpu, workTime_cpu_p, workTime_real, and workTime_real_p.

Here is the call graph for this function:

◆ BmnAdcProcessor() [2/2]

BmnAdcProcessor::BmnAdcProcessor ( uint32_t period,
uint32_t run,
TString det,
uint16_t nCh,
const uint16_t nSmpl,
BmnSetup setup = kBMNSETUP )

References kBMNSETUP.

◆ ~BmnAdcProcessor() [2/2]

virtual BmnAdcProcessor::~BmnAdcProcessor ( )
virtual

Member Function Documentation

◆ CalcCMS() [1/2]

Double_t BmnAdcProcessor::CalcCMS ( Double_t * samples,
Int_t size )

Definition at line 1067 of file BmnAdcProcessor.cxx.

References TMath::Abs(), and TMath::Sqrt().

Referenced by RecalculatePedestals().

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

◆ CalcCMS() [2/2]

Double_t BmnAdcProcessor::CalcCMS ( Double_t * samples,
Int_t size )

◆ CalcEventMods() [1/2]

void BmnAdcProcessor::CalcEventMods ( )

Definition at line 873 of file BmnAdcProcessor.cxx.

References TMath::Abs(), TStopwatch::CpuTime(), fAdc, fCMode, fCMode0, fNChannels, fNIters, fNoisyChipChannels, fNSamples, fNvals, fPedVal, fSMode, fSMode0, GetNSerials(), TStopwatch::RealTime(), TStopwatch::Start(), TStopwatch::Stop(), thr, thrDif, thrMax, workTime_cpu, and workTime_real.

Referenced by BmnCscRaw2Digit::FillEvent(), BmnGemRaw2Digit::FillEvent(), BmnProfRaw2Digit::FillEvent(), BmnSiBTRaw2Digit::FillEvent(), BmnSiliconRaw2Digit::FillEvent(), BmnCscRaw2Digit::FillProfiles(), BmnGemRaw2Digit::FillProfiles(), BmnProfRaw2Digit::FillProfiles(), BmnSiBTRaw2Digit::FillProfiles(), and BmnSiliconRaw2Digit::FillProfiles().

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

◆ CalcEventMods() [2/2]

void BmnAdcProcessor::CalcEventMods ( )

◆ CalcEventMods_simd() [1/2]

void BmnAdcProcessor::CalcEventMods_simd ( )

!!!!!!

Definition at line 933 of file BmnAdcProcessor.cxx.

References _f32vec4_one, _f32vec4_zero, TStopwatch::CpuTime(), fabs(), fAdc, fCMode, fCMode0, fNChannels, fNIters, fNoisyChipChannels, fNSamples, fNvals, fPedVal, fSMode, fSMode0, GetNSerials(), TStopwatch::RealTime(), TStopwatch::Start(), TStopwatch::Stop(), thr, thrDif, thrMax, workTime_cpu, and workTime_real.

Referenced by BmnCscRaw2Digit::FillEvent(), BmnGemRaw2Digit::FillEvent(), BmnProfRaw2Digit::FillEvent(), BmnSiBTRaw2Digit::FillEvent(), BmnSiliconRaw2Digit::FillEvent(), BmnCscRaw2Digit::FillProfiles(), BmnGemRaw2Digit::FillProfiles(), BmnProfRaw2Digit::FillProfiles(), BmnSiBTRaw2Digit::FillProfiles(), and BmnSiliconRaw2Digit::FillProfiles().

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

◆ CalcEventMods_simd() [2/2]

void BmnAdcProcessor::CalcEventMods_simd ( )

◆ ClearDebugHists() [1/2]

void BmnAdcProcessor::ClearDebugHists ( )

Definition at line 379 of file BmnAdcProcessor.cxx.

References fNChannels, GetNSerials(), hCMode, hCModeSi, hPedLine, hPedSi, hSMode, and hSModeSi.

Here is the call graph for this function:

◆ ClearDebugHists() [2/2]

void BmnAdcProcessor::ClearDebugHists ( )

◆ CopyData2PedMap() [1/2]

void BmnAdcProcessor::CopyData2PedMap ( TClonesArray * adc,
UInt_t ev )

Definition at line 286 of file BmnAdcProcessor.cxx.

References TObjArray::At(), fNSamples, fPedDat, fSerMap, BmnADCDigit< IntType >::GetChannel(), TObjArray::GetEntriesFast(), BmnADCDigit< IntType >::GetSerial(), and BmnADCDigit< IntType >::GetValue().

Here is the call graph for this function:

◆ CopyData2PedMap() [2/2]

void BmnAdcProcessor::CopyData2PedMap ( TClonesArray * adc,
UInt_t ev )

◆ DeleteStripNoiseArrays() [1/2]

template<typename SST>
void BmnAdcProcessor::DeleteStripNoiseArrays ( SST & ss)
inlineprotected

Definition at line 200 of file BmnAdcProcessor.h.

References fNoisyChannels, and fSigProf.

Referenced by BmnCscRaw2Digit::~BmnCscRaw2Digit(), BmnGemRaw2Digit::~BmnGemRaw2Digit(), BmnProfRaw2Digit::~BmnProfRaw2Digit(), and BmnSiBTRaw2Digit::~BmnSiBTRaw2Digit().

Here is the caller graph for this function:

◆ DeleteStripNoiseArrays() [2/2]

template<typename SST>
void BmnAdcProcessor::DeleteStripNoiseArrays ( SST & ss)
inlineprotected

Definition at line 200 of file BmnAdcProcessor.h.

References fNoisyChannels, and fSigProf.

◆ DrawDebugHists() [1/2]

void BmnAdcProcessor::DrawDebugHists ( )

Definition at line 313 of file BmnAdcProcessor.cxx.

References TCanvas::cd(), TCanvas::Clear(), TPad::Divide(), drawCnt, fDetName, fNChannels, GetNSerials(), hCMode, hSMode, PAD_HEIGHT_SIL, PAD_WIDTH_SIL, and TPad::Print().

Here is the call graph for this function:

◆ DrawDebugHists() [2/2]

void BmnAdcProcessor::DrawDebugHists ( )

◆ DrawDebugHists2D() [1/2]

void BmnAdcProcessor::DrawDebugHists2D ( )

Definition at line 339 of file BmnAdcProcessor.cxx.

References TCanvas::cd(), TCanvas::Clear(), TPad::Divide(), drawCnt2d, fDetName, fNChannels, fRun, GetNSerials(), hCModeSi, hPedLineSi, hPedSi, hSModeSi, PAD_HEIGHT_SIL, PAD_WIDTH_SIL, and TPad::Print().

Here is the call graph for this function:

◆ DrawDebugHists2D() [2/2]

void BmnAdcProcessor::DrawDebugHists2D ( )

◆ DrawFilterInfo() [1/2]

BmnStatus BmnAdcProcessor::DrawFilterInfo ( BmnCalibData * data)
static

Definition at line 1144 of file BmnAdcProcessor.cxx.

References kBMNSUCCESS.

◆ DrawFilterInfo() [2/2]

BmnStatus BmnAdcProcessor::DrawFilterInfo ( BmnCalibData * data)
static

◆ GetApplyThreshold() [1/2]

bool BmnAdcProcessor::GetApplyThreshold ( )
inline

Definition at line 79 of file BmnAdcProcessor.h.

References fApplyThreshold.

Referenced by BmnCscRaw2Digit::ProcessAdc(), BmnGemRaw2Digit::ProcessAdc(), BmnSiBTRaw2Digit::ProcessAdc(), and BmnSiliconRaw2Digit::ProcessAdc().

Here is the caller graph for this function:

◆ GetApplyThreshold() [2/2]

bool BmnAdcProcessor::GetApplyThreshold ( )
inline

Definition at line 79 of file BmnAdcProcessor.h.

References fApplyThreshold.

◆ GetBoundaryRun() [1/2]

uint32_t BmnAdcProcessor::GetBoundaryRun ( uint16_t nSmpl)
inline

Definition at line 107 of file BmnAdcProcessor.h.

◆ GetBoundaryRun() [2/2]

uint32_t BmnAdcProcessor::GetBoundaryRun ( uint16_t nSmpl)
inline

Definition at line 107 of file BmnAdcProcessor.h.

◆ GetDetName() [1/2]

TString & BmnAdcProcessor::GetDetName ( )
inline

Definition at line 119 of file BmnAdcProcessor.h.

References fDetName.

◆ GetDetName() [2/2]

TString & BmnAdcProcessor::GetDetName ( )
inline

Definition at line 119 of file BmnAdcProcessor.h.

References fDetName.

◆ GetEvForPedestals() [1/2]

uint32_t BmnAdcProcessor::GetEvForPedestals ( )
inline

Definition at line 117 of file BmnAdcProcessor.h.

References fEvForPedestals.

◆ GetEvForPedestals() [2/2]

uint32_t BmnAdcProcessor::GetEvForPedestals ( )
inline

Definition at line 117 of file BmnAdcProcessor.h.

References fEvForPedestals.

◆ GetNChannels() [1/2]

const uint16_t BmnAdcProcessor::GetNChannels ( )
inline

Definition at line 83 of file BmnAdcProcessor.h.

References fNChannels.

Referenced by BmnCscRaw2Digit::FillNoisyChannels(), BmnGemRaw2Digit::FillNoisyChannels(), BmnProfRaw2Digit::FillNoisyChannels(), BmnSiBTRaw2Digit::FillNoisyChannels(), BmnSiliconRaw2Digit::FillNoisyChannels(), BmnCscRaw2Digit::ProcessAdc(), BmnSiBTRaw2Digit::ProcessAdc(), and BmnSiliconRaw2Digit::ProcessAdc().

Here is the caller graph for this function:

◆ GetNChannels() [2/2]

const uint16_t BmnAdcProcessor::GetNChannels ( )
inline

Definition at line 83 of file BmnAdcProcessor.h.

References fNChannels.

◆ GetNoisyChipChannels() [1/2]

Bool_t *** BmnAdcProcessor::GetNoisyChipChannels ( )
inline

◆ GetNoisyChipChannels() [2/2]

Bool_t *** BmnAdcProcessor::GetNoisyChipChannels ( )
inline

Definition at line 93 of file BmnAdcProcessor.h.

References fNoisyChipChannels.

◆ GetNSamples() [1/2]

◆ GetNSamples() [2/2]

const uint16_t BmnAdcProcessor::GetNSamples ( )
inline

Definition at line 85 of file BmnAdcProcessor.h.

References fNSamples.

◆ GetNSerials() [1/2]

◆ GetNSerials() [2/2]

size_t BmnAdcProcessor::GetNSerials ( )
inline

Definition at line 81 of file BmnAdcProcessor.h.

References fAdcSerials.

◆ GetPedData() [1/2]

Double_t **** BmnAdcProcessor::GetPedData ( )
inline

Definition at line 75 of file BmnAdcProcessor.h.

References fPedDat.

◆ GetPedData() [2/2]

Double_t **** BmnAdcProcessor::GetPedData ( )
inline

Definition at line 75 of file BmnAdcProcessor.h.

References fPedDat.

◆ GetPedestal() [1/2]

Float_t BmnAdcProcessor::GetPedestal ( uint32_t iSer,
Int_t ch,
Int_t smpl )
inline

Definition at line 87 of file BmnAdcProcessor.h.

References fPedVal.

◆ GetPedestal() [2/2]

Float_t BmnAdcProcessor::GetPedestal ( uint32_t iSer,
Int_t ch,
Int_t smpl )
inline

Definition at line 87 of file BmnAdcProcessor.h.

References fPedVal.

◆ GetPedestals() [1/2]

Float_t *** BmnAdcProcessor::GetPedestals ( )
inline

Definition at line 89 of file BmnAdcProcessor.h.

References fPedVal.

◆ GetPedestals() [2/2]

Float_t *** BmnAdcProcessor::GetPedestals ( )
inline

Definition at line 89 of file BmnAdcProcessor.h.

References fPedVal.

◆ GetPedestalsRMS() [1/2]

Double_t *** BmnAdcProcessor::GetPedestalsRMS ( )
inline

Definition at line 91 of file BmnAdcProcessor.h.

References fPedCMod2.

Referenced by BmnCscRaw2Digit::ProcessAdc(), BmnGemRaw2Digit::ProcessAdc(), BmnProfRaw2Digit::ProcessAdc(), BmnSiBTRaw2Digit::ProcessAdc(), and BmnSiliconRaw2Digit::ProcessAdc().

Here is the caller graph for this function:

◆ GetPedestalsRMS() [2/2]

Double_t *** BmnAdcProcessor::GetPedestalsRMS ( )
inline

Definition at line 91 of file BmnAdcProcessor.h.

References fPedCMod2.

◆ GetPeriod() [1/2]

uint32_t BmnAdcProcessor::GetPeriod ( )
inline

Definition at line 95 of file BmnAdcProcessor.h.

References fPeriod.

Referenced by BmnGemRaw2Digit::ReadMap().

Here is the caller graph for this function:

◆ GetPeriod() [2/2]

uint32_t BmnAdcProcessor::GetPeriod ( )
inline

Definition at line 95 of file BmnAdcProcessor.h.

References fPeriod.

◆ GetRun() [1/2]

uint32_t BmnAdcProcessor::GetRun ( )
inline

Definition at line 97 of file BmnAdcProcessor.h.

References fRun.

Referenced by BmnGemRaw2Digit::ReadMap().

Here is the caller graph for this function:

◆ GetRun() [2/2]

uint32_t BmnAdcProcessor::GetRun ( )
inline

Definition at line 97 of file BmnAdcProcessor.h.

References fRun.

◆ GetSerialMap() [1/2]

unordered_map< uint32_t, size_t > & BmnAdcProcessor::GetSerialMap ( )
inline

Definition at line 105 of file BmnAdcProcessor.h.

References fSerMap.

◆ GetSerialMap() [2/2]

unordered_map< uint32_t, size_t > & BmnAdcProcessor::GetSerialMap ( )
inline

Definition at line 105 of file BmnAdcProcessor.h.

References fSerMap.

◆ GetSerials() [1/2]

vector< uint32_t > & BmnAdcProcessor::GetSerials ( )
inline

◆ GetSerials() [2/2]

vector< uint32_t > & BmnAdcProcessor::GetSerials ( )
inline

Definition at line 103 of file BmnAdcProcessor.h.

References fAdcSerials.

◆ GetVerbose() [1/2]

Int_t BmnAdcProcessor::GetVerbose ( )
inline

Definition at line 99 of file BmnAdcProcessor.h.

References fVerbose.

◆ GetVerbose() [2/2]

Int_t BmnAdcProcessor::GetVerbose ( )
inline

Definition at line 99 of file BmnAdcProcessor.h.

References fVerbose.

◆ GrabNewSerial() [1/2]

void BmnAdcProcessor::GrabNewSerial ( UInt_t serial)
protected

Definition at line 72 of file BmnAdcProcessor.cxx.

References fAdcSerials, fSerMap, fVerbose, and GetNSerials().

Referenced by GrabSerialsFromMap(), BmnGemRaw2Digit::ReadGlobalMap(), BmnProfRaw2Digit::ReadGlobalMapFile(), BmnSiBTRaw2Digit::ReadMapFile(), and BmnSiliconRaw2Digit::ReadMapFile().

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

◆ GrabNewSerial() [2/2]

void BmnAdcProcessor::GrabNewSerial ( UInt_t serial)
protected

◆ GrabSerialsFromMap() [1/2]

template<typename cl>
void BmnAdcProcessor::GrabSerialsFromMap ( unordered_map< UInt_t, cl > m)
inlineprotected

Definition at line 151 of file BmnAdcProcessor.h.

References GrabNewSerial(), and m.

Referenced by BmnCscRaw2Digit::BmnCscRaw2Digit().

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

◆ GrabSerialsFromMap() [2/2]

template<typename cl>
void BmnAdcProcessor::GrabSerialsFromMap ( unordered_map< UInt_t, cl > m)
inlineprotected

Definition at line 151 of file BmnAdcProcessor.h.

References GrabNewSerial(), and m.

Here is the call graph for this function:

◆ InitChipNoiseArrays() [1/2]

void BmnAdcProcessor::InitChipNoiseArrays ( )
protected

Definition at line 83 of file BmnAdcProcessor.cxx.

References fAdc, fAdcProfiles, fCMode, fCMode0, fNChannels, fNoisyChipChannels, fNSamples, fNvals, fNvalsADC, fNvalsCMod, fPedCMod, fPedCMod2, fPedDat, fPedRms, fPedVal, fPedValTemp, fSMode, fSMode0, fSumRmsV, GetNSerials(), memset(), and N_EV_FOR_PEDESTALS.

Referenced by BmnCscRaw2Digit::BmnCscRaw2Digit(), BmnGemRaw2Digit::BmnGemRaw2Digit(), BmnProfRaw2Digit::BmnProfRaw2Digit(), BmnSiBTRaw2Digit::BmnSiBTRaw2Digit(), and BmnSiliconRaw2Digit::BmnSiliconRaw2Digit().

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

◆ InitChipNoiseArrays() [2/2]

void BmnAdcProcessor::InitChipNoiseArrays ( )
protected

◆ InitStripNoiseArrays() [1/2]

template<typename SST>
void BmnAdcProcessor::InitStripNoiseArrays ( SST & ss)
inlineprotected

Definition at line 167 of file BmnAdcProcessor.h.

References TString::Data(), fDetName, fNoisyChannels, TString::Form(), fSigProf, and fVerbose.

Referenced by BmnCscRaw2Digit::BmnCscRaw2Digit(), BmnGemRaw2Digit::BmnGemRaw2Digit(), BmnProfRaw2Digit::BmnProfRaw2Digit(), and BmnSiBTRaw2Digit::BmnSiBTRaw2Digit().

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

◆ InitStripNoiseArrays() [2/2]

template<typename SST>
void BmnAdcProcessor::InitStripNoiseArrays ( SST & ss)
inlineprotected

Definition at line 167 of file BmnAdcProcessor.h.

References TString::Data(), fDetName, fNoisyChannels, TString::Form(), fSigProf, and fVerbose.

Here is the call graph for this function:

◆ LoadFilterInfo() [1/2]

BmnStatus BmnAdcProcessor::LoadFilterInfo ( TFile * cTalibFile)

Definition at line 1117 of file BmnAdcProcessor.cxx.

References fDetName, fNChannels, fNoisyChipChannels, fNSamples, fPedVal, BmnCalibData::GetCalibration(), BmnCalibData::GetNoise(), GetNSerials(), TDirectory::GetObject(), kBMNERROR, and kBMNSUCCESS.

Here is the call graph for this function:

◆ LoadFilterInfo() [2/2]

BmnStatus BmnAdcProcessor::LoadFilterInfo ( TFile * cTalibFile)

◆ PrecalcEventMods() [1/2]

void BmnAdcProcessor::PrecalcEventMods ( TClonesArray * adc)

Definition at line 710 of file BmnAdcProcessor.cxx.

References TMath::Abs(), TObjArray::At(), TStopwatch::CpuTime(), fAdc, fCMode, fNChannels, fNoisyChipChannels, fNSamples, fNvals, fPedVal, fSerMap, fSMode, BmnADCDigit< IntType >::GetChannel(), TObjArray::GetEntriesFast(), GetNSerials(), BmnADCDigit< IntType >::GetSerial(), BmnADCDigit< IntType >::GetValue(), memset(), TStopwatch::RealTime(), TStopwatch::Start(), TStopwatch::Stop(), thrMax, workTime_cpu_p, and workTime_real_p.

Referenced by BmnAdcProcessor().

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

◆ PrecalcEventMods() [2/2]

void BmnAdcProcessor::PrecalcEventMods ( TClonesArray * adc)

◆ PrecalcEventMods_simd() [1/2]

void BmnAdcProcessor::PrecalcEventMods_simd ( TClonesArray * adc)

!!!!!!

Definition at line 766 of file BmnAdcProcessor.cxx.

References _f32vec4_one, TObjArray::At(), TStopwatch::CpuTime(), fabs(), fAdc, fCMode, fNChannels, fNoisyChipChannels, fNSamples, fNvals, fPedVal, fSerMap, fSMode, BmnADCDigit< IntType >::GetChannel(), TObjArray::GetEntriesFast(), GetNSerials(), BmnADCDigit< IntType >::GetSerial(), BmnADCDigit< IntType >::GetValue(), memset(), TStopwatch::RealTime(), TStopwatch::Start(), TStopwatch::Stop(), thrMax, workTime_cpu_p, and workTime_real_p.

Referenced by BmnAdcProcessor().

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

◆ PrecalcEventMods_simd() [2/2]

void BmnAdcProcessor::PrecalcEventMods_simd ( TClonesArray * adc)

References BmnAdcProcessor(), and PrecalcEventModsImp.

Here is the call graph for this function:

◆ RecalculatePedestals() [1/2]

BmnStatus BmnAdcProcessor::RecalculatePedestals ( )

Definition at line 393 of file BmnAdcProcessor.cxx.

References CalcCMS(), fAdcProfiles, fAdcSerials, fDetName, fNChannels, fNSamples, fPedDat, fPedRms, fPedVal, fRun, GetNSerials(), i, kBMNSUCCESS, N_EV_FOR_PEDESTALS, and TMath::Sqrt().

Here is the call graph for this function:

◆ RecalculatePedestals() [2/2]

BmnStatus BmnAdcProcessor::RecalculatePedestals ( )

◆ RecalculatePedestalsAugmented() [1/2]

BmnStatus BmnAdcProcessor::RecalculatePedestalsAugmented ( )

Definition at line 466 of file BmnAdcProcessor.cxx.

References TMath::Abs(), fAdcProfiles, fAdcSerials, fCMode, fDetName, fNChannels, fNIters, fNoisyChipChannels, fNSamples, fNvals, fNvalsADC, fNvalsCMod, fPedCMod, fPedCMod2, fPedDat, fPedRms, fPedVal, fPedValTemp, fSMode, fSumRmsV, fVerbose, GetNSerials(), kBMNSUCCESS, memset(), N_EV_FOR_PEDESTALS, TMath::Sq(), TMath::Sqrt(), thr, thrDif, and thrMax.

Here is the call graph for this function:

◆ RecalculatePedestalsAugmented() [2/2]

BmnStatus BmnAdcProcessor::RecalculatePedestalsAugmented ( )

◆ SaveFilterInfo() [1/2]

BmnStatus BmnAdcProcessor::SaveFilterInfo ( TFile * cTalibFile)

Definition at line 1099 of file BmnAdcProcessor.cxx.

References TDirectoryFile::cd(), fDetName, fNChannels, fNoisyChipChannels, fNSamples, fPedVal, BmnCalibData::GetCalibration(), BmnCalibData::GetNoise(), GetNSerials(), kBMNSUCCESS, and TDirectory::WriteObject().

Here is the call graph for this function:

◆ SaveFilterInfo() [2/2]

BmnStatus BmnAdcProcessor::SaveFilterInfo ( TFile * cTalibFile)

◆ SetApplyThreshold() [1/2]

void BmnAdcProcessor::SetApplyThreshold ( bool b)
inline

Definition at line 77 of file BmnAdcProcessor.h.

References fApplyThreshold.

◆ SetApplyThreshold() [2/2]

void BmnAdcProcessor::SetApplyThreshold ( bool b)
inline

Definition at line 77 of file BmnAdcProcessor.h.

References fApplyThreshold.

◆ SetEvForPedestals() [1/2]

void BmnAdcProcessor::SetEvForPedestals ( uint32_t v)
inline

Definition at line 115 of file BmnAdcProcessor.h.

References fEvForPedestals, and v.

◆ SetEvForPedestals() [2/2]

void BmnAdcProcessor::SetEvForPedestals ( uint32_t v)
inline

Definition at line 115 of file BmnAdcProcessor.h.

References fEvForPedestals, and v.

◆ SetThreshold() [1/2]

void BmnAdcProcessor::SetThreshold ( Double_t final_thr,
Double_t thr_dif = -1,
Double_t n_iters = -1,
Double_t cmod_cut = -1 )

Definition at line 1159 of file BmnAdcProcessor.cxx.

References cmodcut, FinalThr, fNIters, thrDif, and thrMax.

Referenced by BmnGemRaw2Digit::ReadGlobalMap(), BmnCscRaw2Digit::ReadMapFile(), BmnSiBTRaw2Digit::ReadMapFile(), and BmnSiliconRaw2Digit::ReadMapFile().

Here is the caller graph for this function:

◆ SetThreshold() [2/2]

void BmnAdcProcessor::SetThreshold ( Double_t final_thr,
Double_t thr_dif = -1,
Double_t n_iters = -1,
Double_t cmod_cut = -1 )

◆ SetVerbose() [1/2]

void BmnAdcProcessor::SetVerbose ( Int_t v)
inline

Definition at line 101 of file BmnAdcProcessor.h.

References fVerbose, and v.

◆ SetVerbose() [2/2]

void BmnAdcProcessor::SetVerbose ( Int_t v)
inline

Definition at line 101 of file BmnAdcProcessor.h.

References fVerbose, and v.

Member Data Documentation

◆ canStrip

TCanvas * BmnAdcProcessor::canStrip
private

Definition at line 278 of file BmnAdcProcessor.h.

◆ cmodcut

Double_t BmnAdcProcessor::cmodcut
protected

◆ drawCnt

Int_t BmnAdcProcessor::drawCnt
protected

Definition at line 132 of file BmnAdcProcessor.h.

Referenced by BmnAdcProcessor(), and DrawDebugHists().

◆ drawCnt2d

Int_t BmnAdcProcessor::drawCnt2d
protected

Definition at line 133 of file BmnAdcProcessor.h.

Referenced by BmnAdcProcessor(), and DrawDebugHists2D().

◆ fAdc

◆ fAdcProfiles

UInt_t *** BmnAdcProcessor::fAdcProfiles
private

◆ fAdcSerials

vector< uint32_t > BmnAdcProcessor::fAdcSerials
protected

◆ fApplyThreshold

bool BmnAdcProcessor::fApplyThreshold
protected

Definition at line 144 of file BmnAdcProcessor.h.

Referenced by BmnAdcProcessor(), GetApplyThreshold(), and SetApplyThreshold().

◆ fCMode

◆ fCMode0

Float_t ** BmnAdcProcessor::fCMode0
protected

◆ fDetName

◆ fEvForPedestals

uint32_t BmnAdcProcessor::fEvForPedestals
protected

Definition at line 142 of file BmnAdcProcessor.h.

Referenced by BmnAdcProcessor(), GetEvForPedestals(), and SetEvForPedestals().

◆ FinalThr

◆ fNChannels

◆ fNIters

◆ fNoisyChannels

◆ fNoisyChipChannels

◆ fNSamples

◆ fNvals

◆ fNvalsADC

UInt_t *** BmnAdcProcessor::fNvalsADC
protected

◆ fNvalsCMod

UInt_t *** BmnAdcProcessor::fNvalsCMod
protected

◆ fPedCMod

Double_t *** BmnAdcProcessor::fPedCMod
protected

◆ fPedCMod2

Double_t *** BmnAdcProcessor::fPedCMod2
protected

◆ fPedDat

◆ fPedRms

Double_t *** BmnAdcProcessor::fPedRms
protected

◆ fPedVal

◆ fPedValTemp

Double_t *** BmnAdcProcessor::fPedValTemp
protected

◆ fPeriod

◆ fRun

◆ fSerMap

unordered_map< UInt_t, size_t > BmnAdcProcessor::fSerMap
protected

◆ fSetup

◆ fSigProf

◆ fSMode

◆ fSMode0

Float_t ** BmnAdcProcessor::fSMode0
protected

◆ fSpecThreshMap

◆ fSumRmsV

Double_t ** BmnAdcProcessor::fSumRmsV
protected

◆ fVerbose

◆ hCMode

vector< vector< TH1 * > > BmnAdcProcessor::hCMode
protected

Definition at line 245 of file BmnAdcProcessor.h.

Referenced by ClearDebugHists(), and DrawDebugHists().

◆ hCModeSi

vector< TH1 * > BmnAdcProcessor::hCModeSi
protected

Definition at line 249 of file BmnAdcProcessor.h.

Referenced by ClearDebugHists(), and DrawDebugHists2D().

◆ hcms

TH2F * BmnAdcProcessor::hcms
private

Definition at line 269 of file BmnAdcProcessor.h.

◆ hcms1

TH1F * BmnAdcProcessor::hcms1
private

Definition at line 271 of file BmnAdcProcessor.h.

◆ hcms1p

TH1F * BmnAdcProcessor::hcms1p
private

Definition at line 273 of file BmnAdcProcessor.h.

◆ hfilter

TH2F * BmnAdcProcessor::hfilter
private

Definition at line 276 of file BmnAdcProcessor.h.

◆ hfilterMK

TH2F * BmnAdcProcessor::hfilterMK
private

Definition at line 277 of file BmnAdcProcessor.h.

◆ hp

TH2F * BmnAdcProcessor::hp
private

Definition at line 275 of file BmnAdcProcessor.h.

◆ hPedLine

vector< vector< TH1 * > > BmnAdcProcessor::hPedLine
protected

Definition at line 244 of file BmnAdcProcessor.h.

Referenced by ClearDebugHists().

◆ hPedLineSi

vector< vector< TH1 * > > BmnAdcProcessor::hPedLineSi
protected

Definition at line 247 of file BmnAdcProcessor.h.

Referenced by DrawDebugHists2D().

◆ hPedSi

vector< TH1 * > BmnAdcProcessor::hPedSi
protected

Definition at line 248 of file BmnAdcProcessor.h.

Referenced by ClearDebugHists(), and DrawDebugHists2D().

◆ hscms1_adc

TH2F * BmnAdcProcessor::hscms1_adc
private

Definition at line 272 of file BmnAdcProcessor.h.

◆ hscms1p_adc

TH1F * BmnAdcProcessor::hscms1p_adc
private

Definition at line 274 of file BmnAdcProcessor.h.

◆ hscms_adc

TH2F * BmnAdcProcessor::hscms_adc
private

Definition at line 270 of file BmnAdcProcessor.h.

◆ hSMode

vector< vector< TH1 * > > BmnAdcProcessor::hSMode
protected

Definition at line 246 of file BmnAdcProcessor.h.

Referenced by ClearDebugHists(), and DrawDebugHists().

◆ hSModeSi

vector< TH1 * > BmnAdcProcessor::hSModeSi
protected

Definition at line 250 of file BmnAdcProcessor.h.

Referenced by ClearDebugHists(), and DrawDebugHists2D().

◆ PrecalcEventModsImp

◆ thrDif

◆ thrMax

◆ workTime_cpu

Double_t BmnAdcProcessor::workTime_cpu = 0.0
protected

Definition at line 220 of file BmnAdcProcessor.h.

Referenced by ~BmnAdcProcessor(), CalcEventMods(), and CalcEventMods_simd().

◆ workTime_cpu_p

Double_t BmnAdcProcessor::workTime_cpu_p = 0.0
protected

Definition at line 222 of file BmnAdcProcessor.h.

Referenced by ~BmnAdcProcessor(), PrecalcEventMods(), and PrecalcEventMods_simd().

◆ workTime_real

Double_t BmnAdcProcessor::workTime_real = 0.0
protected

Definition at line 221 of file BmnAdcProcessor.h.

Referenced by ~BmnAdcProcessor(), CalcEventMods(), and CalcEventMods_simd().

◆ workTime_real_p

Double_t BmnAdcProcessor::workTime_real_p = 0.0
protected

Definition at line 223 of file BmnAdcProcessor.h.

Referenced by ~BmnAdcProcessor(), PrecalcEventMods(), and PrecalcEventMods_simd().


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