BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnMSCMatrix< IntType > Class Template Reference

Storage for all MSC counters of the spill. More...

#include <BmnMSCMatrix.h>

Inheritance diagram for BmnMSCMatrix< IntType >:
Collaboration diagram for BmnMSCMatrix< IntType >:

Classes

struct  LessThanForFirst
struct  LessThanForSecond

Public Member Functions

 BmnMSCMatrix (size_t times_count=0, NameChMap scalerName2Index=NameChMap{})
const IntType GetCount (size_t record_id, const string &scaler_name)
const IntType GetCount (size_t record_id, uint16_t scaler_id)
const IntType GetCount (const SysPoint &time, const string &scaler_name)
const IntType GetCount (const SysPoint &time, const uint16_t scaler_id)
void SetCount (size_t record_id, uint16_t scaler_id, IntType val)
void SetCount (size_t record_id, const string &scaler_name, IntType val)
SysPoint & GetTime (const size_t &record_id)
TTimeStamp GetTS (const size_t &record_id)
void SetTime (const size_t &record_id, const SysPoint &time)
 we assume the user is filling the timestamps in the chronological order on the basis of preliminary created time map
void SetTS (const size_t &record_id, const TTimeStamp &ts)
NameChMap & GetScalerName2indexMap ()
TimeLine & ScalerTimeLine (const string &scaler_name)
TimeLine & ScalerTimeLine (const uint16_t &scaler_id)
auto GetScalerRange (const string &scaler_name, const SysPoint &timeBegin=SysPoint::min(), const SysPoint &timeEnd=SysPoint::max())
auto GetSpillRanges (const SysPoint &timeBegin=SysPoint::min(), const SysPoint &timeEnd=SysPoint::max())
 Returns the [begin,end) iterators for range of time point pairs representing begin and end of a spill time interval overlapping with the given interval.
auto GetBusyRanges (const SysPoint &timeBegin=SysPoint::min(), const SysPoint &timeEnd=SysPoint::max())
 Returns the [begin,end) iterators for range of time point pairs representing begin and end of a busy time interval overlapping with the given interval.
uint64_t GetCntInRange (const string &scaler_name, const SysPoint &timeBegin=SysPoint::min(), const SysPoint &timeEnd=SysPoint::max())
size_t GetRecordIdByTime (const SysPoint &timePoint)
bool GetIsSpill (const SysPoint &time)
bool GetIsBusy (const SysPoint &time)
auto & SpillRangeVec ()
auto & BusyRangeVec ()
const size_t GetNRecords ()
const uint16_t GetNScalers ()
uint32_t GetMissingHits ()
void SetMissingHits (uint32_t val)
virtual ~BmnMSCMatrix ()
 Destructor.
 BmnMSCMatrix (size_t times_count=0, NameChMap scalerName2Index=NameChMap{})
const IntType GetCount (size_t record_id, const string &scaler_name)
const IntType GetCount (size_t record_id, uint16_t scaler_id)
const IntType GetCount (const SysPoint &time, const string &scaler_name)
const IntType GetCount (const SysPoint &time, const uint16_t scaler_id)
void SetCount (size_t record_id, uint16_t scaler_id, IntType val)
void SetCount (size_t record_id, const string &scaler_name, IntType val)
SysPoint & GetTime (const size_t &record_id)
TTimeStamp GetTS (const size_t &record_id)
void SetTime (const size_t &record_id, const SysPoint &time)
 we assume the user is filling the timestamps in the chronological order on the basis of preliminary created time map
void SetTS (const size_t &record_id, const TTimeStamp &ts)
NameChMap & GetScalerName2indexMap ()
TimeLine & ScalerTimeLine (const string &scaler_name)
TimeLine & ScalerTimeLine (const uint16_t &scaler_id)
auto GetScalerRange (const string &scaler_name, const SysPoint &timeBegin=SysPoint::min(), const SysPoint &timeEnd=SysPoint::max())
auto GetSpillRanges (const SysPoint &timeBegin=SysPoint::min(), const SysPoint &timeEnd=SysPoint::max())
 Returns the [begin,end) iterators for range of time point pairs representing begin and end of a spill time interval overlapping with the given interval.
auto GetBusyRanges (const SysPoint &timeBegin=SysPoint::min(), const SysPoint &timeEnd=SysPoint::max())
 Returns the [begin,end) iterators for range of time point pairs representing begin and end of a busy time interval overlapping with the given interval.
uint64_t GetCntInRange (const string &scaler_name, const SysPoint &timeBegin=SysPoint::min(), const SysPoint &timeEnd=SysPoint::max())
size_t GetRecordIdByTime (const SysPoint &timePoint)
bool GetIsSpill (const SysPoint &time)
bool GetIsBusy (const SysPoint &time)
auto & SpillRangeVec ()
auto & BusyRangeVec ()
const size_t GetNRecords ()
const uint16_t GetNScalers ()
uint32_t GetMissingHits ()
void SetMissingHits (uint32_t val)
virtual ~BmnMSCMatrix ()
 Destructor.
Public Member Functions inherited from TObject
 TObject ()
 TObject (const TObject &object)
