RTEMS 6.1-rc7
Loading...
Searching...
No Matches
Macros | Functions
clock.h File Reference

This header file defines the Clock Manager API. More...

#include <stdbool.h>
#include <stdint.h>
#include <time.h>
#include <rtems/config.h>
#include <sys/_timespec.h>
#include <sys/_timeval.h>
#include <rtems/rtems/status.h>
#include <rtems/rtems/types.h>
#include <rtems/score/watchdogticks.h>

Go to the source code of this file.

Macros

#define rtems_clock_get_ticks_per_second(void)   _Watchdog_Ticks_per_second
 Gets the number of clock ticks per second configured for the application.
 
#define rtems_clock_get_ticks_since_boot(void)   _Watchdog_Ticks_since_boot
 Gets the number of clock ticks since some time point during the system initialization or the last overflow of the clock tick counter.
 

Functions

rtems_status_code rtems_clock_set (const rtems_time_of_day *time_of_day)
 Sets the CLOCK_REALTIME to the time of day.
 
rtems_status_code rtems_clock_get_tod (rtems_time_of_day *time_of_day)
 Gets the time of day associated with the current CLOCK_REALTIME.
 
rtems_status_code rtems_clock_get_tod_timeval (struct timeval *time_of_day)
 Gets the seconds and microseconds elapsed since the Unix epoch and the current CLOCK_REALTIME.
 
void rtems_clock_get_realtime (struct timespec *time_snapshot)
 Gets the time elapsed since the Unix epoch measured using CLOCK_REALTIME in seconds and nanoseconds format.
 
void rtems_clock_get_realtime_bintime (struct bintime *time_snapshot)
 Gets the time elapsed since the Unix epoch measured using CLOCK_REALTIME in binary time format.
 
void rtems_clock_get_realtime_timeval (struct timeval *time_snapshot)
 Gets the time elapsed since the Unix epoch measured using CLOCK_REALTIME in seconds and microseconds format.
 
void rtems_clock_get_realtime_coarse (struct timespec *time_snapshot)
 Gets the time elapsed since the Unix epoch measured using CLOCK_REALTIME in coarse resolution in seconds and nanoseconds format.
 
void rtems_clock_get_realtime_coarse_bintime (struct bintime *time_snapshot)
 Gets the time elapsed since the Unix epoch measured using CLOCK_REALTIME in coarse resolution in binary time format.
 
void rtems_clock_get_realtime_coarse_timeval (struct timeval *time_snapshot)
 Gets the time elapsed since the Unix epoch measured using CLOCK_REALTIME in coarse resolution in seconds and microseconds format.
 
void rtems_clock_get_monotonic (struct timespec *time_snapshot)
 Gets the time elapsed since some fixed time point in the past measured using the CLOCK_MONOTONIC in seconds and nanoseconds format.
 
void rtems_clock_get_monotonic_bintime (struct bintime *time_snapshot)
 Gets the time elapsed since some fixed time point in the past measured using the CLOCK_MONOTONIC in binary time format.
 
int64_t rtems_clock_get_monotonic_sbintime (void)
 Gets the time elapsed since some fixed time point in the past measured using the CLOCK_MONOTONIC in signed binary time format.
 
void rtems_clock_get_monotonic_timeval (struct timeval *time_snapshot)
 Gets the time elapsed since some fixed time point in the past measured using the CLOCK_MONOTONIC in seconds and microseconds format.
 
void rtems_clock_get_monotonic_coarse (struct timespec *time_snapshot)
 Gets the time elapsed since some fixed time point in the past measured using the CLOCK_MONOTONIC in coarse resolution in seconds and nanoseconds format.
 
void rtems_clock_get_monotonic_coarse_bintime (struct bintime *time_snapshot)
 Gets the time elapsed since some fixed time point in the past measured using the CLOCK_MONOTONIC in coarse resolution in binary time format.
 
void rtems_clock_get_monotonic_coarse_timeval (struct timeval *time_snapshot)
 Gets the time elapsed since some fixed time point in the past measured using the CLOCK_MONOTONIC in coarse resolution in seconds and microseconds format.
 
void rtems_clock_get_boot_time (struct timespec *boot_time)
 Gets the time elapsed since the Unix epoch at some time point during system initialization in seconds and nanoseconds format.
 
void rtems_clock_get_boot_time_bintime (struct bintime *boot_time)
 Gets the time elapsed since the Unix epoch at some time point during system initialization in binary time format.
 
void rtems_clock_get_boot_time_timeval (struct timeval *boot_time)
 Gets the time elapsed since the Unix epoch at some time point during system initialization in seconds and microseconds format.
 
rtems_status_code rtems_clock_get_seconds_since_epoch (rtems_interval *seconds_since_rtems_epoch)
 Gets the seconds elapsed since the RTEMS epoch and the current CLOCK_REALTIME.
 
rtems_status_code rtems_clock_get_uptime (struct timespec *uptime)
 Gets the seconds and nanoseconds elapsed since some time point during the system initialization using CLOCK_MONOTONIC.
 
void rtems_clock_get_uptime_timeval (struct timeval *uptime)
 Gets the seconds and microseconds elapsed since some time point during the system initialization using CLOCK_MONOTONIC.
 
time_t rtems_clock_get_uptime_seconds (void)
 Gets the seconds elapsed since some time point during the system initialization using CLOCK_MONOTONIC.
 
uint64_t rtems_clock_get_uptime_nanoseconds (void)
 Gets the nanoseconds elapsed since some time point during the system initialization using CLOCK_MONOTONIC.
 
rtems_status_code rtems_clock_tick (void)
 Announces a clock tick.
 

Detailed Description

This header file defines the Clock Manager API.

Function Documentation

◆ rtems_clock_tick()

rtems_status_code rtems_clock_tick ( void  )

Announces a clock tick.

Notes
The directive is a legacy interface. It should not be called by applications directly. A Clock Driver may call this directive.
Constraints

The following constraints apply to this directive:

  • The directive may be called from within interrupt context.
  • The directive may be called from within device driver initialization context.
  • The directive may be called from within task context.