RTE RBC 2oo2 Reference Application 0.1.0 build 0006685
SIL 4 2oo2 Dual-Site Fault-Tolerant ERTMS Radio Block Centre Reference Architecture
Loading...
Searching...
No Matches
ab_gp_ertms_types.h File Reference
#include <stdbool.h>
#include <stdint.h>
#include <stddef.h>
Include dependency graph for ab_gp_ertms_types.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  rbc_nid_lrbg_t
 Last Relevant Balise Group (Country + BG identifier). More...

Typedefs

typedef uint16_t rbc_nid_c_t
 Unique Country / Region Identifier (10 bits in ETCS).
typedef uint16_t rbc_nid_rbc_t
 Radio Block Centre Unique Identifier (14 bits in ETCS).
typedef uint32_t rbc_nid_engine_t
 ETCS On-board Engine Identifier / Train ID (24 bits in ETCS).
typedef uint16_t rbc_nid_bg_t
 Balise Group Unique Identifier (14 bits in ETCS).
typedef uint32_t rbc_nid_ixl_t
 Interlocking (IXL) Unit Identifier.
typedef uint32_t rbc_nid_section_t
 Track Circuit / Axle Counter Section Identifier.
typedef uint32_t rbc_nid_route_t
 Interlocking Route Identifier.
typedef uint32_t rbc_nid_point_t
 Track Switch / Point Identifier.
typedef uint32_t rbc_nid_signal_t
 Wayside Signal Identifier.
typedef uint32_t rbc_nid_lx_t
 Level Crossing Identifier.
typedef uint16_t rbc_nid_tsr_t
 Temporary Speed Restriction Identifier (16 bits).
typedef uint8_t rbc_nid_em_t
 Emergency Stop Identifier (8 bits).
typedef uint8_t rbc_nid_ntc_t
 National Track Condition / System Identifier.
typedef int64_t rbc_distance_cm_t
 Position / Distance in centimeters (0.01 m precision).
typedef uint32_t rbc_distance_m_t
 Distance offset in meters.
typedef uint16_t rbc_speed_kmh_t
 Speed in km/h (5 km/h ETCS granularity or exact integer).
typedef int8_t rbc_gradient_permille_t
 Gradient in parts per thousand (0.1% or per mille, -127..+127).
typedef uint64_t rbc_timestamp_ms_t
 Timestamp in milliseconds (POSIX or ETCS T_TRAIN / T_RBC scale).
typedef uint32_t rbc_duration_s_t
 Duration in seconds.

Enumerations

enum  rbc_q_scale_t { RBC_Q_SCALE_10CM = 0 , RBC_Q_SCALE_1M = 1 , RBC_Q_SCALE_10M = 2 }
 Distance Scale Qualifier (Q_SCALE) Subset-026 Section 7.5.1.134: 0 = 10 cm (0.1 m) 1 = 1 m 2 = 10 m. More...
enum  rbc_q_dir_t { RBC_Q_DIR_REVERSE = 0 , RBC_Q_DIR_NOMINAL = 1 , RBC_Q_DIR_BOTH = 2 }
 Direction Qualifier (Q_DIR) Subset-026 Section 7.5.1.15: 0 = Reverse 1 = Nominal 2 = Both directions. More...
enum  rbc_q_dirlrbg_t { RBC_Q_DIRLRBG_REVERSE = 0 , RBC_Q_DIRLRBG_NOMINAL = 1 , RBC_Q_DIRLRBG_UNKNOWN = 2 }
 Balise Group Orientation (Q_DIRLRBG) Subset-026 Section 7.5.1.16: 0 = Reverse 1 = Nominal 2 = Unknown. More...
enum  rbc_q_dlrbg_t { RBC_Q_DLRBG_REVERSE = 0 , RBC_Q_DLRBG_NOMINAL = 1 , RBC_Q_DLRBG_UNKNOWN = 2 }
 Train Orientation relative to LRBG (Q_DLRBG) Subset-026 Section 7.5.1.18: 0 = Reverse 1 = Nominal 2 = Unknown. More...
enum  rbc_m_mode_t {
  RBC_M_MODE_FULL_SUPERVISION = 0 , RBC_M_MODE_ON_SIGHT = 1 , RBC_M_MODE_STAFF_RESPONSIBLE = 2 , RBC_M_MODE_SHUNTING = 3 ,
  RBC_M_MODE_UNFITTED = 4 , RBC_M_MODE_STAND_BY = 5 , RBC_M_MODE_SLEEPING = 6 , RBC_M_MODE_POST_TRIP = 7 ,
  RBC_M_MODE_TRIP = 8 , RBC_M_MODE_ISOLATING = 9 , RBC_M_MODE_NON_LEADING = 10 , RBC_M_MODE_NATIONAL_SYSTEM = 11 ,
  RBC_M_MODE_REVERSING = 12 , RBC_M_MODE_LIMITED_SUPERVISION = 13
}
 Train Operating Mode (M_MODE) Subset-026 Section 7.5.1.86. More...
