DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
ConfigurationHelper.hpp
Go to the documentation of this file.
1
10#ifndef APPMODEL_INCLUDE_CONFIGURATIONHELPER_HPP_
11#define APPMODEL_INCLUDE_CONFIGURATIONHELPER_HPP_
12
13#include <cstdint>
14#include <map>
15#include <string>
16#include <utility>
17#include <vector>
18
19namespace dunedaq::confmodel {
20class Session;
21class Service;
22} // namespace dunedaq::confmodel
23namespace dunedaq::conffwk {
24class DalObject;
25} // namespace dunedaq::conffwk
26
27namespace dunedaq::appmodel {
29class SourceIDConf;
30
39{
40public:
42 : m_session(ses)
43 {
44 }
45
54 std::vector<const confmodel::Service*> get_services(std::string app_class, std::string data_type);
55
63 std::vector<std::pair<std::string, const appmodel::NetworkConnectionDescriptor*>> get_netdescriptors(
64 const std::string& data_type,
65 const std::string& app_class = "");
66
71 std::map<std::string, std::vector<uint32_t>> get_stream_source_ids();
72
78 std::map<std::string, std::vector<const SourceIDConf*>> get_tp_source_ids();
79
86 std::vector<std::string> get_app_uids(std::string app_class = "");
87
99 std::map<std::string, const SourceIDConf*> get_app_source_ids(std::string app_class = "");
100
115 std::map<std::string, std::map<std::string, const SourceIDConf*>> get_all_app_source_ids(std::string app_class = "");
116
122 inline bool is_included(const conffwk::DalObject* item) { return !is_excluded(item); }
123
129 bool is_excluded(const conffwk::DalObject* item);
130
131private:
133};
134
135} // namespace dunedaq::appmodel
136
137#endif // APPMODEL_INCLUDE_CONFIGURATIONHELPER_HPP_
ConfigurationHelper(const confmodel::Session *ses)
bool is_excluded(const conffwk::DalObject *item)
Check the include/exclude state of the given item.
std::vector< std::string > get_app_uids(std::string app_class="")
Get list of uids of applications that match given type.
bool is_included(const conffwk::DalObject *item)
Check the include/exclude state of the given item.
std::map< std::string, const SourceIDConf * > get_app_source_ids(std::string app_class="")
Get list of source ids for applications that match given type.
std::map< std::string, std::map< std::string, const SourceIDConf * > > get_all_app_source_ids(std::string app_class="")
Get list of all source ids for applications that match given type. Follows any single value SourceIDC...
std::map< std::string, std::vector< uint32_t > > get_stream_source_ids()
Get the source ids of all DetectorStreams in the Session.
std::map< std::string, std::vector< const SourceIDConf * > > get_tp_source_ids()
Get the source ids of all the TP streams in all ReadoutApplications and TriggerApplications.
std::vector< const confmodel::Service * > get_services(std::string app_class, std::string data_type)
Get the exposed Services of all network connections with given data_type from all smart daq applicati...
std::vector< std::pair< std::string, const appmodel::NetworkConnectionDescriptor * > > get_netdescriptors(const std::string &data_type, const std::string &app_class="")
Get all NetworkConnectionDescriptors with given data_type from all applications of given type.
The base class for any generated DAL object.
Definition DalObject.hpp:51