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

#include <BmnProfRaw2Digit.h>

Inheritance diagram for BmnProfRaw2Digit:
Collaboration diagram for BmnProfRaw2Digit:

Public Member Functions

 BmnProfRaw2Digit (Int_t period, Int_t run)
 ~BmnProfRaw2Digit ()
GlobalProfiMap & GetGlobalMap ()
BmnStatus FillEvent (TClonesArray *adc, TClonesArray *csc)
BmnStatus FillProfiles (TClonesArray *adc)
BmnStatus FillNoisyChannels ()
int FillExtractedBits (TClonesArray *fInAdcArray, TClonesArray *fWorkAdcArray)
Public Member Functions inherited from BmnAdcProcessor
 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 unique_ptr< BmnSiProfStationSet > GetProfStationSet (Int_t period)
Static Public Member Functions inherited from BmnAdcProcessor
static BmnStatus DrawFilterInfo (BmnCalibData *data)
static BmnStatus DrawFilterInfo (BmnCalibData *data)

Private Member Functions

void MapStrip (ProfiInfo &info, uint16_t ch, Int_t iSmpl, uint16_t &station, uint16_t &mod, uint16_t &lay, int16_t &strip)
void ProcessAdc (TClonesArray *adc, TClonesArray *csc, Bool_t doFill)
BmnStatus ReadGlobalMapFile (string name)
BmnStatus ReadLocalMapFile (string name)

Private Attributes

string fLocalMapFileName
string fGlobalMapFileName
GlobalProfiMap fGlobalMap
Mod2LocalProfiMap fChannelMaps
unique_ptr< BmnSiBTStationSet > fSiBTStationSet

Additional Inherited Members

Public Attributes inherited from BmnAdcProcessor
void(BmnAdcProcessor::* PrecalcEventModsImp )(TClonesArray *adc)
Protected Types inherited from BmnAdcProcessor
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 inherited from BmnAdcProcessor
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 inherited from BmnAdcProcessor
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

Detailed Description

Definition at line 49 of file BmnProfRaw2Digit.h.

Constructor & Destructor Documentation

◆ BmnProfRaw2Digit()

BmnProfRaw2Digit::BmnProfRaw2Digit ( Int_t period,
Int_t run )

◆ ~BmnProfRaw2Digit()

BmnProfRaw2Digit::~BmnProfRaw2Digit ( )

Definition at line 25 of file BmnProfRaw2Digit.cxx.

References BmnAdcProcessor::DeleteStripNoiseArrays().

Here is the call graph for this function:

Member Function Documentation

◆ FillEvent()

BmnStatus BmnProfRaw2Digit::FillEvent ( TClonesArray * adc,
TClonesArray * csc )

Definition at line 131 of file BmnProfRaw2Digit.cxx.

References BmnAdcProcessor::CalcEventMods(), BmnAdcProcessor::CalcEventMods_simd(), kBMNSUCCESS, BmnAdcProcessor::PrecalcEventModsImp, and ProcessAdc().

Here is the call graph for this function:

◆ FillExtractedBits()

int BmnProfRaw2Digit::FillExtractedBits ( TClonesArray * fInAdcArray,
TClonesArray * fWorkAdcArray )
inline

Definition at line 63 of file BmnProfRaw2Digit.h.

References BmnProfRawTools::adc_ch(), TObjArray::At(), BmnProfRawTools::ChannelCnt(), fChannelMaps, TObjArray::GetEntriesFast(), BmnADCDigit< IntType >::GetSerial(), and m.

Here is the call graph for this function:

◆ FillNoisyChannels()

BmnStatus BmnProfRaw2Digit::FillNoisyChannels ( )

Definition at line 171 of file BmnProfRaw2Digit.cxx.

References TMath::Abs(), fGlobalMap, BmnAdcProcessor::fNoisyChannels, BmnAdcProcessor::fSigProf, TH1::GetBinContent(), BmnAdcProcessor::GetNChannels(), BmnAdcProcessor::GetNoisyChipChannels(), BmnAdcProcessor::GetNSamples(), BmnAdcProcessor::GetNSerials(), BmnAdcProcessor::GetSerials(), kBMNSUCCESS, and MapStrip().

Here is the call graph for this function:

◆ FillProfiles()

BmnStatus BmnProfRaw2Digit::FillProfiles ( TClonesArray * adc)

Definition at line 143 of file BmnProfRaw2Digit.cxx.

