@@ -1277,6 +1277,14 @@ void dds_discovery_examples()
12771277 }
12781278 {
12791279 // CONF_SERVER_SERVER_GUIDPREFIX_OPTION_1
1280+ // Using the ``>>`` operator and the ``std::istringstream`` type.
1281+ DomainParticipantQos serverQos;
1282+ std::istringstream (" 44.53.00.5f.45.50.52.4f.53.49.4d.41" ) >> serverQos.wire_protocol ().prefix ;
1283+ // !--
1284+ }
1285+ {
1286+ // CONF_SERVER_SERVER_GUIDPREFIX_OPTION_2
1287+ // Manual setting of the ``unsigned char`` in ASCII format.
12801288 eprosima::fastdds::rtps::GuidPrefix_t serverGuidPrefix;
12811289 serverGuidPrefix.value [0 ] = eprosima::fastdds::rtps::octet (0x44 );
12821290 serverGuidPrefix.value [1 ] = eprosima::fastdds::rtps::octet (0x53 );
@@ -1295,37 +1303,24 @@ void dds_discovery_examples()
12951303 serverQos.wire_protocol ().prefix = serverGuidPrefix;
12961304 // !--
12971305 }
1298- {
1299- // CONF_SERVER_SERVER_GUIDPREFIX_OPTION_2
1300- DomainParticipantQos serverQos;
1301- std::istringstream (" 44.53.00.5f.45.50.52.4f.53.49.4d.41" ) >> serverQos.wire_protocol ().prefix ;
1302- // !--
1303- }
1304- {
1305- // CONF_SERVER_CLIENT_GUIDPREFIX
1306- RemoteServerAttributes server;
1307- server.ReadguidPrefix (" 44.53.00.5f.45.50.52.4f.53.49.4d.41" );
1308-
1309- DomainParticipantQos clientQos;
1310- clientQos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (server);
1311- // !--
1312- }
13131306 {
13141307 // CONF_SERVER_CLIENT_LOCATORS
13151308 Locator_t locator;
1309+ // The default locator kind is UDPv4
1310+ locator.kind = LOCATOR_KIND_UDPv4;
13161311 IPLocator::setIPv4 (locator, 192 , 168 , 1 , 133 );
13171312 locator.port = 64863 ;
1318- RemoteServerAttributes server;
1319- server.metatrafficUnicastLocatorList .push_back (locator);
13201313
13211314 DomainParticipantQos clientQos;
1322- clientQos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (server );
1315+ clientQos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (locator );
13231316 // !--
13241317 }
13251318
13261319 {
13271320 // CONF_SERVER_SERVER_LOCATORS
13281321 Locator_t locator;
1322+ // The default locator kind is UDPv4
1323+ locator.kind = LOCATOR_KIND_UDPv4;
13291324 IPLocator::setIPv4 (locator, 192 , 168 , 1 , 133 );
13301325 locator.port = 64863 ;
13311326
@@ -1352,17 +1347,13 @@ void dds_discovery_examples()
13521347 /* Create a new server entry to which the client or server should connect */
13531348 RemoteServerAttributes remote_server_att;
13541349
1355- // Set server's GUID prefix
1356- remote_server_att.ReadguidPrefix (" 44.53.00.5f.45.50.52.4f.53.49.4d.42" );
1357-
13581350 // Set server's listening locator for PDP
13591351 Locator_t locator;
13601352 IPLocator::setIPv4 (locator, 127 , 0 , 0 , 1 );
13611353 locator.port = 11812 ;
1362- remote_server_att.metatrafficUnicastLocatorList .push_back (locator);
13631354
13641355 /* Update list of remote servers for this client or server */
1365- client_or_server_qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_att );
1356+ client_or_server_qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (locator );
13661357 if (RETCODE_OK != client_or_server->set_qos (client_or_server_qos))
13671358 {
13681359 // Error
@@ -1394,28 +1385,20 @@ void dds_discovery_examples()
13941385 server_qos.wire_protocol ().builtin .discovery_config .discoveryProtocol =
13951386 DiscoveryProtocol::SERVER ;
13961387
1397- // Set SERVER's GUID prefix
1398- std::istringstream (" 44.53.00.5f.45.50.52.4f.53.49.4d.41" ) >> server_qos.wire_protocol ().prefix ;
1399-
14001388 // Set SERVER's listening locator for PDP
14011389 Locator_t locator;
14021390 IPLocator::setIPv4 (locator, 127 , 0 , 0 , 1 );
14031391 locator.port = 11811 ;
14041392 server_qos.wire_protocol ().builtin .metatrafficUnicastLocatorList .push_back (locator);
14051393
14061394 /* Add a remote serve to which this server will connect */
1407- // Set remote SERVER's GUID prefix
1408- RemoteServerAttributes remote_server_att;
1409- remote_server_att.ReadguidPrefix (" 44.53.01.5f.45.50.52.4f.53.49.4d.41" );
1410-
14111395 // Set remote SERVER's listening locator for PDP
14121396 Locator_t remote_locator;
14131397 IPLocator::setIPv4 (remote_locator, 127 , 0 , 0 , 1 );
14141398 remote_locator.port = 11812 ;
1415- remote_server_att.metatrafficUnicastLocatorList .push_back (remote_locator);
14161399
14171400 // Add remote SERVER to SERVER's list of SERVERs
1418- server_qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_att );
1401+ server_qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_locator );
14191402
14201403 // Create SERVER
14211404 DomainParticipant* server =
@@ -1437,18 +1420,13 @@ void dds_discovery_examples()
14371420 client_qos.wire_protocol ().builtin .discovery_config .discoveryProtocol =
14381421 DiscoveryProtocol::CLIENT ;
14391422
1440- // Set SERVER's GUID prefix
1441- RemoteServerAttributes remote_server_att;
1442- remote_server_att.ReadguidPrefix (" 44.53.00.5f.45.50.52.4f.53.49.4d.41" );
1443-
14441423 // Set SERVER's listening locator for PDP
14451424 Locator_t locator;
14461425 IPLocator::setIPv4 (locator, 127 , 0 , 0 , 1 );
14471426 locator.port = 11811 ;
1448- remote_server_att.metatrafficUnicastLocatorList .push_back (locator);
14491427
14501428 // Add remote SERVER to CLIENT's list of SERVERs
1451- client_qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_att );
1429+ client_qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (locator );
14521430
14531431 // Set ping period to 250 ms
14541432 client_qos.wire_protocol ().builtin .discovery_config .discoveryServer_client_syncperiod =
@@ -6285,9 +6263,6 @@ void dds_usecase_examples()
62856263 IPLocator::setIPv4 (server_locator, " 192.168.10.57" );
62866264 server_locator.port = 56542 ;
62876265 qos.wire_protocol ().builtin .metatrafficUnicastLocatorList .push_back (server_locator);
6288-
6289- // Set the GUID prefix to identify this server
6290- std::istringstream (" 72.61.73.70.66.61.72.6d.74.65.73.74" ) >> qos.wire_protocol ().prefix ;
62916266 // !--
62926267 }
62936268
@@ -6303,14 +6278,8 @@ void dds_usecase_examples()
63036278 IPLocator::setIPv4 (remote_server_locator, " 192.168.10.57" );
63046279 remote_server_locator.port = 56542 ;
63056280
6306- RemoteServerAttributes remote_server_attr;
6307- remote_server_attr.metatrafficUnicastLocatorList .push_back (remote_server_locator);
6308-
6309- // Set the GUID prefix to identify the remote server
6310- remote_server_attr.ReadguidPrefix (" 72.61.73.70.66.61.72.6d.74.65.73.74" );
6311-
63126281 // Connect to the SERVER at the previous locator
6313- qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_attr );
6282+ qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_locator );
63146283 // !--
63156284 }
63166285
@@ -6324,6 +6293,7 @@ void dds_usecase_examples()
63246293 // Configure participant_1 as SERVER listening on the previous locator
63256294 DomainParticipantQos server_1_qos;
63266295 server_1_qos.wire_protocol ().builtin .discovery_config .discoveryProtocol = DiscoveryProtocol::SERVER ;
6296+ // Optional GUID
63276297 std::istringstream (" 75.63.2D.73.76.72.63.6C.6E.74.2D.31" ) >> server_1_qos.wire_protocol ().prefix ;
63286298 server_1_qos.wire_protocol ().builtin .metatrafficUnicastLocatorList .push_back (server_locator_1);
63296299
@@ -6335,6 +6305,7 @@ void dds_usecase_examples()
63356305 // Configure participant_2 as SERVER listening on the previous locator
63366306 DomainParticipantQos server_2_qos;
63376307 server_2_qos.wire_protocol ().builtin .discovery_config .discoveryProtocol = DiscoveryProtocol::SERVER ;
6308+ // Optional GUID
63386309 std::istringstream (" 75.63.2D.73.76.72.63.6C.6E.74.2D.32" ) >> server_2_qos.wire_protocol ().prefix ;
63396310 server_2_qos.wire_protocol ().builtin .metatrafficUnicastLocatorList .push_back (server_locator_2);
63406311 // !--
@@ -6347,24 +6318,16 @@ void dds_usecase_examples()
63476318 IPLocator::setIPv4 (remote_server_locator_1, " 192.168.10.57" );
63486319 remote_server_locator_1.port = 56542 ;
63496320
6350- RemoteServerAttributes remote_server_attr_1;
6351- remote_server_attr_1.ReadguidPrefix (" 75.63.2D.73.76.72.63.6C.6E.74.2D.31" );
6352- remote_server_attr_1.metatrafficUnicastLocatorList .push_back (remote_server_locator_1);
6353-
63546321 // Define a locator for the second SERVER Participant
63556322 Locator_t remote_server_locator_2;
63566323 IPLocator::setIPv4 (remote_server_locator_2, " 192.168.10.60" );
63576324 remote_server_locator_2.port = 56543 ;
63586325
6359- RemoteServerAttributes remote_server_attr_2;
6360- remote_server_attr_2.ReadguidPrefix (" 75.63.2D.73.76.72.63.6C.6E.74.2D.32" );
6361- remote_server_attr_2.metatrafficUnicastLocatorList .push_back (remote_server_locator_2);
6362-
63636326 // Configure the current participant as CLIENT connecting to the SERVERS at the previous locators
63646327 DomainParticipantQos client_qos;
63656328 client_qos.wire_protocol ().builtin .discovery_config .discoveryProtocol = DiscoveryProtocol::CLIENT ;
6366- client_qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_attr_1 );
6367- client_qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_attr_2 );
6329+ client_qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_locator_1 );
6330+ client_qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_locator_2 );
63686331 // !--
63696332 }
63706333
@@ -6378,6 +6341,7 @@ void dds_usecase_examples()
63786341 server_locator.port = 56543 ;
63796342
63806343 qos.wire_protocol ().builtin .discovery_config .discoveryProtocol = DiscoveryProtocol::SERVER ;
6344+ // Optional GUID
63816345 std::istringstream (" 75.63.2D.73.76.72.63.6C.6E.74.2D.31" ) >> qos.wire_protocol ().prefix ;
63826346 qos.wire_protocol ().builtin .metatrafficUnicastLocatorList .push_back (server_locator);
63836347
@@ -6386,11 +6350,7 @@ void dds_usecase_examples()
63866350 IPLocator::setIPv4 (remote_server_locator, " 192.168.10.57" );
63876351 remote_server_locator.port = 56542 ;
63886352
6389- RemoteServerAttributes remote_server_attr;
6390- remote_server_attr.ReadguidPrefix (" 75.63.2D.73.76.72.63.6C.6E.74.2D.32" );
6391- remote_server_attr.metatrafficUnicastLocatorList .push_back (remote_server_locator);
6392-
6393- qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_attr);
6353+ qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_locator);
63946354 // !--
63956355 }
63966356
@@ -6404,6 +6364,7 @@ void dds_usecase_examples()
64046364 server_locator.port = 56541 ;
64056365
64066366 qos.wire_protocol ().builtin .discovery_config .discoveryProtocol = DiscoveryProtocol::SERVER ;
6367+ // Optional GUID
64076368 std::istringstream (" 75.63.2D.73.76.72.63.6C.6E.74.2D.33" ) >> qos.wire_protocol ().prefix ;
64086369 qos.wire_protocol ().builtin .metatrafficUnicastLocatorList .push_back (server_locator);
64096370
@@ -6412,22 +6373,14 @@ void dds_usecase_examples()
64126373 IPLocator::setIPv4 (remote_server_locator_A, " 192.168.10.60" );
64136374 remote_server_locator_A.port = 56543 ;
64146375
6415- RemoteServerAttributes remote_server_attr_A;
6416- remote_server_attr_A.ReadguidPrefix (" 75.63.2D.73.76.72.63.6C.6E.74.2D.31" );
6417- remote_server_attr_A.metatrafficUnicastLocatorList .push_back (remote_server_locator_A);
6418-
6419- qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_attr_A);
6376+ qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_locator_A);
64206377
64216378 // Add the connection attributes to the remote server B.
64226379 Locator_t remote_server_locator_B;
64236380 IPLocator::setIPv4 (remote_server_locator_B, " 192.168.10.57" );
64246381 remote_server_locator_B.port = 56542 ;
64256382
6426- RemoteServerAttributes remote_server_attr_B;
6427- remote_server_attr_B.ReadguidPrefix (" 75.63.2D.73.76.72.63.6C.6E.74.2D.32" );
6428- remote_server_attr_B.metatrafficUnicastLocatorList .push_back (remote_server_locator_B);
6429-
6430- qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_attr_B);
6383+ qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_locator_B);
64316384 // !--
64326385 }
64336386
@@ -7542,9 +7495,6 @@ void tcp_use_cases()
75427495 eprosima::fastdds::rtps::IPLocator::setPhysicalPort (listening_locator, tcp_listening_port);
75437496 eprosima::fastdds::rtps::IPLocator::setLogicalPort (listening_locator, tcp_listening_port);
75447497 qos.wire_protocol ().builtin .metatrafficUnicastLocatorList .push_back (listening_locator);
7545-
7546- // Set the GUID prefix to identify this server
7547- std::istringstream (" 44.53.00.5f.45.50.52.4f.53.49.4d.41" ) >> qos.wire_protocol ().prefix ;
75487498 // !--
75497499 }
75507500
@@ -7568,15 +7518,8 @@ void tcp_use_cases()
75687518 eprosima::fastdds::rtps::IPLocator::setPhysicalPort (server_locator, server_port);
75697519 eprosima::fastdds::rtps::IPLocator::setLogicalPort (server_locator, server_port);
75707520
7571- // Define the server attributes
7572- eprosima::fastdds::rtps::RemoteServerAttributes remote_server_att;
7573- remote_server_att.metatrafficUnicastLocatorList .push_back (server_locator);
7574-
7575- // Set the GUID prefix to identify this server
7576- std::istringstream (" 44.53.00.5f.45.50.52.4f.53.49.4d.41" ) >> remote_server_att.guidPrefix ;
7577-
75787521 // Add the server
7579- qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (remote_server_att );
7522+ qos.wire_protocol ().builtin .discovery_config .m_DiscoveryServers .push_back (server_locator );
75807523 // !--
75817524 }
75827525}
0 commit comments