enum  rbc_m_level_t {
  RBC_M_LEVEL_0 = 0 , RBC_M_LEVEL_NTC = 1 , RBC_M_LEVEL_1 = 2 , RBC_M_LEVEL_2 = 3 ,
  RBC_M_LEVEL_3 = 4
}
 ETCS Operating Level (M_LEVEL) Subset-026 Section 7.5.1.84. More...
enum  rbc_m_ack_t { RBC_M_ACK_NOT_REQUIRED = 0 , RBC_M_ACK_REQUIRED = 1 }
 Acknowledgement Request Qualifier (M_ACK) Subset-026 Section 7.5.1.75. More...
enum  rbc_q_marqstreason_t {
  RBC_Q_MARQSTREASON_TIME_BEFORE_SECTION_TIMER = 0 , RBC_Q_MARQSTREASON_TIME_BEFORE_LOA_TIMER = 1 , RBC_Q_MARQSTREASON_TRACK_DESCRIPTION_DELETED = 2 , RBC_Q_MARQSTREASON_DRIVER_REQUEST = 3 ,
  RBC_Q_MARQSTREASON_SESSION_OPENING = 4
}
 Movement Authority Request Reason (Q_MARQSTREASON) Subset-026 Section 7.5.1.28. More...
enum  rbc_q_front_t { RBC_Q_FRONT_TRAIN_LENGTH_DELAY = 0 , RBC_Q_FRONT_NO_TRAIN_LENGTH_DELAY = 1 }
 Train Front / Rear Applicability Qualifier (Q_FRONT). More...

Typedef Documentation

◆ rbc_nid_c_t

typedef uint16_t rbc_nid_c_t

Unique Country / Region Identifier (10 bits in ETCS).

Definition at line 30 of file ab_gp_ertms_types.h.

◆ rbc_nid_rbc_t

typedef uint16_t rbc_nid_rbc_t

Radio Block Centre Unique Identifier (14 bits in ETCS).

Definition at line 33 of file ab_gp_ertms_types.h.

◆ rbc_nid_engine_t

typedef uint32_t rbc_nid_engine_t

ETCS On-board Engine Identifier / Train ID (24 bits in ETCS).

Definition at line 36 of file ab_gp_ertms_types.h.

◆ rbc_nid_bg_t

typedef uint16_t rbc_nid_bg_t

Balise Group Unique Identifier (14 bits in ETCS).

Definition at line 39 of file ab_gp_ertms_types.h.

◆ rbc_nid_ixl_t

typedef uint32_t rbc_nid_ixl_t

Interlocking (IXL) Unit Identifier.

Definition at line 49 of file ab_gp_ertms_types.h.

◆ rbc_nid_section_t

typedef uint32_t rbc_nid_section_t

Track Circuit / Axle Counter Section Identifier.

Definition at line 52 of file ab_gp_ertms_types.h.

◆ rbc_nid_route_t

typedef uint32_t rbc_nid_route_t

Interlocking Route Identifier.

Definition at line 55 of file ab_gp_ertms_types.h.

◆ rbc_nid_point_t

typedef uint32_t rbc_nid_point_t

Track Switch / Point Identifier.

Definition at line 58 of file ab_gp_ertms_types.h.

◆ rbc_nid_signal_t

typedef uint32_t rbc_nid_signal_t

Wayside Signal Identifier.

Definition at line 61 of file ab_gp_ertms_types.h.

◆ rbc_nid_lx_t

typedef uint32_t rbc_nid_lx_t

Level Crossing Identifier.

Definition at line 64 of file ab_gp_ertms_types.h.

◆ rbc_nid_tsr_t

typedef uint16_t rbc_nid_tsr_t

Temporary Speed Restriction Identifier (16 bits).

Definition at line 67 of file ab_gp_ertms_types.h.

◆ rbc_nid_em_t

typedef uint8_t rbc_nid_em_t

Emergency Stop Identifier (8 bits).

Definition at line 70 of file ab_gp_ertms_types.h.

◆ rbc_nid_ntc_t

typedef uint8_t rbc_nid_ntc_t

National Track Condition / System Identifier.

Definition at line 73 of file ab_gp_ertms_types.h.

◆ rbc_distance_cm_t

typedef int64_t rbc_distance_cm_t

Position / Distance in centimeters (0.01 m precision).

Definition at line 207 of file ab_gp_ertms_types.h.

◆ rbc_distance_m_t

typedef uint32_t rbc_distance_m_t

Distance offset in meters.

Definition at line 210 of file ab_gp_ertms_types.h.

◆ rbc_speed_kmh_t

typedef uint16_t rbc_speed_kmh_t

Speed in km/h (5 km/h ETCS granularity or exact integer).

Definition at line 213 of file ab_gp_ertms_types.h.

◆ rbc_gradient_permille_t

typedef int8_t rbc_gradient_permille_t

Gradient in parts per thousand (0.1% or per mille, -127..+127).

Definition at line 216 of file ab_gp_ertms_types.h.

◆ rbc_timestamp_ms_t

typedef uint64_t rbc_timestamp_ms_t

Timestamp in milliseconds (POSIX or ETCS T_TRAIN / T_RBC scale).

Definition at line 219 of file ab_gp_ertms_types.h.

