X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=option.h;h=050ae0e05984a28d1020b1dd4785048c8317f3c7;hb=9d90dc40cca05e03cafd0519e17f15b1d7441e37;hp=23bd84d7fff04a48694c76aba597bdc221894382;hpb=64f72f31685ea1dff12b19b22cfaf7a53ccc079f;p=polyglot.git diff --git a/option.h b/option.h index 23bd84d..050ae0e 100644 --- a/option.h +++ b/option.h @@ -8,12 +8,39 @@ #include "util.h" +// defines + +#define VarNb 16 +#define XBOARD (1<<0) +#define UCI (1<<1) +#define PG (1<<2) + +// types + +typedef struct { // TODO: put back in more logical order + const char * name; + const char * type; + const char * min; + const char * max; + const char * default_; + const char * value; + int var_nb; + const char * var[VarNb]; + int mode; +} option_t; + +// variables + +extern option_t Option[]; + // functions extern void option_init (); extern bool option_set (const char var[], const char val[]); +extern bool option_set_default(const char var[], const char val[]); extern const char * option_get (const char var[]); +extern const char * option_get_default(const char var[]); extern bool option_get_bool (const char var[]); extern double option_get_double (const char var[]);