OpenDDS  Snapshot(2023/04/07-19:43)
Static Public Member Functions | List of all members
OpenDDS::DCPS::Qos_Helper Class Reference

This class implements methods that verify whether a qos is valid, consistent and changeable. More...

#include <Qos_Helper.h>

Static Public Member Functions

static bool consistent (const DDS::ResourceLimitsQosPolicy &resource_limits, const DDS::HistoryQosPolicy &history)
 
static bool consistent (const DDS::DeadlineQosPolicy &deadline, const DDS::TimeBasedFilterQosPolicy &time_based_filter)
 
static bool consistent (const DDS::DomainParticipantQos &qos)
 
static bool consistent (const DDS::TopicQos &qos)
 
static bool consistent (const DDS::DataWriterQos &qos)
 
static bool consistent (const DDS::PublisherQos &qos)
 
static bool consistent (const DDS::DataReaderQos &qos)
 
static bool consistent (const DDS::SubscriberQos &qos)
 
static bool consistent (const DDS::DomainParticipantFactoryQos &qos)
 
static bool valid (const DDS::UserDataQosPolicy &qos)
 
static bool valid (const DDS::TopicDataQosPolicy &qos)
 
static bool valid (const DDS::GroupDataQosPolicy &qos)
 
static bool valid (const DDS::TransportPriorityQosPolicy &qos)
 
static bool valid (const DDS::LifespanQosPolicy &qos)
 
static bool valid (const DDS::DurabilityQosPolicy &qos)
 
static bool valid (const DDS::DurabilityServiceQosPolicy &qos)
 
static bool valid (const DDS::PresentationQosPolicy &qos)
 
static bool valid (const DDS::DeadlineQosPolicy &qos)
 
static bool valid (const DDS::LatencyBudgetQosPolicy &qos)
 
static bool valid (const DDS::OwnershipQosPolicy &qos)
 
static bool valid (const DDS::OwnershipStrengthQosPolicy &qos)
 
static bool valid (const DDS::LivelinessQosPolicy &qos)
 
static bool valid (const DDS::TimeBasedFilterQosPolicy &qos)
 
static bool valid (const DDS::PartitionQosPolicy &qos)
 
static bool valid (const DDS::ReliabilityQosPolicy &qos)
 
static bool valid (const DDS::DestinationOrderQosPolicy &qos)
 
static bool valid (const DDS::HistoryQosPolicy &qos)
 
static bool valid (const DDS::ResourceLimitsQosPolicy &qos)
 
static bool valid (const DDS::EntityFactoryQosPolicy &qos)
 
static bool valid (const DDS::PropertyQosPolicy &qos)
 
static bool valid (const DDS::WriterDataLifecycleQosPolicy &qos)
 
static bool valid (const DDS::ReaderDataLifecycleQosPolicy &qos)
 
static bool valid (const DDS::DomainParticipantQos &qos)
 
static bool valid (const DDS::TopicQos &qos)
 
static bool valid (const DDS::DataWriterQos &qos)
 
static bool valid (const DDS::PublisherQos &qos)
 
static bool valid (const DDS::DataReaderQos &qos)
 
static bool valid (const DDS::SubscriberQos &qos)
 
static bool valid (const DDS::DomainParticipantFactoryQos &qos)
 
static bool valid (const DDS::DataRepresentationQosPolicy &qos)
 
static bool changeable (const DDS::UserDataQosPolicy &qos1, const DDS::UserDataQosPolicy &qos2)
 
static bool changeable (const DDS::TopicDataQosPolicy &qos1, const DDS::TopicDataQosPolicy &qos2)
 
static bool changeable (const DDS::GroupDataQosPolicy &qos1, const DDS::GroupDataQosPolicy &qos2)
 
static bool changeable (const DDS::TransportPriorityQosPolicy &qos1, const DDS::TransportPriorityQosPolicy &qos2)
 
static bool changeable (const DDS::LifespanQosPolicy &qos1, const DDS::LifespanQosPolicy &qos2)
 
static bool changeable (const DDS::DurabilityQosPolicy &qos1, const DDS::DurabilityQosPolicy &qos2)
 
static bool changeable (const DDS::DurabilityServiceQosPolicy &qos1, const DDS::DurabilityServiceQosPolicy &qos2)
 
static bool changeable (const DDS::PresentationQosPolicy &qos1, const DDS::PresentationQosPolicy &qos2)
 
static bool changeable (const DDS::DeadlineQosPolicy &qos1, const DDS::DeadlineQosPolicy &qos2)
 
static bool changeable (const DDS::LatencyBudgetQosPolicy &qos1, const DDS::LatencyBudgetQosPolicy &qos2)
 
static bool changeable (const DDS::OwnershipQosPolicy &qos1, const DDS::OwnershipQosPolicy &qos2)
 
static bool changeable (const DDS::OwnershipStrengthQosPolicy &qos1, const DDS::OwnershipStrengthQosPolicy &qos2)
 
static bool changeable (const DDS::LivelinessQosPolicy &qos1, const DDS::LivelinessQosPolicy &qos2)
 
static bool changeable (const DDS::TimeBasedFilterQosPolicy &qos1, const DDS::TimeBasedFilterQosPolicy &qos2)
 
static bool changeable (const DDS::PartitionQosPolicy &qos1, const DDS::PartitionQosPolicy &qos2)
 
static bool changeable (const DDS::ReliabilityQosPolicy &qos1, const DDS::ReliabilityQosPolicy &qos2)
 
static bool changeable (const DDS::DestinationOrderQosPolicy &qos1, const DDS::DestinationOrderQosPolicy &qos2)
 
static bool changeable (const DDS::HistoryQosPolicy &qos1, const DDS::HistoryQosPolicy &qos2)
 
static bool changeable (const DDS::ResourceLimitsQosPolicy &qos1, const DDS::ResourceLimitsQosPolicy &qos2)
 
static bool changeable (const DDS::EntityFactoryQosPolicy &qos1, const DDS::EntityFactoryQosPolicy &qos2)
 
static bool changeable (const DDS::WriterDataLifecycleQosPolicy &qos1, const DDS::WriterDataLifecycleQosPolicy &qos2)
 
static bool changeable (const DDS::ReaderDataLifecycleQosPolicy &qos1, const DDS::ReaderDataLifecycleQosPolicy &qos2)
 
static bool changeable (const DDS::DomainParticipantQos &qos1, const DDS::DomainParticipantQos &qos2)
 
static bool changeable (const DDS::TopicQos &qos1, const DDS::TopicQos &qos2)
 
static bool changeable (const DDS::DataWriterQos &qos1, const DDS::DataWriterQos &qos2)
 
static bool changeable (const DDS::PublisherQos &qos1, const DDS::PublisherQos &qos2)
 
static bool changeable (const DDS::DataReaderQos &qos1, const DDS::DataReaderQos &qos2)
 
static bool changeable (const DDS::SubscriberQos &qos1, const DDS::SubscriberQos &qos2)
 
static bool changeable (const DDS::DomainParticipantFactoryQos &qos1, const DDS::DomainParticipantFactoryQos &qos2)
 
static bool changeable (const DDS::DataRepresentationQosPolicy &qos1, const DDS::DataRepresentationQosPolicy &qos2)
 
static bool copy_from_topic_qos (DDS::DataReaderQos &a_datareader_qos, const DDS::TopicQos &a_topic_qos)
 
static bool copy_from_topic_qos (DDS::DataWriterQos &a_datareader_qos, const DDS::TopicQos &a_topic_qos)
 

Detailed Description

This class implements methods that verify whether a qos is valid, consistent and changeable.

valid - the values are in acceptable ranges without respect to any other values.

consistent - the values are consistent with each other. The spec sometimes calls this "compatible" but I this compatible should be reserved for matching QoS of subscriptions and publications. The spec is confusing in its inconsistency of the use of "compatible" and "consistent".

The qos supported in current implementation: Liveliness : kind = AUTOMATIC Reliability : kind = RELIABLE | BEST_EFFORT max_blocking_time History : kind = KEEP_ALL | KEEP_LAST depth > 1 RESOURCE_LIMITS : max_samples_per_instance

Other than these supported qos, any qos that is different from the initial value is invalid.

Note
Since in the first implementation of DSS in TAO a limited number of QoS values are allowed to be modified, the consistency test on QoS settings have not been implemented to check future "valid" QoS values.
None of the supported QoS in the first implementation are changeable. The changed value will be checked per the QoS table in the DDS specification.

Definition at line 61 of file Qos_Helper.h.

Member Function Documentation

◆ changeable() [1/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::UserDataQosPolicy qos1,
const DDS::UserDataQosPolicy qos2 
)
static

