version 1.4.32b
[polyglot.git] / option.h
index 23bd84d..050ae0e 100644 (file)
--- a/option.h
+++ b/option.h
@@ -8,12 +8,39 @@
 \r
 #include "util.h"\r
 \r
+// defines\r
+\r
+#define VarNb  16\r
+#define XBOARD (1<<0)\r
+#define UCI    (1<<1)\r
+#define PG     (1<<2)\r
+\r
+// types\r
+\r
+typedef struct {   // TODO: put back in more logical order\r
+    const char * name;\r
+    const char * type;\r
+    const char * min;\r
+    const char * max;\r
+    const char * default_;\r
+    const char * value;\r
+    int var_nb;\r
+    const char * var[VarNb];\r
+    int mode;\r
+} option_t;\r
+\r
+// variables\r
+\r
+extern option_t Option[];\r
+\r
 // functions\r
 \r
 extern void         option_init       ();\r
 \r
 extern bool         option_set        (const char var[], const char val[]);\r
+extern bool         option_set_default(const char var[], const char val[]);\r
 extern const char * option_get        (const char var[]);\r
+extern const char * option_get_default(const char var[]);\r
 \r
 extern bool         option_get_bool   (const char var[]);\r
 extern double       option_get_double (const char var[]);\r