diff options
| author | Aargh Rai <aargh.rai+git@gmail.com> | 2026-07-04 22:34:17 +0530 |
|---|---|---|
| committer | Aargh Rai <aargh.rai+git@gmail.com> | 2026-07-04 22:34:17 +0530 |
| commit | f17df9538b1c3f58f12b738083b747ac332b8d71 (patch) | |
| tree | 4df4254a726cd009a26eb3d9cd7e6d28b1a9c9a5 /src/uci/state.c | |
| parent | 8535106616ccdc9f52c29ce7f46555e613c38b6e (diff) | |
the setoption now changes state
i can now finally start working on how the non existant engine will
interact with uci
Diffstat (limited to 'src/uci/state.c')
| -rw-r--r-- | src/uci/state.c | 34 |
1 files changed, 27 insertions, 7 deletions
diff --git a/src/uci/state.c b/src/uci/state.c index 848c6a9..f64b5cf 100644 --- a/src/uci/state.c +++ b/src/uci/state.c @@ -1,10 +1,12 @@ +#include <string.h> #include "state.h" option_setting_t option_setting_combo( char* option_name, char** combinations, int combinations_count, - int default_value + int default_index, + combo_t *combo ) { option_setting_t output = {0}; memcpy(output.option_name, option_name, 32); @@ -12,8 +14,10 @@ option_setting_t option_setting_combo( output.data.combo = (option_combo_setting_t) { combinations, combinations_count, - default_value + default_index }; + output.value.combo = combo; + *combo = default_index; return output; } @@ -21,40 +25,56 @@ option_setting_t option_setting_spin( const char* option_name, int min, int max, - int default_value + int default_value, + spin_t *spin ) { option_setting_t output = {0}; memcpy(output.option_name, option_name, 32); output.type = OPTION_SPIN; output.data.spin = (option_spin_setting_t) { min, max, default_value }; + output.value.spin = spin; + *spin = default_value; return output; } option_setting_t option_setting_check( const char* option_name, - bool default_value + bool default_value, + check_t *check ) { option_setting_t output = {0}; memcpy(output.option_name, option_name, 32); output.type = OPTION_CHECK; output.data.check_default = default_value; + output.value.check = check; + *check = default_value; return output; } option_setting_t option_setting_string( const char* option_name, - const char* default_value + const char* default_value, + str_t *string ) { option_setting_t output = {0}; - memcpy(output.option_name, option_name, 32); + strncpy(output.option_name, option_name, 32); output.type = OPTION_STRING; output.data.string_default = default_value; + output.value.string = string; + string->length = strlen(default_value); + string->data = malloc(string->length); + memcpy(string->data, default_value, string->length); return output; } -option_setting_t option_setting_button(const char* option_name) { +option_setting_t option_setting_button( + const char* option_name, + button_t *button +) { option_setting_t output = {0}; memcpy(output.option_name, option_name, 32); output.type = OPTION_BUTTON; + output.value.button = button; + *button = false; return output; } |
