From de4f20f28afe23ecfc546ad242e5bb44710996cc Mon Sep 17 00:00:00 2001 From: tslil clingman Date: Tue, 26 Jan 2021 17:42:53 -0500 Subject: Storing best moves! --- include/actions.h | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 include/actions.h (limited to 'include/actions.h') diff --git a/include/actions.h b/include/actions.h new file mode 100644 index 0000000..661f11e --- /dev/null +++ b/include/actions.h @@ -0,0 +1,33 @@ +#ifndef ACTIONS_H +#define ACTIONS_H + +#include +#include + +#include + +enum A_TYPE { A_PLACE, A_MOVE }; + +typedef uint32_t action_t; + +typedef struct action_node_s { + struct action_node_s *next; + action_t action; +} action_node_t; + +typedef struct action_list_s { + struct action_node_s *head, *tail; + uint32_t length; +} action_list_t; + +void action_list_init(void); +void action_list_free(action_list_t *list); +action_list_t *action_list_generate(void); +int action_move_to_front(const action_t action, action_list_t *list); + +void action_take(const action_t action); +void action_undo(const action_t action); + +void action_to_ptn(const action_t action, char* out_ptn); + +#endif -- cgit v1.3.1