◆ changeable() [2/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::TopicDataQosPolicy qos1,
const DDS::TopicDataQosPolicy qos2 
)
static

Definition at line 955 of file Qos_Helper.inl.

References ACE_INLINE.

957 {
958  return true;
959 }

◆ changeable() [3/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::GroupDataQosPolicy qos1,
const DDS::GroupDataQosPolicy qos2 
)
static

Definition at line 962 of file Qos_Helper.inl.

References ACE_INLINE.

964 {
965  return true;
966 }

◆ changeable() [4/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::TransportPriorityQosPolicy qos1,
const DDS::TransportPriorityQosPolicy qos2 
)
static

Definition at line 969 of file Qos_Helper.inl.

References ACE_INLINE.

972 {
973  // formal/07-01-01 specifies that this is changeable. OpenDDS as
974  // of Version 1.3 does not support dynamic modification of the
975  // priority of a single DataWriter TRANSPORT_PRIORITY.value.
976  //
977  // return true;
978  return qos1 == qos2;
979 }

◆ changeable() [5/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::LifespanQosPolicy qos1,
const DDS::LifespanQosPolicy qos2 
)
static

Definition at line 983 of file Qos_Helper.inl.

References ACE_INLINE.

985 {
986  return true;
987 }

◆ changeable() [6/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::DurabilityQosPolicy qos1,
const DDS::DurabilityQosPolicy qos2 
)
static

Definition at line 990 of file Qos_Helper.inl.

References ACE_INLINE.

992 {
993  return qos1 == qos2;
994 }

◆ changeable() [7/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::DurabilityServiceQosPolicy qos1,
const DDS::DurabilityServiceQosPolicy qos2 
)
static

Definition at line 999 of file Qos_Helper.inl.

References ACE_INLINE.

1001 {
1002  return qos1 == qos2;
1003 }

◆ changeable() [8/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::PresentationQosPolicy qos1,
const DDS::PresentationQosPolicy qos2 
)
static

Definition at line 1007 of file Qos_Helper.inl.

References ACE_INLINE.

1009 {
1010  return qos1 == qos2;
1011 }

◆ changeable() [9/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::DeadlineQosPolicy qos1,
const DDS::DeadlineQosPolicy qos2 
)
static

TBD: These QoS are not supported currently, they are changeable, but need a compatibility check between the publisher and subscriber ends when changing the QoS.

Definition at line 1021 of file Qos_Helper.inl.

References ACE_INLINE.

1023 {
1024  return true;
1025 }

◆ changeable() [10/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::LatencyBudgetQosPolicy qos1,
const DDS::LatencyBudgetQosPolicy qos2 
)
static

Definition at line 1028 of file Qos_Helper.inl.

References ACE_INLINE.

1031 {
1032  return true;
1033 }

◆ changeable() [11/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::OwnershipQosPolicy qos1,
const DDS::OwnershipQosPolicy qos2 
)
static

Definition at line 1036 of file Qos_Helper.inl.

References ACE_INLINE.

1038 {
1039  return qos1 == qos2;
1040 }

◆ changeable() [12/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::OwnershipStrengthQosPolicy qos1,
const DDS::OwnershipStrengthQosPolicy qos2 
)
static

Definition at line 1045 of file Qos_Helper.inl.

References ACE_INLINE.

1048 {
1049  return true;
1050 }

◆ changeable() [13/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::LivelinessQosPolicy qos1,
const DDS::LivelinessQosPolicy qos2 
)
static

Definition at line 1054 of file Qos_Helper.inl.

References ACE_INLINE.

1056 {
1057  return qos1 == qos2;
1058 }

◆ changeable() [14/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::TimeBasedFilterQosPolicy qos1,
const DDS::TimeBasedFilterQosPolicy qos2 
)
static

Definition at line 1061 of file Qos_Helper.inl.

References ACE_INLINE.

1064 {
1065  return true;
1066 }

◆ changeable() [15/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::PartitionQosPolicy qos1,
const DDS::PartitionQosPolicy qos2 
)
static

Definition at line 1070 of file Qos_Helper.inl.

References ACE_INLINE.

1072 {
1073  return true;
1074 }

◆ changeable() [16/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::ReliabilityQosPolicy qos1,
const DDS::ReliabilityQosPolicy qos2 
)
static

Definition at line 1077 of file Qos_Helper.inl.

References ACE_INLINE.

1079 {
1080  return qos1 == qos2;
1081 }

◆ changeable() [17/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::DestinationOrderQosPolicy qos1,
const DDS::DestinationOrderQosPolicy qos2 
)
static

Definition at line 1084 of file Qos_Helper.inl.

References ACE_INLINE.

1086 {
1087  return qos1 == qos2;
1088 }

◆ changeable() [18/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::HistoryQosPolicy qos1,
const DDS::HistoryQosPolicy qos2 
)
static

Definition at line 1091 of file Qos_Helper.inl.

References ACE_INLINE.

1093 {
1094  return qos1 == qos2;
1095 }

◆ changeable() [19/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::ResourceLimitsQosPolicy qos1,
const DDS::ResourceLimitsQosPolicy qos2 
)
static

Definition at line 1098 of file Qos_Helper.inl.

References ACE_INLINE.

1100 {
1101  return qos1 == qos2;
1102 }

◆ changeable() [20/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::EntityFactoryQosPolicy qos1,
const DDS::EntityFactoryQosPolicy qos2 
)
static

Definition at line 1105 of file Qos_Helper.inl.

References ACE_INLINE.

1108 {
1109  return true;
1110 }

◆ changeable() [21/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::WriterDataLifecycleQosPolicy qos1,
const DDS::WriterDataLifecycleQosPolicy qos2 
)
static

Definition at line 1113 of file Qos_Helper.inl.

References ACE_INLINE.

1116 {
1117  return true;
1118 }

◆ changeable() [22/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::ReaderDataLifecycleQosPolicy qos1,
const DDS::ReaderDataLifecycleQosPolicy qos2 
)
static

Definition at line 1121 of file Qos_Helper.inl.

References ACE_INLINE.

1124 {
1125  return true;
1126 }

◆ changeable() [23/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::DomainParticipantQos qos1,
const DDS::DomainParticipantQos qos2 
)
static

Definition at line 1129 of file Qos_Helper.inl.

References ACE_INLINE, changeable(), DDS::DomainParticipantQos::entity_factory, and DDS::DomainParticipantQos::user_data.

1131 {
1132  return
1133  changeable(qos1.user_data, qos2.user_data)
1134  && changeable(qos1.entity_factory, qos2.entity_factory);
1135 }
UserDataQosPolicy user_data
EntityFactoryQosPolicy entity_factory
static bool changeable(const DDS::UserDataQosPolicy &qos1, const DDS::UserDataQosPolicy &qos2)
Definition: Qos_Helper.inl:948

◆ changeable() [24/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::TopicQos qos1,
const DDS::TopicQos qos2 
)
static

Definition at line 1138 of file Qos_Helper.inl.

References ACE_INLINE, changeable(), DDS::TopicQos::deadline, DDS::TopicQos::destination_order, DDS::TopicQos::durability, DDS::TopicQos::durability_service, DDS::TopicQos::history, DDS::TopicQos::latency_budget, DDS::TopicQos::lifespan, DDS::TopicQos::liveliness, DDS::TopicQos::ownership, DDS::TopicQos::reliability, DDS::TopicQos::representation, DDS::TopicQos::resource_limits, DDS::TopicQos::topic_data, and DDS::TopicQos::transport_priority.

1140 {
1141  return
1142  changeable(qos1.topic_data, qos2.topic_data)
1143  && changeable(qos1.durability, qos2.durability)
1144 #ifndef OPENDDS_NO_PERSISTENCE_PROFILE
1146 #endif
1147  && changeable(qos1.deadline, qos2.deadline)
1149  && changeable(qos1.liveliness, qos2.liveliness)
1150  && changeable(qos1.reliability, qos2.reliability)
1152  && changeable(qos1.history, qos2.history)
1155  && changeable(qos1.lifespan, qos2.lifespan)
1156  && changeable(qos1.ownership, qos2.ownership)
1157  && changeable(qos1.representation, qos2.representation);
1158 }
LivelinessQosPolicy liveliness
OwnershipQosPolicy ownership
TopicDataQosPolicy topic_data
DeadlineQosPolicy deadline
ReliabilityQosPolicy reliability
HistoryQosPolicy history
DurabilityQosPolicy durability
TransportPriorityQosPolicy transport_priority
DataRepresentationQosPolicy representation
ResourceLimitsQosPolicy resource_limits
static bool changeable(const DDS::UserDataQosPolicy &qos1, const DDS::UserDataQosPolicy &qos2)
Definition: Qos_Helper.inl:948
LifespanQosPolicy lifespan
DurabilityServiceQosPolicy durability_service
DestinationOrderQosPolicy destination_order
LatencyBudgetQosPolicy latency_budget

