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

#include <BmnConverterTools.h>

Static Public Member Functions

static BmnStatus ParseComplexTLV (const uint32_t *buf, UInt_t &len, UInt_t &runId)
static SpillStatus ParseJsonStatus (json &j, Int_t tai_utc_dif=0)
static BmnStatus ParseJsonConfig (json &j, BmnTrigConfig &trig_conf)
static SysPoint ParseTAI (json &j, Int_t tai_utc_dif=0)
static BmnStatus ParseRawT0TextConfig (string &s, BmnT0Raw *rt0dig)
static BmnStatus ParseRawFileName (const TString &s, BmnFileProp &prop)
static BmnStatus ParseRawFileName (const string &s, BmnFileProp &prop)
static TString GetSubNameAfterRunId (TString name)
static BmnT0Raw * Process_T0Raw (const uint32_t *d, uint32_t len, TClonesArray *t0raw=nullptr)
template<typename IntType, typename LamType>
static BmnStatus Process_ADC64 (const uint32_t *d, UInt_t len, UInt_t serial, LamType arr_selector)
 Parse ADC64 format Mstream Waveform V2 from https://afi.jinr.ru/MStreamWaveformDigitizer.
static BmnStatus ParseComplexTLV (const uint32_t *buf, UInt_t &len, UInt_t &runId)
static SpillStatus ParseJsonStatus (json &j, Int_t tai_utc_dif=0)
static BmnStatus ParseJsonConfig (json &j, BmnTrigConfig &trig_conf)
static SysPoint ParseTAI (json &j, Int_t tai_utc_dif=0)
static BmnStatus ParseRawT0TextConfig (string &s, BmnT0Raw *rt0dig)
static BmnStatus ParseRawFileName (const TString &s, BmnFileProp &prop)
static BmnStatus ParseRawFileName (const string &s, BmnFileProp &prop)
static TString GetSubNameAfterRunId (TString name)
static BmnT0Raw * Process_T0Raw (const uint32_t *d, uint32_t len, TClonesArray *t0raw=nullptr)
template<typename IntType, typename LamType>
static BmnStatus Process_ADC64 (const uint32_t *d, UInt_t len, UInt_t serial, LamType arr_selector)
 Parse ADC64 format Mstream Waveform V2 from https://afi.jinr.ru/MStreamWaveformDigitizer.

Private Types

enum  T0Config {
  Comment , Discriminators , DelayLines , Switches ,
  LV , BDMult , ExtraDelaysMask , Undefined ,
  Comment , Discriminators , DelayLines , Switches ,
  LV , BDMult , ExtraDelaysMask , Undefined
}
enum  T0Config {
  Comment , Discriminators , DelayLines , Switches ,
  LV , BDMult , ExtraDelaysMask , Undefined ,
  Comment , Discriminators , DelayLines , Switches ,
  LV , BDMult , ExtraDelaysMask , Undefined
}

Static Private Member Functions

template<typename ArrType>
static void TakeDataWords (UInt_t n, const uint32_t *d, ArrType &valI)
static T0Config GetT0Cfg (string str)
template<typename ArrType>
static void TakeDataWords (UInt_t n, const uint32_t *d, ArrType &valI)
static T0Config GetT0Cfg (string str)

Detailed Description

Definition at line 33 of file BmnConverterTools.h.

Member Enumeration Documentation

◆ T0Config [1/2]

Enumerator
Comment 
Discriminators 
DelayLines 
Switches 
LV 
BDMult 
ExtraDelaysMask 
Undefined 
Comment 
Discriminators 
DelayLines 
Switches 
LV 
BDMult 
ExtraDelaysMask 
Undefined 

Definition at line 116 of file BmnConverterTools.h.

◆ T0Config [2/2]

Enumerator
Comment 
Discriminators 
DelayLines 
Switches 
LV 
BDMult 
ExtraDelaysMask 
Undefined 
Comment 
Discriminators 
DelayLines 
Switches 
LV 
BDMult 
ExtraDelaysMask 
Undefined 

Definition at line 116 of file BmnConverterTools.h.

Member Function Documentation

◆ GetSubNameAfterRunId() [1/2]

TString BmnConverterTools::GetSubNameAfterRunId ( TString name)
static

Definition at line 488 of file BmnConverterTools.cxx.

