DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
opmonlib
include
opmonlib
details
Utils.hxx
Go to the documentation of this file.
1
template
<
class
M>
2
M
3
dunedaq::opmonlib::from_entry
(
const
dunedaq::opmon::OpMonEntry
& e)
4
{
5
6
M ret;
7
8
if
(ret.GetTypeName() != e.
measurement
()) {
9
throw
opmonlib::NameMismatch(
ERS_HERE
, ret.GetTypeName(), e.
measurement
());
10
}
11
12
from_entry
(ret, e);
13
14
return
ret;
15
}
16
17
template
<
class
T>
18
void
19
dunedaq::opmonlib::set_value
(google::protobuf::Message& m,
const
std::string& name, T value)
20
{
21
22
const
auto
* descriptor_p = m.GetDescriptor();
23
const
auto
& des = *descriptor_p;
24
25
auto
field_p = des.FindFieldByName(name);
26
if
(!field_p) {
27
throw
MissingField(
ERS_HERE
, name, m.GetTypeName());
28
}
29
30
const
auto
* reflection_p = m.GetReflection();
31
const
auto
& ref = *reflection_p;
32
33
set_value
(ref, m, field_p, value);
34
}
ERS_HERE
#define ERS_HERE
Definition
LocalContext.hpp:127
dunedaq::opmon::OpMonEntry
Definition
opmon_entry.pb.h:693
dunedaq::opmon::OpMonEntry::measurement
const std::string & measurement() const
Definition
opmon_entry.pb.h:1749
dunedaq::opmonlib::set_value
void set_value(google::protobuf::Message &m, const std::string &name, T value)
Definition
Utils.hxx:19
dunedaq::opmonlib::from_entry
M from_entry(const dunedaq::opmon::OpMonEntry &)
Definition
Utils.hxx:3
Generated on
for DUNE-DAQ by
1.18.0