Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Experimental::Detail::RNTupleMetrics Class Reference

A collection of Counter objects with a name, a unit, and a description.

The class owns the counters; on registration of a new

Definition at line 285 of file RNTupleMetrics.hxx.

Public Member Functions

 RNTupleMetrics (const RNTupleMetrics &other)=delete
 
 RNTupleMetrics (const std::string &name)
 
 RNTupleMetrics (RNTupleMetrics &&other)=default
 
 ~RNTupleMetrics ()=default
 
void Enable ()
 
const RNTuplePerfCounterGetCounter (std::string_view name) const
 Searches this object and all the observed sub metrics. Returns nullptr if name is not found.
 
bool IsEnabled () const
 
template<typename CounterPtrT , class... Args>
CounterPtrT MakeCounter (const std::string &name, Args &&... args)
 
void ObserveMetrics (RNTupleMetrics &observee)
 
RNTupleMetricsoperator= (const RNTupleMetrics &other)=delete
 
RNTupleMetricsoperator= (RNTupleMetrics &&other)=default
 
void Print (std::ostream &output, const std::string &prefix="") const
 

Private Member Functions

bool Contains (const std::string &name) const
 

Private Attributes

std::vector< std::unique_ptr< RNTuplePerfCounter > > fCounters
 
bool fIsEnabled = false
 
std::string fName
 
std::vector< RNTupleMetrics * > fObservedMetrics
 

Static Private Attributes

static constexpr char kNamespaceSeperator = '.'
 Symbol to split metrics name from counter / sub metrics name.
 

#include <ROOT/RNTupleMetrics.hxx>

Constructor & Destructor Documentation

◆ RNTupleMetrics() [1/3]

ROOT::Experimental::Detail::RNTupleMetrics::RNTupleMetrics ( const std::string &  name)
inlineexplicit

Definition at line 298 of file RNTupleMetrics.hxx.

◆ RNTupleMetrics() [2/3]

ROOT::Experimental::Detail::RNTupleMetrics::RNTupleMetrics ( const RNTupleMetrics other)
delete

◆ RNTupleMetrics() [3/3]

ROOT::Experimental::Detail::RNTupleMetrics::RNTupleMetrics ( RNTupleMetrics &&  other)
default

◆ ~RNTupleMetrics()

ROOT::Experimental::Detail::RNTupleMetrics::~RNTupleMetrics ( )
default

Member Function Documentation

◆ Contains()

bool ROOT::Experimental::Detail::RNTupleMetrics::Contains ( const std::string &  name) const
private

Definition at line 31 of file RNTupleMetrics.cxx.

◆ Enable()

void ROOT::Experimental::Detail::RNTupleMetrics::Enable ( )

Definition at line 77 of file RNTupleMetrics.cxx.

◆ GetCounter()

const ROOT::Experimental::Detail::RNTuplePerfCounter * ROOT::Experimental::Detail::RNTupleMetrics::GetCounter ( std::string_view  name) const

Searches this object and all the observed sub metrics. Returns nullptr if name is not found.

Definition at line 41 of file RNTupleMetrics.cxx.

◆ IsEnabled()

bool ROOT::Experimental::Detail::RNTupleMetrics::IsEnabled ( ) const
inline

Definition at line 323 of file RNTupleMetrics.hxx.

◆ MakeCounter()

template<typename CounterPtrT , class... Args>
CounterPtrT ROOT::Experimental::Detail::RNTupleMetrics::MakeCounter ( const std::string &  name,
Args &&...  args 
)
inline

Definition at line 307 of file RNTupleMetrics.hxx.

◆ ObserveMetrics()

void ROOT::Experimental::Detail::RNTupleMetrics::ObserveMetrics ( RNTupleMetrics observee)

Definition at line 86 of file RNTupleMetrics.cxx.

◆ operator=() [1/2]

RNTupleMetrics & ROOT::Experimental::Detail::RNTupleMetrics::operator= ( const RNTupleMetrics other)
delete

◆ operator=() [2/2]

RNTupleMetrics & ROOT::Experimental::Detail::RNTupleMetrics::operator= ( RNTupleMetrics &&  other)
default

◆ Print()

void ROOT::Experimental::Detail::RNTupleMetrics::Print ( std::ostream &  output,
const std::string &  prefix = "" 
) const

Definition at line 62 of file RNTupleMetrics.cxx.

Member Data Documentation

◆ fCounters

std::vector<std::unique_ptr<RNTuplePerfCounter> > ROOT::Experimental::Detail::RNTupleMetrics::fCounters
private

Definition at line 290 of file RNTupleMetrics.hxx.

◆ fIsEnabled

bool ROOT::Experimental::Detail::RNTupleMetrics::fIsEnabled = false
private

Definition at line 293 of file RNTupleMetrics.hxx.

◆ fName

std::string ROOT::Experimental::Detail::RNTupleMetrics::fName
private

Definition at line 292 of file RNTupleMetrics.hxx.

◆ fObservedMetrics

std::vector<RNTupleMetrics *> ROOT::Experimental::Detail::RNTupleMetrics::fObservedMetrics
private

Definition at line 291 of file RNTupleMetrics.hxx.

◆ kNamespaceSeperator

constexpr char ROOT::Experimental::Detail::RNTupleMetrics::kNamespaceSeperator = '.'
staticconstexprprivate

Symbol to split metrics name from counter / sub metrics name.

Definition at line 288 of file RNTupleMetrics.hxx.

Libraries for ROOT::Experimental::Detail::RNTupleMetrics:

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