DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
build
timinglibs
codegen
include
timinglibs
dal
TimingHardwareManagerBase.hpp
Go to the documentation of this file.
1
// *** this file is generated by oksdalgen, do not modify it ***
2
3
#ifndef _TimingHardwareManagerBase_0_dunedaq__timinglibs__dal_0_timinglibs_dal_H_
4
#define _TimingHardwareManagerBase_0_dunedaq__timinglibs__dal_0_timinglibs_dal_H_
5
6
#include <stdint.h>
// to define 64 bits types
7
#include <iostream>
8
#include <sstream>
9
#include <string>
10
#include <map>
11
#include <vector>
12
13
#include "
conffwk/Configuration.hpp
"
14
#include "
conffwk/DalObject.hpp
"
15
16
// include files for classes used in inheritance hierarchy
17
18
#include "
timinglibs/dal/TimingHardwareInterface.hpp
"
19
#include "
confmodel/DaqModule.hpp
"
20
21
// forward declaration for classes used in relationships and algorithms
22
23
namespace
dunedaq
{
24
namespace
timinglibs
{
25
namespace
dal
{
26
class
TimingHardwareManagerConf
;
27
}
28
}
29
}
30
31
32
namespace
dunedaq
{
33
namespace
timinglibs
{
34
namespace
dal
{
35
39
40
class
TimingHardwareManagerBase
:
public
dunedaq::timinglibs::dal::TimingHardwareInterface
,
public
dunedaq::confmodel::DaqModule
{
41
42
friend
class
conffwk::Configuration
;
43
friend
class
conffwk::DalObject
;
44
friend
class
conffwk::DalFactory
;
45
friend
class
conffwk::DalRegistry
;
46
47
protected
:
48
49
TimingHardwareManagerBase
(
conffwk::DalRegistry
& db,
const
conffwk::ConfigObject
&
obj
)
noexcept
;
50
virtual
~TimingHardwareManagerBase
() noexcept;
51
virtual
void
init
(
bool
init_children);
52
53
public:
54
56
57
static const
std
::
string
&
s_class_name
;
58
59
68
69
virtual
void
print
(
unsigned
int
offset
,
bool
print_header,
std
::ostream& s) const;
70
71
80
81
virtual
std
::vector<const
dunedaq
::
conffwk
::
DalObject
*>
get
(const
std
::
string
& name,
bool
upcast_unregistered = true) const;
82
83
84
protected:
85
86
bool
get
(const
std
::
string
& name,
std
::vector<const
dunedaq
::
conffwk
::
DalObject
*>& vec,
bool
upcast_unregistered,
bool
first_call) const;
87
88
89
private:
90
91
const
dunedaq
::
timinglibs
::
dal
::
TimingHardwareManagerConf
*
m_configuration
;
92
93
94
public:
95
96
// relationship names
97
98
inline static const
std
::
string
s_configuration
=
"configuration"
;
99
100
static const
std
::
string
&
__get_configuration_str
() noexcept {
return
s_configuration
; }
101
102
108
109
const
dunedaq::timinglibs::dal::TimingHardwareManagerConf
*
110
get_configuration
()
const
111
{
112
std::lock_guard scoped_lock(
m_mutex
);
113
check
();
114
check_init
();
115
if
(!
m_configuration
)
116
{
117
std::ostringstream text;
118
text <<
"relationship \""
<<
s_configuration
<<
"\" of object "
<<
this
<<
" is not set"
;
119
throw
dunedaq::conffwk::Generic(
ERS_HERE
, text.str().c_str());
120
}
121
return
m_configuration
;
122
}
123
124
130
131
void
132
set_configuration
(
const
dunedaq::timinglibs::dal::TimingHardwareManagerConf
* value);
133
134
};
135
136
// out stream operator
137
138
inline
std::ostream&
operator<<
(std::ostream& s,
const
TimingHardwareManagerBase
&
obj
)
139
{
140
return
obj
.print_object(s);
141
}
142
143
typedef
std::vector<const TimingHardwareManagerBase*>::const_iterator
TimingHardwareManagerBaseIterator
;
144
145
}
146
}
147
}
148
149
#endif
DalObject.hpp
ERS_HERE
#define ERS_HERE
Definition
LocalContext.hpp:141
TimingHardwareInterface.hpp
dunedaq::conffwk::DalObject
The base class for any generated DAL object.
Definition
DalObject.hpp:52
dunedaq::conffwk::DalObject::m_mutex
std::mutex m_mutex
Used to protect changes of DAL object.
Definition
DalObject.hpp:115
dunedaq::conffwk::DalObject::check
void check() const
Definition
DalObject.hpp:94
dunedaq::conffwk::DalObject::check_init
void check_init() const
Check and initialize object if necessary.
Definition
DalObject.hpp:412
dunedaq::conffwk::DalRegistry
DalRegistry: A registry of DalObjects It provides a single interface to create, cache and manage DalO...
Definition
DalRegistry.hpp:19
dunedaq::confmodel::DaqModule
Definition
DaqModule.hpp:34
dunedaq::timinglibs::dal::TimingHardwareInterface
Definition
TimingHardwareInterface.hpp:25
dunedaq::timinglibs::dal::TimingHardwareManagerBase
Definition
TimingHardwareManagerBase.hpp:40
dunedaq::timinglibs::dal::TimingHardwareManagerBase::get
virtual std::vector< const dunedaq::conffwk::DalObject * > get(const std::string &name, bool upcast_unregistered=true) const
Get values of relationships and results of some algorithms as a vector of dunedaq::conffwk::DalObject...
Definition
TimingHardwareManagerBase.cpp:89
dunedaq::timinglibs::dal::TimingHardwareManagerBase::m_configuration
const dunedaq::timinglibs::dal::TimingHardwareManagerConf * m_configuration
Definition
TimingHardwareManagerBase.hpp:91
dunedaq::timinglibs::dal::TimingHardwareManagerBase::__get_configuration_str
static const std::string & __get_configuration_str() noexcept
Definition
TimingHardwareManagerBase.hpp:100
dunedaq::timinglibs::dal::TimingHardwareManagerBase::s_class_name
static const std::string & s_class_name
Definition
TimingHardwareManagerBase.hpp:57
dunedaq::timinglibs::dal::TimingHardwareManagerBase::~TimingHardwareManagerBase
virtual ~TimingHardwareManagerBase() noexcept
Definition
TimingHardwareManagerBase.cpp:85
dunedaq::timinglibs::dal::TimingHardwareManagerBase::TimingHardwareManagerBase
TimingHardwareManagerBase(conffwk::DalRegistry &db, const conffwk::ConfigObject &obj) noexcept
Definition
TimingHardwareManagerBase.cpp:32
dunedaq::timinglibs::dal::TimingHardwareManagerBase::print
virtual void print(unsigned int offset, bool print_header, std::ostream &s) const
Print details of the TimingHardwareManagerBase object.
Definition
TimingHardwareManagerBase.cpp:43
dunedaq::timinglibs::dal::TimingHardwareManagerBase::DalFactory
friend class conffwk::DalFactory
Definition
TimingHardwareManagerBase.hpp:44
dunedaq::timinglibs::dal::TimingHardwareManagerBase::set_configuration
void set_configuration(const dunedaq::timinglibs::dal::TimingHardwareManagerConf *value)
Set "configuration" relationship value.
Definition
TimingHardwareManagerBase.cpp:121
dunedaq::timinglibs::dal::TimingHardwareManagerBase::init
virtual void init(bool init_children)
Definition
TimingHardwareManagerBase.cpp:70
dunedaq::timinglibs::dal::TimingHardwareManagerBase::get_configuration
const dunedaq::timinglibs::dal::TimingHardwareManagerConf * get_configuration() const
Get "configuration" relationship value.
Definition
TimingHardwareManagerBase.hpp:110
dunedaq::timinglibs::dal::TimingHardwareManagerBase::DalObject
friend class conffwk::DalObject
Definition
TimingHardwareManagerBase.hpp:43
dunedaq::timinglibs::dal::TimingHardwareManagerBase::s_configuration
static const std::string s_configuration
Definition
TimingHardwareManagerBase.hpp:98
dunedaq::timinglibs::dal::TimingHardwareManagerConf
Definition
TimingHardwareManagerConf.hpp:39
Configuration.hpp
conffwk entry point
offset
double offset
Definition
conversions-impl.hh:28
DaqModule.hpp
conffwk.ConfigObject
Definition
ConfigObject.py:1
conffwk.Configuration
Definition
Configuration.py:1
conffwk
Definition
__init__.py:1
dunedaq::timinglibs::dal
Definition
EndpointLocation.hpp:19
dunedaq::timinglibs::dal::operator<<
std::ostream & operator<<(std::ostream &s, const EndpointLocation &obj)
Definition
EndpointLocation.hpp:197
dunedaq::timinglibs::dal::TimingHardwareManagerBaseIterator
std::vector< constTimingHardwareManagerBase * >::const_iterator TimingHardwareManagerBaseIterator
Definition
TimingHardwareManagerBase.hpp:143
dunedaq::timinglibs
Definition
TimingController.hxx:1
dunedaq
Including Qt Headers.
Definition
module.cpp:16
dunedaq::obj
msgpack::object obj
Definition
Serialization.hpp:257
std
Definition
SchemaUtils.hpp:118
Generated on
for DUNE-DAQ by
1.17.0