MCPcopy Create free account
hub / github.com/OpenDDS/OpenDDS / managePublicationQos

Method managePublicationQos

tools/monitor/MonitorDataStorage.cpp:1049–1274  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1047}
1048
1049void
1050Monitor::MonitorDataStorage::managePublicationQos(
1051 TreeNode* parent,
1052 const DDS::PublicationBuiltinTopicData& data,
1053 bool& layoutChanged,
1054 bool& dataChanged
1055)
1056{
1057 // struct PublicationBuiltinTopicData {
1058 // BuiltinTopicKey_t key;
1059 // BuiltinTopicKey_t participant_key;
1060 // string topic_name;
1061 // string type_name;
1062 // DurabilityQosPolicy durability;
1063 // DurabilityServiceQosPolicy durability_service;
1064 // DeadlineQosPolicy deadline;
1065 // LatencyBudgetQosPolicy latency_budget;
1066 // LivelinessQosPolicy liveliness;
1067 // ReliabilityQosPolicy reliability;
1068 // LifespanQosPolicy lifespan;
1069 // UserDataQosPolicy user_data;
1070 // OwnershipQosPolicy ownership;
1071 // OwnershipStrengthQosPolicy ownership_strength;
1072 // DestinationOrderQosPolicy destination_order;
1073 // PresentationQosPolicy presentation;
1074 // PartitionQosPolicy partition;
1075 // TopicDataQosPolicy topic_data;
1076 // GroupDataQosPolicy group_data;
1077 // };
1078
1079 /// @TODO: segregate the publisher and data writer policy values.
1080
1081 // Obtain the node to hold the Qos policy values.
1082 bool create = false;
1083 TreeNode* qosNode
1084 = this->createQosNode( std::string("PublicationQos"), parent, create);
1085 layoutChanged |= create;
1086
1087 // Install the policy values.
1088
1089 // BuiltinTopicKey_t key;
1090 QString builtinTopicKeyLabel
1091 = QString( QObject::tr("BuiltinTopicKey.value"));
1092 if( this->manageQosPolicy( qosNode, builtinTopicKeyLabel, data.key)) {
1093 layoutChanged = true;
1094
1095 } else {
1096 dataChanged = true;
1097 }
1098
1099 // string name;
1100 QString topicNameLabel
1101 = QString( QObject::tr("Topic name"));
1102 QString topicNameValue
1103 = QString( QObject::tr( static_cast<const char*>(data.topic_name)));
1104 if( this->manageQosPolicy( qosNode, topicNameLabel, topicNameValue)) {
1105 layoutChanged = true;
1106

Callers

nothing calls this directly

Calls 1

createQosNodeMethod · 0.95

Tested by

no test coverage detected