CuVoodoo STM32F1 firmware template
menu.h
Go to the documentation of this file.
1 /* This program is free software: you can redistribute it and/or modify
2  * it under the terms of the GNU General Public License as published by
3  * the Free Software Foundation, either version 3 of the License, or
4  * (at your option) any later version.
5  *
6  * This program is distributed in the hope that it will be useful,
7  * but WITHOUT ANY WARRANTY; without even the implied warranty of
8  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
9  * GNU General Public License for more details.
10  *
11  * You should have received a copy of the GNU General Public License
12  * along with this program. If not, see <http://www.gnu.org/licenses/>.
13  *
14  */
20 #pragma once
21 
29 };
30 
33  char shortcut;
34  char* name;
38  void (*command_handler)(void* argument);
39 };
40 
47 bool menu_handle_command(const char* line, const struct menu_command_t* command_list, size_t command_list_length);
52 void menu_print_commands(const struct menu_command_t* command_list, size_t command_list_length);
53 
command menu entry
Definition: menu.h:32
char * argument_description
human readable description of the argument it can accept
Definition: menu.h:37
enum menu_argument_t argument
what kind of argument it accepts
Definition: menu.h:36
char * name
complete name of the command (space-free)
Definition: menu.h:34
char shortcut
short command code (0 if not available)
Definition: menu.h:33
void(* command_handler)(void *argument)
function to be called to handle this command
Definition: menu.h:38
char * command_description
human readable description of the command purpose
Definition: menu.h:35