◆ changeable() [25/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::DataWriterQos qos1,
const DDS::DataWriterQos qos2 
)
static

Definition at line 1161 of file Qos_Helper.inl.

References ACE_INLINE, changeable(), DDS::DataWriterQos::deadline, DDS::DataWriterQos::destination_order, DDS::DataWriterQos::durability, DDS::DataWriterQos::durability_service, DDS::DataWriterQos::history, DDS::DataWriterQos::latency_budget, DDS::DataWriterQos::lifespan, DDS::DataWriterQos::liveliness, DDS::DataWriterQos::ownership, DDS::DataWriterQos::ownership_strength, DDS::DataWriterQos::reliability, DDS::DataWriterQos::representation, DDS::DataWriterQos::resource_limits, DDS::DataWriterQos::transport_priority, DDS::DataWriterQos::user_data, and DDS::DataWriterQos::writer_data_lifecycle.

1163 {
1164  return
1165  changeable(qos1.durability, qos2.durability)
1166 #ifndef OPENDDS_NO_PERSISTENCE_PROFILE
1168 #endif
1169  && changeable(qos1.deadline, qos2.deadline)
1171  && changeable(qos1.liveliness, qos2.liveliness)
1172  && changeable(qos1.reliability, qos2.reliability)
1174  && changeable(qos1.history, qos2.history)
1177  && changeable(qos1.lifespan, qos2.lifespan)
1178  && changeable(qos1.user_data, qos2.user_data)
1179  && changeable(qos1.ownership, qos2.ownership)
1180 #ifndef OPENDDS_NO_OWNERSHIP_KIND_EXCLUSIVE
1182 #endif
1184  && changeable(qos1.representation, qos2.representation);
1185 }
ResourceLimitsQosPolicy resource_limits
UserDataQosPolicy user_data
ReliabilityQosPolicy reliability
DurabilityServiceQosPolicy durability_service
LatencyBudgetQosPolicy latency_budget
OwnershipStrengthQosPolicy ownership_strength
LifespanQosPolicy lifespan
DurabilityQosPolicy durability
static bool changeable(const DDS::UserDataQosPolicy &qos1, const DDS::UserDataQosPolicy &qos2)
Definition: Qos_Helper.inl:948
DataRepresentationQosPolicy representation
DeadlineQosPolicy deadline
WriterDataLifecycleQosPolicy writer_data_lifecycle
OwnershipQosPolicy ownership
TransportPriorityQosPolicy transport_priority
LivelinessQosPolicy liveliness
DestinationOrderQosPolicy destination_order
HistoryQosPolicy history

◆ changeable() [26/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::PublisherQos qos1,
const DDS::PublisherQos qos2 
)
static

Definition at line 1188 of file Qos_Helper.inl.

References ACE_INLINE, changeable(), DDS::PublisherQos::entity_factory, DDS::PublisherQos::group_data, DDS::PublisherQos::partition, and DDS::PublisherQos::presentation.

1190 {
1191  return
1193  && changeable(qos1.partition, qos2.partition)
1194  && changeable(qos1.group_data, qos2.group_data)
1195  && changeable(qos1.entity_factory, qos2.entity_factory);
1196 }
PartitionQosPolicy partition
GroupDataQosPolicy group_data
EntityFactoryQosPolicy entity_factory
static bool changeable(const DDS::UserDataQosPolicy &qos1, const DDS::UserDataQosPolicy &qos2)
Definition: Qos_Helper.inl:948
PresentationQosPolicy presentation

◆ changeable() [27/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::DataReaderQos qos1,
const DDS::DataReaderQos qos2 
)
static

Definition at line 1199 of file Qos_Helper.inl.

References ACE_INLINE, changeable(), DDS::DataReaderQos::deadline, DDS::DataReaderQos::destination_order, DDS::DataReaderQos::durability, DDS::DataReaderQos::history, DDS::DataReaderQos::latency_budget, DDS::DataReaderQos::liveliness, DDS::DataReaderQos::ownership, DDS::DataReaderQos::reader_data_lifecycle, DDS::DataReaderQos::reliability, DDS::DataReaderQos::representation, DDS::DataReaderQos::resource_limits, DDS::DataReaderQos::time_based_filter, and DDS::DataReaderQos::user_data.

1201 {
1202  return
1203  changeable(qos1.durability, qos2.durability)
1204  && changeable(qos1.deadline, qos2.deadline)
1206  && changeable(qos1.liveliness, qos2.liveliness)
1207  && changeable(qos1.reliability, qos2.reliability)
1209  && changeable(qos1.history, qos2.history)
1211  && changeable(qos1.user_data, qos2.user_data)
1214  && changeable(qos1.ownership, qos2.ownership)
1215  && changeable(qos1.representation, qos2.representation);
1216 }
DestinationOrderQosPolicy destination_order
LivelinessQosPolicy liveliness
ResourceLimitsQosPolicy resource_limits
TimeBasedFilterQosPolicy time_based_filter
ReaderDataLifecycleQosPolicy reader_data_lifecycle
LatencyBudgetQosPolicy latency_budget
DataRepresentationQosPolicy representation
ReliabilityQosPolicy reliability
DurabilityQosPolicy durability
UserDataQosPolicy user_data
OwnershipQosPolicy ownership
HistoryQosPolicy history
static bool changeable(const DDS::UserDataQosPolicy &qos1, const DDS::UserDataQosPolicy &qos2)
Definition: Qos_Helper.inl:948
DeadlineQosPolicy deadline

◆ changeable() [28/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::SubscriberQos qos1,
const DDS::SubscriberQos qos2 
)
static

Definition at line 1219 of file Qos_Helper.inl.

References ACE_INLINE, changeable(), DDS::SubscriberQos::entity_factory, DDS::SubscriberQos::group_data, DDS::SubscriberQos::partition, and DDS::SubscriberQos::presentation.

1221 {
1222  return
1224  && changeable(qos1.partition, qos2.partition)
1225  && changeable(qos1.group_data, qos2.group_data)
1226  && changeable(qos1.entity_factory, qos2.entity_factory);
1227 }
GroupDataQosPolicy group_data
PresentationQosPolicy presentation
static bool changeable(const DDS::UserDataQosPolicy &qos1, const DDS::UserDataQosPolicy &qos2)
Definition: Qos_Helper.inl:948
EntityFactoryQosPolicy entity_factory
PartitionQosPolicy partition

◆ changeable() [29/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::DomainParticipantFactoryQos qos1,
const DDS::DomainParticipantFactoryQos qos2 
)
static

Definition at line 1230 of file Qos_Helper.inl.

References ACE_INLINE, changeable(), and DDS::DomainParticipantFactoryQos::entity_factory.

1232 {
1233  return changeable(qos1.entity_factory, qos2.entity_factory);
1234 }
EntityFactoryQosPolicy entity_factory
static bool changeable(const DDS::UserDataQosPolicy &qos1, const DDS::UserDataQosPolicy &qos2)
Definition: Qos_Helper.inl:948

◆ changeable() [30/30]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::changeable ( const DDS::DataRepresentationQosPolicy qos1,
const DDS::DataRepresentationQosPolicy qos2 
)
static

Definition at line 1237 of file Qos_Helper.inl.

References ACE_INLINE.

1240 {
1241  return qos1 == qos2;
1242 }

◆ consistent() [1/9]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::consistent ( const DDS::ResourceLimitsQosPolicy resource_limits,
const DDS::HistoryQosPolicy history 
)
static

Definition at line 596 of file Qos_Helper.inl.

References ACE_INLINE, DDS::HistoryQosPolicy::depth, DDS::LENGTH_UNLIMITED, max_samples, DDS::ResourceLimitsQosPolicy::max_samples, and DDS::ResourceLimitsQosPolicy::max_samples_per_instance.

