ATLAS Offline Software
|
Generic monitoring tool for athena components. More...
Namespaces | |
detail | |
Classes | |
class | CumulativeHistogramFiller1D |
Filler for 1D histograms filled in cummulative mode. More... | |
class | Group |
Group of local monitoring quantities and retain correlation when filling histograms More... | |
struct | HistogramDef |
the internal class used to keep parsed Filler properties More... | |
struct | HistogramException |
Represents error occurred during accessing histograms objects. More... | |
class | HistogramFactory |
Bridge between ROOT framework and monitoring code. More... | |
class | HistogramFiller |
Base class for all histogram fillers. More... | |
class | HistogramFiller1D |
Filler for plain 1D histograms. More... | |
class | HistogramFiller2DGeneric |
Generic filler for 2D histogram. More... | |
class | HistogramFiller2DProfile |
Filler for profile 2D histogram. More... | |
class | HistogramFillerEfficiency |
Filler for TEfficiency graphs. More... | |
class | HistogramFillerFactory |
Factory of the histogram fillers. More... | |
class | HistogramFillerRebinableAxis |
Mixin class for rebinning of histogram axis. More... | |
class | HistogramFillerTree |
Filler for TTrees. More... | |
class | IHistogramProvider |
Interface of the source of ROOT objects for HistogramFillers. More... | |
class | IMonitoredVariable |
class | LiveHistogramProvider |
Provides latest-N-lumiblock histograms to be filled. More... | |
class | LumiblockHistogramProvider |
Implementation of IHistogramProvider for lumi block based histograms. More... | |
class | ObjectsCollection |
Monitoring of object collections (internal) More... | |
class | ObjectsRefCollection |
Monitoring of object collection references (internal) More... | |
class | OfflineHistogramProvider |
Implementation of IHistogramProvider for offline histograms. More... | |
class | Scalar |
Declare a monitored scalar variable. More... | |
class | ScopedTimer |
Helper class to create a scoped timer. More... | |
class | StaticHistogramProvider |
Default implementation of IHistogramProvider interface. More... | |
class | Timer |
A monitored timer. More... | |
class | ValuesCollection |
Internal class not to be used by end user. More... | |
class | ValuesRefCollection |
Internal class not to be used by end user. More... | |
class | VecHistogramFiller1D |
Enumerations | |
enum | Axis { X = 0, Y, Z } |
Helper type for histogram axis selection. More... | |
Functions | |
template<class T > | |
ValuesCollection< T > | Collection (std::string name, const T &collection) |
Declare a monitored (double-convertible) collection. More... | |
template<class T > | |
ValuesCollection< T > | Collection (std::string name, T const &&collection)=delete |
template<class T > | |
ValuesRefCollection< T > | Collection (std::string name, const std::reference_wrapper< T > &collection) |
Declare a monitored (double-convertible) collection reference. More... | |
template<class T > | |
ValuesRefCollection< T > | Collection (std::string name, const std::reference_wrapper< T > &&collection)=delete |
template<class T > | |
ObjectsCollection< T, double > | Collection (std::string name, const T &collection, std::function< double(const typename ObjectsCollection< T, double >::const_value_type &)> accessor) |
Declare a monitored collection of objects via accessor function. More... | |
template<class T > | |
ObjectsCollection< T, double > | Collection (std::string name, const T &&collection, std::function< double(const typename ObjectsCollection< T, double >::const_value_type &)> accessor)=delete |
template<class T > | |
ObjectsCollection< T, std::string > | Collection (std::string name, const T &collection, std::function< std::string(const typename ObjectsCollection< T, std::string >::const_value_type &)> accessor) |
template<class T > | |
ObjectsCollection< T, std::string > | Collection (std::string name, const T &&collection, std::function< std::string(const typename ObjectsCollection< T, std::string >::const_value_type &)> accessor)=delete |
template<class T > | |
ObjectsRefCollection< T, double > | Collection (std::string name, const std::reference_wrapper< T > &collection, std::function< double(const typename ObjectsRefCollection< T, double >::const_value_type &)> accessor) |
Declare a monitored reference to a collection of objects via accessor function. More... | |
template<class T > | |
ObjectsRefCollection< T, double > | Collection (std::string name, const std::reference_wrapper< T > &&collection, std::function< double(const typename ObjectsRefCollection< T, double >::const_value_type &)> accessor)=delete |
template<class T > | |
ObjectsRefCollection< T, std::string > | Collection (std::string name, const std::reference_wrapper< T > &collection, std::function< std::string(const typename ObjectsRefCollection< T, std::string >::const_value_type &)> accessor) |
template<class T > | |
ObjectsRefCollection< T, std::string > | Collection (std::string name, const std::reference_wrapper< T > &&collection, std::function< std::string(const typename ObjectsRefCollection< T, std::string >::const_value_type &)> accessor)=delete |
template<typename... T> | |
void | fill (const ToolHandle< GenericMonitoringTool > &tool, T &&... variables) |
template<typename V , typename std::enable_if_t< std::is_integral_v< V >> * = nullptr> | |
std::vector< V > | buildToolMap (ToolHandleArray< GenericMonitoringTool > tools, const std::string &baseName, int nHist) |
Builds an array of indices (base case) More... | |
template<typename V , typename std::enable_if_t<!std::is_integral_v< V >> * = nullptr, typename... T> | |
std::vector< V > | buildToolMap (ToolHandleArray< GenericMonitoringTool > tools, const std::string &baseName, int nHist, T... dimensions) |
Builds an N-dimensional array of indices (recursive) More... | |
template<typename V , typename std::enable_if_t< std::is_integral_v< V >> * = nullptr> | |
std::map< std::string, int > | buildToolMap (ToolHandleArray< GenericMonitoringTool > tools, const std::string &baseName, const std::vector< std::string > &labels) |
Builds a map of indices (base case) More... | |
template<typename V , typename std::enable_if_t<!std::is_integral_v< V >> * = nullptr, typename... T> | |
std::map< std::string, V > | buildToolMap (ToolHandleArray< GenericMonitoringTool > tools, const std::string &baseName, const std::vector< std::string > &labels, T... dimensions) |
Builds an N-dimensional map of indices (recursive) More... | |
void | checkNamingConvention (std::string_view name) |
std::ostream & | operator<< (std::ostream &os, const std::reference_wrapper< Monitored::IMonitoredVariable > &rmv) |
template<typename T > | |
void | scalarFillerFunc (TBranch *branch, const IMonitoredVariable &var) |
template<> | |
void | scalarFillerFunc< std::string > (TBranch *branch, const IMonitoredVariable &var) |
template<typename T > | |
void | vectorFillerFunc (TBranch *branch, const IMonitoredVariable &var) |
template<> | |
void | vectorFillerFunc< std::string > (TBranch *branch, const IMonitoredVariable &var) |
Generic monitoring tool for athena components.
The tool can be used standalone or attached to an algorithm, tool or service. The variables to be monitored need to be exposed via the Monitored framework. The histograms to be created are configured via the Histograms
list property and the format is defined via Monitored::HistogramDef.
Configuration from python should be done using GenericMonitoringTool.defineHistogram. For the list of supported histogram types see Monitored::HistogramFillerFactory.
Namespace for the athenaMT monitoring infrastructure
typedef HistogramFiller2DGeneric<TH2> Monitored::HistogramFiller2D |
Definition at line 80 of file HistogramFiller2D.h.
typedef HistogramFillerRebinableAxis<HistogramFiller2DProfile, Axis::X> Monitored::HistogramFiller2DProfileRebinable |
TProfile2D filler with rebinable x-axis.
Definition at line 58 of file HistogramFiller2DProfile.h.
typedef HistogramFiller2DGeneric<TProfile> Monitored::HistogramFillerProfile |
TProfile filler.
Definition at line 17 of file HistogramFillerProfile.h.
typedef HistogramFillerRebinableAxis<HistogramFillerProfile, Axis::X> Monitored::HistogramFillerProfileRebinable |
TProfile filler with rebinable x-axis.
Definition at line 19 of file HistogramFillerProfile.h.
typedef HistogramFillerRebinableAxis<HistogramFiller1D, Axis::X> Monitored::HistogramFillerRebinable1D |
Rebinable 1D histogram.
Definition at line 72 of file HistogramFillerRebinable.h.
typedef HistogramFillerRebinableAxis<HistogramFillerRebinable2DX, Axis::Y> Monitored::HistogramFillerRebinable2D |
Rebinable 2D histogram (both axes)
Definition at line 78 of file HistogramFillerRebinable.h.
typedef HistogramFillerRebinableAxis<HistogramFiller2D, Axis::X> Monitored::HistogramFillerRebinable2DX |
Rebinable 2D histogram (x-axis only)
Definition at line 74 of file HistogramFillerRebinable.h.
typedef HistogramFillerRebinableAxis<HistogramFiller2D, Axis::Y> Monitored::HistogramFillerRebinable2DY |
Rebinable 2D histogram (y-axis only)
Definition at line 76 of file HistogramFillerRebinable.h.
enum Monitored::Axis |
Helper type for histogram axis selection.
Enumerator | |
---|---|
X | |
Y | |
Z |
Definition at line 24 of file HistogramFillerUtils.h.
std::map<std::string,int> Monitored::buildToolMap | ( | ToolHandleArray< GenericMonitoringTool > | tools, |
const std::string & | baseName, | ||
const std::vector< std::string > & | labels | ||
) |
Builds a map of indices (base case)
Definition at line 164 of file MonitoredGroup.h.
std::map<std::string,V> Monitored::buildToolMap | ( | ToolHandleArray< GenericMonitoringTool > | tools, |
const std::string & | baseName, | ||
const std::vector< std::string > & | labels, | ||
T... | dimensions | ||
) |
Builds an N-dimensional map of indices (recursive)
Definition at line 175 of file MonitoredGroup.h.
std::vector<V> Monitored::buildToolMap | ( | ToolHandleArray< GenericMonitoringTool > | tools, |
const std::string & | baseName, | ||
int | nHist | ||
) |
std::vector<V> Monitored::buildToolMap | ( | ToolHandleArray< GenericMonitoringTool > | tools, |
const std::string & | baseName, | ||
int | nHist, | ||
T... | dimensions | ||
) |
Builds an N-dimensional array of indices (recursive)
Definition at line 153 of file MonitoredGroup.h.
void Monitored::checkNamingConvention | ( | std::string_view | name | ) |
|
delete |
|
delete |
|
delete |
ValuesRefCollection<T> Monitored::Collection | ( | std::string | name, |
const std::reference_wrapper< T > & | collection | ||
) |
Declare a monitored (double-convertible) collection reference.
T | Type of collection |
name | Name of monitored quantity |
collection | std::reference_wrapper to collection to be monitored (e.g. STL container or array) |
Various types of collections can be monitored. STL containers:
or more generally, any iterable container:
Definition at line 61 of file MonitoredCollection.h.
ObjectsRefCollection<T, double> Monitored::Collection | ( | std::string | name, |
const std::reference_wrapper< T > & | collection, | ||
std::function< double(const typename ObjectsRefCollection< T, double >::const_value_type &)> | accessor | ||
) |
Declare a monitored reference to a collection of objects via accessor function.
T | Type of collection |
name | Name of monitored quantity |
collection | std::reference_wrapper to collection to be monitored (e.g. STL container or array) |
accessor | Function taking an element and returning a double |
Collection of objects can be monitored provided via an accessor function:
A collection of strings can be used to fill labelled histograms:
Use of accessor functions work the same way as for Monitored::Scalar:
Definition at line 137 of file MonitoredCollection.h.
ObjectsRefCollection<T, std::string> Monitored::Collection | ( | std::string | name, |
const std::reference_wrapper< T > & | collection, | ||
std::function< std::string(const typename ObjectsRefCollection< T, std::string >::const_value_type &)> | accessor | ||
) |
Definition at line 149 of file MonitoredCollection.h.
|
delete |
|
delete |
ValuesCollection<T> Monitored::Collection | ( | std::string | name, |
const T & | collection | ||
) |
Declare a monitored (double-convertible) collection.
T | Type of collection |
name | Name of monitored quantity |
collection | Collection to be monitored (e.g. STL container or array) |
Various types of collections can be monitored. STL containers:
or more generally, any iterable container:
Definition at line 38 of file MonitoredCollection.h.
ObjectsCollection<T, double> Monitored::Collection | ( | std::string | name, |
const T & | collection, | ||
std::function< double(const typename ObjectsCollection< T, double >::const_value_type &)> | accessor | ||
) |
Declare a monitored collection of objects via accessor function.
T | Type of collection |
name | Name of monitored quantity |
collection | Collection to be monitored (e.g. STL container or array) |
accessor | Function taking an element and returning a double |
Collection of objects can be monitored provided via an accessor function:
A collection of strings can be used to fill labelled histograms:
Use of accessor functions work the same way as for Monitored::Scalar:
Definition at line 91 of file MonitoredCollection.h.
ObjectsCollection<T, std::string> Monitored::Collection | ( | std::string | name, |
const T & | collection, | ||
std::function< std::string(const typename ObjectsCollection< T, std::string >::const_value_type &)> | accessor | ||
) |
Definition at line 104 of file MonitoredCollection.h.
|
delete |
void Monitored::fill | ( | const ToolHandle< GenericMonitoringTool > & | tool, |
T &&... | variables | ||
) |
Definition at line 122 of file MonitoredGroup.h.
std::ostream& Monitored::operator<< | ( | std::ostream & | os, |
const std::reference_wrapper< Monitored::IMonitoredVariable > & | rmv | ||
) |
Definition at line 122 of file GenericMonitoringTool.cxx.
void Monitored::scalarFillerFunc | ( | TBranch * | branch, |
const IMonitoredVariable & | var | ||
) |
Definition at line 161 of file HistogramFillerTree.h.
void Monitored::scalarFillerFunc< std::string > | ( | TBranch * | branch, |
const IMonitoredVariable & | var | ||
) |
Definition at line 176 of file HistogramFillerTree.h.
void Monitored::vectorFillerFunc | ( | TBranch * | branch, |
const IMonitoredVariable & | var | ||
) |
Definition at line 190 of file HistogramFillerTree.h.
void Monitored::vectorFillerFunc< std::string > | ( | TBranch * | branch, |
const IMonitoredVariable & | var | ||
) |
Definition at line 203 of file HistogramFillerTree.h.