◆ rbc_duration_s_t

typedef uint32_t rbc_duration_s_t

Duration in seconds.

Definition at line 222 of file ab_gp_ertms_types.h.

Enumeration Type Documentation

◆ rbc_q_scale_t

Distance Scale Qualifier (Q_SCALE) Subset-026 Section 7.5.1.134: 0 = 10 cm (0.1 m) 1 = 1 m 2 = 10 m.

Enumerator
RBC_Q_SCALE_10CM 
RBC_Q_SCALE_1M 
RBC_Q_SCALE_10M 

Definition at line 86 of file ab_gp_ertms_types.h.

◆ rbc_q_dir_t

Direction Qualifier (Q_DIR) Subset-026 Section 7.5.1.15: 0 = Reverse 1 = Nominal 2 = Both directions.

Enumerator
RBC_Q_DIR_REVERSE 
RBC_Q_DIR_NOMINAL 
RBC_Q_DIR_BOTH 

Definition at line 100 of file ab_gp_ertms_types.h.

◆ rbc_q_dirlrbg_t

Balise Group Orientation (Q_DIRLRBG) Subset-026 Section 7.5.1.16: 0 = Reverse 1 = Nominal 2 = Unknown.

Enumerator
RBC_Q_DIRLRBG_REVERSE 
RBC_Q_DIRLRBG_NOMINAL 
RBC_Q_DIRLRBG_UNKNOWN 

Definition at line 114 of file ab_gp_ertms_types.h.

◆ rbc_q_dlrbg_t

Train Orientation relative to LRBG (Q_DLRBG) Subset-026 Section 7.5.1.18: 0 = Reverse 1 = Nominal 2 = Unknown.

Enumerator
RBC_Q_DLRBG_REVERSE 
RBC_Q_DLRBG_NOMINAL 
RBC_Q_DLRBG_UNKNOWN 

Definition at line 128 of file ab_gp_ertms_types.h.

◆ rbc_m_mode_t

Train Operating Mode (M_MODE) Subset-026 Section 7.5.1.86.

Enumerator
RBC_M_MODE_FULL_SUPERVISION 

FS: Full Supervision

RBC_M_MODE_ON_SIGHT 

OS: On Sight

RBC_M_MODE_STAFF_RESPONSIBLE 

SR: Staff Responsible

RBC_M_MODE_SHUNTING 

SH: Shunting

RBC_M_MODE_UNFITTED 

UN: Unfitted

RBC_M_MODE_STAND_BY 

SB: Stand By

RBC_M_MODE_SLEEPING 

SL: Sleeping

RBC_M_MODE_POST_TRIP 

PT: Post Trip

RBC_M_MODE_TRIP 

TR: Trip

RBC_M_MODE_ISOLATING 

IS: Isolated

RBC_M_MODE_NON_LEADING 

NL: Non Leading

RBC_M_MODE_NATIONAL_SYSTEM 

SN: National System

RBC_M_MODE_REVERSING 

RV: Reversing

RBC_M_MODE_LIMITED_SUPERVISION 

LS: Limited Supervision

Definition at line 139 of file ab_gp_ertms_types.h.

◆ rbc_m_level_t

ETCS Operating Level (M_LEVEL) Subset-026 Section 7.5.1.84.

Enumerator
RBC_M_LEVEL_0 

Level 0 (Unfitted line)

RBC_M_LEVEL_NTC 

Level NTC (National Train Control)

RBC_M_LEVEL_1 

Level 1 (Eurobalise + Lineside Signal)

RBC_M_LEVEL_2 

Level 2 (Eurobalise + Radio Infill / Euroradio)

RBC_M_LEVEL_3 

Level 3 (Radio Infill + Moving Block / Train Integrity)

Definition at line 161 of file ab_gp_ertms_types.h.

◆ rbc_m_ack_t

Acknowledgement Request Qualifier (M_ACK) Subset-026 Section 7.5.1.75.

Enumerator
RBC_M_ACK_NOT_REQUIRED 
RBC_M_ACK_REQUIRED 

Definition at line 174 of file ab_gp_ertms_types.h.

◆ rbc_q_marqstreason_t

Movement Authority Request Reason (Q_MARQSTREASON) Subset-026 Section 7.5.1.28.

Enumerator
RBC_Q_MARQSTREASON_TIME_BEFORE_SECTION_TIMER 
RBC_Q_MARQSTREASON_TIME_BEFORE_LOA_TIMER 
RBC_Q_MARQSTREASON_TRACK_DESCRIPTION_DELETED 
RBC_Q_MARQSTREASON_DRIVER_REQUEST 
RBC_Q_MARQSTREASON_SESSION_OPENING 

Definition at line 184 of file ab_gp_ertms_types.h.

◆ rbc_q_front_t

Train Front / Rear Applicability Qualifier (Q_FRONT).

Enumerator
RBC_Q_FRONT_TRAIN_LENGTH_DELAY 

Release restriction only after whole train clears

RBC_Q_FRONT_NO_TRAIN_LENGTH_DELAY 

Release restriction as soon as front clears

Definition at line 196 of file ab_gp_ertms_types.h.