Referenced by consistent(), copy_from_topic_qos(), OpenDDS::DCPS::DomainParticipantFactoryImpl::create_participant(), OpenDDS::DCPS::DomainParticipantImpl::create_topic_i(), OpenDDS::DCPS::SubscriberImpl::set_default_datareader_qos(), OpenDDS::DCPS::PublisherImpl::set_default_datawriter_qos(), OpenDDS::DCPS::DomainParticipantFactoryImpl::set_default_participant_qos(), OpenDDS::DCPS::DomainParticipantImpl::set_default_publisher_qos(), OpenDDS::DCPS::DomainParticipantImpl::set_default_subscriber_qos(), OpenDDS::DCPS::DomainParticipantImpl::set_default_topic_qos(), OpenDDS::DCPS::TopicImpl::set_qos(), OpenDDS::DCPS::DomainParticipantFactoryImpl::set_qos(), OpenDDS::DCPS::PublisherImpl::set_qos(), OpenDDS::DCPS::SubscriberImpl::set_qos(), OpenDDS::DCPS::ReplayerImpl::set_qos(), OpenDDS::DCPS::RecorderImpl::set_qos(), OpenDDS::DCPS::DataWriterImpl::set_qos(), OpenDDS::DCPS::DomainParticipantImpl::set_qos(), OpenDDS::DCPS::DataReaderImpl::set_qos(), OpenDDS::DCPS::SubscriberImpl::validate_datareader_qos(), OpenDDS::DCPS::PublisherImpl::validate_datawriter_qos(), OpenDDS::DCPS::DomainParticipantImpl::validate_publisher_qos(), and OpenDDS::DCPS::DomainParticipantImpl::validate_subscriber_qos().

599 {
600  CORBA::Long const max_samples_per_instance =
601  resource_limits.max_samples_per_instance;
602  CORBA::Long const max_samples = resource_limits.max_samples;
603 
604  return
605  (max_samples_per_instance == DDS::LENGTH_UNLIMITED
606  || (max_samples_per_instance >= history.depth
607  && (max_samples == DDS::LENGTH_UNLIMITED
608  || max_samples >= max_samples_per_instance)));
609 }
ACE_CDR::Long Long
const long LENGTH_UNLIMITED
local interface<%TYPE%> inout ::DDS::SampleInfoSeq in long max_samples
Definition: IDLTemplate.txt:66

◆ consistent() [2/9]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::consistent ( const DDS::DeadlineQosPolicy deadline,
const DDS::TimeBasedFilterQosPolicy time_based_filter 
)
static

Definition at line 613 of file Qos_Helper.inl.

References ACE_INLINE, DDS::TimeBasedFilterQosPolicy::minimum_separation, and DDS::DeadlineQosPolicy::period.

615 {
616  return time_based_filter.minimum_separation <= deadline.period;
617 }

◆ consistent() [3/9]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::consistent ( const DDS::DomainParticipantQos qos)
static

Definition at line 620 of file Qos_Helper.inl.

References ACE_INLINE.

621 {
622  return true;
623 }

◆ consistent() [4/9]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::consistent ( const DDS::TopicQos qos)
static

Definition at line 626 of file Qos_Helper.inl.

References ACE_INLINE, consistent(), DDS::TopicQos::durability_service, DDS::TopicQos::history, DDS::DurabilityServiceQosPolicy::history_depth, DDS::DurabilityServiceQosPolicy::history_kind, DDS::DurabilityServiceQosPolicy::max_instances, DDS::DurabilityServiceQosPolicy::max_samples, DDS::DurabilityServiceQosPolicy::max_samples_per_instance, and DDS::TopicQos::resource_limits.

627 {
628  // Leverage existing validation functions for related QoS
629  // policies.
630 
631 #ifndef OPENDDS_NO_PERSISTENCE_PROFILE
632  DDS::HistoryQosPolicy const ds_history = {
635  };
636 
637  DDS::ResourceLimitsQosPolicy const ds_resource_limits = {
641  };
642 
643  return
645  && consistent(ds_resource_limits, ds_history);
646 #else
647  ACE_UNUSED_ARG(qos);
648  return true;
649 #endif
650 }
HistoryQosPolicyKind history_kind
static bool consistent(const DDS::ResourceLimitsQosPolicy &resource_limits, const DDS::HistoryQosPolicy &history)
Definition: Qos_Helper.inl:596
HistoryQosPolicy history
ResourceLimitsQosPolicy resource_limits
DurabilityServiceQosPolicy durability_service

◆ consistent() [5/9]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::consistent ( const DDS::DataWriterQos qos)
static

Definition at line 654 of file Qos_Helper.inl.

References ACE_INLINE, consistent(), DDS::DataWriterQos::durability_service, DDS::DataWriterQos::history, DDS::DurabilityServiceQosPolicy::history_depth, DDS::DurabilityServiceQosPolicy::history_kind, DDS::DurabilityServiceQosPolicy::max_instances, DDS::DurabilityServiceQosPolicy::max_samples, DDS::DurabilityServiceQosPolicy::max_samples_per_instance, and DDS::DataWriterQos::resource_limits.

655 {
656  // Leverage existing validation functions for related QoS
657  // policies.
658 
659 #ifndef OPENDDS_NO_PERSISTENCE_PROFILE
660  DDS::HistoryQosPolicy const ds_history = {
663  };
664 
665  DDS::ResourceLimitsQosPolicy const ds_resource_limits = {
669  };
670 
671  return
673  && consistent(ds_resource_limits, ds_history);
674 #else
675  ACE_UNUSED_ARG(qos);
676  return true;
677 #endif
678 }
HistoryQosPolicyKind history_kind
ResourceLimitsQosPolicy resource_limits
static bool consistent(const DDS::ResourceLimitsQosPolicy &resource_limits, const DDS::HistoryQosPolicy &history)
Definition: Qos_Helper.inl:596
DurabilityServiceQosPolicy durability_service
HistoryQosPolicy history

◆ consistent() [6/9]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::consistent ( const DDS::PublisherQos qos)
static

Definition at line 682 of file Qos_Helper.inl.

References ACE_INLINE.

683 {
684  return true;
685 }

◆ consistent() [7/9]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::consistent ( const DDS::DataReaderQos qos)
static

Definition at line 689 of file Qos_Helper.inl.

References ACE_INLINE, consistent(), DDS::DataReaderQos::deadline, DDS::DataReaderQos::history, DDS::DataReaderQos::resource_limits, and DDS::DataReaderQos::time_based_filter.

690 {
691  return
694 }
static bool consistent(const DDS::ResourceLimitsQosPolicy &resource_limits, const DDS::HistoryQosPolicy &history)
Definition: Qos_Helper.inl:596
ResourceLimitsQosPolicy resource_limits
TimeBasedFilterQosPolicy time_based_filter
HistoryQosPolicy history
DeadlineQosPolicy deadline

◆ consistent() [8/9]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::consistent ( const DDS::SubscriberQos qos)
static

Definition at line 698 of file Qos_Helper.inl.

References ACE_INLINE.

699 {
700  return true;
701 }

◆ consistent() [9/9]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::consistent ( const DDS::DomainParticipantFactoryQos qos)
static

Definition at line 705 of file Qos_Helper.inl.

References ACE_INLINE.

706 {
707  return true;
708 }

◆ copy_from_topic_qos() [1/2]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::copy_from_topic_qos ( DDS::DataReaderQos a_datareader_qos,
const DDS::TopicQos a_topic_qos 
)
static

Definition at line 1245 of file Qos_Helper.inl.

References ACE_INLINE, consistent(), DDS::TopicQos::deadline, DDS::DataReaderQos::deadline, DDS::TopicQos::destination_order, DDS::DataReaderQos::destination_order, DDS::TopicQos::durability, DDS::DataReaderQos::durability, DDS::TopicQos::history, DDS::DataReaderQos::history, DDS::TopicQos::latency_budget, DDS::DataReaderQos::latency_budget, DDS::TopicQos::liveliness, DDS::DataReaderQos::liveliness, DDS::TopicQos::ownership, DDS::DataReaderQos::ownership, DDS::TopicQos::reliability, DDS::DataReaderQos::reliability, DDS::TopicQos::representation, DDS::DataReaderQos::representation, DDS::TopicQos::resource_limits, DDS::DataReaderQos::resource_limits, and valid().

Referenced by OpenDDS::DCPS::SubscriberImpl::copy_from_topic_qos(), OpenDDS::DCPS::PublisherImpl::copy_from_topic_qos(), OpenDDS::DCPS::SubscriberImpl::validate_datareader_qos(), and OpenDDS::DCPS::PublisherImpl::validate_datawriter_qos().

