1 #ifndef _ots_SupervisorInfo_h_
2 #define _ots_SupervisorInfo_h_
5 #include "otsdaq-core/Macros/CoutMacros.h"
6 #include "otsdaq-core/TablePluginDataFormats/XDAQContextTable.h"
8 #pragma GCC diagnostic push
9 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
10 #include "xdaq/Application.h"
11 #include "xdaq/ContextDescriptor.h"
12 #pragma GCC diagnostic pop
13 #include "otsdaq-core/Macros/XDAQApplicationMacros.h"
22 SupervisorInfo(XDAQ_CONST_CALL xdaq::ApplicationDescriptor* descriptor,
23 const std::string& name,
24 const std::string& contextName)
25 : descriptor_(descriptor)
26 , contextDescriptor_(descriptor ? descriptor->getContextDescriptor() : 0)
29 contextName_(contextName)
31 id_(descriptor ? descriptor->getLocalId() : 0)
32 , class_(descriptor ? descriptor->getClassName() :
"")
33 , contextURL_(contextDescriptor_ ? contextDescriptor_->getURL() :
"")
34 , URN_(descriptor ? descriptor->getURN() :
"")
35 , URL_(contextURL_ +
"/" + URN_)
43 if(contextName_ ==
"")
44 contextName_ = class_;
59 bool isGatewaySupervisor(
void)
const
61 return class_ == XDAQContextTable::GATEWAY_SUPERVISOR_CLASS;
63 bool isWizardSupervisor(
void)
const
65 return class_ == XDAQContextTable::WIZARD_SUPERVISOR_CLASS;
67 bool isTypeFESupervisor(
void)
const
69 return XDAQContextTable::FETypeClassNames_.find(class_) !=
70 XDAQContextTable::FETypeClassNames_.end();
72 bool isTypeDMSupervisor(
void)
const
74 return XDAQContextTable::DMTypeClassNames_.find(class_) !=
75 XDAQContextTable::DMTypeClassNames_.end();
77 bool isTypeLogbookSupervisor(
void)
const
79 return XDAQContextTable::LogbookTypeClassNames_.find(class_) !=
80 XDAQContextTable::LogbookTypeClassNames_.end();
82 bool isTypeMacroMakerSupervisor(
void)
const
84 return XDAQContextTable::MacroMakerTypeClassNames_.find(class_) !=
85 XDAQContextTable::MacroMakerTypeClassNames_.end();
87 bool isTypeConfigurationGUISupervisor(
void)
const
89 return XDAQContextTable::ConfigurationGUITypeClassNames_.find(class_) !=
90 XDAQContextTable::ConfigurationGUITypeClassNames_.end();
92 bool isTypeChatSupervisor(
void)
const
94 return XDAQContextTable::ChatTypeClassNames_.find(class_) !=
95 XDAQContextTable::ChatTypeClassNames_.end();
97 bool isTypeConsoleSupervisor(
void)
const
99 return XDAQContextTable::ConsoleTypeClassNames_.find(class_) !=
100 XDAQContextTable::ConsoleTypeClassNames_.end();
104 XDAQ_CONST_CALL xdaq::ApplicationDescriptor* getDescriptor(
void)
const
108 const xdaq::ContextDescriptor* getContextDescriptor(
void)
const
110 return contextDescriptor_;
112 const std::string& getName(
void)
const {
return name_; }
113 const std::string& getContextName(
void)
const {
return contextName_; }
114 const unsigned int& getId(
void)
const {
return id_; }
115 const std::string& getClass(
void)
const {
return class_; }
116 const std::string& getStatus(
void)
const {
return status_; }
117 const std::string& getURL(
void)
const {
return contextURL_; }
118 const std::string& getURN(
void)
const {
return URN_; }
119 const std::string& getFullURL(
void)
const {
return URL_; }
120 const uint16_t& getPort(
void)
const {
return port_; }
123 void setStatus(
const std::string& status) { status_ = status; }
127 contextDescriptor_ = 0;
135 XDAQ_CONST_CALL xdaq::ApplicationDescriptor* descriptor_;
136 XDAQ_CONST_CALL xdaq::ContextDescriptor* contextDescriptor_;
138 std::string contextName_;
141 std::string contextURL_;