|
OpenLcbCLib 1.0 Alpha
OpenSource C Library to create OpenLcb/Lcc Nodes
|
| ▼ src | |
| ▼ drivers | |
| ▼ canbus | |
| alias_mapping_listener.c | On-demand alias resolution table for consist listener nodes |
| alias_mapping_listener.h | On-demand alias resolution table for consist listener nodes |
| alias_mappings.c | Implementation of the CAN alias / Node ID mapping buffer |
| alias_mappings.h | Fixed-size buffer mapping 12-bit CAN aliases to 48-bit OpenLCB Node IDs |
| can_buffer_fifo.c | Circular FIFO queue for can_msg_t pointers |
| can_buffer_fifo.h | Circular FIFO queue for can_msg_t pointers |
| can_buffer_store.c | Implementation of the pre-allocated CAN message buffer pool |
| can_buffer_store.h | Pre-allocated pool of can_msg_t buffers (8-byte payload each) |
| can_config.c | Library-internal wiring module for CAN bus transport |
| can_config.h | User-facing CAN bus transport configuration |
| can_login_message_handler.c | Implementation of the 10-state CAN alias allocation login handlers |
| can_login_message_handler.h | State handlers for the 10-state CAN alias allocation login sequence |
| can_login_statemachine.c | Implementation of the CAN login state machine dispatcher |
| can_login_statemachine.h | Dispatcher for the 10-state CAN alias allocation login sequence |
| can_main_statemachine.c | Implementation of the main CAN state machine dispatcher |
| can_main_statemachine.h | Main CAN layer state machine — orchestrates alias management, login, and message dispatch |
| can_rx_message_handler.c | Implementation of message handlers for CAN receive operations |
| can_rx_message_handler.h | Message handlers for processing received CAN frames into OpenLCB messages |
| can_rx_statemachine.c | Implementation of the CAN receive state machine |
| can_rx_statemachine.h | State machine that decodes and routes incoming CAN frames |
| can_tx_message_handler.c | Implementation of message handlers for CAN transmit operations |
| can_tx_message_handler.h | Message handlers that convert OpenLCB messages to outgoing CAN frames |
| can_tx_statemachine.c | Implementation of the CAN transmit state machine |
| can_tx_statemachine.h | Orchestrates CAN frame transmission for all OpenLCB message types |
| can_types.h | Type definitions and constants for the CAN transport layer |
| can_utilities.c | Implementation of utility functions for CAN frame buffers |
| can_utilities.h | Utility functions for manipulating can_msg_t frame buffers |
| ▼ openlcb | |
| openlcb_application.c | Implementation of the application layer interface |
| openlcb_application.h | Application layer interface for the OpenLCB library |
| openlcb_application_broadcast_time.c | Implementation of the application-level Broadcast Time Protocol module |
| openlcb_application_broadcast_time.h | Application-level Broadcast Time Protocol module |
| openlcb_application_train.c | Implementation of the application-level Train Control Protocol module |
| openlcb_application_train.h | Application-level Train Control Protocol module |
| openlcb_buffer_fifo.c | FIFO queue for OpenLCB message pointers |
| openlcb_buffer_fifo.h | FIFO queue for OpenLCB message pointers |
| openlcb_buffer_list.c | Random-access list of OpenLCB message pointers |
| openlcb_buffer_list.h | Random-access list of OpenLCB message pointers |
| openlcb_buffer_store.c | Pre-allocated message pool for OpenLCB buffer management |
| openlcb_buffer_store.h | Pre-allocated message pool for OpenLCB buffer management |
| openlcb_config.c | Library-internal wiring module for config facade |
| openlcb_config.h | User-facing configuration struct and initialization API for OpenLcbCLib |
| openlcb_defines.h | OpenLCB protocol constants, MTI codes, and memory configuration commands |
| openlcb_float16.c | IEEE 754 half-precision (float16) conversion utilities |
| openlcb_float16.h | IEEE 754 half-precision (float16) conversion utilities |
| openlcb_gridconnect.c | Implementation of GridConnect protocol conversion |
| openlcb_gridconnect.h | Bidirectional conversion between CAN messages and GridConnect ASCII format |
| openlcb_login_statemachine.c | Implementation of the login state machine dispatcher |
| openlcb_login_statemachine.h | Non-blocking login state machine for node initialization |
| openlcb_login_statemachine_handler.c | Implementation of the login state machine message handler |
| openlcb_login_statemachine_handler.h | Message construction handlers for the login sequence |
| openlcb_main_statemachine.c | Implementation of the main OpenLCB protocol state machine dispatcher |
| openlcb_main_statemachine.h | Central MTI-based message dispatcher |
| openlcb_node.c | OpenLCB node allocation, enumeration, and lifecycle management |
| openlcb_node.h | OpenLCB node allocation, enumeration, and lifecycle management |
| openlcb_types.h | Core type definitions, structures, and configuration constants for the OpenLCB library |
| openlcb_utilities.c | Common utility functions for OpenLCB message and buffer manipulation |
| openlcb_utilities.h | Common utility functions for OpenLCB message and buffer manipulation |
| protocol_broadcast_time_handler.c | Broadcast Time Protocol message handler implementation |
| protocol_broadcast_time_handler.h | Broadcast Time Protocol message handler |
| protocol_config_mem_operations_handler.c | Memory-config operations dispatcher implementation |
| protocol_config_mem_operations_handler.h | Configuration memory operations dispatcher |
| protocol_config_mem_read_handler.c | Configuration memory read handler implementation |
| protocol_config_mem_read_handler.h | Configuration memory read handler |
| protocol_config_mem_write_handler.c | Configuration memory write handler implementation |
| protocol_config_mem_write_handler.h | Configuration memory write handler |
| protocol_datagram_handler.c | Datagram protocol handler — reliable 0–72 byte addressed transfers |
| protocol_datagram_handler.h | Datagram protocol handler for reliable 0-72 byte addressed transfers |
| protocol_event_transport.c | Event Transport protocol implementation |
| protocol_event_transport.h | Event Transport protocol handler |
| protocol_message_network.c | Core message network protocol implementation |
| protocol_message_network.h | Core message network protocol handler |
| protocol_snip.c | Simple Node Information Protocol (SNIP) implementation |
| protocol_snip.h | Simple Node Information Protocol (SNIP) handler |
| protocol_train_handler.c | Train Control Protocol message handler implementation (Layer 1) |
| protocol_train_handler.h | Train Control Protocol message handler (Layer 1) |
| protocol_train_search_handler.c | Train Search Protocol message handler implementation |
| protocol_train_search_handler.h | Train Search Protocol message handler |
| ▼ utilities | |
| mustangpeak_endian_helper.c | Implementation of the byte-order swap helpers |
| mustangpeak_endian_helper.h | Byte-order swap helpers for 8-, 16-, 32-, and 64-bit unsigned integers |
| mustangpeak_string_helper.c | Implementation of the dynamic string allocation helpers |
| mustangpeak_string_helper.h | Dynamic string allocation helpers using malloc |
| threadsafe_stringlist.c | |
| threadsafe_stringlist.h | |
| mainpage.h |
Copyright (c) 2026 Jim Kueneman all rights reserved. See the License