1247 {
1248  if (!Qos_Helper::valid(a_topic_qos) || !Qos_Helper::consistent(a_topic_qos)) {
1249  return false;
1250  }
1251  // the caller can get the default before calling this
1252  // method if it wants to.
1253  a_datareader_qos.durability = a_topic_qos.durability;
1254  a_datareader_qos.deadline = a_topic_qos.deadline;
1255  a_datareader_qos.latency_budget = a_topic_qos.latency_budget;
1256  a_datareader_qos.liveliness = a_topic_qos.liveliness;
1257  a_datareader_qos.reliability = a_topic_qos.reliability;
1258  a_datareader_qos.destination_order = a_topic_qos.destination_order;
1259  a_datareader_qos.history = a_topic_qos.history;
1260  a_datareader_qos.resource_limits = a_topic_qos.resource_limits;
1261  a_datareader_qos.ownership = a_topic_qos.ownership;
1262  a_datareader_qos.representation = a_topic_qos.representation;
1263  return true;
1264 }
LivelinessQosPolicy liveliness
OwnershipQosPolicy ownership
DestinationOrderQosPolicy destination_order
LivelinessQosPolicy liveliness
static bool consistent(const DDS::ResourceLimitsQosPolicy &resource_limits, const DDS::HistoryQosPolicy &history)
Definition: Qos_Helper.inl:596
ResourceLimitsQosPolicy resource_limits
LatencyBudgetQosPolicy latency_budget
DataRepresentationQosPolicy representation
ReliabilityQosPolicy reliability
DurabilityQosPolicy durability
DeadlineQosPolicy deadline
OwnershipQosPolicy ownership
ReliabilityQosPolicy reliability
HistoryQosPolicy history
static bool valid(const DDS::UserDataQosPolicy &qos)
Definition: Qos_Helper.inl:723
HistoryQosPolicy history
DurabilityQosPolicy durability
DataRepresentationQosPolicy representation
ResourceLimitsQosPolicy resource_limits
DeadlineQosPolicy deadline
DestinationOrderQosPolicy destination_order
LatencyBudgetQosPolicy latency_budget

◆ copy_from_topic_qos() [2/2]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::copy_from_topic_qos ( DDS::DataWriterQos a_datareader_qos,
const DDS::TopicQos a_topic_qos 
)
static

Definition at line 1267 of file Qos_Helper.inl.

References consistent(), DDS::TopicQos::deadline, DDS::DataWriterQos::deadline, DDS::TopicQos::destination_order, DDS::DataWriterQos::destination_order, DDS::TopicQos::durability, DDS::DataWriterQos::durability, DDS::TopicQos::durability_service, DDS::DataWriterQos::durability_service, DDS::TopicQos::history, DDS::DataWriterQos::history, DDS::TopicQos::latency_budget, DDS::DataWriterQos::latency_budget, DDS::TopicQos::lifespan, DDS::DataWriterQos::lifespan, DDS::TopicQos::liveliness, DDS::DataWriterQos::liveliness, OPENDDS_END_VERSIONED_NAMESPACE_DECL, DDS::TopicQos::ownership, DDS::DataWriterQos::ownership, DDS::TopicQos::reliability, DDS::DataWriterQos::reliability, DDS::TopicQos::representation, DDS::DataWriterQos::representation, DDS::TopicQos::resource_limits, DDS::DataWriterQos::resource_limits, DDS::TopicQos::transport_priority, DDS::DataWriterQos::transport_priority, and valid().

1269 {
1270  if (!Qos_Helper::valid(a_topic_qos) || !Qos_Helper::consistent(a_topic_qos)) {
1271  return false;
1272  }
1273  // Some members in the DataWriterQos are not contained
1274  // in the TopicQos. The caller needs initialize them.
1275  a_datawriter_qos.durability = a_topic_qos.durability;
1276 #ifndef OPENDDS_NO_PERSISTENCE_PROFILE
1277  a_datawriter_qos.durability_service = a_topic_qos.durability_service;
1278 #endif
1279  a_datawriter_qos.deadline = a_topic_qos.deadline;
1280  a_datawriter_qos.latency_budget = a_topic_qos.latency_budget;
1281  a_datawriter_qos.liveliness = a_topic_qos.liveliness;
1282  a_datawriter_qos.reliability = a_topic_qos.reliability;
1283  a_datawriter_qos.destination_order = a_topic_qos.destination_order;
1284  a_datawriter_qos.history = a_topic_qos.history;
1285  a_datawriter_qos.resource_limits = a_topic_qos.resource_limits;
1286  a_datawriter_qos.transport_priority = a_topic_qos.transport_priority;
1287  a_datawriter_qos.lifespan = a_topic_qos.lifespan;
1288  a_datawriter_qos.ownership = a_topic_qos.ownership;
1289  a_datawriter_qos.representation = a_topic_qos.representation;
1290  return true;
1291 }
LivelinessQosPolicy liveliness
OwnershipQosPolicy ownership
static bool consistent(const DDS::ResourceLimitsQosPolicy &resource_limits, const DDS::HistoryQosPolicy &history)
Definition: Qos_Helper.inl:596
DeadlineQosPolicy deadline
ReliabilityQosPolicy reliability
HistoryQosPolicy history
static bool valid(const DDS::UserDataQosPolicy &qos)
Definition: Qos_Helper.inl:723
DurabilityQosPolicy durability
TransportPriorityQosPolicy transport_priority
DataRepresentationQosPolicy representation
ResourceLimitsQosPolicy resource_limits
LifespanQosPolicy lifespan
DurabilityServiceQosPolicy durability_service
DestinationOrderQosPolicy destination_order
LatencyBudgetQosPolicy latency_budget

◆ valid() [1/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::UserDataQosPolicy qos)
static

◆ valid() [2/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::TopicDataQosPolicy qos)
static

Definition at line 729 of file Qos_Helper.inl.

References ACE_INLINE.

730 {
731  return true;
732 }

◆ valid() [3/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::GroupDataQosPolicy qos)
static

Definition at line 735 of file Qos_Helper.inl.

References ACE_INLINE.

736 {
737  return true;
738 }

◆ valid() [4/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::TransportPriorityQosPolicy qos)
static

Definition at line 742 of file Qos_Helper.inl.

References ACE_INLINE.

743 {
744  return true;
745 }

◆ valid() [5/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::LifespanQosPolicy qos)
static

Definition at line 748 of file Qos_Helper.inl.

References ACE_INLINE, DDS::LifespanQosPolicy::duration, and OpenDDS::DCPS::valid_duration().

749 {
750  return valid_duration(qos.duration);
751 }
ACE_INLINE OpenDDS_Dcps_Export bool valid_duration(DDS::Duration_t const &t)

◆ valid() [6/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::DurabilityQosPolicy qos)
static

◆ valid() [7/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::DurabilityServiceQosPolicy qos)
static

Definition at line 873 of file Qos_Helper.inl.

References ACE_INLINE, DDS::DurabilityServiceQosPolicy::history_depth, DDS::DurabilityServiceQosPolicy::history_kind, DDS::DurabilityServiceQosPolicy::max_instances, DDS::DurabilityServiceQosPolicy::max_samples, DDS::DurabilityServiceQosPolicy::max_samples_per_instance, OpenDDS::DCPS::non_negative_duration(), DDS::DurabilityServiceQosPolicy::service_cleanup_delay, and valid().

874 {
875  // Leverage existing validation functions for related QoS
876  // policies.
877  DDS::HistoryQosPolicy const history = {
878  qos.history_kind,
879  qos.history_depth
880  };
881 
882  DDS::ResourceLimitsQosPolicy const resource_limits = {
883  qos.max_samples,
884  qos.max_instances,
886  };
887 
888  return
890  && valid(history)
891  && valid(resource_limits);
892 }
HistoryQosPolicyKind history_kind
ACE_INLINE OpenDDS_Dcps_Export bool non_negative_duration(const DDS::Duration_t &t)
static bool valid(const DDS::UserDataQosPolicy &qos)
Definition: Qos_Helper.inl:723

◆ valid() [8/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::PresentationQosPolicy qos)
static

◆ valid() [9/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::DeadlineQosPolicy qos)
static

Definition at line 774 of file Qos_Helper.inl.

References ACE_INLINE, DDS::DeadlineQosPolicy::period, and OpenDDS::DCPS::valid_duration().

775 {
776  return valid_duration(qos.period);
777 }
ACE_INLINE OpenDDS_Dcps_Export bool valid_duration(DDS::Duration_t const &t)

◆ valid() [10/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::LatencyBudgetQosPolicy qos)
static

Definition at line 780 of file Qos_Helper.inl.

References ACE_INLINE.

781 {
782  return true;
783 }

◆ valid() [11/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::OwnershipQosPolicy qos)
static

Definition at line 786 of file Qos_Helper.inl.

References ACE_INLINE, DDS::EXCLUSIVE_OWNERSHIP_QOS, DDS::OwnershipQosPolicy::kind, and DDS::SHARED_OWNERSHIP_QOS.

787 {
788  return
790 #ifndef OPENDDS_NO_OWNERSHIP_KIND_EXCLUSIVE
792 #endif
793  ;
794 }
OwnershipQosPolicyKind kind

