diff options
author | jbzdarkid <jbzdarkid@gmail.com> | 2019-11-09 13:39:10 -0800 |
---|---|---|
committer | jbzdarkid <jbzdarkid@gmail.com> | 2019-11-09 13:39:10 -0800 |
commit | 36be1ed32ac9a554f0b11fcc13b5699e717b81f2 (patch) | |
tree | 383618d781bc5b4701b31555f90b8a629fe6d205 /Source/Validator.h | |
parent | 413e1f0aaae961660781675158e38520126c11b6 (diff) | |
download | witness-tutorializer-36be1ed32ac9a554f0b11fcc13b5699e717b81f2.tar.gz witness-tutorializer-36be1ed32ac9a554f0b11fcc13b5699e717b81f2.tar.bz2 witness-tutorializer-36be1ed32ac9a554f0b11fcc13b5699e717b81f2.zip |
Functioning solver/validator (at least for mazes)
Diffstat (limited to 'Source/Validator.h')
-rw-r--r-- | Source/Validator.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Source/Validator.h b/Source/Validator.h new file mode 100644 index 0000000..cddc293 --- /dev/null +++ b/Source/Validator.h | |||
@@ -0,0 +1,27 @@ | |||
1 | #pragma once | ||
2 | #include <vector> | ||
3 | #include <tuple> | ||
4 | |||
5 | #ifndef NEGATIONS_CANCEL_NEGATIONS | ||
6 | #define NEGATIONS_CANCEL_NEGATIONS true | ||
7 | #endif | ||
8 | |||
9 | #ifndef SIMPLE_POLYOMINOS | ||
10 | #define SIMPLE_POLYOMINOS true | ||
11 | #endif | ||
12 | |||
13 | #ifndef DISABLE_CACHE | ||
14 | #define DISABLE_CACHE false | ||
15 | #endif | ||
16 | |||
17 | struct Region{}; | ||
18 | struct Puzzle; | ||
19 | struct Pos; | ||
20 | class Validator { | ||
21 | public: | ||
22 | static void Validate(Puzzle& p); | ||
23 | |||
24 | private: | ||
25 | static void RegionCheckNegations(Puzzle& p, const Region& r); | ||
26 | static std::vector<Pos> RegionCheck(Puzzle& p, const Region& r); | ||
27 | }; | ||