Parser.h

Go to the documentation of this file.
00001 #ifndef FACE_CONFIG_PARSER_H
00002 #define FACE_CONFIG_PARSER_H
00003 
00004 #include "FACE/OpenDDS_FACE_Export.h"
00005 #include "QosSettings.h"
00006 #include "ConnectionSettings.h"
00007 #include "TopicSettings.h"
00008 
00009 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
00010 class ACE_Configuration_Heap;
00011 class ACE_Configuration_Section_Key;
00012 ACE_END_VERSIONED_NAMESPACE_DECL
00013 
00014 OPENDDS_BEGIN_VERSIONED_NAMESPACE_DECL
00015 
00016 namespace OpenDDS { namespace FaceTSS { namespace config {
00017 
00018 class OpenDDS_FACE_Export Parser {
00019 public:
00020   // Returns non-zero on failure
00021   int parse(const char* filename);
00022   int find_connection(const char* name, ConnectionSettings& target);
00023   int find_topic(const char* name, TopicSettings& target);
00024   int find_qos(const ConnectionSettings& conn, QosSettings& target);
00025 
00026 private:
00027   static ConnectionMap connection_map_;
00028   static QosMap qos_map_;
00029   static TopicMap topic_map_;
00030 
00031   int parse_topic(ACE_Configuration_Heap& config,
00032                   ACE_Configuration_Section_Key& key,
00033                   const char* topic_name);
00034   int parse_connection(ACE_Configuration_Heap& config,
00035                        ACE_Configuration_Section_Key& key,
00036                        const char* connection_name);
00037   int parse_qos(ACE_Configuration_Heap& config,
00038                 ACE_Configuration_Section_Key& key,
00039                 const char* qos_name,
00040                 QosSettings::QosLevel level);
00041   int parse_sections(ACE_Configuration_Heap& config,
00042                      const char* section_type,
00043                      bool required);
00044 };
00045 
00046 } } }
00047 
00048 OPENDDS_END_VERSIONED_NAMESPACE_DECL
00049 
00050 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 10 Aug 2018 for OpenDDS by  doxygen 1.6.1