◆ valid() [12/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::OwnershipStrengthQosPolicy qos)
static

Definition at line 798 of file Qos_Helper.inl.

References ACE_INLINE.

799 {
800  return true;
801 }

◆ valid() [13/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::LivelinessQosPolicy qos)
static

◆ valid() [14/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::TimeBasedFilterQosPolicy qos)
static

Definition at line 816 of file Qos_Helper.inl.

References ACE_INLINE.

817 {
818  return true;
819 }

◆ valid() [15/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::PartitionQosPolicy qos)
static

Definition at line 823 of file Qos_Helper.inl.

References ACE_INLINE.

824 {
825  // All strings are valid, although we may not accept all
826  // wildcard patterns. For now we treat unsupported wildcard
827  // patterns literally instead of as wildcards.
828  return true;
829 }

◆ valid() [16/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::ReliabilityQosPolicy qos)
static

◆ valid() [17/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::DestinationOrderQosPolicy qos)
static

◆ valid() [18/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::HistoryQosPolicy qos)
static

◆ valid() [19/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::ResourceLimitsQosPolicy qos)
static

◆ valid() [20/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::EntityFactoryQosPolicy qos)
static

Definition at line 896 of file Qos_Helper.inl.

References ACE_INLINE, and DDS::EntityFactoryQosPolicy::autoenable_created_entities.

897 {
898  // see Marked_Default_Qos::marked_default_DomainParticipantQos()
899  const void* const mem = &qos.autoenable_created_entities;
900  return *static_cast<const char*>(mem) != 3;
901 }

◆ valid() [21/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::PropertyQosPolicy qos)
static

Definition at line 904 of file Qos_Helper.inl.

References ACE_INLINE.

905 {
906  return true;
907 }

◆ valid() [22/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::WriterDataLifecycleQosPolicy qos)
static

Definition at line 910 of file Qos_Helper.inl.

References ACE_INLINE.

911 {
912  return true;
913 }

◆ valid() [23/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::ReaderDataLifecycleQosPolicy qos)
static

Definition at line 916 of file Qos_Helper.inl.

References ACE_INLINE.

917 {
918  return true;
919 }

◆ valid() [24/31]

bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::DomainParticipantQos qos)
static

Definition at line 23 of file Qos_Helper.cpp.

References ACE_ERROR, DDS::DomainParticipantQos::entity_factory, LM_NOTICE, OpenDDS::DCPS::log_level, OpenDDS::DCPS::LogLevel::Notice, DDS::DomainParticipantQos::property, DDS::DomainParticipantQos::user_data, and valid().

24 {
25  if (!valid(qos.user_data)) {
26  if (log_level >= LogLevel::Notice) {
27  ACE_ERROR((LM_NOTICE,
28  "(%P|%t) NOTICE: Qos_Helper::valid::DomainParticipantQos, invalid user_data qos.\n"));
29  }
30  return false;
31  }
32 
33  if (!valid(qos.entity_factory)) {
34  if (log_level >= LogLevel::Notice) {
35  ACE_ERROR((LM_NOTICE,
36  "(%P|%t) NOTICE: Qos_Helper::valid::DomainParticipantQos, invalid entity_factory qos.\n"));
37  }
38  return false;
39  }
40 
41  if (!valid(qos.property)) {
42  if (log_level >= LogLevel::Notice) {
43  ACE_ERROR((LM_NOTICE,
44  "(%P|%t) NOTICE: Qos_Helper::valid::DomainParticipantQos, invalid property qos.\n"));
45  }
46  return false;
47  }
48 
49  return true;
50 }
OpenDDS_Dcps_Export LogLevel log_level
#define ACE_ERROR(X)
UserDataQosPolicy user_data
static bool valid(const DDS::UserDataQosPolicy &qos)
Definition: Qos_Helper.inl:723
EntityFactoryQosPolicy entity_factory
PropertyQosPolicy property

◆ valid() [25/31]

bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::TopicQos qos)
static

Definition at line 52 of file Qos_Helper.cpp.

References ACE_ERROR, DDS::TopicQos::deadline, DDS::TopicQos::destination_order, DDS::TopicQos::durability, DDS::TopicQos::durability_service, DDS::TopicQos::history, DDS::TopicQos::latency_budget, DDS::TopicQos::lifespan, DDS::TopicQos::liveliness, LM_NOTICE, OpenDDS::DCPS::log_level, OpenDDS::DCPS::LogLevel::Notice, DDS::TopicQos::ownership, DDS::TopicQos::representation, DDS::TopicQos::resource_limits, DDS::TopicQos::topic_data, DDS::TopicQos::transport_priority, and valid().

