Logo ROOT  
Reference Guide
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. More...
const RNTuplePerfCounterGetLocalCounter (std::string_view name) const
 Searches counters registered in this object only. Returns nullptr if name is not found. More...
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. More...

#include <ROOT/RNTupleMetrics.hxx>

Constructor & Destructor Documentation

◆ RNTupleMetrics() [1/3]

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

Definition at line 298 of file RNTupleMetrics.hxx.

◆ RNTupleMetrics() [2/3]

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

◆ RNTupleMetrics() [3/3]

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

◆ ~RNTupleMetrics()

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

Member Function Documentation

◆ Contains()

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

Definition at line 31 of file RNTupleMetrics.cxx.

◆ Enable()

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

Definition at line 81 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.

name must start with the prefix used by this RNTupleMetrics instance. Returns nullptr if name is not found.

Definition at line 47 of file RNTupleMetrics.cxx.

◆ GetLocalCounter()

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

Searches counters registered in this object only. Returns nullptr if name is not found.

Definition at line 37 of file RNTupleMetrics.cxx.

◆ IsEnabled()

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

Definition at line 326 of file RNTupleMetrics.hxx.

◆ MakeCounter()

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

Definition at line 307 of file RNTupleMetrics.hxx.

◆ ObserveMetrics()

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

Definition at line 90 of file RNTupleMetrics.cxx.

◆ operator=() [1/2]

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

◆ operator=() [2/2]

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

◆ Print()

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

Definition at line 66 of file RNTupleMetrics.cxx.

Member Data Documentation

◆ fCounters

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

Definition at line 290 of file RNTupleMetrics.hxx.

◆ fIsEnabled

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

Definition at line 293 of file RNTupleMetrics.hxx.

◆ fName

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

Definition at line 292 of file RNTupleMetrics.hxx.

◆ fObservedMetrics

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

Definition at line 291 of file RNTupleMetrics.hxx.

◆ kNamespaceSeperator

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

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

Definition at line 288 of file RNTupleMetrics.hxx.

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