176d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#ifndef CLI_H 276d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#define CLI_H 376d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman 476d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#define MAX_CMD_HISTORY 64 576d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#define COMMAND_DELIM " \t\n" // Whitespace delimiters 676d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#define MAX_COMMAND_ARGS 40 776d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman 876d05dc695b06c4e987bb8078f78032441e1430cGreg Hartmanstruct cli_command { 976d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman struct list_head list; 1076d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman char *command; 1176d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman}; 1276d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman 1376d05dc695b06c4e987bb8078f78032441e1430cGreg Hartmanextern void clear_screen(void); 1476d05dc695b06c4e987bb8078f78032441e1430cGreg Hartmanextern int mygetkey(clock_t timeout); 1576d05dc695b06c4e987bb8078f78032441e1430cGreg Hartmanextern const char *edit_cmdline(const char *input, int top /*, int width */ , 1676d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman int (*pDraw_Menu) (int, int, int), 1776d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman void (*show_fkey) (int), bool *); 1876d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman 1976d05dc695b06c4e987bb8078f78032441e1430cGreg Hartmanextern struct menu *root_menu, *start_menu, *hide_menu, *menu_list, *default_menu; 2076d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#endif 21