Safe Communication Framework 0.1.0 build feea4f9
ERTMS/ETCS safe communication (Subset-037 EuroRadio, Subset-098 RBC/RBC), CENELEC EN 50128 SIL 4 oriented
Loading...
Searching...
No Matches
protocol_adapter.h
Go to the documentation of this file.
1
13#ifndef SAFECOMM_PROTOCOL_ADAPTER_H
14#define SAFECOMM_PROTOCOL_ADAPTER_H
15
16#include <stddef.h>
17#include <stdint.h>
18#include <stdbool.h>
19
20#include "safecomm/status.h"
21#include "safecomm/saf/saf.h"
23
24#ifdef __cplusplus
25extern "C" {
26#endif
27
35
37typedef struct
38{
41 uint32_t id_self;
42 uint32_t id_peer;
43 uint8_t kmac[SAFECOMM_MAC_KEY_LEN];
44 uint32_t t_connect_ms;
45 uint32_t t_supervision_ms;
47
49typedef struct
50{
53 bool is_open;
55
59typedef struct
60{
62 const safecomm_adapter_config_t *config,
63 const safecomm_transport_t *transport);
65 const void *data, size_t size);
66 safecomm_status_t (*receive)(safecomm_adapter_t *adapter,
67 void *out_buf, size_t buffer_size,
68 size_t *out_len);
69 safecomm_status_t (*close)(safecomm_adapter_t *adapter);
71
76
81
86
87#ifdef __cplusplus
88}
89#endif
90
91#endif /* SAFECOMM_PROTOCOL_ADAPTER_H */
#define SAFECOMM_MAC_KEY_LEN
Definition mac.h:34
const safecomm_protocol_ops_t * safecomm_protocol_adapter_get_rasta(void)
Retrieve the RaSTA (DIN VDE V 0831-102) Protocol Adapter operations vtable.
safecomm_sublayer_type_t
Safety sublayer protocol selection.
@ SAFECOMM_SUBLAYER_RASTA
@ SAFECOMM_SUBLAYER_SAF_SS037
@ SAFECOMM_SUBLAYER_SAF_SS098
const safecomm_protocol_ops_t * safecomm_protocol_adapter_get_ss098(void)
Retrieve the Subset-098 RBC-RBC Protocol Adapter operations vtable.
const safecomm_protocol_ops_t * safecomm_protocol_adapter_get_ss037(void)
Retrieve the Subset-037 EuroRadio Protocol Adapter operations vtable.
Safety Functional (SaF) sub-layer — shared by Subset-037 and Subset-098 (ERTMS/ETCS Subset-037 §7).
safecomm_saf_role_t
SaF connection role.
Definition saf.h:60
Common status codes for the Safe Communication Framework.
safecomm_status_t
Result of a Safe Communication Framework operation.
Definition status.h:17
Adapter connection endpoint configuration.
Adapter handle representation.
SAPI-compatible operations vtable for safe communication channels.
SaF connection object. Caller-allocated, zero-initialised, opaque in practice — fields are not part o...
Definition saf.h:92
A consumer-supplied bearer the SaF layer runs over.
Definition transport.h:56
Transport abstraction for the Safe Communication Framework.