OpenDDS  Snapshot(2023/04/28-20:55)
QosSettings.h
Go to the documentation of this file.
1 #ifndef OPENDDS_FACE_CONFIG_QOSSETTINGS_H
2 #define OPENDDS_FACE_CONFIG_QOSSETTINGS_H
3 
4 #include "dds/DdsDcpsInfrastructureC.h"
5 #include "dds/DCPS/Definitions.h"
7 #include "FACE/OpenDDS_FACE_Export.h"
8 
10 
11 namespace OpenDDS { namespace FaceTSS { namespace config {
12 
13 class OpenDDS_FACE_Export QosSettings {
14  public:
15  QosSettings();
16 
17  enum QosLevel {
21  datareader
22  };
23 
24  int set_qos(QosLevel level, const char* name, const char* value);
25 
26  void apply_to(DDS::PublisherQos& target) const;
27  void apply_to(DDS::SubscriberQos& target) const;
28  void apply_to(DDS::DataWriterQos& target) const;
29  void apply_to(DDS::DataReaderQos& target) const;
30 
31  DDS::PublisherQos& publisher_qos() { return publisher_qos_; }
32  DDS::SubscriberQos& subscriber_qos() { return subscriber_qos_; }
33  DDS::DataWriterQos& datawriter_qos() { return datawriter_qos_; }
34  DDS::DataReaderQos& datareader_qos() { return datareader_qos_; }
35 
36  private:
37  // DomainPartipantFactory, DomainParticipant, and Topic qos
38  // are not usable in FACE
43 
44  int set_qos(DDS::PublisherQos& target, const char* name, const char* value);
45  int set_qos(DDS::SubscriberQos& target, const char* name, const char* value);
46  int set_qos(DDS::DataWriterQos& target, const char* name, const char* value);
47  int set_qos(DDS::DataReaderQos& target, const char* name, const char* value);
48 };
49 
50 typedef OPENDDS_MAP(OPENDDS_STRING, QosSettings) QosMap;
51 
52 } } }
53 
55 
56 #endif
DDS::SubscriberQos & subscriber_qos()
Definition: QosSettings.h:32
const LogLevel::Value value
Definition: debug.cpp:61
DDS::PublisherQos & publisher_qos()
Definition: QosSettings.h:31
typedef OPENDDS_MAP(OPENDDS_STRING, ConnectionSettings) ConnectionMap
#define OPENDDS_STRING
const char *const name
Definition: debug.cpp:60
DDS::DataReaderQos & datareader_qos()
Definition: QosSettings.h:34
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
DDS::DataWriterQos & datawriter_qos()
Definition: QosSettings.h:33
The Internal API and Implementation of OpenDDS.
Definition: AddressCache.h:28