OpenLcbCLib 1.0 Alpha
OpenSource C Library to create OpenLcb/Lcc Nodes
Loading...
Searching...
No Matches
openlcb_login_statemachine_handler.h
Go to the documentation of this file.
1
39// This is a guard condition so that contents of this file are not included
40// more than once.
41#ifndef __OPENLCB_OPENLCB_LOGIN_STATEMACHINE_HANDLER__
42#define __OPENLCB_OPENLCB_LOGIN_STATEMACHINE_HANDLER__
43
44#include <stdbool.h>
45#include <stdint.h>
46
47#include "openlcb_types.h"
48
50typedef struct {
51
53 uint16_t(*extract_producer_event_state_mti)(openlcb_node_t *openlcb_node, uint16_t event_index);
54
56 uint16_t(*extract_consumer_event_state_mti)(openlcb_node_t *openlcb_node, uint16_t event_index);
57
59
60
61#ifdef __cplusplus
62extern "C" {
63#endif /* __cplusplus */
64
71
79
88
98
99
100#ifdef __cplusplus
101}
102#endif /* __cplusplus */
103
104#endif /* __OPENLCB_OPENLCB_LOGIN_STATEMACHINE_HANDLER__ */
void OpenLcbLoginMessageHandler_initialize(const interface_openlcb_login_message_handler_t *interface)
Stores the callback interface. Call once at startup before login processing.
Definition openlcb_login_statemachine_handler.c:82
void OpenLcbLoginMessageHandler_load_initialization_complete(openlcb_login_statemachine_info_t *statemachine_info)
Builds the Initialization Complete message and transitions to producer event enumeration.
Definition openlcb_login_statemachine_handler.c:102
void OpenLcbLoginMessageHandler_load_producer_event(openlcb_login_statemachine_info_t *statemachine_info)
Builds one Producer Identified message; sets enumerate flag if more remain.
Definition openlcb_login_statemachine_handler.c:154
void OpenLcbLoginMessageHandler_load_consumer_event(openlcb_login_statemachine_info_t *statemachine_info)
Builds one Consumer Identified message; sets enumerate flag if more remain.
Definition openlcb_login_statemachine_handler.c:260
Core type definitions, structures, and configuration constants for the OpenLCB library.
Callbacks that map event state to the correct Identified MTI. Both REQUIRED.
Definition openlcb_login_statemachine_handler.h:50
Login state machine context.
Definition openlcb_types.h:771
OpenLCB virtual node.
Definition openlcb_types.h:679

Copyright (c) 2026 Jim Kueneman all rights reserved. See the License