DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
config_api_graph.hpp
Go to the documentation of this file.
1// DUNE DAQ modification notice:
2// This file has been modified from the original ATLAS dbe source for the DUNE DAQ project.
3// Fork baseline commit: dbe-02-12-17 (2022-05-12).
4// Renamed since fork: yes (from dbe/config_api_graph.h to include/dbe/config_api_graph.hpp).
5
6/*
7 * config_api_graph.h
8 *
9 * Created on: Apr 20, 2016
10 * Author: Leonidas Georgopoulos
11 */
12
13#ifndef DBE_CONFIG_API_GRAPH_H_
14#define DBE_CONFIG_API_GRAPH_H_
15
16#include "dbe/tref.hpp"
17
18#include "conffwk/Schema.hpp"
20
21#include <vector>
22
23namespace daq
24{
25namespace config
26{
27struct relationship_t;
28struct attribute_t;
29} /* namespace config */
30} /* namespace daq */
31
32namespace dbe
33{
34namespace ui
35{
36namespace config
37{
38class info;
39}
40}
41}
42
43//------------------------------------------------------------------------------------------
44// DBE::CONFIG::API::GRAPH NAMESPACE
45//------------------------------------------------------------------------------------------
46namespace dbe
47{
48namespace config
49{
50namespace api
51{
52namespace graph
53{
54
55namespace linked
56{
57
58//------------------------------------------------------------------------------------------
59// backward relations A->c->B querying on B returns A through c ,
60// e.g. A connects to B ( B is queried upon)
61namespace to
62{
74template<typename T> std::vector<T> object ( tref const & );
75}
76//------------------------------------------------------------------------------------------
77
78//------------------------------------------------------------------------------------------
79// forward relations A->c->B querying on A return B through c
80namespace by
81{
91template<typename T> std::vector<T> object ( tref const & item );
92}
93
94namespace through
95{
105template<typename T> std::vector<T> relations ( tref const & item );
106
116template<typename T> std::vector<T> attributes ( tref const & item );
117
129template<typename T> T relation ( tref item, dunedaq::conffwk::relationship_t const & relation );
130
142template<typename T> T attribute ( tref item, dunedaq::conffwk::attribute_t const & attr );
143
144}
145//------------------------------------------------------------------------------------------
146
147}// end namespace related
148
153{
155
167 template<typename T> static T linked (
169
181 template<typename T> static T linked (
183};
184//------------------------------------------------------------------------------------------
185
186}// namespace graph
187} /* namespace api */
188} /* namespace config */
189} /* namespace dbe */
190//------------------------------------------------------------------------------------------
191
192#endif /* DBE_CONFIG_API_GRAPH_H_ */
static T linked(dunedaq::conffwk::ConfigObject &item, dunedaq::conffwk::relationship_t const &relation)
Represents database objects.
Including ers headers.
std::vector< T > object(tref const &item)
std::vector< T > attributes(tref const &item)
T attribute(tref item, dunedaq::conffwk::attribute_t const &attr)
T relation(tref item, dunedaq::conffwk::relationship_t const &relation)
std::vector< T > relations(tref const &item)
std::vector< T > object(tref const &)
Include QT Headers.
inner::configobject::tref tref
Definition tref.hpp:35