virtual ~TObject ()
void AbstractMethod (const char *method) const
virtual void AppendPad (Option_t *option="")
virtual void Browse (TBrowser *b)
ULong_t CheckedHash ()
virtual const char * ClassName () const
virtual void Clear (Option_t *="")
virtual TObject * Clone (const char *newname="") const
virtual Int_t Compare (const TObject *obj) const
virtual void Copy (TObject &object) const
virtual void Delete (Option_t *option="")
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
virtual void Draw (Option_t *option="")
virtual void DrawClass () const
virtual TObject * DrawClone (Option_t *option="") const
virtual void Dump () const
virtual void Error (const char *method, const char *msgfmt,...) const
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
virtual void Fatal (const char *method, const char *msgfmt,...) const
virtual TObject * FindObject (const char *name) const
virtual TObject * FindObject (const TObject *obj) const
virtual Option_t * GetDrawOption () const
virtual const char * GetIconName () const
virtual const char * GetName () const
virtual char * GetObjectInfo (Int_t px, Int_t py) const
virtual Option_t * GetOption () const
virtual const char * GetTitle () const
virtual UInt_t GetUniqueID () const
virtual Bool_t HandleTimer (TTimer *timer)
virtual ULong_t Hash () const
Bool_t HasInconsistentHash () const
virtual void Info (const char *method, const char *msgfmt,...) const
virtual Bool_t InheritsFrom (const char *classname) const
virtual Bool_t InheritsFrom (const TClass *cl) const
virtual void Inspect () const
void InvertBit (UInt_t f)
virtual TClass * IsA () const
Bool_t IsDestructed () const
virtual Bool_t IsEqual (const TObject *obj) const
virtual Bool_t IsFolder () const
R__ALWAYS_INLINE Bool_t IsOnHeap () const
virtual Bool_t IsSortable () const
R__ALWAYS_INLINE Bool_t IsZombie () const
virtual void ls (Option_t *option="") const
void MayNotUse (const char *method) const
virtual Bool_t Notify ()
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
void operator delete (void *ptr)
void operator delete (void *ptr, void *vp)
void operator delete[] (void *ptr)
void operator delete[] (void *ptr, void *vp)
void * operator new (size_t sz)
void * operator new (size_t sz, void *vp)
void * operator new[] (size_t sz)
void * operator new[] (size_t sz, void *vp)
TObject & operator= (const TObject &rhs)
virtual void Paint (Option_t *option="")
virtual void Pop ()
virtual void Print (Option_t *option="") const
virtual Int_t Read (const char *name)
virtual void RecursiveRemove (TObject *obj)
void ResetBit (UInt_t f)
virtual void SaveAs (const char *filename="", Option_t *option="") const
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
void SetBit (UInt_t f)
void SetBit (UInt_t f, Bool_t set)
virtual void SetDrawOption (Option_t *option="")
virtual void SetUniqueID (UInt_t uid)
virtual void Streamer (TBuffer &)
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
virtual void SysError (const char *method, const char *msgfmt,...) const
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
Int_t TestBits (UInt_t f) const
virtual void UseCurrentStyle ()
virtual void Warning (const char *method, const char *msgfmt,...) const
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const

Private Types

typedef std::pair< SysPoint, SysPoint > TimeRange
typedef vector< TimeRange > TimeRangeList
typedef std::pair< SysPoint, IntType > TimeLineEntry
typedef vector< TimeLineEntry > TimeLine
typedef std::pair< SysPoint, size_t > TimeMapEntry
typedef map< SysPoint, size_t > Time2Pos
typedef map< string, TimeLine > Scaler2TimeDist
typedef std::map< uint8_t, TimeLine > ScalerIdx2TimeDist
typedef std::pair< SysPoint, SysPoint > TimeRange
typedef vector< TimeRange > TimeRangeList
typedef std::pair< SysPoint, IntType > TimeLineEntry
typedef vector< TimeLineEntry > TimeLine
typedef std::pair< SysPoint, size_t > TimeMapEntry
typedef map< SysPoint, size_t > Time2Pos
typedef map< string, TimeLine > Scaler2TimeDist
typedef std::map< uint8_t, TimeLine > ScalerIdx2TimeDist

Private Member Functions

void SetCount (const size_t &record_id, TimeLine &row, const IntType &val)
void SetCount (const size_t &record_id, TimeLine &row, const IntType &val)

Static Private Member Functions

static bool IsInRange (const TimeRangeList &rangeList, const SysPoint &time)
static auto GetRanges (const TimeRangeList &rangeList, const SysPoint &timeBegin=SysPoint::min(), const SysPoint &timeEnd=SysPoint::max())
 Returns the [begin,end) iterators for range of time point pairs representing begin and end of a specific time interval overlapping with the given interval.
static IntType GetCntByTime (const TimeLine &row, const SysPoint &time)
static uint64_t GetCntInRange (const TimeLine &row, const SysPoint &timeBegin=SysPoint::min(), const SysPoint &timeEnd=SysPoint::max())
static bool IsInRange (const TimeRangeList &rangeList, const SysPoint &time)
static auto GetRanges (const TimeRangeList &rangeList, const SysPoint &timeBegin=SysPoint::min(), const SysPoint &timeEnd=SysPoint::max())
 Returns the [begin,end) iterators for range of time point pairs representing begin and end of a specific time interval overlapping with the given interval.
