/* Josh Pieper, (c) 2000 */

/* This file is distributed under the GPL, see file COPYING for details */

#ifndef CLI_INPUT_H
#define CLI_INPUT_H

typedef struct {
  char *name;
  int (*func)(char *);
  char *doc;
  char *longdoc;
} COMMAND;

#ifdef __cplusplus
extern "C" {
#endif

  extern COMMAND commands[];
  extern int monitor_query;
  extern int monitor_reply;
  extern int monitor_push;
  extern int readline_firsttime;
  extern int readline_crashed;

  int recu_up(void);
  void recu_down(void);
  int recu_click(int cl);
  int get_command_index(char *command);
  int parse_command(char *a);
  int command_loop();
  int run_config_file(char *f, int doall, int echo);
  int input_parse_range(char *range, int (*a)(int, void *),void *userdata);
  char *info_str_type(int a);
  char *info_str_state(int a, int s);

#ifdef __cplusplus
}
#endif

#endif
