You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
830B

  1. #ifndef _CMD_UTILS_H
  2. #define _CMD_UTILS_H
  3. typedef struct {
  4. const char *name;
  5. int flags;
  6. #define HAS_ARG 0x0001
  7. #define OPT_BOOL 0x0002
  8. #define OPT_EXPERT 0x0004
  9. #define OPT_STRING 0x0008
  10. #define OPT_VIDEO 0x0010
  11. #define OPT_AUDIO 0x0020
  12. #define OPT_GRAB 0x0040
  13. #define OPT_INT 0x0080
  14. #define OPT_FLOAT 0x0100
  15. #define OPT_SUBTITLE 0x0200
  16. union {
  17. void (*func_arg)(const char *);
  18. int *int_arg;
  19. char **str_arg;
  20. float *float_arg;
  21. } u;
  22. const char *help;
  23. const char *argname;
  24. } OptionDef;
  25. void show_help_options(const OptionDef *options, const char *msg, int mask, int value);
  26. void parse_options(int argc, char **argv, const OptionDef *options);
  27. void parse_arg_file(const char *filename);
  28. void print_error(const char *filename, int err);
  29. #endif /* _CMD_UTILS_H */