static IntType GetCntByTime (const TimeLine &row, const SysPoint &time)
static uint64_t GetCntInRange (const TimeLine &row, const SysPoint &timeBegin=SysPoint::min(), const SysPoint &timeEnd=SysPoint::max())

Private Attributes

const size_t fNRecords
NameChMap fScalerName2index
vector< TimeLine > fMapVector
vector< SysPoint > fTimes
TimeRangeList fSpillRangeVec
TimeRangeList fBusyRangeVec
uint32_t fMissingHits

Additional Inherited Members

Public Types inherited from TObject
enum  EDeprecatedStatusBits
enum  EStatusBits
Static Public Member Functions inherited from TObject
static TClass * Class ()
static const char * Class_Name ()
static constexpr Version_t Class_Version ()
static const char * DeclFileName ()
static Longptr_t GetDtorOnly ()
static Bool_t GetObjectStat ()
static void SetDtorOnly (void *obj)
static void SetObjectStat (Bool_t stat)
Public Attributes inherited from TObject
 kIsOnHeap
 kNotDeleted
 kZombie
 kInconsistent
 kBitMask
 kSingleKey
 kOverwrite
 kWriteDelete
 kObjInCanvas
 kCanDelete
 kMustCleanup
 kIsReferenced
 kHasUUID
 kCannotPick
 kNoContextMenu
 kInvalidObject
Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
void MakeZombie ()
Static Protected Member Functions inherited from TObject
static void SavePrimitiveConstructor (std::ostream &out, TClass *cl, const char *variable_name, const char *constructor_agrs="", Bool_t empty_line=kTRUE)
static void SavePrimitiveDraw (std::ostream &out, const char *variable_name, Option_t *option=nullptr)
static TString SavePrimitiveVector (std::ostream &out, const char *prefix, Int_t len, Double_t *arr, Bool_t empty_line=kFALSE)
Protected Attributes inherited from TObject
 kOnlyPrepStep

Detailed Description

template<typename IntType = uint8_t>
class BmnMSCMatrix< IntType >
Parameters
times_count
scaler_countit is assumed that time points entered by SetTime(...) are chronologically ordered

Definition at line 37 of file BmnMSCMatrix.h.

Member Typedef Documentation

◆ Scaler2TimeDist [1/2]

template<typename IntType = uint8_t>
typedef map<string, TimeLine> BmnMSCMatrix< IntType >::Scaler2TimeDist
private

Definition at line 60 of file BmnMSCMatrix.h.

◆ Scaler2TimeDist [2/2]

template<typename IntType = uint8_t>
typedef map<string, TimeLine> BmnMSCMatrix< IntType >::Scaler2TimeDist
private

Definition at line 60 of file BmnMSCMatrix.h.

◆ ScalerIdx2TimeDist [1/2]

template<typename IntType = uint8_t>
typedef std::map<uint8_t, TimeLine> BmnMSCMatrix< IntType >::ScalerIdx2TimeDist
private

Definition at line 62 of file BmnMSCMatrix.h.

◆ ScalerIdx2TimeDist [2/2]

template<typename IntType = uint8_t>
typedef std::map<uint8_t, TimeLine> BmnMSCMatrix< IntType >::ScalerIdx2TimeDist
private

Definition at line 62 of file BmnMSCMatrix.h.

◆ Time2Pos [1/2]

template<typename IntType = uint8_t>
typedef map<SysPoint, size_t> BmnMSCMatrix< IntType >::Time2Pos
private

Definition at line 59 of file BmnMSCMatrix.h.

◆ Time2Pos [2/2]

template<typename IntType = uint8_t>
typedef map<SysPoint, size_t> BmnMSCMatrix< IntType >::Time2Pos
private

Definition at line 59 of file BmnMSCMatrix.h.

◆ TimeLine [1/2]

template<typename IntType = uint8_t>
typedef vector<TimeLineEntry> BmnMSCMatrix< IntType >::TimeLine
private

Definition at line 43 of file BmnMSCMatrix.h.

◆ TimeLine [2/2]

template<typename IntType = uint8_t>
typedef vector<TimeLineEntry> BmnMSCMatrix< IntType >::TimeLine
private

Definition at line 43 of file BmnMSCMatrix.h.

◆ TimeLineEntry [1/2]

template<typename IntType = uint8_t>
typedef std::pair<SysPoint, IntType> BmnMSCMatrix< IntType >::TimeLineEntry
private

Definition at line 42 of file BmnMSCMatrix.h.

◆ TimeLineEntry [2/2]

template<typename IntType = uint8_t>
typedef std::pair<SysPoint, IntType> BmnMSCMatrix< IntType >::TimeLineEntry
private

Definition at line 42 of file BmnMSCMatrix.h.

◆ TimeMapEntry [1/2]

template<typename IntType = uint8_t>
typedef std::pair<SysPoint, size_t> BmnMSCMatrix< IntType >::TimeMapEntry
private

Definition at line 57 of file BmnMSCMatrix.h.

◆ TimeMapEntry [2/2]

template<typename IntType = uint8_t>
typedef std::pair<SysPoint, size_t> BmnMSCMatrix< IntType >::TimeMapEntry
private

Definition at line 57 of file BmnMSCMatrix.h.

