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

Pairwise channel comparison (ADR-025): validates parameters, receives from both registered channels, and compares them. More...

Include dependency graph for sapi_cross_comparator.c:

Go to the source code of this file.

Functions

static bool cross_comparator_data_equal (const sapi_cross_comparator_t *cmp, const void *a, const void *b, size_t size)
sapi_status_t sapi_cross_comparator_init (sapi_cross_comparator_storage_t *storage, const sapi_cross_comparator_config_t *config)
 Initializes a cross-comparator with zero registered channels.
sapi_status_t sapi_cross_comparator_register_channel (sapi_cross_comparator_t *cmp, sapi_channel_t *channel)
 Registers one already-initialized channel (channel A, then B).
sapi_status_t sapi_cross_comparator_execute (sapi_cross_comparator_t *cmp, size_t data_size, sapi_voting_result_t *result, void *out_data, size_t *out_size)
 Receives from both registered channels and compares them.
sapi_status_t sapi_cross_comparator_get_aggregated_health (const sapi_cross_comparator_t *cmp, uint32_t *healthy_count, uint32_t *total_disagreements)
 Aggregated health across both registered channels.
sapi_status_t sapi_cross_comparator_destroy (sapi_cross_comparator_t *cmp)
 Destroys a cross-comparator instance.

Detailed Description

Pairwise channel comparison (ADR-025): validates parameters, receives from both registered channels, and compares them.

Definition in file sapi_cross_comparator.c.

Function Documentation

◆ cross_comparator_data_equal()

bool cross_comparator_data_equal ( const sapi_cross_comparator_t * cmp,
const void * a,
const void * b,
size_t size )
static

Definition at line 14 of file sapi_cross_comparator.c.