7 #define TRACE_NAME "TestMetric"
10 #include "artdaq-utilities/Plugins/MetricMacros.hh"
12 #include "fhiclcpp/ParameterSet.h"
14 #include <sys/types.h>
31 explicit TestMetricImpl(fhicl::ParameterSet
const& config, std::string
const& app_name)
49 std::string
getLibName()
const override {
return "test"; }
57 void sendMetric_(
const std::string& name,
const std::string& value,
const std::string& unit)
override
62 TLOG(TLVL_TRACE) <<
"TestMetric: Adding MetricPoint name=" << name <<
", value=" << value <<
", unit=" << unit;
74 void sendMetric_(
const std::string& name,
const int& value,
const std::string& unit)
override
85 void sendMetric_(
const std::string& name,
const double& value,
const std::string& unit)
override
96 void sendMetric_(
const std::string& name,
const float& value,
const std::string& unit)
override
107 void sendMetric_(
const std::string& name,
const unsigned long int& value,
const std::string& unit)
override
TestMetricImpl(fhicl::ParameterSet const &config, std::string const &app_name)
TestMetric Constructor.
void startMetrics_() override
Perform startup actions.
void sendMetric_(const std::string &name, const double &value, const std::string &unit) override
Write metric data to memory.
The MetricPlugin class defines the interface that MetricManager uses to send metric data to the vario...
void startMetrics()
Perform startup actions. Simply calls the virtual startMetrics_ function.
virtual ~TestMetricImpl()
TestMetricImpl Destructor. Calls stopMetrics.
static void LockReceivedMetricMutex()
Lock the ReceivedMetricMutex
static std::list< MetricPoint > received_metrics
List of received metric data.
std::string getLibName() const override
Get the library name for the Test metric.
void stopMetrics()
Perform shutdown actions. Zeroes out all accumulators, and sends zeros for each metric. Calls stopMetrics_() for any plugin-defined shutdown actions.
TestMetric writes metric data to a statically-allocated memory block.
void sendMetric_(const std::string &name, const unsigned long int &value, const std::string &unit) override
Write metric data to memory.
void sendMetric_(const std::string &name, const int &value, const std::string &unit) override
Write metric data to memory.
static void UnlockReceivedMetricMutex()
Unlock the ReceivedMetricMutex
void sendMetric_(const std::string &name, const std::string &value, const std::string &unit) override
Write metric data to memory.
void stopMetrics_() override
Perform shutdown actions.
void sendMetric_(const std::string &name, const float &value, const std::string &unit) override
Write metric data to memory.
bool inhibit_
Flag to indicate that the MetricPlugin is being stopped, and any metric back-ends which do not have a...
Describes a single metric point