◆ TimeRange [1/2]

template<typename IntType = uint8_t>
typedef std::pair<SysPoint, SysPoint> BmnMSCMatrix< IntType >::TimeRange
private

Definition at line 39 of file BmnMSCMatrix.h.

◆ TimeRange [2/2]

template<typename IntType = uint8_t>
typedef std::pair<SysPoint, SysPoint> BmnMSCMatrix< IntType >::TimeRange
private

Definition at line 39 of file BmnMSCMatrix.h.

◆ TimeRangeList [1/2]

template<typename IntType = uint8_t>
typedef vector<TimeRange> BmnMSCMatrix< IntType >::TimeRangeList
private

Definition at line 40 of file BmnMSCMatrix.h.

◆ TimeRangeList [2/2]

template<typename IntType = uint8_t>
typedef vector<TimeRange> BmnMSCMatrix< IntType >::TimeRangeList
private

Definition at line 40 of file BmnMSCMatrix.h.

Constructor & Destructor Documentation

◆ BmnMSCMatrix() [1/2]

template<typename IntType = uint8_t>
BmnMSCMatrix< IntType >::BmnMSCMatrix ( size_t times_count = 0,
NameChMap scalerName2Index = NameChMap{} )
inline

Definition at line 65 of file BmnMSCMatrix.h.

◆ ~BmnMSCMatrix() [1/2]

template<typename IntType = uint8_t>
virtual BmnMSCMatrix< IntType >::~BmnMSCMatrix ( )
inlinevirtual

Definition at line 246 of file BmnMSCMatrix.h.

◆ BmnMSCMatrix() [2/2]

template<typename IntType = uint8_t>
BmnMSCMatrix< IntType >::BmnMSCMatrix ( size_t times_count = 0,
NameChMap scalerName2Index = NameChMap{} )
inline

Definition at line 65 of file BmnMSCMatrix.h.

◆ ~BmnMSCMatrix() [2/2]

template<typename IntType = uint8_t>
virtual BmnMSCMatrix< IntType >::~BmnMSCMatrix ( )
inlinevirtual

Definition at line 246 of file BmnMSCMatrix.h.

Member Function Documentation

◆ BusyRangeVec() [1/2]

template<typename IntType = uint8_t>
auto & BmnMSCMatrix< IntType >::BusyRangeVec ( )
inline

Definition at line 230 of file BmnMSCMatrix.h.

References fBusyRangeVec.

Referenced by BmnMetadataDecoder::GenerateBusyRanges().

Here is the caller graph for this function:

◆ BusyRangeVec() [2/2]

template<typename IntType = uint8_t>
auto & BmnMSCMatrix< IntType >::BusyRangeVec ( )
inline

Definition at line 230 of file BmnMSCMatrix.h.

References fBusyRangeVec.

◆ GetBusyRanges() [1/2]

template<typename IntType = uint8_t>
auto BmnMSCMatrix< IntType >::GetBusyRanges ( const SysPoint & timeBegin = SysPoint::min(),
const SysPoint & timeEnd = SysPoint::max() )
inline
Parameters
timeBeginstart time point
timeEndend time point
Returns

Definition at line 190 of file BmnMSCMatrix.h.

References fBusyRangeVec, and GetRanges().

Referenced by DrawSpill().

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

◆ GetBusyRanges() [2/2]

template<typename IntType = uint8_t>
auto BmnMSCMatrix< IntType >::GetBusyRanges ( const SysPoint & timeBegin = SysPoint::min(),
const SysPoint & timeEnd = SysPoint::max() )
inline
Parameters
timeBeginstart time point
timeEndend time point
Returns

Definition at line 190 of file BmnMSCMatrix.h.

References fBusyRangeVec, and GetRanges().

Here is the call graph for this function:

◆ GetCntByTime() [1/2]

template<typename IntType = uint8_t>
IntType BmnMSCMatrix< IntType >::GetCntByTime ( const TimeLine & row,
const SysPoint & time )
inlinestaticprivate

Definition at line 288 of file BmnMSCMatrix.h.

References IntType, and BmnFunctionSet::TimePoint2String().

Referenced by GetCount(), GetCount(), and GetCount().

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

◆ GetCntByTime() [2/2]

template<typename IntType = uint8_t>
IntType BmnMSCMatrix< IntType >::GetCntByTime ( const TimeLine & row,
const SysPoint & time )
inlinestaticprivate

Definition at line 288 of file BmnMSCMatrix.h.

References IntType, and BmnFunctionSet::TimePoint2String().

Here is the call graph for this function:

◆ GetCntInRange() [1/4]

template<typename IntType = uint8_t>
uint64_t BmnMSCMatrix< IntType >::GetCntInRange ( const string & scaler_name,
const SysPoint & timeBegin = SysPoint::min(),
const SysPoint & timeEnd = SysPoint::max() )
inline

Definition at line 195 of file BmnMSCMatrix.h.

References GetCntInRange(), and ScalerTimeLine().

Referenced by GetCntInRange(), and BmnMetadataDecoder::ReadSpillStat().

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

◆ GetCntInRange() [2/4]

template<typename IntType = uint8_t>
uint64_t BmnMSCMatrix< IntType >::GetCntInRange ( const string & scaler_name,
const SysPoint & timeBegin = SysPoint::min(),
const SysPoint & timeEnd = SysPoint::max() )
inline

