Contents
Basic Example
Timing some code:
rtcus_timing::Timer timer;
//anonymous chunk
timer.start();
ros::Duration(1.0).sleep();
timer.stop();
timer.start("second_chunk");
ros::Duration(2.0).sleep();
ros::Duration duration = timer.stop("second_chunk");
ROS_INFO("duration of the second chunk: %lf",duration.toSec());
timer.start("third_chunk");
ros::Duration(3.0).sleep();
timer.stop("third_chunk");
timer.publish_data();
ros::Duration(5.0).sleep();See the console output result:
[ INFO] [1340637966.153541042]: duration of the second chunk: 2.000209
Watch the timing topic messages
$ rostopic echo timing event_name: default start_time: secs: 1340637963 nsecs: 152958238 end_time: secs: 1340637964 nsecs: 153118715 duration: secs: 1 nsecs: 160477 --- event_name: second_chunk start_time: secs: 1340637964 nsecs: 153136043 end_time: secs: 1340637966 nsecs: 153345372 duration: secs: 2 nsecs: 209329 --- event_name: third_chunk start_time: secs: 1340637966 nsecs: 153664930 end_time: secs: 1340637969 nsecs: 153811438 duration: secs: 3 nsecs: 146508 ---