aboutsummaryrefslogtreecommitdiff
path: root/src/core/sok.h
diff options
context:
space:
mode:
authorPaul Duncan <pabs@pablotron.org>2019-01-21 17:11:37 -0500
committerPaul Duncan <pabs@pablotron.org>2019-01-21 17:11:37 -0500
commit119e48bfa0f20686bc7cb0fd43323a7648aa598a (patch)
tree4d48d08e0ee13158cd46a977e244161774e27a7a /src/core/sok.h
parent4588b0ef57fb3fd8689cd1d241be9b00307baa1f (diff)
downloadsok-119e48bfa0f20686bc7cb0fd43323a7648aa598a.tar.bz2
sok-119e48bfa0f20686bc7cb0fd43323a7648aa598a.zip
use dead edges to improve solver speed
Diffstat (limited to 'src/core/sok.h')
-rw-r--r--src/core/sok.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/core/sok.h b/src/core/sok.h
index d24d22b..0acb1ff 100644
--- a/src/core/sok.h
+++ b/src/core/sok.h
@@ -120,6 +120,7 @@ typedef struct {
/***********/
#define SOK_CTX_MAX_MOVES 1024
+#define SOK_CTX_MAX_DEAD_EDGES 1024
typedef struct {
sok_level_t level;
@@ -140,6 +141,11 @@ typedef struct {
// box positions
sok_pos_t boxes[SOK_LEVEL_MAX_BOXES];
+ struct {
+ sok_pos_t src, dst;
+ } dead_edges[SOK_CTX_MAX_DEAD_EDGES];
+ size_t num_dead_edges;
+
// user data
void *user_data;
} sok_ctx_t;