ROS time and duration representations, as well as internal routines for managing wallclock versus a simulated clock. The important data classes are L{Time} and L{Duration}, which represent the ROS 'time' and 'duration' primitives, respectively.
Function | get |
internal API for helper routines that need to wait on time updates @return: rostime conditional var @rtype: threading.Cond |
Function | is |
Internal use. @return: True if rostime has been initialized @rtype: bool |
Function | is |
Internal use for ROS-time routines. @return: True if ROS is currently using wallclock time @rtype: bool |
Function | set |
Internal use. Mark rostime as initialized. This flag enables other routines to throw exceptions if rostime is being used before the underlying system is initialized. @param val: value for initialization state @type val: bool... |
Function | switch |
Internal use. Switch ROS to wallclock time. This is mainly for testing purposes. |
Function | wallsleep |
Internal use. Windows interrupts time.sleep with an IOError exception when a signal is caught. Even when the signal is handled by a callback, it will then proceed to throw IOError when the handling has completed. |
Function | _set |
Callback to update ROS time from a ROS Topic |
Variable | _rostime |
Undocumented |
Variable | _rostime |
Undocumented |
Variable | _rostime |
Undocumented |
internal API for helper routines that need to wait on time updates @return: rostime conditional var @rtype: threading.Cond
Internal use for ROS-time routines. @return: True if ROS is currently using wallclock time @rtype: bool
Internal use. Mark rostime as initialized. This flag enables other routines to throw exceptions if rostime is being used before the underlying system is initialized. @param val: value for initialization state @type val: bool
Internal use. Windows interrupts time.sleep with an IOError exception when a signal is caught. Even when the signal is handled by a callback, it will then proceed to throw IOError when the handling has completed.
Refer to https://code.ros.org/trac/ros/ticket/3421.
So we create a platform dependant wrapper to handle this here.