UCIOption::UCIOption(int def, int minv, int maxv) : type("spin"), minValue(minv), maxValue(maxv), idx(Options.size()) { defaultValue = currentValue = stringify(def); }
UCIOption::UCIOption(string def, StrVector values) : type("combo"), idx(Options.size()), defaultValue(def), currentValue(def), comboValues(values), minValue(0), maxValue(0) {}
UCIOption::UCIOption(bool def, string t) : type(t), minValue(0), maxValue(0), idx(Options.size()) { defaultValue = currentValue = (def ? "true" : "false"); }
UCIOption::UCIOption(const char* def) : type("string"), minValue(0), maxValue(0), idx(Options.size()) { defaultValue = currentValue = def; }
UCIOption::UCIOption(int v, int minv, int maxv) : type("spin"), min(minv), max(maxv), idx(Options.size()) { std::ostringstream ss; ss << v; defaultValue = currentValue = ss.str(); }
UCIOption::UCIOption(bool v, string t) : type(t), min(0), max(0), idx(Options.size()) { defaultValue = currentValue = (v ? "true" : "false"); }
UCIOption::UCIOption(const char* v) : type("string"), min(0), max(0), idx(Options.size()) { defaultValue = currentValue = v; }