infinite_state_machine 1.0.0
Infinite State Machine Library
Loading...
Searching...
No Matches
infinite_state.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2025, Roy Ratcliffe, Northumberland, United Kingdom
3 * SPDX-License-Identifier: MIT
4 */
16#ifndef INFINITE_STATE_H
17#define INFINITE_STATE_H
18
19/*
20 * forward declaration of the infinite state machine
21 */
23
31{
36
47 void (*enter)(struct infinite_state *state, struct infinite_state_machine *machine);
48
59 void (*exit)(struct infinite_state *state, struct infinite_state_machine *machine);
60};
61
76struct infinite_state **infinite_state_topology(struct infinite_state *state, int depth,
77 struct infinite_state **topology);
78
79#endif /* INFINITE_STATE_H */
struct infinite_state ** infinite_state_topology(struct infinite_state *state, int depth, struct infinite_state **topology)
Get the topology of the infinite state machine.
Represents an infinite state machine. This structure holds the current state hierarchy and allows for...
The state structure for the infinite state. This structure represents a state in the infinite state m...
struct infinite_state * super
The parent state of this state.
void(* exit)(struct infinite_state *state, struct infinite_state_machine *machine)
The exit action for this state.
void(* enter)(struct infinite_state *state, struct infinite_state_machine *machine)
The enter action for this state.