Definition at line 195 of file BmnMSCMatrix.h.

References GetCntInRange(), and ScalerTimeLine().

Here is the call graph for this function:

◆ GetCntInRange() [3/4]

template<typename IntType = uint8_t>
uint64_t BmnMSCMatrix< IntType >::GetCntInRange ( const TimeLine & row,
const SysPoint & timeBegin = SysPoint::min(),
const SysPoint & timeEnd = SysPoint::max() )
inlinestaticprivate

Definition at line 300 of file BmnMSCMatrix.h.

◆ GetCntInRange() [4/4]

template<typename IntType = uint8_t>
uint64_t BmnMSCMatrix< IntType >::GetCntInRange ( const TimeLine & row,
const SysPoint & timeBegin = SysPoint::min(),
const SysPoint & timeEnd = SysPoint::max() )
inlinestaticprivate

Definition at line 300 of file BmnMSCMatrix.h.

◆ GetCount() [1/8]

template<typename IntType = uint8_t>
const IntType BmnMSCMatrix< IntType >::GetCount ( const SysPoint & time,
const string & scaler_name )
inline

Definition at line 105 of file BmnMSCMatrix.h.

References fScalerName2index, GetCount(), and IntType.

Here is the call graph for this function:

◆ GetCount() [2/8]

template<typename IntType = uint8_t>
const IntType BmnMSCMatrix< IntType >::GetCount ( const SysPoint & time,
const string & scaler_name )
inline

Definition at line 105 of file BmnMSCMatrix.h.

References fScalerName2index, GetCount(), and IntType.

Here is the call graph for this function:

◆ GetCount() [3/8]

template<typename IntType = uint8_t>
const IntType BmnMSCMatrix< IntType >::GetCount ( const SysPoint & time,
const uint16_t scaler_id )
inline

Definition at line 113 of file BmnMSCMatrix.h.

References GetCntByTime(), IntType, and ScalerTimeLine().

Here is the call graph for this function:

◆ GetCount() [4/8]

template<typename IntType = uint8_t>
const IntType BmnMSCMatrix< IntType >::GetCount ( const SysPoint & time,
const uint16_t scaler_id )
inline

Definition at line 113 of file BmnMSCMatrix.h.

References GetCntByTime(), IntType, and ScalerTimeLine().

Here is the call graph for this function:

◆ GetCount() [5/8]

template<typename IntType = uint8_t>
const IntType BmnMSCMatrix< IntType >::GetCount ( size_t record_id,
const string & scaler_name )
inline

Definition at line 88 of file BmnMSCMatrix.h.

References fTimes, GetCntByTime(), GetNRecords(), IntType, and ScalerTimeLine().

Referenced by GetCount(), and BmnMetadataDecoder::ProcessSpillTree().

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

◆ GetCount() [6/8]

template<typename IntType = uint8_t>
const IntType BmnMSCMatrix< IntType >::GetCount ( size_t record_id,
const string & scaler_name )
inline

Definition at line 88 of file BmnMSCMatrix.h.

References fTimes, GetCntByTime(), GetNRecords(), IntType, and ScalerTimeLine().

Here is the call graph for this function:

◆ GetCount() [7/8]

template<typename IntType = uint8_t>
const IntType BmnMSCMatrix< IntType >::GetCount ( size_t record_id,
uint16_t scaler_id )
inline

Definition at line 96 of file BmnMSCMatrix.h.

References fTimes, GetCntByTime(), GetNRecords(), IntType, and ScalerTimeLine().

Here is the call graph for this function:

◆ GetCount() [8/8]

template<typename IntType = uint8_t>
const IntType BmnMSCMatrix< IntType >::GetCount ( size_t record_id,
uint16_t scaler_id )
inline

Definition at line 96 of file BmnMSCMatrix.h.

References fTimes, GetCntByTime(), GetNRecords(), IntType, and ScalerTimeLine().

Here is the call graph for this function:

◆ GetIsBusy() [1/2]

template<typename IntType = uint8_t>
bool BmnMSCMatrix< IntType >::GetIsBusy ( const SysPoint & time)
inline

Definition at line 221 of file BmnMSCMatrix.h.

References fBusyRangeVec, and IsInRange().

Referenced by BmnMetadataDecoder::ProcessSpillTree().

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

◆ GetIsBusy() [2/2]

template<typename IntType = uint8_t>
bool BmnMSCMatrix< IntType >::GetIsBusy ( const SysPoint & time)
inline

Definition at line 221 of file BmnMSCMatrix.h.

References fBusyRangeVec, and IsInRange().

Here is the call graph for this function:

◆ GetIsSpill() [1/2]

template<typename IntType = uint8_t>
bool BmnMSCMatrix< IntType >::GetIsSpill ( const SysPoint & time)
inline

Definition at line 214 of file BmnMSCMatrix.h.

References fSpillRangeVec, and IsInRange().

Referenced by BmnMetadataDecoder::ProcessSpillTree().

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

◆ GetIsSpill() [2/2]

template<typename IntType = uint8_t>
bool BmnMSCMatrix< IntType >::GetIsSpill ( const SysPoint & time)
inline

