An instance of the MetricPlugin class that sends metric data using the Channel Access protocol from EPICS. More...
Public Member Functions | |
EpicsMetric (fhicl::ParameterSet pset) | |
Construct an instance of the EpicsMetric plugin. | |
std::string | getLibName () const override |
Gets the unique library name of this plugin. | |
void | stopMetrics_ () override |
Clears the registered ChannelAccess channels. | |
void | startMetrics_ () override |
No initialization is needed to start sending metrics. | |
void | sendMetric_ (const std::string &name, const std::string &value, const std::string &unit) override |
Send a string metric data point to ChannelAccess. | |
void | sendMetric_ (const std::string &name, const int &value, const std::string &unit) override |
Send an integer metric data point to ChannelAccess. | |
void | sendMetric_ (const std::string &name, const double &value, const std::string &unit) override |
Send a double metric data point to ChannelAccess. | |
void | sendMetric_ (const std::string &name, const float &value, const std::string &unit) override |
Send a float metric data point to ChannelAccess. | |
void | sendMetric_ (const std::string &name, const unsigned long int &value, const std::string &unit) override |
Send an unsigned integer metric data point to ChannelAccess. |
An instance of the MetricPlugin class that sends metric data using the Channel Access protocol from EPICS.
Definition at line 24 of file epics_metric.cc.
artdaq::EpicsMetric::EpicsMetric | ( | fhicl::ParameterSet | pset | ) | [inline, explicit] |
Construct an instance of the EpicsMetric plugin.
pset | Parameter set to configure with. MetricPlugin parameters plus "channel_name_prefix", default "artdaq". |
Definition at line 55 of file epics_metric.cc.
std::string artdaq::EpicsMetric::getLibName | ( | ) | const [inline, override] |
Gets the unique library name of this plugin.
Definition at line 69 of file epics_metric.cc.
void artdaq::EpicsMetric::sendMetric_ | ( | const std::string & | name, | |
const unsigned long int & | value, | |||
const std::string & | unit | |||
) | [inline, override] |
Send an unsigned integer metric data point to ChannelAccess.
name | Name of the metric | |
value | Value of the metric. Will be truncated t fit in the size of a dbr_ulong_t, a 32-bit unsigned integer. | |
unit | Units used |
Send a string metric data point to ChannelAccess. The name will be channel_name_prefix:name. If the named channel is not yet open, it will be opened. If the channel is not registered with an IOC, then the metric data will not be sent and a warning message will be printed the first time.
Definition at line 203 of file epics_metric.cc.
void artdaq::EpicsMetric::sendMetric_ | ( | const std::string & | name, | |
const float & | value, | |||
const std::string & | unit | |||
) | [inline, override] |
Send a float metric data point to ChannelAccess.
name | Name of the metric | |
value | Value of the metric | |
unit | Units used |
Send a string metric data point to ChannelAccess. The name will be channel_name_prefix:name. If the named channel is not yet open, it will be opened. If the channel is not registered with an IOC, then the metric data will not be sent and a warning message will be printed the first time.
Definition at line 176 of file epics_metric.cc.
void artdaq::EpicsMetric::sendMetric_ | ( | const std::string & | name, | |
const double & | value, | |||
const std::string & | unit | |||
) | [inline, override] |
Send a double metric data point to ChannelAccess.
name | Name of the metric | |
value | Value of the metric | |
unit | Units used |
Send a string metric data point to ChannelAccess. The name will be channel_name_prefix:name. If the named channel is not yet open, it will be opened. If the channel is not registered with an IOC, then the metric data will not be sent and a warning message will be printed the first time.
Definition at line 149 of file epics_metric.cc.
void artdaq::EpicsMetric::sendMetric_ | ( | const std::string & | name, | |
const int & | value, | |||
const std::string & | unit | |||
) | [inline, override] |
Send an integer metric data point to ChannelAccess.
name | Name of the metric | |
value | Value of the metric | |
unit | Units used |
Send a string metric data point to ChannelAccess. The name will be channel_name_prefix:name. If the named channel is not yet open, it will be opened. If the channel is not registered with an IOC, then the metric data will not be sent and a warning message will be printed the first time.
Definition at line 122 of file epics_metric.cc.
void artdaq::EpicsMetric::sendMetric_ | ( | const std::string & | name, | |
const std::string & | value, | |||
const std::string & | unit | |||
) | [inline, override] |
Send a string metric data point to ChannelAccess.
name | Name of the metric | |
value | Value of the metric | |
unit | Units used (not really relevant for string metrics) |
Send a string metric data point to ChannelAccess. The name will be channel_name_prefix:name. If the named channel is not yet open, it will be opened. If the channel is not registered with an IOC, then the metric data will not be sent and a warning message will be printed the first time.
Definition at line 98 of file epics_metric.cc.