#include <clock.hpp>
Public Member Functions | |
virtual uavcan::MonotonicTime | getMonotonic () const |
virtual uavcan::UtcTime | getUtc () const |
![]() | |
virtual | ~ISystemClock () |
Static Public Member Functions | |
static SystemClock & | instance () |
Private Member Functions | |
virtual void | adjustUtc (uavcan::UtcDuration adjustment) |
SystemClock () | |
![]() | |
Noncopyable () | |
~Noncopyable () | |
Adapter for uavcan::ISystemClock.
Definition at line 106 of file platform_specific_components/kinetis/libuavcan/driver/include/uavcan_kinetis/clock.hpp.
|
inlineprivate |
Definition at line 109 of file platform_specific_components/kinetis/libuavcan/driver/include/uavcan_kinetis/clock.hpp.
|
inlineprivatevirtual |
Adjust the network-synchronized clock. Refer to getUtc() for details.
For POSIX refer to adjtime(), settimeofday().
[in] | adjustment | Amount of time to add to the clock value. |
Implements uavcan::ISystemClock.
Definition at line 112 of file platform_specific_components/kinetis/libuavcan/driver/include/uavcan_kinetis/clock.hpp.
|
inlinevirtual |
Monototic system clock.
This clock shall never jump or change rate; the base time is irrelevant. This clock is mandatory and must remain functional at all times.
On POSIX systems use clock_gettime() with CLOCK_MONOTONIC.
Implements uavcan::ISystemClock.
Definition at line 117 of file platform_specific_components/kinetis/libuavcan/driver/include/uavcan_kinetis/clock.hpp.
|
inlinevirtual |
Global network clock. It doesn't have to be UTC, the name is a bit misleading - actual time base doesn't matter.
This clock can be synchronized with other nodes on the bus, hence it can jump and/or change rate occasionally. This clock is optional; if it is not supported, return zero. Also return zero if the UTC time is not available yet (e.g. the device has just started up with no battery clock).
For POSIX refer to clock_gettime(), gettimeofday().
Implements uavcan::ISystemClock.
Definition at line 120 of file platform_specific_components/kinetis/libuavcan/driver/include/uavcan_kinetis/clock.hpp.
|
static |
Calls clock::init() as needed. This function is thread safe.