References TPRegexp::MatchB(), and TPRegexp::Substitute().

Referenced by BmnRawDataDecoder::BmnRawDataDecoder(), BmnRawSource::BmnRawSource(), and BmnConverter::FeedFile().

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

◆ GetSubNameAfterRunId() [2/2]

TString BmnConverterTools::GetSubNameAfterRunId ( TString name)
static

◆ GetT0Cfg() [1/2]

BmnConverterTools::T0Config BmnConverterTools::GetT0Cfg ( string str)
staticprivate

Definition at line 18 of file BmnConverterTools.cxx.

Referenced by ParseRawT0TextConfig().

Here is the caller graph for this function:

◆ GetT0Cfg() [2/2]

T0Config BmnConverterTools::GetT0Cfg ( string str)
staticprivate

◆ ParseComplexTLV() [1/2]

BmnStatus BmnConverterTools::ParseComplexTLV ( const uint32_t * buf,
UInt_t & len,
UInt_t & runId )
static

Referenced by BmnConverter::ConvertRawToRootIterateFileRead(), BmnRawSource::ConvertRawToRootIterateFileRead(), and BmnOnlineDecoder::ProcessStream().

Here is the caller graph for this function:

◆ ParseComplexTLV() [2/2]

BmnStatus BmnConverterTools::ParseComplexTLV ( const uint32_t * buf,
UInt_t & len,
UInt_t & runId )
static

◆ ParseJsonConfig() [1/2]

BmnStatus BmnConverterTools::ParseJsonConfig ( json & j,
BmnTrigConfig & trig_conf )
static

◆ ParseJsonConfig() [2/2]

BmnStatus BmnConverterTools::ParseJsonConfig ( json & j,
BmnTrigConfig & trig_conf )
static

◆ ParseJsonStatus() [1/2]

SpillStatus BmnConverterTools::ParseJsonStatus ( json & j,
Int_t tai_utc_dif = 0 )
static

Referenced by BmnConverter::ParseJsonTLV(), and BmnRawSource::ParseJsonTLV().

Here is the caller graph for this function:

◆ ParseJsonStatus() [2/2]

SpillStatus BmnConverterTools::ParseJsonStatus ( json & j,
Int_t tai_utc_dif = 0 )
static

◆ ParseRawFileName() [1/4]

BmnStatus BmnConverterTools::ParseRawFileName ( const string & s,
BmnFileProp & prop )
static

Definition at line 511 of file BmnConverterTools.cxx.

References BmnFileProp::GetEventOrder(), BmnFileProp::GetFileId(), BmnFileProp::GetRunId(), kBMNERROR, kBMNSUCCESS, BmnFileProp::SetEventOrder(), BmnFileProp::SetFileId(), BmnFileProp::SetRunId(), and BmnFileProp::SetRunIndex().

Here is the call graph for this function:

◆ ParseRawFileName() [2/4]

BmnStatus BmnConverterTools::ParseRawFileName ( const string & s,
BmnFileProp & prop )
static

◆ ParseRawFileName() [3/4]

BmnStatus BmnConverterTools::ParseRawFileName ( const TString & s,
BmnFileProp & prop )
static

Definition at line 506 of file BmnConverterTools.cxx.

References TString::Data(), and ParseRawFileName().

Referenced by BmnRawDataDecoder::BmnRawDataDecoder(), BmnRawSource::BmnRawSource(), BmnOnlineDecoder::BatchDirectory(), BmnOnlineDecoder::BatchDirectoryToSocket(), BmnConverter::FeedFile(), BmnOnlineDecoder::InitDecoder(), and ParseRawFileName().

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

◆ ParseRawFileName() [4/4]

BmnStatus BmnConverterTools::ParseRawFileName ( const TString & s,
BmnFileProp & prop )
static

◆ ParseRawT0TextConfig() [1/2]

BmnStatus BmnConverterTools::ParseRawT0TextConfig ( string & s,
BmnT0Raw * rt0dig )
static

Definition at line 130 of file BmnConverterTools.cxx.

