1 #ifndef _ots_XDAQContextConfiguration_h_
2 #define _ots_XDAQContextConfiguration_h_
4 #include "otsdaq-core/ConfigurationDataFormats/ConfigurationBase.h"
5 #include "otsdaq-core/ConfigurationInterface/ConfigurationManager.h"
18 std::string name_, type_, value_;
23 std::string applicationGroupID_;
24 std::string applicationUID_;
28 unsigned int instance_;
32 std::string sourceConfig_;
33 std::map<std::string , uint8_t > stateMachineCommandPriority_;
35 std::vector<XDAQApplicationProperty> properties_;
40 std::string contextUID_;
41 std::string sourceConfig_;
46 std::vector<XDAQApplication> applications_;
55 void outputXDAQXML (std::ostream &out);
60 std::string getContextUID (
const std::string &url)
const;
61 std::string getApplicationUID (
const std::string &url,
unsigned int id)
const;
64 const std::vector<XDAQContext> & getContexts ()
const {
return contexts_; }
71 std::vector<const XDAQContext *> getBoardReaderContexts ()
const;
72 std::vector<const XDAQContext *> getEventBuilderContexts ()
const;
73 std::vector<const XDAQContext *> getAggregatorContexts ()
const;
74 unsigned int getARTDAQAppRank (
const std::string &contextUID =
"X")
const;
75 std::string getContextAddress (
const std::string &contextUID =
"X",
bool wantHttp =
false)
const;
76 unsigned int getARTDAQDataPort (
const ConfigurationManager *configManager,
const std::string &contextUID =
"X")
const;
77 static bool isARTDAQContext (
const std::string &contextUID);
81 std::vector<XDAQContext> contexts_;
84 std::vector<unsigned int> artdaqBoardReaders_;
85 std::vector<unsigned int> artdaqEventBuilders_;
86 std::vector<unsigned int> artdaqAggregators_;
93 std::string
const colContextUID_ =
"ContextUID";
94 std::string
const colLinkToApplicationConfiguration_ =
"LinkToApplicationConfiguration";
95 std::string
const colLinkToApplicationGroupID_ =
"LinkToApplicationGroupID";
96 std::string
const colStatus_ = ViewColumnInfo::COL_NAME_STATUS;
97 std::string
const colId_ =
"Id";
98 std::string
const colAddress_ =
"Address";
99 std::string
const colPort_ =
"Port";
106 std::string
const colApplicationGroupID_ =
"ApplicationGroupID";
107 std::string
const colApplicationUID_ =
"ApplicationUID";
108 std::string
const colLinkToSupervisorConfiguration_ =
"LinkToSupervisorConfiguration";
109 std::string
const colLinkToSupervisorUID_ =
"LinkToSupervisorUID";
110 std::string
const colStatus_ = ViewColumnInfo::COL_NAME_STATUS;
111 std::string
const colClass_ =
"Class";
112 std::string
const colId_ =
"Id";
113 std::string
const colInstance_ =
"Instance";
114 std::string
const colNetwork_ =
"Network";
115 std::string
const colGroup_ =
"Group";
116 std::string
const colModule_ =
"Module";
117 std::string
const colConfigurePriority_ =
"ConfigurePriority";
118 std::string
const colStartPriority_ =
"StartPriority";
119 std::string
const colStopPriority_ =
"StopPriority";
120 std::string
const colLinkToPropertyConfiguration_ =
"LinkToPropertyConfiguration";
121 std::string
const colLinkToPropertyGroupID_ =
"LinkToPropertyGroupID";
128 std::string
const colPropertyGroupID_ =
"PropertyGroupID";
129 std::string
const colPropertyUID_ =
"UID";
130 std::string
const colStatus_ = ViewColumnInfo::COL_NAME_STATUS;
131 std::string
const colPropertyName_ =
"PropertyName";
132 std::string
const colPropertyType_ =
"PropertyType";
133 std::string
const colPropertyValue_ =
"PropertyValue";
137 static const std::string ARTDAQ_OFFSET_PORT;
140 static const std::set<std::string> FETypeClassNames_, DMTypeClassNames_, LogbookTypeClassNames_, MacroMakerTypeClassNames_, ChatTypeClassNames_, ConsoleTypeClassNames_, ConfigurationGUITypeClassNames_;
141 static const std::string GATEWAY_SUPERVISOR_CLASS, WIZARD_SUPERVISOR_CLASS, DEPRECATED_SUPERVISOR_CLASS;