References BmnAdcProcessor::CalcEventMods(), BmnAdcProcessor::CalcEventMods_simd(), kBMNSUCCESS, BmnAdcProcessor::PrecalcEventModsImp, and ProcessAdc().

Here is the call graph for this function:

◆ GetGlobalMap()

GlobalProfiMap & BmnProfRaw2Digit::GetGlobalMap ( )
inline

Definition at line 55 of file BmnProfRaw2Digit.h.

References fGlobalMap.

◆ GetProfStationSet()

unique_ptr< BmnSiProfStationSet > BmnProfRaw2Digit::GetProfStationSet ( Int_t period)
static

Definition at line 30 of file BmnProfRaw2Digit.cxx.

Referenced by BmnProfRaw2Digit().

Here is the caller graph for this function:

◆ MapStrip()

void BmnProfRaw2Digit::MapStrip ( ProfiInfo & info,
uint16_t ch,
Int_t iSmpl,
uint16_t & station,
uint16_t & mod,
uint16_t & lay,
int16_t & strip )
private

Definition at line 156 of file BmnProfRaw2Digit.cxx.

References ProfiInfo::Layer, ProfiLocal::LayerId, ProfiInfo::ModuleId, ProfiInfo::StationId, and ProfiLocal::StripMap.

Referenced by FillNoisyChannels(), and ProcessAdc().

Here is the caller graph for this function:

◆ ProcessAdc()

void BmnProfRaw2Digit::ProcessAdc ( TClonesArray * adc,
TClonesArray * csc,
Bool_t doFill )
private

Definition at line 247 of file BmnProfRaw2Digit.cxx.

References BmnAdcProcessor::fAdc, fGlobalMap, BmnAdcProcessor::FinalThr, BmnAdcProcessor::fNChannels, BmnAdcProcessor::fNIters, BmnAdcProcessor::fSigProf, TObjArray::GetEntriesFast(), BmnAdcProcessor::GetNoisyChipChannels(), BmnAdcProcessor::GetNSamples(), BmnAdcProcessor::GetPedestalsRMS(), BmnAdcProcessor::GetSerials(), ProfiInfo::Layer, ProfiLocal::LayerType, MapStrip(), TMath::Max(), BmnStripDigit::SetIsGoodDigit(), thr, BmnAdcProcessor::thrDif, and BmnAdcProcessor::thrMax.

Referenced by FillEvent(), and FillProfiles().

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

◆ ReadGlobalMapFile()

BmnStatus BmnProfRaw2Digit::ReadGlobalMapFile ( string name)
private

Definition at line 47 of file BmnProfRaw2Digit.cxx.

References fChannelMaps, fGlobalMap, BmnAdcProcessor::fVerbose, BmnAdcProcessor::GrabNewSerial(), i, and kBMNSUCCESS.

Referenced by BmnProfRaw2Digit().

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

◆ ReadLocalMapFile()

BmnStatus BmnProfRaw2Digit::ReadLocalMapFile ( string name)
private

Definition at line 84 of file BmnProfRaw2Digit.cxx.

References fChannelMaps, BmnAdcProcessor::fVerbose, kBMNERROR, kBMNSUCCESS, ProfiLocal::LayerId, ProfiLocal::LayerType, m, and v.

Referenced by BmnProfRaw2Digit().

Here is the caller graph for this function:

Member Data Documentation

◆ fChannelMaps

Mod2LocalProfiMap BmnProfRaw2Digit::fChannelMaps
private

Definition at line 92 of file BmnProfRaw2Digit.h.

Referenced by FillExtractedBits(), ReadGlobalMapFile(), and ReadLocalMapFile().

◆ fGlobalMap

GlobalProfiMap BmnProfRaw2Digit::fGlobalMap
private

Definition at line 91 of file BmnProfRaw2Digit.h.

Referenced by FillNoisyChannels(), GetGlobalMap(), ProcessAdc(), and ReadGlobalMapFile().

◆ fGlobalMapFileName

string BmnProfRaw2Digit::fGlobalMapFileName
private

Definition at line 89 of file BmnProfRaw2Digit.h.

Referenced by BmnProfRaw2Digit().

◆ fLocalMapFileName

string BmnProfRaw2Digit::fLocalMapFileName
private

Definition at line 88 of file BmnProfRaw2Digit.h.

Referenced by BmnProfRaw2Digit().

◆ fSiBTStationSet

unique_ptr<BmnSiBTStationSet> BmnProfRaw2Digit::fSiBTStationSet
private

Definition at line 94 of file BmnProfRaw2Digit.h.


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