diff --git a/tracetools/include/tracetools/tracetools.h b/tracetools/include/tracetools/tracetools.h index 439f520..a34db71 100644 --- a/tracetools/include/tracetools/tracetools.h +++ b/tracetools/include/tracetools/tracetools.h @@ -112,6 +112,36 @@ void TRACEPOINT( rclcpp_service_callback_end, const void * callback); +/** + * tp: rcl_timer_init + */ +void TRACEPOINT( + rcl_timer_init, + const void * timer_handle, + long period); + +/** + * tp: rclcpp_timer_callback_added + */ +void TRACEPOINT( + rclcpp_timer_callback_added, + const void * timer_handle, + const void * callback); + +/** + * tp: rclcpp_timer_callback_start + */ +void TRACEPOINT( + rclcpp_timer_callback_start, + const void * callback); + +/** + * tp: rclcpp_timer_callback_end + */ +void TRACEPOINT( + rclcpp_timer_callback_end, + const void * callback); + #ifdef __cplusplus } #endif diff --git a/tracetools/lttng/tp_call.tp b/tracetools/lttng/tp_call.tp index 882b290..b15534c 100644 --- a/tracetools/lttng/tp_call.tp +++ b/tracetools/lttng/tp_call.tp @@ -154,3 +154,51 @@ TRACEPOINT_EVENT( ctf_integer_hex(const void *, callback, callback_arg) ) ) + +TRACEPOINT_EVENT( + ros2, + rcl_timer_init, + TP_ARGS( + const void *, timer_handle_arg, + long, period_arg + ), + TP_FIELDS( + ctf_integer_hex(const void *, timer_handle, timer_handle_arg) + ctf_integer(long, period, period_arg) + ) +) + +TRACEPOINT_EVENT( + ros2, + rclcpp_timer_callback_added, + TP_ARGS( + const void *, timer_handle_arg, + const void *, callback_arg + ), + TP_FIELDS( + ctf_integer_hex(const void *, timer_handle, timer_handle_arg) + ctf_integer_hex(const void *, callback, callback_arg) + ) +) + +TRACEPOINT_EVENT( + ros2, + rclcpp_timer_callback_start, + TP_ARGS( + const void *, callback_arg + ), + TP_FIELDS( + ctf_integer_hex(const void *, callback, callback_arg) + ) +) + +TRACEPOINT_EVENT( + ros2, + rclcpp_timer_callback_end, + TP_ARGS( + const void *, callback_arg + ), + TP_FIELDS( + ctf_integer_hex(const void *, callback, callback_arg) + ) +) diff --git a/tracetools/src/tracetools.c b/tracetools/src/tracetools.c index c2d1aa5..8e79ce3 100644 --- a/tracetools/src/tracetools.c +++ b/tracetools/src/tracetools.c @@ -111,3 +111,33 @@ void TRACEPOINT( { CONDITIONAL_TP(ros2, rclcpp_service_callback_end, callback); } + +void TRACEPOINT( + rcl_timer_init, + const void * timer_handle, + long period) +{ + CONDITIONAL_TP(ros2, rcl_timer_init, timer_handle, period); +} + +void TRACEPOINT( + rclcpp_timer_callback_added, + const void * timer_handle, + const void * callback) +{ + CONDITIONAL_TP(ros2, rclcpp_timer_callback_added, timer_handle, callback); +} + +void TRACEPOINT( + rclcpp_timer_callback_start, + const void * callback) +{ + CONDITIONAL_TP(ros2, rclcpp_timer_callback_start, callback); +} + +void TRACEPOINT( + rclcpp_timer_callback_end, + const void * callback) +{ + CONDITIONAL_TP(ros2, rclcpp_timer_callback_end, callback); +}