RTE RBC 2oo2 Reference Application
0.1.0 build 0006685
SIL 4 2oo2 Dual-Site Fault-Tolerant ERTMS Radio Block Centre Reference Architecture
Toggle main menu visibility
Loading...
Searching...
No Matches
ab_gp_ga_hooks.h
Go to the documentation of this file.
1
16
#ifndef RTE_EXAMPLE_AB_GP_GA_HOOKS_H
17
#define RTE_EXAMPLE_AB_GP_GA_HOOKS_H
18
19
#include <stdbool.h>
20
#include <stdint.h>
21
22
#include "
../ga_interface/ga_interface.h
"
23
#include "
rbc_wire_types.h
"
/* rbc_alarm_severity_t - ab_gp_build_ctc_alarm() below */
24
32
bool
ab_gp_dispatch_il_envelope
(
ab_gp_train_session_t
*sessions,
ab_gp_db_t
*db,
33
const
uint8_t env_bytes[
RBC_ENVELOPE_WIRE_SIZE
], uint32_t cycle,
34
rte_example_site_t
site,
const
char
*role_tag);
35
42
uint8_t
ab_gp_drain_il_outputs
(
ab_gp_il_pending_output_t
out[
AB_GP_IL_MAX_PENDING_OUTPUTS
]);
43
51
void
ab_gp_confirm_il_outputs_sent
(
void
);
52
59
uint8_t
ab_gp_drain_ctc_outputs
(
ab_gp_ctc_pending_output_t
out[
AB_GP_CTC_MAX_PENDING_OUTPUTS
]);
60
65
void
ab_gp_confirm_ctc_outputs_sent
(
void
);
66
81
void
ab_gp_build_ctc_alarm
(uint8_t out[
RBC_ENVELOPE_WIRE_SIZE
],
rbc_alarm_severity_t
severity, uint32_t code,
82
uint32_t cycle, uint32_t timestamp_ms);
83
84
#endif
/* RTE_EXAMPLE_AB_GP_GA_HOOKS_H */
ab_gp_dispatch_il_envelope
bool ab_gp_dispatch_il_envelope(ab_gp_train_session_t *sessions, ab_gp_db_t *db, const uint8_t env_bytes[RBC_ENVELOPE_WIRE_SIZE], uint32_t cycle, rte_example_site_t site, const char *role_tag)
Calls the registered IL envelope handler, if any - see ab_gp_register_il_envelope_handler()'s own doc...
Definition
ab_gp_ga_hooks.c:52
ab_gp_drain_ctc_outputs
uint8_t ab_gp_drain_ctc_outputs(ab_gp_ctc_pending_output_t out[AB_GP_CTC_MAX_PENDING_OUTPUTS])
Calls the registered CTC output producer, if any - see ab_gp_register_ctc_output_producer()'s own doc...
Definition
ab_gp_ga_hooks.c:151
ab_gp_confirm_il_outputs_sent
void ab_gp_confirm_il_outputs_sent(void)
Calls the registered IL output producer's own confirm callback, if any - see ab_gp_il_output_confirm_...
Definition
ab_gp_ga_hooks.c:110
ab_gp_confirm_ctc_outputs_sent
void ab_gp_confirm_ctc_outputs_sent(void)
Calls the registered CTC output producer's own confirm callback, if any - same contract as ab_gp_conf...
Definition
ab_gp_ga_hooks.c:160
ab_gp_build_ctc_alarm
void ab_gp_build_ctc_alarm(uint8_t out[RBC_ENVELOPE_WIRE_SIZE], rbc_alarm_severity_t severity, uint32_t code, uint32_t cycle, uint32_t timestamp_ms)
Builds and wire-encodes an outbound CTC_ALARM envelope - GP's own now (moved from GA,...
Definition
ab_gp_ga_hooks.c:184
ab_gp_drain_il_outputs
uint8_t ab_gp_drain_il_outputs(ab_gp_il_pending_output_t out[AB_GP_IL_MAX_PENDING_OUTPUTS])
Calls the registered IL output producer, if any - see ab_gp_register_il_output_producer()'s own doc,...
Definition
ab_gp_ga_hooks.c:101
RBC_ENVELOPE_WIRE_SIZE
#define RBC_ENVELOPE_WIRE_SIZE
Definition
common_config.h:1074
ga_interface.h
THE single door GA (safeAPIRBC2oo2GA, a separate shared-library project) uses to reach GP - GP export...
AB_GP_IL_MAX_PENDING_OUTPUTS
#define AB_GP_IL_MAX_PENDING_OUTPUTS
Definition
ga_interface.h:428
AB_GP_CTC_MAX_PENDING_OUTPUTS
#define AB_GP_CTC_MAX_PENDING_OUTPUTS
Definition
ga_interface.h:462
rbc_wire_types.h
The RBC Train/IL/CTC scenario's shared wire envelope (ADR-029) - one fixed-size struct/frame reused f...
rbc_alarm_severity_t
rbc_alarm_severity_t
Severity of an RBC_MSG_CTC_ALARM envelope (msg_type field on the wire) - deliberately a small,...
Definition
rbc_wire_types.h:337
rte_example_site_t
rte_example_site_t
Definition
site_config.h:20
ab_gp_ctc_pending_output_t
Definition
ga_interface.h:456
ab_gp_db_t
Definition
ab_gp_db.h:133
ab_gp_il_pending_output_t
Definition
ga_interface.h:417
ab_gp_train_session_t
Definition
ab_gp_train.h:80
src
application
AB
GP
main
ab_gp_ga_hooks.h
Generated by
1.18.0