diff --git a/tracetools/include/tracetools/tp_call.h b/tracetools/include/tracetools/tp_call.h index a1aaa13..5f30460 100644 --- a/tracetools/include/tracetools/tp_call.h +++ b/tracetools/include/tracetools/tp_call.h @@ -100,13 +100,26 @@ TRACEPOINT_EVENT( TRACEPOINT_EVENT( TRACEPOINT_PROVIDER, - rclcpp_subscription_callback_added, + rclcpp_subscription_init, TP_ARGS( const void *, subscription_handle_arg, - const void *, callback_arg + const void *, subscription_arg ), TP_FIELDS( ctf_integer_hex(const void *, subscription_handle, subscription_handle_arg) + ctf_integer_hex(const void *, subscription, subscription_arg) + ) +) + +TRACEPOINT_EVENT( + TRACEPOINT_PROVIDER, + rclcpp_subscription_callback_added, + TP_ARGS( + const void *, subscription_arg, + const void *, callback_arg + ), + TP_FIELDS( + ctf_integer_hex(const void *, subscription, subscription_arg) ctf_integer_hex(const void *, callback, callback_arg) ) ) diff --git a/tracetools/include/tracetools/tracetools.h b/tracetools/include/tracetools/tracetools.h index 141bfb8..9c768e2 100644 --- a/tracetools/include/tracetools/tracetools.h +++ b/tracetools/include/tracetools/tracetools.h @@ -80,12 +80,20 @@ DECLARE_TRACEPOINT( const char * topic_name, const size_t queue_depth) +/** + * tp: rclcpp_subscription_init + */ +DECLARE_TRACEPOINT( + rclcpp_subscription_init, + const void * subscription_handle, + const void * subscription) + /** * tp: rclcpp_subscription_callback_added */ DECLARE_TRACEPOINT( rclcpp_subscription_callback_added, - const void * subscription_handle, + const void * subscription, const void * callback) /** diff --git a/tracetools/src/tracetools.c b/tracetools/src/tracetools.c index dcb713e..75c8037 100644 --- a/tracetools/src/tracetools.c +++ b/tracetools/src/tracetools.c @@ -105,14 +105,26 @@ void TRACEPOINT( } void TRACEPOINT( - rclcpp_subscription_callback_added, + rclcpp_subscription_init, const void * subscription_handle, + const void * subscription) +{ + CONDITIONAL_TP( + ros2, + rclcpp_subscription_init, + subscription_handle, + subscription); +} + +void TRACEPOINT( + rclcpp_subscription_callback_added, + const void * subscription, const void * callback) { CONDITIONAL_TP( ros2, rclcpp_subscription_callback_added, - subscription_handle, + subscription, callback); }