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_dual_frames.h
Go to the documentation of this file.
1
21#ifndef RTE_DUAL_FRAMES_H
22#define RTE_DUAL_FRAMES_H
23
24#include <stdint.h>
25
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
57
62typedef struct rte_dual_frame_header_s
63{
66 uint8_t kind;
70 uint8_t reserved[3];
72
74typedef struct rte_dual_ack_frame_s
75{
82
85typedef struct rte_dual_state_frame_s
86{
90 uint8_t state;
97 uint16_t reserved;
109 uint64_t timestamp_ms;
111
113typedef struct rte_dual_heartbeat_frame_s
114{
117 uint64_t timestamp_ms;
119
120#ifdef __cplusplus
121}
122#endif
123
124#endif /* RTE_DUAL_FRAMES_H */
125
rte_dual_frame_kind_t
Which kind of Layer-2 frame a given Layer-1 payload holds. Stored as the first byte of every rte_dual...
@ RTE_DUAL_FRAME_KIND_STATE
@ RTE_DUAL_FRAME_KIND_HEARTBEAT
@ RTE_DUAL_FRAME_KIND_ACK
@ RTE_DUAL_FRAME_KIND_DATA
Shared enums for the rte_dual module (ADR-020): dual-instance state negotiation and the redundant,...
RTE_DUAL_FRAME_KIND_ACK payload.
Common 4-byte header prefixing every Layer-2 frame; kept a fixed 4 bytes (not just 1) so the fields t...
RTE_DUAL_FRAME_KIND_HEARTBEAT payload - connection maintenance heartbeat.
RTE_DUAL_FRAME_KIND_STATE payload - rte_dual_negotiator_t's own periodic beacon.