The Gaudi Framework  v38r0 (2143aa4c)
MonitoringHub.h File Reference
#include "GaudiKernel/detected.h"
#include <deque>
#include <functional>
#include <nlohmann/json.hpp>
#include <string>
#include <typeindex>
#include <typeinfo>
Include dependency graph for MonitoringHub.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Gaudi::Monitoring::ClashingEntityName
 
struct  Gaudi::Monitoring::Hub
 Central entity in a Gaudi application that manages monitoring objects (i.e. More...
 
class  Gaudi::Monitoring::Hub::Entity
 Wrapper class for arbitrary monitoring objects. More...
 
struct  Gaudi::Monitoring::Hub::Sink
 Interface reporting services must implement. More...
 

Namespaces

 Gaudi
 Header file for std:chrono::duration-based Counters.
 
 Gaudi::Monitoring
 
 Gaudi::Monitoring::details
 

Typedefs

template<typename T >
using Gaudi::Monitoring::details::has_merge_and_reset_ = decltype(std::declval< T >().mergeAndReset(std::declval< T && >()))
 
template<typename T >
using Gaudi::Monitoring::details::has_merge_from_json_ = decltype(std::declval< T >().mergeAndReset(nlohmann::json{}))
 
template<typename T >
using Gaudi::Monitoring::details::has_from_json_ = decltype(T::fromJSON(nlohmann::json{}))
 
using Gaudi::Monitoring::details::MergeAndReset_t = void(*)(void *, void *)
 
using Gaudi::Monitoring::details::MergeAndResetFromJSON_t = void(*)(void *, const nlohmann::json &)
 

Functions

template<typename T >
MergeAndReset_t Gaudi::Monitoring::details::makeMergeAndResetFor ()
 
template<typename T >
MergeAndResetFromJSON_t Gaudi::Monitoring::details::makeMergeAndResetFromJSONFor ()
 
template<typename T >
void Gaudi::Monitoring::reset (T &)
 default (empty) implementation of reset method for types stored into an entity More...
 
template<typename T >
void Gaudi::Monitoring::mergeAndReset (T &, T &)
 default (empty) implementation of mergeAndReset method for types stored into an entity More...
 

Variables

template<typename T >
constexpr bool Gaudi::Monitoring::details::has_merge_and_reset_v = Gaudi::cpp17::is_detected_v<has_merge_and_reset_, T>
 
template<typename T >
constexpr bool Gaudi::Monitoring::details::has_merge_from_json_v = Gaudi::cpp17::is_detected_v<has_merge_from_json_, T>
 
template<typename T >
constexpr bool Gaudi::Monitoring::details::has_from_json_v = Gaudi::cpp17::is_detected_v<has_from_json_, T>