Safe API Framework
Layered API framework for safety-related applications (ERTMS RBC reference targeting CENELEC EN 50128 SIL 4)
Toggle main menu visibility
Loading...
Searching...
No Matches
Related Pages
Here is a list of all related documentation pages:
INTEGRATION_GUIDE
App Manager Integration with Channels
CHANNEL_CONFIGURATION
Channel Configuration Guide
IPC_GUIDE
IPC (Inter-Process Communication) Guide
IPC_TRANSPORT_SELECTION
IPC Transport Selection Guide
ARCHITECTURE
Log Module - Architecture
USER_GUIDE
Logging Module - User Guide
ARCHITECTURE
Memory Module - Architecture
USER_GUIDE
Memory Module - User Guide
ARCHITECTURE
Non-Volatile Memory Architecture
USER_GUIDE
Non-Volatile Memory User Guide
ARCHITECTURE
Reboot Module - Architecture
USER_GUIDE
Reboot Module - User Guide
ARCHITECTURE
Task Queue Module - Architecture
USER_GUIDE
Task Queue Module - User Guide
ARCHITECTURE
Timer Module - Architecture
USER_GUIDE
Timer Module - User Guide
ARCHITECTURE
Vital Channel Communication Architecture
CHANNEL_TOPOLOGIES
Channel Topologies and Redundancy Patterns
USER_GUIDE
Vital Channel Module - User Guide
ARCHITECTURE
Checksum Module - Architecture
USER_GUIDE
Checksum Module - User Guide
ARCHITECTURE
Watchdog Module - Architecture
USER_GUIDE
Watchdog Module - User Guide
ARCHITECTURE
Buffer Module - Architecture
USER_GUIDE
Buffer Module - User Guide
ARCHITECTURE
Cast Module - Architecture
USER_GUIDE
Cast Module - User Guide
ARCHITECTURE
Safe-State Module - Architecture
USER_GUIDE
Safe-State Module - User Guide
ARCHITECTURE
Status Module - Architecture
USER_GUIDE
Status Module - User Guide
ARCHITECTURE
String Module - Architecture
USER_GUIDE
String Module - User Guide
ARCHITECTURE
Types Module - Architecture
USER_GUIDE
Types Module - User Guide
ADR-001: OS Abstraction Layer (OAL) for the Safe API Framework
ADR-002: Cross-Layer Data Buffer Abstraction
ADR-003: Checked Integer Casting
ADR-004: Safe-State Transitions and Checked Assertions
ADR-005: OAL Backend Registration via Callbacks
ADR-006: Safe String Manipulation and Endianness-Safe Buffer Access
ADR-007: Per-Feature Directory Layout
ADR-008: Dual-Channel Vital Architecture — CCF Mitigation via Build Diversity
ADR-016: CRC-64 Data Integrity for Redundant Channels
ADR-017: Checkpoint Rendezvous and Clock Synchronization for Distributed Vital Channels
ADR-018: A Real POSIX/Linux OAL Backend
ADR-019: AppManager Cycle Hooks and Built-In Checkpoint Rendezvous
ADR-020: Dual-Transfer State Negotiation (
sapi_dual
)
ADR-021: Consumer / OS-Backend Header Separation
ADR-022: Unified
sapi_safechannel
Factory (Hiding IPC/Netlink from App Code)
ADR-023: Consolidate 22 CMake Library Targets into 4
ADR-024: Per-Module Feature Selection at Configure Time
ADR-025: Split
sapi_vital_channel
into
sapi_channel
+
sapi_voter
+
sapi_cross_comparator
ADR-026: Application Setup-Phase Lock and Single-Entry-Point Enforcement
ADR-027: UDP Transport for
sapi_netlink
ADR-028: Channel-Down Escalation to REBOOT, and a Cyclic-Executive Starvation Fix
ADR-029: RBC Train/IL/CTC Scenario - Real Multi-Train Protocol and Failover-Ready Session State
ADR-030:
sapi_notify
- fixed-capacity registered-callback list shape
ADR-031:
sapi_mem_util
- one sanctioned call site per libc memory primitive
ADR-032: Setup-phase lock coverage extended to backend registration and remaining setup-only constructors
ADR-033: sapi_mutex - a portable mutual-exclusion primitive
ADR-034: Checkpoint-signature marks and stage-then-commit output
ADR-035:
sapi_platform
OAL service for real-time bring-up
ADR-036: Train-session multiplexing - one link, many trains (up to 100)
ADR-037: Role C gateway - decomposition into per-client-type service binaries
ADR-038: Status indication - a C-side pub/sub broker + an A/B↔C util channel
Architecture Diagrams with PlantUML & Doxygen
SYSTEM_OVERVIEW
System Architecture Overview
Cross-Compilation Guide
Software Requirements Specification (SRS)
Generated by
1.18.0