xref: /linux/tools/verification/rvgen/tests/golden/da_perobj_parent/da_perobj_parent.h (revision 55ee4b931a7ffedc886175d265dd6e6d08fd4151)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Automatically generated C representation of da_perobj_parent automaton
4  * For further information about this format, see kernel documentation:
5  *   Documentation/trace/rv/deterministic_automata.rst
6  */
7 
8 #define MONITOR_NAME da_perobj_parent
9 
10 enum states_da_perobj_parent {
11 	state_a_da_perobj_parent,
12 	state_b_da_perobj_parent,
13 	state_c_da_perobj_parent,
14 	state_max_da_perobj_parent,
15 };
16 
17 #define INVALID_STATE state_max_da_perobj_parent
18 
19 enum events_da_perobj_parent {
20 	event_1_da_perobj_parent,
21 	event_2_da_perobj_parent,
22 	event_3_da_perobj_parent,
23 	event_max_da_perobj_parent,
24 };
25 
26 struct automaton_da_perobj_parent {
27 	char *state_names[state_max_da_perobj_parent];
28 	char *event_names[event_max_da_perobj_parent];
29 	unsigned char function[state_max_da_perobj_parent][event_max_da_perobj_parent];
30 	unsigned char initial_state;
31 	bool final_states[state_max_da_perobj_parent];
32 };
33 
34 static const struct automaton_da_perobj_parent automaton_da_perobj_parent = {
35 	.state_names = {
36 		"state_a",
37 		"state_b",
38 		"state_c",
39 	},
40 	.event_names = {
41 		"event_1",
42 		"event_2",
43 		"event_3",
44 	},
45 	.function = {
46 		{
47 			state_b_da_perobj_parent,
48 			state_c_da_perobj_parent,
49 			INVALID_STATE,
50 		},
51 		{
52 			INVALID_STATE,
53 			state_a_da_perobj_parent,
54 			state_c_da_perobj_parent,
55 		},
56 		{
57 			INVALID_STATE,
58 			INVALID_STATE,
59 			INVALID_STATE,
60 		},
61 	},
62 	.initial_state = state_a_da_perobj_parent,
63 	.final_states = { 1, 0, 0 },
64 };
65