otsdaq  v2_03_00
SupervisorDescriptorInfoBase.h
1 #ifndef _ots_SupervisorTableBase_h_
2 #define _ots_SupervisorTableBase_h_
3 
4 #pragma GCC diagnostic push
5 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
6 #include "xdaq/Application.h"
7 #pragma GCC diagnostic pop
8 #include "otsdaq-core/Macros/CoutMacros.h"
9 #include "otsdaq-core/Macros/XDAQApplicationMacros.h"
10 
11 #include <map>
12 #include <string>
13 
14 namespace ots
15 {
16 // key is the crate number
17 typedef std::map<xdata::UnsignedIntegerT, XDAQ_CONST_CALL xdaq::ApplicationDescriptor*>
18  SupervisorDescriptors;
19 
20 class SupervisorDescriptorInfoBase
21 {
22  friend class SupervisorInfo; //"Friend" class needs access to private members
23  public:
24  SupervisorDescriptorInfoBase(void);
25  SupervisorDescriptorInfoBase(xdaq::ApplicationContext* applicationContext);
26  virtual ~SupervisorDescriptorInfoBase(void);
27 
28  // XDAQ_CONST_CALL xdaq::ApplicationDescriptor* getSupervisorDescriptor (void)
29  // const; XDAQ_CONST_CALL xdaq::ApplicationDescriptor* getWizardDescriptor
30  // (void) const;
31 
32  protected:
33  virtual void init(xdaq::ApplicationContext* applicationContext);
34  virtual void destroy();
35 
36  const SupervisorDescriptors& getAllDescriptors(void) const;
37  // const SupervisorDescriptors& getAllFEDescriptors (void) const;
38 
39  // const SupervisorDescriptors& getDataManagerDescriptors (void) const;
40  // const SupervisorDescriptors& getFEDescriptors (void) const;
41  // //const SupervisorDescriptors& getDTCDescriptors (void) const;
42  // const SupervisorDescriptors& getFEDataManagerDescriptors (void) const;
43  // //const SupervisorDescriptors& getARTDAQFEDescriptors (void) const;
44  // const SupervisorDescriptors& getARTDAQFEDataManagerDescriptors(void) const;
45  // const SupervisorDescriptors& getARTDAQDataManagerDescriptors (void) const;
46  // const SupervisorDescriptors& getARTDAQBuilderDescriptors (void) const;
47  // const SupervisorDescriptors& getARTDAQAggregatorDescriptors (void) const;
48  // const SupervisorDescriptors& getVisualDescriptors (void) const;
49 
50  // XDAQ_CONST_CALL xdaq::ApplicationDescriptor* getLogbookDescriptor (void) const;
51  // XDAQ_CONST_CALL xdaq::ApplicationDescriptor* getDataManagerDescriptor
52  // (xdata::UnsignedIntegerT instance) const; XDAQ_CONST_CALL
53  // xdaq::ApplicationDescriptor* getFEDescriptor
54  // (xdata::UnsignedIntegerT instance) const; XDAQ_CONST_CALL
55  // xdaq::ApplicationDescriptor* getDTCDescriptor
56  // (xdata::UnsignedIntegerT instance) const; XDAQ_CONST_CALL
57  // xdaq::ApplicationDescriptor* getFEDataManagerDescriptor
58  // (xdata::UnsignedIntegerT instance) const;
59  // //xdaq::ApplicationDescriptor* getARTDAQFEDescriptor
60  // (xdata::UnsignedIntegerT instance) const; XDAQ_CONST_CALL
61  // xdaq::ApplicationDescriptor*
62  // getARTDAQFEDataManagerDescriptor(xdata::UnsignedIntegerT instance) const;
63  // XDAQ_CONST_CALL xdaq::ApplicationDescriptor* getARTDAQDataManagerDescriptor
64  // (xdata::UnsignedIntegerT instance) const; XDAQ_CONST_CALL
65  // xdaq::ApplicationDescriptor* getARTDAQBuilderDescriptor
66  // (xdata::UnsignedIntegerT instance) const; XDAQ_CONST_CALL
67  // xdaq::ApplicationDescriptor* getARTDAQAggregatorDescriptor
68  // (xdata::UnsignedIntegerT instance) const; XDAQ_CONST_CALL
69  // xdaq::ApplicationDescriptor* getVisualDescriptor
70  // (xdata::UnsignedIntegerT instance) const;
71 
72  // std::string getFEURL
73  // (xdata::UnsignedIntegerT instance) const;
74 
75  // std::string getARTDAQFEURL (xdata::UnsignedIntegerT instance) const;
76  // std::string getARTDAQBuilderURL (xdata::UnsignedIntegerT instance) const;
77  // std::string getARTDAQAggregatorURL (xdata::UnsignedIntegerT instance) const;
78 
79  protected:
80  // XDAQ_CONST_CALL xdaq::ApplicationDescriptor* theSupervisor_;
81  // XDAQ_CONST_CALL xdaq::ApplicationDescriptor* theWizard_;
82  // XDAQ_CONST_CALL xdaq::ApplicationDescriptor* theLogbookSupervisor_;
83  //
84  // SupervisorDescriptors theVisualSupervisors_;
85  // SupervisorDescriptors theDataManagerSupervisors_;
86  // SupervisorDescriptors theFESupervisors_;
87  // SupervisorDescriptors theDTCSupervisors_;
88  // SupervisorDescriptors theFEDataManagerSupervisors_;
89  // //SupervisorDescriptors theARTDAQFESupervisors_;
90  // SupervisorDescriptors theARTDAQFEDataManagerSupervisors_;
91  // SupervisorDescriptors theARTDAQDataManagerSupervisors_;
92  // SupervisorDescriptors theARTDAQBuilderSupervisors_;
93  // SupervisorDescriptors theARTDAQAggregatorSupervisors_;
94 
95  SupervisorDescriptors allSupervisors_;
96  // SupervisorDescriptors allFETypeSupervisors_;
97 };
98 } // namespace ots
99 #endif