28 #define RCL_S_TO_NS(seconds) (seconds * (1000 * 1000 * 1000)) 29 #define RCL_MS_TO_NS(milliseconds) (milliseconds * (1000 * 1000)) 31 #define RCL_US_TO_NS(microseconds) (microseconds * 1000) 35 #define RCL_NS_TO_S(nanoseconds) (nanoseconds / (1000 * 1000 * 1000)) 36 #define RCL_NS_TO_MS(nanoseconds) (nanoseconds / (1000 * 1000)) 38 #define RCL_NS_TO_US(nanoseconds) (nanoseconds / 1000) 66 struct rcl_ros_time_source_storage_t;
453 rcl_time_point_value_t time_value);
521 #endif // RCL__TIME_H_ rcl_ret_t rcl_get_time_point_now(rcl_time_point_t *time_point)
Fill the time point with the current value of the associated clock.
A single point in time, measured in nanoseconds, the reference point is based on the source...
Definition: time.h:69
rcl_ret_t rcl_disable_ros_time_override(rcl_time_source_t *time_source)
Disable the ROS time abstraction override.
rcl_ret_t rcl_system_time_now(rcl_time_point_value_t *now)
Retrieve the current time as a rcl_time_point_value_t.
rcl_duration_value_t nanoseconds
Definition: time.h:78
rcl_ret_t rcl_init_ros_time_source(rcl_time_source_t *time_source)
Initialize a time_source as a RCL_ROS_TIME time source.
rcl_time_source_t * time_source
Definition: time.h:79
void * data
Definition: time.h:63
rmw_ret_t rcl_ret_t
Definition: types.h:20
enum rcl_time_source_type_t type
Definition: time.h:58
void(* post_update)(void)
Definition: time.h:60
struct rcl_time_point_t rcl_time_point_t
A single point in time, measured in nanoseconds, the reference point is based on the source...
rcl_ret_t(* get_now)(void *data, rcl_time_point_value_t *now)
Definition: time.h:61
rcl_time_source_t * rcl_get_default_ros_time_source(void)
Get the default RCL_ROS_TIME time source.
rcl_ret_t rcl_fini_time_point(rcl_time_point_t *time_point)
Finalize a time_point.
rcl_ret_t rcl_is_enabled_ros_time_override(rcl_time_source_t *time_source, bool *is_enabled)
Check if the RCL_ROS_TIME time source has the override enabled.
rcl_time_point_value_t nanoseconds
Definition: time.h:71
rcl_ret_t rcl_init_steady_time_source(rcl_time_source_t *time_source)
Initialize a time_source as a RCL_STEADY_TIME time source.
rcl_ret_t rcl_set_default_ros_time_source(rcl_time_source_t *process_time_source)
Set the current time on the RCL_ROS_TIME time source.
rcl_ret_t rcl_fini_ros_time_source(rcl_time_source_t *time_source)
Finalize a time_source as a RCL_ROS_TIME time source.
struct rcl_time_source_t rcl_time_source_t
Encapsulation of a time source.
rcl_ret_t rcl_enable_ros_time_override(rcl_time_source_t *time_source)
Enable the ROS time abstraction override.
void(* pre_update)(void)
Definition: time.h:59
int64_t rcl_duration_value_t
A duration of time, measured in nanoseconds.
Definition: time.h:44
rcl_time_source_type_t
Time source type, used to indicate the source of a time measurement.
Definition: time.h:47
rcl_ret_t rcl_init_time_point(rcl_time_point_t *time_point, rcl_time_source_t *time_source)
Initialize a time point using the time_source.
Encapsulation of a time source.
Definition: time.h:56
rcl_time_source_t * rcl_get_default_system_time_source(void)
Get the default RCL_SYSTEM_TIME time source.
rcl_ret_t rcl_set_ros_time_override(rcl_time_source_t *time_source, rcl_time_point_value_t time_value)
Set the current time for this RCL_ROS_TIME time source.
rcl_ret_t rcl_fini_steady_time_source(rcl_time_source_t *time_source)
Finalize a time_source as a RCL_STEADY_TIME time source.
#define RCL_WARN_UNUSED
Ignored return values of functions with this macro will emit a warning.
Definition: macros.h:25
rcl_time_source_t * rcl_get_default_steady_time_source(void)
Get the default RCL_STEADY_TIME time source.
#define RCL_PUBLIC
Definition: visibility_control.h:48
struct rcl_duration_t rcl_duration_t
A duration of time, measured in nanoseconds and its source.
A duration of time, measured in nanoseconds and its source.
Definition: time.h:76
uint64_t rcl_time_point_value_t
A single point in time, measured in nanoseconds since the Unix epoch.
Definition: time.h:42
rcl_ret_t rcl_init_system_time_source(rcl_time_source_t *time_source)
Initialize a time_source as a RCL_SYSTEM_TIME time source.
rcl_time_source_t * time_source
Definition: time.h:72
rcl_ret_t rcl_fini_duration(rcl_duration_t *duration)
Finalize a duration.
bool rcl_time_source_valid(rcl_time_source_t *time_source)
Check if the time_source has valid values.
rcl_ret_t rcl_init_duration(rcl_duration_t *duration, rcl_time_source_t *time_source)
Initialize a duration using the time_source.
rcl_ret_t rcl_difference_times(rcl_time_point_t *start, rcl_time_point_t *finish, rcl_duration_t *delta)
Compute the difference between two time points.
rcl_ret_t rcl_steady_time_now(rcl_time_point_value_t *now)
Retrieve the current time as a rcl_time_point_value_t object.
rcl_ret_t rcl_fini_system_time_source(rcl_time_source_t *time_source)
Finalize a time_source as a RCL_SYSTEM_TIME time source.