39#ifndef __OPENLCB_PROTOCOL_CONFIG_MEM_READ_HANDLER__
40#define __OPENLCB_PROTOCOL_CONFIG_MEM_READ_HANDLER__
66 uint16_t(*snip_load_manufacturer_version_id)(
openlcb_node_t* openlcb_node,
openlcb_msg_t* worker_msg, uint16_t payload_index, uint16_t requested_bytes);
72 uint16_t(*snip_load_hardware_version)(
openlcb_node_t* openlcb_node,
openlcb_msg_t* worker_msg, uint16_t payload_index, uint16_t requested_bytes);
74 uint16_t(*snip_load_software_version)(
openlcb_node_t* openlcb_node,
openlcb_msg_t* worker_msg, uint16_t payload_index, uint16_t requested_bytes);
76 uint16_t(*snip_load_user_version_id)(
openlcb_node_t* openlcb_node,
openlcb_msg_t* worker_msg, uint16_t payload_index, uint16_t requested_bytes);
80 uint16_t(*snip_load_user_description)(
openlcb_node_t* openlcb_node,
openlcb_msg_t* worker_msg, uint16_t payload_index, uint16_t requested_bytes);
Core type definitions, structures, and configuration constants for the OpenLCB library.
uint8_t configuration_memory_buffer_t[LEN_DATAGRAM_MAX_PAYLOAD]
Configuration memory read/write operation buffer (64 bytes).
Definition openlcb_types.h:365
void ProtocolConfigMemReadHandler_read_reply_ok_message(openlcb_statemachine_info_t *statemachine_info, uint8_t space)
Generic read reply OK handler. Placeholder.
Definition protocol_config_mem_read_handler.c:636
void ProtocolConfigMemReadHandler_read_space_all(openlcb_statemachine_info_t *statemachine_info)
Read from All space (0xFE).
Definition protocol_config_mem_read_handler.c:556
void ProtocolConfigMemReadHandler_read_request_train_function_definition_info(openlcb_statemachine_info_t *statemachine_info, config_mem_read_request_info_t *config_mem_read_request_info)
Send read request targeting Train FDI (0xFA) on another node.
Definition protocol_config_mem_read_handler.c:234
void ProtocolConfigMemReadHandler_read_reply_reject_message(openlcb_statemachine_info_t *statemachine_info, uint8_t space)
Generic read reply reject handler. Placeholder.
Definition protocol_config_mem_read_handler.c:642
void ProtocolConfigMemReadHandler_read_space_acdi_user(openlcb_statemachine_info_t *statemachine_info)
Read from ACDI-User space (0xFB).
Definition protocol_config_mem_read_handler.c:592
void ProtocolConfigMemReadHandler_read_space_train_function_definition_info(openlcb_statemachine_info_t *statemachine_info)
Read from Train FDI space (0xFA).
Definition protocol_config_mem_read_handler.c:604
void ProtocolConfigMemReadHandler_initialize(const interface_protocol_config_mem_read_handler_t *interface_protocol_config_mem_read_handler)
Stores the callback interface. Call once at startup.
Definition protocol_config_mem_read_handler.c:66
void ProtocolConfigMemReadHandler_read_request_acdi_manufacturer(openlcb_statemachine_info_t *statemachine_info, config_mem_read_request_info_t *config_mem_read_request_info)
Send read request targeting ACDI-Mfg (0xFC) on another node.
Definition protocol_config_mem_read_handler.c:338
void ProtocolConfigMemReadHandler_read_message(openlcb_statemachine_info_t *statemachine_info, uint8_t space, uint8_t return_msg_ok, uint8_t return_msg_fail)
Generic read message handler. Placeholder.
Definition protocol_config_mem_read_handler.c:630
void ProtocolConfigMemReadHandler_read_space_acdi_manufacturer(openlcb_statemachine_info_t *statemachine_info)
Read from ACDI-Mfg space (0xFC).
Definition protocol_config_mem_read_handler.c:580
void ProtocolConfigMemReadHandler_read_space_config_description_info(openlcb_statemachine_info_t *statemachine_info)
Read from CDI space (0xFF).
Definition protocol_config_mem_read_handler.c:544
void ProtocolConfigMemReadHandler_read_request_acdi_user(openlcb_statemachine_info_t *statemachine_info, config_mem_read_request_info_t *config_mem_read_request_info)
Send read request targeting ACDI-User (0xFB) on another node.
Definition protocol_config_mem_read_handler.c:462
void ProtocolConfigMemReadHandler_read_request_config_mem(openlcb_statemachine_info_t *statemachine_info, config_mem_read_request_info_t *config_mem_read_request_info)
Send read request targeting Config (0xFD) on another node.
Definition protocol_config_mem_read_handler.c:299
void ProtocolConfigMemReadHandler_read_request_config_definition_info(openlcb_statemachine_info_t *statemachine_info, config_mem_read_request_info_t *config_mem_read_request_info)
Send read request targeting CDI (0xFF) on another node.
Definition protocol_config_mem_read_handler.c:219
void ProtocolConfigMemReadHandler_read_request_train_function_config_memory(openlcb_statemachine_info_t *statemachine_info, config_mem_read_request_info_t *config_mem_read_request_info)
Send read request targeting Train Fn Config (0xF9) on another node.
Definition protocol_config_mem_read_handler.c:254
void ProtocolConfigMemReadHandler_read_space_train_function_config_memory(openlcb_statemachine_info_t *statemachine_info)
Read from Train Fn Config space (0xF9).
Definition protocol_config_mem_read_handler.c:616
void ProtocolConfigMemReadHandler_read_space_config_memory(openlcb_statemachine_info_t *statemachine_info)
Read from Config space (0xFD).
Definition protocol_config_mem_read_handler.c:568
Request info for a configuration memory read operation.
Definition openlcb_types.h:799
Callback interface for config memory reads. Datagram ACK and config_memory_read are REQUIRED; SNIP lo...
Definition protocol_config_mem_read_handler.h:50
Core OpenLCB message structure.
Definition openlcb_types.h:480
OpenLCB virtual node.
Definition openlcb_types.h:679
Complete context passed to protocol handler functions.
Definition openlcb_types.h:743