@@ -226,8 +226,7 @@ _DECLARE_TRACEPOINT(
226
226
// / `rcl_publish`
227
227
/* *
228
228
* Message publication.
229
- * Links a `rcl_publisher_t` handle to a pointer to
230
- * a message being published at the `rcl` level.
229
+ * Links a `rcl_publisher_t` handle to a pointer to a message being published at the `rcl` level.
231
230
*
232
231
* \param[in] publisher_handle pointer to the publisher's `rcl_publisher_t` handle
233
232
* \param[in] message pointer to the message being published
@@ -241,6 +240,7 @@ _DECLARE_TRACEPOINT(
241
240
/* *
242
241
* Message publication.
243
242
* Notes the pointer to the message being published at the `rmw` level.
243
+ * Also notes the source timestamp of the message.
244
244
*
245
245
* \param[in] rmw_publisher_handle pointer to the publisher's `rmw_publisher_t` handle
246
246
* \param[in] message pointer to the message being published
@@ -317,12 +317,12 @@ _DECLARE_TRACEPOINT(
317
317
// / `rmw_take`
318
318
/* *
319
319
* Message taking.
320
- * Links a `rmw_subscription_t` handle to a pointer
321
- * to a message being taken at the `rmw` level .
320
+ * Links a `rmw_subscription_t` handle to a pointer to a message being taken at the `rmw` level.
321
+ * Notes the source timestamp of the message .
322
322
*
323
323
* \param[in] rmw_subscription_handle pointer to the subscription's `rmw_subscription_t` handle
324
324
* \param[in] message pointer to the message being taken
325
- * \param[in] source_timestamp the source timestamp of the received message,
325
+ * \param[in] source_timestamp the source timestamp of the message,
326
326
* or 0 (if no message or no info)
327
327
* \param[in] taken whether a message was taken
328
328
*/
@@ -386,6 +386,64 @@ _DECLARE_TRACEPOINT(
386
386
const void * service_handle,
387
387
const void * callback)
388
388
389
+ // / `rmw_take_request`
390
+ /* *
391
+ * Request taking.
392
+ * Links a `rmw_service_t` handle to a pointer to a request being taken at the `rmw` level.
393
+ * Also notes the sequence number of the request and the GID of the requesting client.
394
+ *
395
+ * \param[in] rmw_service_handle pointer to the service's `rmw_service_t` handle
396
+ * \param[in] request pointer to the request being taken
397
+ * \param[in] client_gid the GID of the requesting client
398
+ * \param[in] sequence_number the sequence number of the received request,
399
+ * or 0 (if no request or no info)
400
+ * \param[in] taken whether a request was taken
401
+ */
402
+ _DECLARE_TRACEPOINT(
403
+ rmw_take_request,
404
+ const void * rmw_service_handle,
405
+ const void * request,
406
+ const uint8_t * client_gid,
407
+ int64_t sequence_number,
408
+ const bool taken)
409
+
410
+ // / `rmw_send_response`
411
+ /* *
412
+ * Response publication.
413
+ * Notes the pointer to the response being sent at the `rmw` level.
414
+ * Also notes the sequence number of the request that this response is for and the GID of the
415
+ * requesting client, and notes the source timestamp of the response.
416
+ *
417
+ * \param[in] rmw_service_handle pointer to the service's `rmw_service_t` handle
418
+ * \param[in] response pointer to the request being sent
419
+ * \param[in] client_gid the GID of the requesting client
420
+ * \param[in] sequence_number the sequence number of the request this response is for
421
+ * \param[in] timestamp the source timestamp of the response
422
+ */
423
+ _DECLARE_TRACEPOINT(
424
+ rmw_send_response,
425
+ const void * rmw_service_handle,
426
+ const void * response,
427
+ const uint8_t * client_gid,
428
+ int64_t sequence_number,
429
+ int64_t timestamp)
430
+
431
+ // / `rmw_client_init`
432
+ /* *
433
+ * RMW client initialisation.
434
+ * Links a `rmw_client_t` handle to its DDS/rmw GID.
435
+ * This GID should be the same client GID that is collected by the `rmw_take_request` and
436
+ * `rmw_send_response` tracepoints for requests made by this client and responses to requests made
437
+ * by this client.
438
+ *
439
+ * \param[in] rmw_client_handle pointer to the client's `rmw_client_t` handle
440
+ * \param[in] gid pointer to the client's DDS/rmw GID
441
+ */
442
+ _DECLARE_TRACEPOINT(
443
+ rmw_client_init,
444
+ const void * rmw_client_handle,
445
+ const uint8_t * gid)
446
+
389
447
// / `rcl_client_init`
390
448
/* *
391
449
* Client initialisation.
@@ -404,6 +462,46 @@ _DECLARE_TRACEPOINT(
404
462
const void * rmw_client_handle,
405
463
const char * service_name)
406
464
465
+ // / `rmw_send_request`
466
+ /* *
467
+ * Request publication.
468
+ * Notes the pointer to the request being sent at the `rmw` level.
469
+ * Also notes the sequence number of the request.
470
+ *
471
+ * \param[in] rmw_client_handle pointer to the client's `rmw_client_t` handle
472
+ * \param[in] request pointer to the request being sent
473
+ * \param[in] sequence_number the sequence number of the request
474
+ */
475
+ _DECLARE_TRACEPOINT(
476
+ rmw_send_request,
477
+ const void * rmw_client_handle,
478
+ const void * request,
479
+ int64_t sequence_number)
480
+
481
+ // / `rmw_take_response`
482
+ /* *
483
+ * Response taking.
484
+ * Links a `rmw_client_t` handle to a pointer to a response being taken at the `rmw` level.
485
+ * Notes the source timestamp of the response. Also notes the sequence number of the request this
486
+ * response is for. It does not note the request's client GID, since it is assumed that the matching
487
+ * of the response to the original client is performed before this tracepoint.
488
+ *
489
+ * \param[in] rmw_client_handle pointer to the client's `rmw_client_t` handle
490
+ * \param[in] response pointer to the response being taken
491
+ * \param[in] sequence_number the sequence number of the request this response is for,
492
+ * or 0 (if no response or no info)
493
+ * \param[in] source_timestamp the source timestamp of the response,
494
+ * or 0 (if no response or no info)
495
+ * \param[in] taken whether a response was taken
496
+ */
497
+ _DECLARE_TRACEPOINT(
498
+ rmw_take_response,
499
+ const void * rmw_client_handle,
500
+ const void * response,
501
+ int64_t sequence_number,
502
+ int64_t source_timestamp,
503
+ const bool taken)
504
+
407
505
// / `rcl_timer_init`
408
506
/* *
409
507
* Timer initialisation.
0 commit comments