State Library
 All Files Functions Typedefs Pages
state.h
Go to the documentation of this file.
1 
14 #ifndef STATE_H
15 #define STATE_H
16 
17 
20 struct StateMachine;
21 
24 typedef int (*StateFunc)(void *data);
25 
29 struct StateMachine *state_newmachine();
30 
34 void state_free(struct StateMachine *p);
35 
44 int state_add_transition(struct StateMachine *machine,StateFunc from, int value, StateFunc to);
45 
52 int state_start(struct StateMachine *machine,StateFunc start, void *data);
53 
54 
55 #endif
struct StateMachine * state_newmachine()
state_newmachine instanciate a new empty machine
Definition: state.c:25
void state_free(struct StateMachine *p)
state_free release resource of a machine allocated with state_newmachine
Definition: state.c:32
int state_add_transition(struct StateMachine *machine, StateFunc from, int value, StateFunc to)
state_add_transition Add a new transition into the machine
Definition: state.c:42
int(* StateFunc)(void *data)
Default type for a state function.
Definition: state.h:24
int state_start(struct StateMachine *machine, StateFunc start, void *data)
state_start run a state machine
Definition: state.c:74