DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
SubscriptionCriteria.hpp
Go to the documentation of this file.
1//
2// DUNE DAQ modification notice:
3// This file has been modified from the original ATLAS config source for the DUNE DAQ project.
4// Fork baseline commit: 67a24e731 (2022-10-27).
5// Renamed since fork: yes (from config/SubscriptionCriteria.h to include/conffwk/SubscriptionCriteria.hpp).
6//
7
14
15#ifndef CONFFWK_SUBSCRIPTION__CRITERIA_H_
16#define CONFFWK_SUBSCRIPTION__CRITERIA_H_
17
18#include <set>
19#include <map>
20#include <string>
21#include <iostream>
22
23namespace dunedaq {
24namespace conffwk {
25
26class DalObject;
27
41
43
44 public:
45
56
57 void add(const std::string& class_name);
58
59
68
69 void add(const std::string& class_name, const std::string& object_id);
70
71
80
81 void add(const DalObject& object);
82
83
92
93 void remove(const std::string& class_name);
94
95
105
106 void remove(const std::string& class_name, const std::string& object_id);
107
108
118
119 void remove(const DalObject& object);
120
121
122 public:
123
125
126 typedef std::map< std::string , std::set<std::string> > ObjectMap;
127
128
129 public:
130
134
135 const std::set<std::string> & get_classes_subscription() const { return m_classes_subscription; }
136
137
141
143
144
145 private:
146
147 std::set<std::string> m_classes_subscription;
149
150};
151
153
154std::ostream& operator<<(std::ostream&, const ConfigurationSubscriptionCriteria&);
155
156} // namespace conffwk
157} // namespace dunedaq
158
159#endif
void add(const std::string &class_name)
Add subscribtion on class changes.
const std::set< std::string > & get_classes_subscription() const
void remove(const std::string &class_name)
Remove subscribtion on class changes.
std::map< std::string, std::set< std::string > > ObjectMap
The map stores full subsription information.
The base class for any generated DAL object.
Definition DalObject.hpp:52
std::ostream & operator<<(std::ostream &, const ConfigurationChange &)
Including Qt Headers.
Definition module.cpp:16