41#ifndef __OPENLCB_PROTOCOL_CONFIG_MEM_WRITE_HANDLER__
42#define __OPENLCB_PROTOCOL_CONFIG_MEM_WRITE_HANDLER__
97 void (*on_function_changed)(
openlcb_node_t *openlcb_node, uint32_t fn_address, uint16_t fn_value);
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 ProtocolConfigMemWriteHandler_write_request_train_function_config_memory(openlcb_statemachine_info_t *statemachine_info, config_mem_write_request_info_t *config_mem_write_request_info)
Write to Train Fn Config (0xF9): updates in-RAM functions[].
Definition protocol_config_mem_write_handler.c:994
void ProtocolConfigMemWriteHandler_write_under_mask_space_all(openlcb_statemachine_info_t *statemachine_info)
Write-under-mask to All space (0xFE).
Definition protocol_config_mem_write_handler.c:569
void ProtocolConfigMemWriteHandler_write_under_mask_space_acdi_user(openlcb_statemachine_info_t *statemachine_info)
Write-under-mask to ACDI-User space (0xFB).
Definition protocol_config_mem_write_handler.c:602
void ProtocolConfigMemWriteHandler_write_space_config_memory(openlcb_statemachine_info_t *statemachine_info)
Write to Config space (0xFD).
Definition protocol_config_mem_write_handler.c:247
void ProtocolConfigMemWriteHandler_write_space_train_function_config_memory(openlcb_statemachine_info_t *statemachine_info)
Write to Train Fn Config space (0xF9).
Definition protocol_config_mem_write_handler.c:295
void ProtocolConfigMemWriteHandler_write_reply_ok_message(openlcb_statemachine_info_t *statemachine_info, uint8_t space)
Generic write reply OK handler. Placeholder.
Definition protocol_config_mem_write_handler.c:689
void ProtocolConfigMemWriteHandler_write_reply_fail_message(openlcb_statemachine_info_t *statemachine_info, uint8_t space)
Generic write reply fail handler. Placeholder.
Definition protocol_config_mem_write_handler.c:710
void ProtocolConfigMemWriteHandler_write_under_mask_space_acdi_manufacturer(openlcb_statemachine_info_t *statemachine_info)
Write-under-mask to ACDI-Mfg space (0xFC).
Definition protocol_config_mem_write_handler.c:591
void ProtocolConfigMemWriteHandler_write_space_all(openlcb_statemachine_info_t *statemachine_info)
Write to All space (0xFE).
Definition protocol_config_mem_write_handler.c:235
void ProtocolConfigMemWriteHandler_write_space_acdi_manufacturer(openlcb_statemachine_info_t *statemachine_info)
Write to ACDI-Mfg space (0xFC).
Definition protocol_config_mem_write_handler.c:259
void ProtocolConfigMemWriteHandler_initialize(const interface_protocol_config_mem_write_handler_t *interface_protocol_config_mem_write_handler)
Stores the callback interface. Call once at startup.
Definition protocol_config_mem_write_handler.c:68
void ProtocolConfigMemWriteHandler_write_space_acdi_user(openlcb_statemachine_info_t *statemachine_info)
Write to ACDI-User space (0xFB).
Definition protocol_config_mem_write_handler.c:271
void ProtocolConfigMemWriteHandler_write_request_config_mem(openlcb_statemachine_info_t *statemachine_info, config_mem_write_request_info_t *config_mem_write_request_info)
Send write request targeting Config (0xFD) on another node.
Definition protocol_config_mem_write_handler.c:815
void ProtocolConfigMemWriteHandler_write_request_acdi_user(openlcb_statemachine_info_t *statemachine_info, config_mem_write_request_info_t *config_mem_write_request_info)
Send write request targeting ACDI-User (0xFB) on another node.
Definition protocol_config_mem_write_handler.c:865
void ProtocolConfigMemWriteHandler_write_under_mask_space_train_function_definition_info(openlcb_statemachine_info_t *statemachine_info)
Write-under-mask to Train FDI space (0xFA).
Definition protocol_config_mem_write_handler.c:613
void ProtocolConfigMemWriteHandler_write_space_config_description_info(openlcb_statemachine_info_t *statemachine_info)
Write to CDI space (0xFF).
Definition protocol_config_mem_write_handler.c:223
void ProtocolConfigMemWriteHandler_write_space_firmware(openlcb_statemachine_info_t *statemachine_info)
Write to Firmware space (0xEF).
Definition protocol_config_mem_write_handler.c:307
void ProtocolConfigMemWriteHandler_write_message(openlcb_statemachine_info_t *statemachine_info, uint8_t space, uint8_t return_msg_ok, uint8_t return_msg_fail)
Generic write message handler. Placeholder.
Definition protocol_config_mem_write_handler.c:668
void ProtocolConfigMemWriteHandler_write_under_mask_space_config_description_info(openlcb_statemachine_info_t *statemachine_info)
Write-under-mask to CDI space (0xFF).
Definition protocol_config_mem_write_handler.c:558
void ProtocolConfigMemWriteHandler_write_space_train_function_definition_info(openlcb_statemachine_info_t *statemachine_info)
Write to Train FDI space (0xFA).
Definition protocol_config_mem_write_handler.c:283
void ProtocolConfigMemWriteHandler_write_under_mask_space_config_memory(openlcb_statemachine_info_t *statemachine_info)
Write-under-mask to Config space (0xFD).
Definition protocol_config_mem_write_handler.c:580
void ProtocolConfigMemWriteHandler_write_under_mask_space_firmware(openlcb_statemachine_info_t *statemachine_info)
Write-under-mask to Firmware space (0xEF).
Definition protocol_config_mem_write_handler.c:635
void ProtocolConfigMemWriteHandler_write_under_mask_space_train_function_config_memory(openlcb_statemachine_info_t *statemachine_info)
Write-under-mask to Train Fn Config space (0xF9).
Definition protocol_config_mem_write_handler.c:624
Request info for a configuration memory write operation.
Definition openlcb_types.h:817
Callback interface for memory-config write operations.
Definition protocol_config_mem_write_handler.h:56
OpenLCB virtual node.
Definition openlcb_types.h:679
Complete context passed to protocol handler functions.
Definition openlcb_types.h:743