00001 #ifndef _ots_Configurable_h_
00002 #define _ots_Configurable_h_
00003
00004 #include "otsdaq-core/ConfigurationInterface/ConfigurationTree.h"
00005
00006 namespace ots
00007 {
00008 class Configurable
00009 {
00010 public:
00011 Configurable(const ConfigurationTree& theXDAQContextConfigTree,
00012 const std::string& theConfigurationPath);
00013 virtual ~Configurable();
00014
00015 const ConfigurationTree& getSelfNode() const;
00016 const ConfigurationManager* getConfigurationManager() const;
00017
00018 const std::string& getContextUID() const;
00019 const std::string& getApplicationUID() const;
00020
00021 unsigned int getApplicationLID() const;
00022 std::string getContextAddress() const;
00023 unsigned int getContextPort() const;
00024
00025 protected:
00026 const ConfigurationTree theXDAQContextConfigTree_;
00027 const std::string theConfigurationPath_;
00028 const std::string theConfigurationRecordName_;
00029 const ConfigurationTree selfNode_;
00030 };
00031 }
00032
00033 #endif