53 {
54  if (!valid(qos.topic_data)) {
55  if (log_level >= LogLevel::Notice) {
56  ACE_ERROR((LM_NOTICE,
57  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid topic_data qos.\n"));
58  }
59  return false;
60  }
61 
62  if (!valid(qos.durability)) {
63  if (log_level >= LogLevel::Notice) {
64  ACE_ERROR((LM_NOTICE,
65  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid durability qos.\n"));
66  }
67  return false;
68  }
69 
70 #ifndef OPENDDS_NO_PERSISTENCE_PROFILE
71  if (!valid(qos.durability_service)) {
72  if (log_level >= LogLevel::Notice) {
73  ACE_ERROR((LM_NOTICE,
74  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid durability_service qos.\n"));
75  }
76  return false;
77  }
78 #endif
79 
80  if (!valid(qos.deadline)) {
81  if (log_level >= LogLevel::Notice) {
82  ACE_ERROR((LM_NOTICE,
83  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid deadline qos.\n"));
84  }
85  return false;
86  }
87 
88  if (!valid(qos.latency_budget)) {
89  if (log_level >= LogLevel::Notice) {
90  ACE_ERROR((LM_NOTICE,
91  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid latency_budget qos.\n"));
92  }
93  return false;
94  }
95 
96  if (!valid(qos.liveliness)) {
97  if (log_level >= LogLevel::Notice) {
98  ACE_ERROR((LM_NOTICE,
99  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid liveliness qos.\n"));
100  }
101  return false;
102  }
103 
104  if (!valid(qos.destination_order)) {
105  if (log_level >= LogLevel::Notice) {
106  ACE_ERROR((LM_NOTICE,
107  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid destination_order qos.\n"));
108  }
109  return false;
110  }
111 
112  if (!valid(qos.history)) {
113  if (log_level >= LogLevel::Notice) {
114  ACE_ERROR((LM_NOTICE,
115  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid history qos.\n"));
116  }
117  return false;
118  }
119 
120  if (!valid(qos.resource_limits)) {
121  if (log_level >= LogLevel::Notice) {
122  ACE_ERROR((LM_NOTICE,
123  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid resource_limits qos.\n"));
124  }
125  return false;
126  }
127 
128  if (!valid(qos.transport_priority)) {
129  if (log_level >= LogLevel::Notice) {
130  ACE_ERROR((LM_NOTICE,
131  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid transport_priority qos.\n"));
132  }
133  return false;
134  }
135 
136  if (!valid(qos.lifespan)) {
137  if (log_level >= LogLevel::Notice) {
138  ACE_ERROR((LM_NOTICE,
139  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid lifespan qos.\n"));
140  }
141  return false;
142  }
143 
144  if (!valid(qos.ownership)) {
145  if (log_level >= LogLevel::Notice) {
146  ACE_ERROR((LM_NOTICE,
147  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid ownership qos.\n"));
148  }
149  return false;
150  }
151 
152  if (!valid(qos.representation)) {
153  if (log_level >= LogLevel::Notice) {
154  ACE_ERROR((LM_NOTICE,
155  "(%P|%t) NOTICE: Qos_Helper::valid::TopicQos, invalid representation qos.\n"));
156  }
157  return false;
158  }
159 
160  return true;
161 }
OpenDDS_Dcps_Export LogLevel log_level
#define ACE_ERROR(X)
LivelinessQosPolicy liveliness
OwnershipQosPolicy ownership
TopicDataQosPolicy topic_data
DeadlineQosPolicy deadline
HistoryQosPolicy history
static bool valid(const DDS::UserDataQosPolicy &qos)
Definition: Qos_Helper.inl:723
DurabilityQosPolicy durability
TransportPriorityQosPolicy transport_priority
DataRepresentationQosPolicy representation
ResourceLimitsQosPolicy resource_limits
LifespanQosPolicy lifespan
DurabilityServiceQosPolicy durability_service
DestinationOrderQosPolicy destination_order
LatencyBudgetQosPolicy latency_budget

◆ valid() [26/31]

bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::DataWriterQos qos)
static

Definition at line 163 of file Qos_Helper.cpp.

References ACE_ERROR, DDS::DataWriterQos::deadline, DDS::DataWriterQos::destination_order, DDS::DataWriterQos::durability, DDS::DataWriterQos::durability_service, DDS::DataWriterQos::history, DDS::DataWriterQos::latency_budget, DDS::DataWriterQos::lifespan, DDS::DataWriterQos::liveliness, LM_NOTICE, OpenDDS::DCPS::log_level, OpenDDS::DCPS::LogLevel::Notice, DDS::DataWriterQos::ownership, DDS::DataWriterQos::ownership_strength, DDS::DataWriterQos::representation, DDS::DataWriterQos::resource_limits, DDS::DataWriterQos::transport_priority, DDS::DataWriterQos::user_data, valid(), and DDS::DataWriterQos::writer_data_lifecycle.

164 {
165  if (!valid(qos.durability)) {
166  if (log_level >= LogLevel::Notice) {
167  ACE_ERROR((LM_NOTICE,
168  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid durability qos.\n"));
169  }
170  return false;
171  }
172 
173 #ifndef OPENDDS_NO_PERSISTENCE_PROFILE
174  if (!valid(qos.durability_service)) {
175  if (log_level >= LogLevel::Notice) {
176  ACE_ERROR((LM_NOTICE,
177  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid durability_service qos.\n"));
178  }
179  return false;
180  }
181 #endif
182 
183  if (!valid(qos.deadline)) {
184  if (log_level >= LogLevel::Notice) {
185  ACE_ERROR((LM_NOTICE,
186  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid deadline qos.\n"));
187  }
188  return false;
189  }
190 
191  if (!valid(qos.latency_budget)) {
192  if (log_level >= LogLevel::Notice) {
193  ACE_ERROR((LM_NOTICE,
194  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid latency_budget qos.\n"));
195  }
196  return false;
197  }
198 
199  if (!valid(qos.liveliness)) {
200  if (log_level >= LogLevel::Notice) {
201  ACE_ERROR((LM_NOTICE,
202  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid liveliness qos.\n"));
203  }
204  return false;
205  }
206 
207  if (!valid(qos.destination_order)) {
208  if (log_level >= LogLevel::Notice) {
209  ACE_ERROR((LM_NOTICE,
210  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid destination_order qos.\n"));
211  }
212  return false;
213  }
214 
215  if (!valid(qos.history)) {
216  if (log_level >= LogLevel::Notice) {
217  ACE_ERROR((LM_NOTICE,
218  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid history qos.\n"));
219  }
220  return false;
221  }
222 
223  if (!valid(qos.resource_limits)) {
224  if (log_level >= LogLevel::Notice) {
225  ACE_ERROR((LM_NOTICE,
226  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid resource_limits qos.\n"));
227  }
228  return false;
229  }
230 
231  if (!valid(qos.transport_priority)) {
232  if (log_level >= LogLevel::Notice) {
233  ACE_ERROR((LM_NOTICE,
234  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid transport_priority qos.\n"));
235  }
236  return false;
237  }
238 
239  if (!valid(qos.lifespan)) {
240  if (log_level >= LogLevel::Notice) {
241  ACE_ERROR((LM_NOTICE,
242  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid lifespan qos.\n"));
243  }
244  return false;
245  }
246 
247  if (!valid(qos.user_data)) {
248  if (log_level >= LogLevel::Notice) {
249  ACE_ERROR((LM_NOTICE,
250  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid user_data qos.\n"));
251  }
252  return false;
253  }
254 
255  if (!valid(qos.ownership)) {
256  if (log_level >= LogLevel::Notice) {
257  ACE_ERROR((LM_NOTICE,
258  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid ownership qos.\n"));
259  }
260  return false;
261  }
262 
263 #ifndef OPENDDS_NO_OWNERSHIP_KIND_EXCLUSIVE
264  if (!valid(qos.ownership_strength)) {
265  if (log_level >= LogLevel::Notice) {
266  ACE_ERROR((LM_NOTICE,
267  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid ownership_strength qos.\n"));
268  }
269  return false;
270  }
271 #endif
272 
273  if (!valid(qos.writer_data_lifecycle)) {
274  if (log_level >= LogLevel::Notice) {
275  ACE_ERROR((LM_NOTICE,
276  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid writer_data_lifecycle qos.\n"));
277  }
278  return false;
279  }
280 
281  if (!valid(qos.representation)) {
282  if (log_level >= LogLevel::Notice) {
283  ACE_ERROR((LM_NOTICE,
284  "(%P|%t) NOTICE: Qos_Helper::valid::DataWriterQos, invalid data representation qos.\n"));
285  }
286  return false;
287  }
288 
289  return true;
290 }
OpenDDS_Dcps_Export LogLevel log_level
#define ACE_ERROR(X)
ResourceLimitsQosPolicy resource_limits
UserDataQosPolicy user_data
DurabilityServiceQosPolicy durability_service
LatencyBudgetQosPolicy latency_budget
OwnershipStrengthQosPolicy ownership_strength
static bool valid(const DDS::UserDataQosPolicy &qos)
Definition: Qos_Helper.inl:723
LifespanQosPolicy lifespan
DurabilityQosPolicy durability
DataRepresentationQosPolicy representation
DeadlineQosPolicy deadline
WriterDataLifecycleQosPolicy writer_data_lifecycle
OwnershipQosPolicy ownership
TransportPriorityQosPolicy transport_priority
LivelinessQosPolicy liveliness
DestinationOrderQosPolicy destination_order
HistoryQosPolicy history

◆ valid() [27/31]

bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::PublisherQos qos)
static

Definition at line 292 of file Qos_Helper.cpp.

References ACE_ERROR, DDS::PublisherQos::entity_factory, DDS::PublisherQos::group_data, LM_NOTICE, OpenDDS::DCPS::log_level, OpenDDS::DCPS::LogLevel::Notice, DDS::PublisherQos::partition, DDS::PublisherQos::presentation, and valid().

293 {
294 
295  if (!valid(qos.presentation)) {
296  if (log_level >= LogLevel::Notice) {
297  ACE_ERROR((LM_NOTICE,
298  "(%P|%t) NOTICE: Qos_Helper::valid::PublisherQos, invalid presentation qos.\n"));
299  }
300  return false;
301  }
302 
303  if (!valid(qos.partition)) {
304  if (log_level >= LogLevel::Notice) {
305  ACE_ERROR((LM_NOTICE,
306  "(%P|%t) NOTICE: Qos_Helper::valid::PublisherQos, invalid partition qos.\n"));
307  }
308  return false;
309  }
310 
311  if (!valid(qos.group_data)) {
312  if (log_level >= LogLevel::Notice) {
313  ACE_ERROR((LM_NOTICE,
314  "(%P|%t) NOTICE: Qos_Helper::valid::PublisherQos, invalid group_data qos.\n"));
315  }
316  return false;
317  }
318 
319  if (!valid(qos.entity_factory)) {
320  if (log_level >= LogLevel::Notice) {
321  ACE_ERROR((LM_NOTICE,
322  "(%P|%t) NOTICE: Qos_Helper::valid::PublisherQos, sinvalid entity_factory qos.\n"));
323  }
324  return false;
325  }
326 
327  return true;
328 }
OpenDDS_Dcps_Export LogLevel log_level
#define ACE_ERROR(X)
PartitionQosPolicy partition
GroupDataQosPolicy group_data
EntityFactoryQosPolicy entity_factory
static bool valid(const DDS::UserDataQosPolicy &qos)
Definition: Qos_Helper.inl:723
PresentationQosPolicy presentation

◆ valid() [28/31]

bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::DataReaderQos qos)
static

Definition at line 330 of file Qos_Helper.cpp.

References ACE_ERROR, DDS::DataReaderQos::deadline, DDS::DataReaderQos::destination_order, DDS::DataReaderQos::durability, DDS::DataReaderQos::history, DDS::DataReaderQos::latency_budget, DDS::DataReaderQos::liveliness, LM_NOTICE, OpenDDS::DCPS::log_level, OpenDDS::DCPS::LogLevel::Notice, DDS::DataReaderQos::ownership, DDS::DataReaderQos::reader_data_lifecycle, DDS::DataReaderQos::reliability, DDS::DataReaderQos::representation, DDS::DataReaderQos::resource_limits, DDS::DataReaderQos::time_based_filter, DDS::DataReaderQos::user_data, and valid().

331 {
332  if (!valid(qos.durability)) {
333  if (log_level >= LogLevel::Notice) {
334  ACE_ERROR((LM_NOTICE,
335  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid durability qos.\n"));
336  }
337  return false;
338  }
339 
340  if (!valid(qos.deadline)) {
341  if (log_level >= LogLevel::Notice) {
342  ACE_ERROR((LM_NOTICE,
343  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid deadline qos.\n"));
344  }
345  return false;
346  }
347 
348  if (!valid(qos.latency_budget)) {
349  if (log_level >= LogLevel::Notice) {
350  ACE_ERROR((LM_NOTICE,
351  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid latency_budget qos.\n"));
352  }
353  return false;
354  }
355 
356  if (!valid(qos.liveliness)) {
357  if (log_level >= LogLevel::Notice) {
358  ACE_ERROR((LM_NOTICE,
359  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid liveliness qos.\n"));
360  }
361  return false;
362  }
363 
364  if (!valid(qos.reliability)) {
365  if (log_level >= LogLevel::Notice) {
366  ACE_ERROR((LM_NOTICE,
367  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid reliability qos.\n"));
368  }
369  return false;
370  }
371 
372  if (!valid(qos.destination_order)) {
373  if (log_level >= LogLevel::Notice) {
374  ACE_ERROR((LM_NOTICE,
375  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid destination_order qos.\n"));
376  }
377  return false;
378  }
379 
380  if (!valid(qos.history)) {
381  if (log_level >= LogLevel::Notice) {
382  ACE_ERROR((LM_NOTICE,
383  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid history qos.\n"));
384  }
385  return false;
386  }
387 
388  if (!valid(qos.resource_limits)) {
389  if (log_level >= LogLevel::Notice) {
390  ACE_ERROR((LM_NOTICE,
391  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid resource_limits qos.\n"));
392  }
393  return false;
394  }
395 
396  if (!valid(qos.user_data)) {
397  if (log_level >= LogLevel::Notice) {
398  ACE_ERROR((LM_NOTICE,
399  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid user_data qos.\n"));
400  }
401  return false;
402  }
403 
404  if (!valid(qos.time_based_filter)) {
405  if (log_level >= LogLevel::Notice) {
406  ACE_ERROR((LM_NOTICE,
407  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid time_based_filter qos.\n"));
408  }
409  return false;
410  }
411 
412  if (!valid(qos.reader_data_lifecycle)) {
413  if (log_level >= LogLevel::Notice) {
414  ACE_ERROR((LM_NOTICE,
415  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid reader_data_lifecycle qos.\n"));
416  }
417  return false;
418  }
419 
420  if (!valid(qos.ownership)) {
421  if (log_level >= LogLevel::Notice) {
422  ACE_ERROR((LM_NOTICE,
423  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid ownership qos.\n"));
424  }
425  return false;
426  }
427 
428  if (!valid(qos.representation)) {
429  if (log_level >= LogLevel::Notice) {
430  ACE_ERROR((LM_NOTICE,
431  "(%P|%t) NOTICE: Qos_Helper::valid::DataReaderQos, invalid representation qos.\n"));
432  }
433  return false;
434  }
435 
436  return true;
437 }
OpenDDS_Dcps_Export LogLevel log_level
#define ACE_ERROR(X)
DestinationOrderQosPolicy destination_order
LivelinessQosPolicy liveliness
ResourceLimitsQosPolicy resource_limits
TimeBasedFilterQosPolicy time_based_filter
ReaderDataLifecycleQosPolicy reader_data_lifecycle
LatencyBudgetQosPolicy latency_budget
DataRepresentationQosPolicy representation
ReliabilityQosPolicy reliability
DurabilityQosPolicy durability
UserDataQosPolicy user_data
OwnershipQosPolicy ownership
static bool valid(const DDS::UserDataQosPolicy &qos)
Definition: Qos_Helper.inl:723
HistoryQosPolicy history
DeadlineQosPolicy deadline

◆ valid() [29/31]

bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::SubscriberQos qos)
static

Definition at line 439 of file Qos_Helper.cpp.

References ACE_ERROR, DDS::SubscriberQos::entity_factory, DDS::SubscriberQos::group_data, LM_NOTICE, OpenDDS::DCPS::log_level, OpenDDS::DCPS::LogLevel::Notice, DDS::SubscriberQos::partition, DDS::SubscriberQos::presentation, and valid().

440 {
441  if (!valid(qos.presentation)) {
442  if (log_level >= LogLevel::Notice) {
443  ACE_ERROR((LM_NOTICE,
444  "(%P|%t) NOTICE: Qos_Helper::valid::SubscriberQos, invalid presentation qos.\n"));
445  }
446  return false;
447  }
448 
449  if (!valid(qos.partition)) {
450  if (log_level >= LogLevel::Notice) {
451  ACE_ERROR((LM_NOTICE,
452  "(%P|%t) NOTICE: Qos_Helper::valid::SubscriberQos, invalid partition qos.\n"));
453  }
454  return false;
455  }
456 
457  if (!valid(qos.group_data)) {
458  if (log_level >= LogLevel::Notice) {
459  ACE_ERROR((LM_NOTICE,
460  "(%P|%t) NOTICE: Qos_Helper::valid::SubscriberQos, invalid group_data qos.\n"));
461  }
462  return false;
463  }
464 
465  if (!valid(qos.entity_factory)) {
466  if (log_level >= LogLevel::Notice) {
467  ACE_ERROR((LM_NOTICE,
468  "(%P|%t) NOTICE: Qos_Helper::valid::SubscriberQos, invalid entity_factory qos.\n"));
469  }
470  return false;
471  }
472 
473  return true;
474 }
OpenDDS_Dcps_Export LogLevel log_level
#define ACE_ERROR(X)
GroupDataQosPolicy group_data
static bool valid(const DDS::UserDataQosPolicy &qos)
Definition: Qos_Helper.inl:723
PresentationQosPolicy presentation
EntityFactoryQosPolicy entity_factory
PartitionQosPolicy partition

◆ valid() [30/31]

bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::DomainParticipantFactoryQos qos)
static

Definition at line 476 of file Qos_Helper.cpp.

References ACE_ERROR, DDS::DomainParticipantFactoryQos::entity_factory, LM_NOTICE, OpenDDS::DCPS::log_level, OpenDDS::DCPS::LogLevel::Notice, and valid().

477 {
478  if (!valid(qos.entity_factory)) {
479  if (log_level >= LogLevel::Notice) {
480  ACE_ERROR((LM_NOTICE,
481  "(%P|%t) NOTICE: Qos_Helper::valid::DomainParticipantFactoryQos, invalid entity_factory qos.\n"));
482  }
483  return false;
484  }
485 
486  return true;
487 }
OpenDDS_Dcps_Export LogLevel log_level
#define ACE_ERROR(X)
EntityFactoryQosPolicy entity_factory
static bool valid(const DDS::UserDataQosPolicy &qos)
Definition: Qos_Helper.inl:723

◆ valid() [31/31]

ACE_INLINE bool OpenDDS::DCPS::Qos_Helper::valid ( const DDS::DataRepresentationQosPolicy qos)
static

Definition at line 922 of file Qos_Helper.inl.

References ACE_ERROR, ACE_INLINE, ACE_TEXT(), LM_ERROR, OpenDDS::DCPS::UNALIGNED_CDR_DATA_REPRESENTATION, value, DDS::DataRepresentationQosPolicy::value, DDS::XCDR2_DATA_REPRESENTATION, DDS::XCDR_DATA_REPRESENTATION, and DDS::XML_DATA_REPRESENTATION.

923 {
924  const CORBA::ULong count = qos.value.length();
925 
926  for (CORBA::ULong i = 0; i < count; ++i) {
927  const CORBA::Short value = qos.value[i];
928 
929  switch (value) {
934  break;
935 
936  default:
937  ACE_ERROR((LM_ERROR, ACE_TEXT("(%P|%t) ERROR: ")
938  ACE_TEXT("Qos_Helper::valid(const DataRepresentationQosPolicy&): ")
939  ACE_TEXT("Unknown DataRepresentationId_t: %d\n"), value));
940  return false;
941  };
942  }
943 
944  return true;
945 }
#define ACE_ERROR(X)
const LogLevel::Value value
Definition: debug.cpp:61
const DataRepresentationId_t XCDR2_DATA_REPRESENTATION
ACE_CDR::Short Short
const DataRepresentationId_t XCDR_DATA_REPRESENTATION
ACE_CDR::ULong ULong
DataRepresentationIdSeq value
ACE_TEXT("TCP_Factory")
const DataRepresentationId_t XML_DATA_REPRESENTATION
const DDS::DataRepresentationId_t UNALIGNED_CDR_DATA_REPRESENTATION

The documentation for this class was generated from the following files: