00001 /** 00002 * @author Marcel Smit (msmit@remedy.nl) 00003 * 00004 * 00005 */ 00006 #ifndef TOPIC_QOS_HANDLER_H 00007 #define TOPIC_QOS_HANDLER_H 00008 00009 #include /**/ "ace/pre.h" 00010 00011 #include "dds/DCPS/QOS_XML_Handler/XML_QOS_Handler_Export.h" 00012 00013 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00014 # pragma once 00015 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00016 00017 #include "dds_qos.hpp" 00018 #include "dds/DdsDcpsInfrastructureC.h" 00019 00020 OPENDDS_BEGIN_VERSIONED_NAMESPACE_DECL 00021 00022 class XML_QOS_Handler_Export TopicQos_Handler 00023 { 00024 public: 00025 /** 00026 * Find the correct topicQos within the given profile, 00027 * based on the given name. 00028 */ 00029 static bool get_topic_qos (::DDS::TopicQos& tp_qos, 00030 ::dds::qosProfile * profile, 00031 const ACE_TCHAR * name = 0); 00032 private: 00033 /** 00034 * Start parsing the QOS XML, using the template classes. 00035 */ 00036 static bool get_topic_qos (DDS::TopicQos& tp_qos, 00037 dds::topicQos * tp); 00038 }; 00039 00040 OPENDDS_END_VERSIONED_NAMESPACE_DECL 00041 00042 #include /**/ "ace/post.h" 00043 #endif /* TOPIC_QOS_HANDLER_H */