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_standby_policy.h
Go to the documentation of this file.
1
10#ifndef AB_GP_STANDBY_POLICY_H
11#define AB_GP_STANDBY_POLICY_H
12
13#include <stdbool.h>
14#include <stdint.h>
15
16#include "rte/redundancy/site_role/rte_site_role_policy.h"
17#include "rte/utils/types/rte_types.h"
18
22#define AB_GP_STALL_LOST_CONTACT_MS 5000U
23
25#define AB_GP_NEG_RECONNECT_ATTEMPT_MS 50U
26
28#define AB_GP_JOIN_ADOPT_CYCLES 40U
29
43bool ab_gp_session_adopt_allowed(uint32_t join_left, bool local_in_use, bool peer_in_use);
44
63bool ab_gp_stall_lost_contact(rte_timestamp_ms_t last_ms, rte_timestamp_ms_t now_ms, bool is_online,
64 rte_timestamp_ms_t *stalled_ms);
65
66#endif /* AB_GP_STANDBY_POLICY_H */
bool ab_gp_stall_lost_contact(rte_timestamp_ms_t last_ms, rte_timestamp_ms_t now_ms, bool is_online, rte_timestamp_ms_t *stalled_ms)
Whether a channel that wakes up at a cycle tick has stalled long enough to count as having lost conta...
bool ab_gp_session_adopt_allowed(uint32_t join_left, bool local_in_use, bool peer_in_use)
Whether a channel that has just become ONLINE adopts one train session from its A/B sibling.