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_proc_shunting.h
Go to the documentation of this file.
1
11
12
#ifndef RTE_EXAMPLE_AB_GP_PROC_SHUNTING_H
13
#define RTE_EXAMPLE_AB_GP_PROC_SHUNTING_H
14
15
#include "
ab_gp_ertms_types.h
"
16
#include "
../ertms/train/ab_gp_ertms_train_interface.h
"
17
18
#ifdef __cplusplus
19
extern
"C"
{
20
#endif
21
23
typedef
enum
24
{
25
AB_GP_SHUNTING_AUTHORISED
= 0,
26
AB_GP_SHUNTING_REFUSED_NO_SESSION
,
27
AB_GP_SHUNTING_REFUSED_NOT_AT_STANDSTILL
,
28
AB_GP_SHUNTING_REFUSED_SESSION_STATE
,
29
AB_GP_SHUNTING_REFUSED_BY_GA
,
30
AB_GP_SHUNTING_REFUSED_INVALID
31
}
ab_gp_shunting_decision_t
;
32
38
bool
ab_gp_proc_shunting_request
(
ab_gp_ertms_train_context_t
*ctx);
39
46
bool
ab_gp_proc_shunting_authorize
(
ab_gp_ertms_train_context_t
*ctx,
bool
authorized);
47
64
ab_gp_shunting_decision_t
ab_gp_proc_shunting_handle_request
(
ab_gp_ertms_train_context_t
*ctx, uint8_t train_id,
65
uint32_t v_train_kmh);
66
76
bool
ab_gp_proc_shunting_build_reply
(
ab_gp_shunting_decision_t
decision,
rbc_timestamp_ms_t
t_train_reply,
77
rbc_timestamp_ms_t
t_train_request,
rbc_nid_lrbg_t
nid_lrbg,
78
rbc_train_outbound_msg_t
*out);
79
81
const
char
*
ab_gp_proc_shunting_decision_name
(
ab_gp_shunting_decision_t
decision);
82
83
#ifdef __cplusplus
84
}
85
#endif
86
87
#endif
/* RTE_EXAMPLE_AB_GP_PROC_SHUNTING_H */
ab_gp_ertms_train_interface.h
ab_gp_proc_shunting_decision_name
const char * ab_gp_proc_shunting_decision_name(ab_gp_shunting_decision_t decision)
Definition
ab_gp_proc_shunting.c:143
ab_gp_proc_shunting_build_reply
bool ab_gp_proc_shunting_build_reply(ab_gp_shunting_decision_t decision, rbc_timestamp_ms_t t_train_reply, rbc_timestamp_ms_t t_train_request, rbc_nid_lrbg_t nid_lrbg, rbc_train_outbound_msg_t *out)
Builds the answer to a Msg 130: Msg 28 SH Authorised or Msg 27 SH Refused.
Definition
ab_gp_proc_shunting.c:112
ab_gp_proc_shunting_handle_request
ab_gp_shunting_decision_t ab_gp_proc_shunting_handle_request(ab_gp_ertms_train_context_t *ctx, uint8_t train_id, uint32_t v_train_kmh)
Decides one Msg 130 Request for Shunting and applies the outcome.
Definition
ab_gp_proc_shunting.c:61
ab_gp_proc_shunting_request
bool ab_gp_proc_shunting_request(ab_gp_ertms_train_context_t *ctx)
Handles inbound Shunting Request (Msg 130).
Definition
ab_gp_proc_shunting.c:13
ab_gp_proc_shunting_authorize
bool ab_gp_proc_shunting_authorize(ab_gp_ertms_train_context_t *ctx, bool authorized)
Authorizes or rejects shunting mode for the train.
Definition
ab_gp_proc_shunting.c:24
ab_gp_shunting_decision_t
ab_gp_shunting_decision_t
Definition
ab_gp_proc_shunting.h:24
AB_GP_SHUNTING_REFUSED_SESSION_STATE
@ AB_GP_SHUNTING_REFUSED_SESSION_STATE
Definition
ab_gp_proc_shunting.h:28
AB_GP_SHUNTING_REFUSED_INVALID
@ AB_GP_SHUNTING_REFUSED_INVALID
Definition
ab_gp_proc_shunting.h:30
AB_GP_SHUNTING_AUTHORISED
@ AB_GP_SHUNTING_AUTHORISED
Definition
ab_gp_proc_shunting.h:25
AB_GP_SHUNTING_REFUSED_NO_SESSION
@ AB_GP_SHUNTING_REFUSED_NO_SESSION
Definition
ab_gp_proc_shunting.h:26
AB_GP_SHUNTING_REFUSED_NOT_AT_STANDSTILL
@ AB_GP_SHUNTING_REFUSED_NOT_AT_STANDSTILL
Definition
ab_gp_proc_shunting.h:27
AB_GP_SHUNTING_REFUSED_BY_GA
@ AB_GP_SHUNTING_REFUSED_BY_GA
Definition
ab_gp_proc_shunting.h:29
rbc_timestamp_ms_t
uint64_t rbc_timestamp_ms_t
Timestamp in milliseconds (POSIX or ETCS T_TRAIN / T_RBC scale).
Definition
ab_gp_ertms_types.h:219
ab_gp_ertms_types.h
ERTMS Subset-026 Chapter 5 Operational Procedure Data Types and Enums.
ab_gp_ertms_train_context_t
Complete ERTMS state and procedure context for one train slot.
Definition
ab_gp_ertms_types.h:235
rbc_nid_lrbg_t
Last Relevant Balise Group (Country + BG identifier).
Definition
ab_gp_ertms_types.h:43
rbc_train_outbound_msg_t
Definition
ab_gp_ertms_train_interface.h:52
src
application
AB
GP
ertms_procedures
ab_gp_proc_shunting.h
Generated by
1.18.0