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
Common Status and Error Codes

Shared result codes returned by every framework function. More...

Files

file  src/utils/status/rte_status.c
 Implementation of rte_status_to_string().

Enumerations

enum  rte_status_t {
  RTE_STATUS_OK = 0 , RTE_STATUS_INVALID_PARAM = 1 , RTE_STATUS_NOT_INITIALIZED = 2 , RTE_STATUS_ALREADY_INITIALIZED = 3 ,
  RTE_STATUS_TIMEOUT = 4 , RTE_STATUS_RESOURCE_EXHAUSTED = 5 , RTE_STATUS_NOT_SUPPORTED = 6 , RTE_STATUS_NOT_IMPLEMENTED = 7 ,
  RTE_STATUS_HARDWARE_FAULT = 8 , RTE_STATUS_DATA_CORRUPTION = 9 , RTE_STATUS_INTERNAL_ERROR = 10 , RTE_STATUS_VALUE_OUT_OF_RANGE = 11 ,
  RTE_STATUS_INVALID_STATE = 12 , RTE_STATUS_NOT_CONNECTED = 13
}
 Common result/status codes. More...

Functions

const char * rte_status_to_string (rte_status_t status)
 Returns a short, static, human-readable string for a status code. Intended for diagnostics/logging only; never on a safety-decision path.

Detailed Description

Shared result codes returned by every framework function.

Enumeration Type Documentation

◆ rte_status_t

Common result/status codes.

Explicit numeric values are fixed and part of the ABI: do not renumber existing entries, only append.

Enumerator
RTE_STATUS_OK 

Operation succeeded.

RTE_STATUS_INVALID_PARAM 

Null pointer or out-of-range argument.

RTE_STATUS_NOT_INITIALIZED 

Object used before create/init.

RTE_STATUS_ALREADY_INITIALIZED 

Object already created/initialized.

RTE_STATUS_TIMEOUT 

Blocking call exceeded its deadline.

RTE_STATUS_RESOURCE_EXHAUSTED 

Static pool/storage/slots full.

RTE_STATUS_NOT_SUPPORTED 

Valid request, OSAdapter cannot perform it.

RTE_STATUS_NOT_IMPLEMENTED 

OSAdapter is a stub (skeleton state).

RTE_STATUS_HARDWARE_FAULT 

OSAdapter reported a hardware-level fault.

RTE_STATUS_DATA_CORRUPTION 

Integrity check (e.g. NVM CRC) failed.

RTE_STATUS_INTERNAL_ERROR 

Defensive catch-all: should never happen.

RTE_STATUS_VALUE_OUT_OF_RANGE 

Checked cast: value does not fit the destination type.

RTE_STATUS_INVALID_STATE 

Operation not permitted in the application's current lifecycle phase (e.g. a setup-only constructor called after rte_appmanager_run() has locked setup - see rte_lifecycle.h).

RTE_STATUS_NOT_CONNECTED 

Listen-role link has no peer yet; nothing was sent (REQ-CHANSVC-001, rte_channel_service.h).

Definition at line 26 of file rte_status.h.

Function Documentation

◆ rte_status_to_string()

const char * rte_status_to_string ( rte_status_t status)

Returns a short, static, human-readable string for a status code. Intended for diagnostics/logging only; never on a safety-decision path.

Parameters
statusStatus code to describe; any value, including one outside the rte_status_t enumerators.
Returns
Static, non-NULL string literal naming status without its RTE_STATUS_ prefix (e.g. "OK" for RTE_STATUS_OK); "UNKNOWN_STATUS" for an unrecognized value. The caller must not modify it.
Safety:
Never returns NULL; safe to call with any int-range value.

REQ-OAL-COMMON-002

Local makros Local types declarations Local variables declarations Global variables declarations Local function declarations Global functions

Definition at line 22 of file rte_status.c.