Definition at line 214 of file BmnMSCMatrix.h.

References fSpillRangeVec, and IsInRange().

Here is the call graph for this function:

◆ GetMissingHits() [1/2]

template<typename IntType = uint8_t>
uint32_t BmnMSCMatrix< IntType >::GetMissingHits ( )
inline

Definition at line 241 of file BmnMSCMatrix.h.

References fMissingHits.

◆ GetMissingHits() [2/2]

template<typename IntType = uint8_t>
uint32_t BmnMSCMatrix< IntType >::GetMissingHits ( )
inline

Definition at line 241 of file BmnMSCMatrix.h.

References fMissingHits.

◆ GetNRecords() [1/2]

template<typename IntType = uint8_t>
const size_t BmnMSCMatrix< IntType >::GetNRecords ( )
inline

Definition at line 236 of file BmnMSCMatrix.h.

References fNRecords.

Referenced by BmnMetadataDecoder::GenerateBusyRanges(), GetCount(), and GetCount().

Here is the caller graph for this function:

◆ GetNRecords() [2/2]

template<typename IntType = uint8_t>
const size_t BmnMSCMatrix< IntType >::GetNRecords ( )
inline

Definition at line 236 of file BmnMSCMatrix.h.

References fNRecords.

◆ GetNScalers() [1/2]

template<typename IntType = uint8_t>
const uint16_t BmnMSCMatrix< IntType >::GetNScalers ( )
inline

Definition at line 238 of file BmnMSCMatrix.h.

References fScalerName2index.

◆ GetNScalers() [2/2]

template<typename IntType = uint8_t>
const uint16_t BmnMSCMatrix< IntType >::GetNScalers ( )
inline

Definition at line 238 of file BmnMSCMatrix.h.

References fScalerName2index.

◆ GetRanges() [1/2]

template<typename IntType = uint8_t>
auto BmnMSCMatrix< IntType >::GetRanges ( const TimeRangeList & rangeList,
const SysPoint & timeBegin = SysPoint::min(),
const SysPoint & timeEnd = SysPoint::max() )
inlinestaticprivate
Parameters
rangeListthe vector of time point pairs to work with
timeBeginstart time point
timeEndend time point
Returns

Definition at line 271 of file BmnMSCMatrix.h.

Referenced by GetBusyRanges(), and GetSpillRanges().

Here is the caller graph for this function:

◆ GetRanges() [2/2]

template<typename IntType = uint8_t>
auto BmnMSCMatrix< IntType >::GetRanges ( const TimeRangeList & rangeList,
const SysPoint & timeBegin = SysPoint::min(),
const SysPoint & timeEnd = SysPoint::max() )
inlinestaticprivate
Parameters
rangeListthe vector of time point pairs to work with
timeBeginstart time point
timeEndend time point
Returns

Definition at line 271 of file BmnMSCMatrix.h.

◆ GetRecordIdByTime() [1/2]

template<typename IntType = uint8_t>
size_t BmnMSCMatrix< IntType >::GetRecordIdByTime ( const SysPoint & timePoint)
inline

Definition at line 202 of file BmnMSCMatrix.h.

References fTimes.

◆ GetRecordIdByTime() [2/2]

template<typename IntType = uint8_t>
size_t BmnMSCMatrix< IntType >::GetRecordIdByTime ( const SysPoint & timePoint)
inline

Definition at line 202 of file BmnMSCMatrix.h.

References fTimes.

◆ GetScalerName2indexMap() [1/2]

template<typename IntType = uint8_t>
NameChMap & BmnMSCMatrix< IntType >::GetScalerName2indexMap ( )
inline

Definition at line 146 of file BmnMSCMatrix.h.

References fScalerName2index.

◆ GetScalerName2indexMap() [2/2]

template<typename IntType = uint8_t>
NameChMap & BmnMSCMatrix< IntType >::GetScalerName2indexMap ( )
inline

Definition at line 146 of file BmnMSCMatrix.h.

References fScalerName2index.

◆ GetScalerRange() [1/2]

template<typename IntType = uint8_t>
auto BmnMSCMatrix< IntType >::GetScalerRange ( const string & scaler_name,
const SysPoint & timeBegin = SysPoint::min(),
const SysPoint & timeEnd = SysPoint::max() )
inline

Definition at line 163 of file BmnMSCMatrix.h.

References ScalerTimeLine().

Referenced by DrawSpill().

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

◆ GetScalerRange() [2/2]

template<typename IntType = uint8_t>
auto BmnMSCMatrix< IntType >::GetScalerRange ( const string & scaler_name,
const SysPoint & timeBegin = SysPoint::min(),
const SysPoint & timeEnd = SysPoint::max() )
inline

Definition at line 163 of file BmnMSCMatrix.h.

References ScalerTimeLine().

Here is the call graph for this function:

◆ GetSpillRanges() [1/2]

template<typename IntType = uint8_t>
auto BmnMSCMatrix< IntType >::GetSpillRanges ( const SysPoint & timeBegin = SysPoint::min(),
const SysPoint & timeEnd = SysPoint::max() )
inline
Parameters
timeBeginstart time point
timeEndend time point
Returns

Definition at line 179 of file BmnMSCMatrix.h.

References fSpillRangeVec, and GetRanges().

