DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
TimingEndpointControllerConf.hpp
Go to the documentation of this file.
1// *** this file is generated by oksdalgen, do not modify it ***
2
3#ifndef _TimingEndpointControllerConf_0_dunedaq__timinglibs__dal_0_timinglibs_dal_H_
4#define _TimingEndpointControllerConf_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
14#include "conffwk/DalObject.hpp"
15
16 // include files for classes used in inheritance hierarchy
17
19
20namespace dunedaq {
21 namespace timinglibs {
22 namespace dal {
23
28 class TimingEndpointControllerConf : public dunedaq::timinglibs::dal::TimingControllerConf {
29
31 friend class conffwk::DalObject;
32 friend class conffwk::DalFactory;
34
35 protected:
36
38 virtual ~TimingEndpointControllerConf() noexcept;
39 virtual void init(bool init_children);
40
41 public:
42
45 static const std::string& s_class_name;
46
47
57 virtual void print(unsigned int offset, bool print_header, std::ostream& s) const;
58
59
69 virtual std::vector<const dunedaq::conffwk::DalObject *> get(const std::string& name, bool upcast_unregistered = true) const;
70
71
72 protected:
73
74 bool get(const std::string& name, std::vector<const dunedaq::conffwk::DalObject *>& vec, bool upcast_unregistered, bool first_call) const;
75
76
77 private:
78
79 uint32_t m_endpoint_id;
80 uint32_t m_address;
81 uint32_t m_partition;
82
83
84 public:
85
86 // attribute names
87
88 inline static const std::string s_endpoint_id = "endpoint_id";
89 inline static const std::string s_address = "address";
90 inline static const std::string s_partition = "partition";
91
92 static const std::string& __get_endpoint_id_str() noexcept { return s_endpoint_id; }
93 static const std::string& __get_address_str() noexcept { return s_address; }
94 static const std::string& __get_partition_str() noexcept { return s_partition; }
95
96
104 uint32_t
106 {
107 std::lock_guard scoped_lock(m_mutex);
108 check();
109 check_init();
110 return m_endpoint_id;
111 }
112
120 void
121 set_endpoint_id(uint32_t value)
122 {
123 std::lock_guard scoped_lock(m_mutex);
124 check();
125 clear();
127 }
128
129
137 uint32_t
139 {
140 std::lock_guard scoped_lock(m_mutex);
141 check();
142 check_init();
143 return m_address;
144 }
145
153 void
154 set_address(uint32_t value)
155 {
156 std::lock_guard scoped_lock(m_mutex);
157 check();
158 clear();
159 p_obj.set_by_val(s_address, value);
160 }
161
162
170 uint32_t
172 {
173 std::lock_guard scoped_lock(m_mutex);
174 check();
175 check_init();
176 return m_partition;
177 }
178
186 void
187 set_partition(uint32_t value)
188 {
189 std::lock_guard scoped_lock(m_mutex);
190 check();
191 clear();
193 }
194
195
196 };
197
198 // out stream operator
199
200 inline std::ostream& operator<<(std::ostream& s, const TimingEndpointControllerConf& obj)
201 {
202 return obj.print_object(s);
203 }
204
205 typedef std::vector<const TimingEndpointControllerConf*>::const_iterator TimingEndpointControllerConfIterator;
206
207 }
208 }
209}
210
211#endif
void set_by_val(const std::string &name, T value)
Set attribute value.
The base class for any generated DAL object.
Definition DalObject.hpp:45
std::mutex m_mutex
Used to protect changes of DAL object.
ConfigObject p_obj
Config object used by given template object.
void check_init() const
Check and initialize object if necessary.
DalRegistry: A registry of DalObjects It provides a single interface to create, cache and manage DalO...
uint32_t get_partition() const
Get "partition" attribute value. Endpoint partition.
void set_endpoint_id(uint32_t value)
Set "endpoint_id" attribute value. ID of target endpoint.
TimingEndpointControllerConf(conffwk::DalRegistry &db, const conffwk::ConfigObject &obj) noexcept
uint32_t get_endpoint_id() const
Get "endpoint_id" attribute value. ID of target endpoint.
uint32_t get_address() const
Get "address" attribute value. Endpoint address.
void set_partition(uint32_t value)
Set "partition" attribute value. Endpoint partition.
void set_address(uint32_t value)
Set "address" attribute value. Endpoint address.
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...
conffwk entry point
double offset
std::vector< constTimingEndpointControllerConf * >::const_iterator TimingEndpointControllerConfIterator
std::ostream & operator<<(std::ostream &s, const EndpointLocation &obj)
Including Qt Headers.