References IndentedConfigParser::Node::children, BmnT0Raw::DelayLines(), BmnT0Raw::Discriminators(), GetT0Cfg(), kBMNERROR, kBMNSUCCESS, BmnT0Raw::LVChannelConfig(), n, IndentedConfigParser::ParseIStringStream(), BmnT0Raw::SetBDMultH(), BmnT0Raw::SetBDMultL(), BmnT0Raw::SetComment(), BmnT0Raw::SetExtraDelaysMask(), BmnT0Raw::Switches(), and thr.

Referenced by Process_T0Raw().

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

◆ ParseRawT0TextConfig() [2/2]

BmnStatus BmnConverterTools::ParseRawT0TextConfig ( string & s,
BmnT0Raw * rt0dig )
static

◆ ParseTAI() [1/2]

SysPoint BmnConverterTools::ParseTAI ( json & j,
Int_t tai_utc_dif = 0 )
static

References d.

◆ ParseTAI() [2/2]

SysPoint BmnConverterTools::ParseTAI ( json & j,
Int_t tai_utc_dif = 0 )
static

◆ Process_ADC64() [1/2]

template<typename IntType, typename LamType>
BmnStatus BmnConverterTools::Process_ADC64 ( const uint32_t * d,
UInt_t len,
UInt_t serial,
LamType arr_selector )
inlinestatic
Parameters
dData array ptr
lenpayload length
serialSerial number
arr_selectorFunction for appropriate TClonesArray selection
Returns
kBMNSUCCESS

Definition at line 57 of file BmnConverterTools.h.

References TTimeStamp::AsString(), d, TObjArray::GetEntriesFast(), kBMNERROR, kBMNSUCCESS, kNBYTESINWORD, and TakeDataWords().

Referenced by BmnConverterThread::ProcessEvent(), and BmnRawSource::ProcessEvent().

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

◆ Process_ADC64() [2/2]

template<typename IntType, typename LamType>
BmnStatus BmnConverterTools::Process_ADC64 ( const uint32_t * d,
UInt_t len,
UInt_t serial,
LamType arr_selector )
inlinestatic
Parameters
dData array ptr
lenpayload length
serialSerial number
arr_selectorFunction for appropriate TClonesArray selection
Returns
kBMNSUCCESS

Definition at line 57 of file BmnConverterTools.h.

References TTimeStamp::AsString(), d, TObjArray::GetEntriesFast(), kBMNERROR, kBMNSUCCESS, kNBYTESINWORD, and TakeDataWords().

Here is the call graph for this function:

◆ Process_T0Raw() [1/2]

BmnT0Raw * BmnConverterTools::Process_T0Raw ( const uint32_t * d,
uint32_t len,
TClonesArray * t0raw = nullptr )
static

Definition at line 45 of file BmnConverterTools.cxx.

References TTimeStamp::AsString(), d, TObjArray::GetEntriesFast(), TTimeStamp::GetNanoSec(), TTimeStamp::GetSec(), i, kBMNERROR, kT0_BIN_BLOCK_2020_SEC, kT0_BIN_BLOCK_BYTES, kT0_BIN_BLOCK_TIME_TXT, kT0_BIN_BLOCK_UNIX_SEC, kT0_BIN_BLOCK_WORDS, kWORDSIZE, ParseRawT0TextConfig(), TClonesArray::Remove(), BmnT0Raw::SetTime(), BmnT0Raw::SetTriggerMask(), BmnT0Raw::SetTS(), and BmnFunctionSet::TimePoint2String().

Referenced by BmnConverterThread::FillVirtualDevice(), BmnRawSource::FillVirtualDevice(), and BmnT0RawReader::ParseFile().

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

◆ Process_T0Raw() [2/2]

BmnT0Raw * BmnConverterTools::Process_T0Raw ( const uint32_t * d,
uint32_t len,
TClonesArray * t0raw = nullptr )
static

References d.

◆ TakeDataWords() [1/2]

template<typename ArrType>
void BmnConverterTools::TakeDataWords ( UInt_t n,
const uint32_t * d,
ArrType & valI )
inlinestaticprivate

Definition at line 129 of file BmnConverterTools.h.

References d, and n.

Referenced by Process_ADC64().

Here is the caller graph for this function:

◆ TakeDataWords() [2/2]

template<typename ArrType>
void BmnConverterTools::TakeDataWords ( UInt_t n,
const uint32_t * d,
ArrType & valI )
inlinestaticprivate

Definition at line 129 of file BmnConverterTools.h.

References d, and n.


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