Here is the call graph for this function:

◆ GetSpillRanges() [2/2]

template<typename IntType = uint8_t>
auto BmnMSCMatrix< IntType >::GetSpillRanges ( const SysPoint & timeBegin = SysPoint::min(),
const SysPoint & timeEnd = SysPoint::max() )
inline
Parameters
timeBeginstart time point
timeEndend time point
Returns

Definition at line 179 of file BmnMSCMatrix.h.

References fSpillRangeVec, and GetRanges().

Here is the call graph for this function:

◆ GetTime() [1/2]

template<typename IntType = uint8_t>
SysPoint & BmnMSCMatrix< IntType >::GetTime ( const size_t & record_id)
inline

Definition at line 134 of file BmnMSCMatrix.h.

References fTimes.

Referenced by BmnMetadataDecoder::GenerateBusyRanges().

Here is the caller graph for this function:

◆ GetTime() [2/2]

template<typename IntType = uint8_t>
SysPoint & BmnMSCMatrix< IntType >::GetTime ( const size_t & record_id)
inline

Definition at line 134 of file BmnMSCMatrix.h.

References fTimes.

◆ GetTS() [1/2]

template<typename IntType = uint8_t>
TTimeStamp BmnMSCMatrix< IntType >::GetTS ( const size_t & record_id)
inline

Definition at line 135 of file BmnMSCMatrix.h.

References fTimes, and BmnFunctionSet::TimePoint2TS().

Here is the call graph for this function:

◆ GetTS() [2/2]

template<typename IntType = uint8_t>
TTimeStamp BmnMSCMatrix< IntType >::GetTS ( const size_t & record_id)
inline

Definition at line 135 of file BmnMSCMatrix.h.

References fTimes, and BmnFunctionSet::TimePoint2TS().

Here is the call graph for this function:

◆ IsInRange() [1/2]

template<typename IntType = uint8_t>
bool BmnMSCMatrix< IntType >::IsInRange ( const TimeRangeList & rangeList,
const SysPoint & time )
inlinestaticprivate

Definition at line 249 of file BmnMSCMatrix.h.

Referenced by GetIsBusy(), and GetIsSpill().

Here is the caller graph for this function:

◆ IsInRange() [2/2]

template<typename IntType = uint8_t>
bool BmnMSCMatrix< IntType >::IsInRange ( const TimeRangeList & rangeList,
const SysPoint & time )
inlinestaticprivate

Definition at line 249 of file BmnMSCMatrix.h.

◆ ScalerTimeLine() [1/4]

template<typename IntType = uint8_t>
TimeLine & BmnMSCMatrix< IntType >::ScalerTimeLine ( const string & scaler_name)
inline

Definition at line 149 of file BmnMSCMatrix.h.

References fScalerName2index, and ScalerTimeLine().

Referenced by GetCntInRange(), GetCount(), GetCount(), GetCount(), GetScalerRange(), ScalerTimeLine(), SetCount(), and SetCount().

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

◆ ScalerTimeLine() [2/4]

template<typename IntType = uint8_t>
TimeLine & BmnMSCMatrix< IntType >::ScalerTimeLine ( const string & scaler_name)
inline

Definition at line 149 of file BmnMSCMatrix.h.

References fScalerName2index, and ScalerTimeLine().

Here is the call graph for this function:

◆ ScalerTimeLine() [3/4]

template<typename IntType = uint8_t>
TimeLine & BmnMSCMatrix< IntType >::ScalerTimeLine ( const uint16_t & scaler_id)
inline

Definition at line 157 of file BmnMSCMatrix.h.

References fMapVector, and fScalerName2index.

◆ ScalerTimeLine() [4/4]

template<typename IntType = uint8_t>
TimeLine & BmnMSCMatrix< IntType >::ScalerTimeLine ( const uint16_t & scaler_id)
inline

Definition at line 157 of file BmnMSCMatrix.h.

References fMapVector, and fScalerName2index.

◆ SetCount() [1/6]

template<typename IntType = uint8_t>
void BmnMSCMatrix< IntType >::SetCount ( const size_t & record_id,
TimeLine & row,
const IntType & val )
inlineprivate

Definition at line 320 of file BmnMSCMatrix.h.

References fTimes, and IntType.

◆ SetCount() [2/6]

template<typename IntType = uint8_t>
void BmnMSCMatrix< IntType >::SetCount ( const size_t & record_id,
TimeLine & row,
const IntType & val )
inlineprivate

Definition at line 320 of file BmnMSCMatrix.h.

References fTimes, and IntType.

◆ SetCount() [3/6]

template<typename IntType = uint8_t>
void BmnMSCMatrix< IntType >::SetCount ( size_t record_id,
const string & scaler_name,
IntType val )
inline

Definition at line 127 of file BmnMSCMatrix.h.

References IntType, ScalerTimeLine(), and SetCount().

Here is the call graph for this function:

◆ SetCount() [4/6]

template<typename IntType = uint8_t>
void BmnMSCMatrix< IntType >::SetCount ( size_t record_id,
const string & scaler_name,
IntType val )
inline

Definition at line 127 of file BmnMSCMatrix.h.

References IntType, ScalerTimeLine(), and SetCount().

Here is the call graph for this function:

