Safe API Framework 0.1.0 build 384e6ae
Layered API framework for safety-related applications (ERTMS RBC reference targeting CENELEC EN 50128 SIL 4)
Loading...
Searching...
No Matches
rte_timer.c File Reference

Timer service: validates parameters, then dispatches to the OSAdapter registered via rte_osadapter_timer_register() (ADR-005). More...

Include dependency graph for rte_timer.c:

Go to the source code of this file.

Functions

rte_status_t rte_osadapter_timer_register (const rte_osadapter_timer_t *osadapter)
 Registers the OSAdapter timer implementation.
rte_status_t rte_timer_create (rte_timer_storage_t *storage, const rte_timer_config_t *config, rte_timer_handle_t *out_handle)
 Creates a timer bound to caller-owned storage. Does not start it.
rte_status_t rte_timer_start (rte_timer_handle_t handle)
 Starts (or restarts) a created timer.
rte_status_t rte_timer_stop (rte_timer_handle_t handle)
 Stops a running timer; safe to call on an already-stopped timer.
rte_status_t rte_timer_destroy (rte_timer_handle_t handle)
 Destroys a timer, releasing any OSAdapter resources bound to it.
rte_status_t rte_timer_now (rte_timestamp_ms_t *out_now_ms)
 Returns the current monotonic time base used by all timers.

Variables

static const rte_osadapter_timer_t * s_osadapter = NULL
 Currently registered OSAdapter, or NULL if none (ADR-005).

Detailed Description

Timer service: validates parameters, then dispatches to the OSAdapter registered via rte_osadapter_timer_register() (ADR-005).

Definition in file rte_timer.c.

Function Documentation

◆ rte_osadapter_timer_register()

rte_status_t rte_osadapter_timer_register ( const rte_osadapter_timer_t * adapter)

Registers the OSAdapter timer implementation.

Global variables declarations Local function declarations Global functions

Parameters
adapterPointer to timer operations vtable.
Returns
RTE_STATUS_OK on success, RTE_STATUS_INVALID_PARAM if adapter is NULL, or RTE_STATUS_INVALID_STATE if the setup phase is already locked (REQ-LIFECYCLE-001, ADR-026; the previous registration, if any, is kept).

REQ-OAL-TIMER-015: Follows the OSAdapter-registration contract (ADR-005 section 2.1): a NULL adapter is rejected with RTE_STATUS_INVALID_PARAM; re-registering replaces the previous OSAdapter.

Definition at line 25 of file rte_timer.c.

Variable Documentation

◆ s_osadapter

const rte_osadapter_timer_t* s_osadapter = NULL
static

Currently registered OSAdapter, or NULL if none (ADR-005).

Local makros Local types declarations Local variables declarations

Definition at line 17 of file rte_timer.c.