 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef AthenaMonitoringKernel_MonitoredScalar_h
6 #define AthenaMonitoringKernel_MonitoredScalar_h
65 Scalar(std::string
name,
const T& defaultValue, std::function<
double(
const T&)> valueTransform) :
98 operator const T&()
const {
return m_value; }
110 virtual double get(
size_t)
const override {
111 if constexpr (std::is_convertible_v<double, T>) {
119 if constexpr (std::is_constructible_v<std::string, T>) {
129 virtual size_t size()
const override {
Scalar(Scalar &&)=default
virtual size_t size() const override
gives size of vector representation
std::function< double(const T &)> m_valueTransform
virtual bool hasStringRepresentation() const override
indcates that the stored content can be converted to strings
friend std::string operator+(const std::string &lhs, const Scalar &rhs)
virtual std::string getString(size_t) const override
Scalar(std::string name, const T &defaultValue, std::function< double(const T &)> valueTransform)
Scalar with default value and optional transformation applied before filling.
Scalar & operator=(Scalar const &)=delete
IMonitoredVariable(std::string name)
virtual double get(size_t) const override
Scalar(std::string name, std::function< T()> generator)
Scalar with generator function to retrieve the value.
friend std::string operator+(const Scalar &lhs, const std::string &rhs)
Generic monitoring tool for athena components.
Scalar(Scalar const &)=delete
std::function< T()> m_valueGenerator
generator
Configure Herwig7 These are the commands corresponding to what would go into the regular Herwig infil...
const std::string & name() const
Declare a monitored scalar variable.
Scalar(std::string name, const T &defaultValue={})
Scalar with optional default value.