◆ SetCount() [5/6]

template<typename IntType = uint8_t>
void BmnMSCMatrix< IntType >::SetCount ( size_t record_id,
uint16_t scaler_id,
IntType val )
inline

Definition at line 119 of file BmnMSCMatrix.h.

References IntType, ScalerTimeLine(), and SetCount().

Referenced by BmnMetadataDecoder::ProcessSpillTree(), SetCount(), and SetCount().

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

◆ SetCount() [6/6]

template<typename IntType = uint8_t>
void BmnMSCMatrix< IntType >::SetCount ( size_t record_id,
uint16_t scaler_id,
IntType val )
inline

Definition at line 119 of file BmnMSCMatrix.h.

References IntType, ScalerTimeLine(), and SetCount().

Here is the call graph for this function:

◆ SetMissingHits() [1/2]

template<typename IntType = uint8_t>
void BmnMSCMatrix< IntType >::SetMissingHits ( uint32_t val)
inline

Definition at line 243 of file BmnMSCMatrix.h.

References fMissingHits.

Referenced by BmnMetadataDecoder::ProcessSpillTree().

Here is the caller graph for this function:

◆ SetMissingHits() [2/2]

template<typename IntType = uint8_t>
void BmnMSCMatrix< IntType >::SetMissingHits ( uint32_t val)
inline

Definition at line 243 of file BmnMSCMatrix.h.

References fMissingHits.

◆ SetTime() [1/2]

template<typename IntType = uint8_t>
void BmnMSCMatrix< IntType >::SetTime ( const size_t & record_id,
const SysPoint & time )
inline

Definition at line 139 of file BmnMSCMatrix.h.

References fTimes.

Referenced by BmnMetadataDecoder::ProcessSpillTree(), and SetTS().

Here is the caller graph for this function:

◆ SetTime() [2/2]

template<typename IntType = uint8_t>
void BmnMSCMatrix< IntType >::SetTime ( const size_t & record_id,
const SysPoint & time )
inline

Definition at line 139 of file BmnMSCMatrix.h.

References fTimes.

◆ SetTS() [1/2]

template<typename IntType = uint8_t>
void BmnMSCMatrix< IntType >::SetTS ( const size_t & record_id,
const TTimeStamp & ts )
inline

Definition at line 144 of file BmnMSCMatrix.h.

References SetTime(), and BmnFunctionSet::TimeStamp2TP().

Here is the call graph for this function:

◆ SetTS() [2/2]

template<typename IntType = uint8_t>
void BmnMSCMatrix< IntType >::SetTS ( const size_t & record_id,
const TTimeStamp & ts )
inline

Definition at line 144 of file BmnMSCMatrix.h.

References SetTime(), and BmnFunctionSet::TimeStamp2TP().

Here is the call graph for this function:

◆ SpillRangeVec() [1/2]

template<typename IntType = uint8_t>
auto & BmnMSCMatrix< IntType >::SpillRangeVec ( )
inline

Definition at line 228 of file BmnMSCMatrix.h.

References fSpillRangeVec.

Referenced by BmnMetadataDecoder::GenerateBusyRanges().

Here is the caller graph for this function:

◆ SpillRangeVec() [2/2]

template<typename IntType = uint8_t>
auto & BmnMSCMatrix< IntType >::SpillRangeVec ( )
inline

Definition at line 228 of file BmnMSCMatrix.h.

References fSpillRangeVec.

Member Data Documentation

◆ fBusyRangeVec

template<typename IntType = uint8_t>
TimeRangeList BmnMSCMatrix< IntType >::fBusyRangeVec
private

Definition at line 342 of file BmnMSCMatrix.h.

Referenced by BusyRangeVec(), GetBusyRanges(), and GetIsBusy().

◆ fMapVector

template<typename IntType = uint8_t>
vector< TimeLine > BmnMSCMatrix< IntType >::fMapVector
private

Definition at line 333 of file BmnMSCMatrix.h.

Referenced by ScalerTimeLine().

◆ fMissingHits

template<typename IntType = uint8_t>
uint32_t BmnMSCMatrix< IntType >::fMissingHits
private

Definition at line 345 of file BmnMSCMatrix.h.

Referenced by GetMissingHits(), and SetMissingHits().

◆ fNRecords

template<typename IntType = uint8_t>
const size_t BmnMSCMatrix< IntType >::fNRecords
private

Definition at line 330 of file BmnMSCMatrix.h.

Referenced by GetNRecords().

◆ fScalerName2index

template<typename IntType = uint8_t>
NameChMap BmnMSCMatrix< IntType >::fScalerName2index
private

◆ fSpillRangeVec

template<typename IntType = uint8_t>
TimeRangeList BmnMSCMatrix< IntType >::fSpillRangeVec
private

Definition at line 341 of file BmnMSCMatrix.h.

Referenced by GetIsSpill(), GetSpillRanges(), and SpillRangeVec().

◆ fTimes

template<typename IntType = uint8_t>
vector< SysPoint > BmnMSCMatrix< IntType >::fTimes
private

Definition at line 339 of file BmnMSCMatrix.h.

Referenced by GetCount(), GetCount(), GetRecordIdByTime(), GetTime(), GetTS(), SetCount(), and SetTime().


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