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 RNTuplePerfCounter * | GetCounter (std::string_view name) const |
Searches this object and all the observed sub metrics. | |
const RNTuplePerfCounter * | GetLocalCounter (std::string_view name) const |
Searches counters registered in this object only. 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) |
RNTupleMetrics & | operator= (const RNTupleMetrics &other)=delete |
RNTupleMetrics & | operator= (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>
|
inlineexplicit |
Definition at line 298 of file RNTupleMetrics.hxx.
|
delete |
|
default |
|
default |
|
private |
Definition at line 31 of file RNTupleMetrics.cxx.
void ROOT::Experimental::Detail::RNTupleMetrics::Enable | ( | ) |
Definition at line 81 of file RNTupleMetrics.cxx.
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.
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.
|
inline |
Definition at line 326 of file RNTupleMetrics.hxx.
|
inline |
Definition at line 307 of file RNTupleMetrics.hxx.
void ROOT::Experimental::Detail::RNTupleMetrics::ObserveMetrics | ( | RNTupleMetrics & | observee | ) |
Definition at line 90 of file RNTupleMetrics.cxx.
|
delete |
|
default |
void ROOT::Experimental::Detail::RNTupleMetrics::Print | ( | std::ostream & | output, |
const std::string & | prefix = "" |
||
) | const |
Definition at line 66 of file RNTupleMetrics.cxx.
|
private |
Definition at line 290 of file RNTupleMetrics.hxx.
|
private |
Definition at line 293 of file RNTupleMetrics.hxx.
|
private |
Definition at line 292 of file RNTupleMetrics.hxx.
|
private |
Definition at line 291 of file RNTupleMetrics.hxx.
|
staticconstexprprivate |
Symbol to split metrics name from counter / sub metrics name.
Definition at line 288 of file RNTupleMetrics.hxx.