Retire direction.h
authorMarco Costalba <mcostalba@gmail.com>
Sun, 26 Dec 2010 09:54:45 +0000 (10:54 +0100)
committerMarco Costalba <mcostalba@gmail.com>
Sun, 26 Dec 2010 09:58:52 +0000 (10:58 +0100)
Move all to square.h

No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>

src/bitboard.cpp
src/bitboard.h
src/direction.cpp
src/direction.h [deleted file]
src/main.cpp
src/position.h
src/square.h

index e23e5b6..00854bb 100644 (file)
@@ -26,7 +26,6 @@
 
 #include "bitboard.h"
 #include "bitcount.h"
-#include "direction.h"
 
 
 #if defined(IS_64BIT)
@@ -481,7 +480,7 @@ namespace {
         for (Square s2 = SQ_A1; s2 <= SQ_H8; s2++)
         {
             BetweenBB[s1][s2] = EmptyBoardBB;
-            SignedDirection d = signed_direction_between_squares(s1, s2);
+            SignedDirection d = SignedDirection(SignedDirectionTable[s1][s2]);
 
             if (d != SIGNED_DIR_NONE)
             {
index e8f74fc..bff9846 100644 (file)
@@ -26,7 +26,6 @@
 //// Includes
 ////
 
-#include "direction.h"
 #include "piece.h"
 #include "square.h"
 #include "types.h"
index 9d80576..0210381 100644 (file)
@@ -22,7 +22,6 @@
 //// Includes
 ////
 
-#include "direction.h"
 #include "square.h"
 
 
diff --git a/src/direction.h b/src/direction.h
deleted file mode 100644 (file)
index 0500840..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
-  Stockfish, a UCI chess playing engine derived from Glaurung 2.1
-  Copyright (C) 2004-2008 Tord Romstad (Glaurung author)
-  Copyright (C) 2008-2010 Marco Costalba, Joona Kiiski, Tord Romstad
-
-  Stockfish is free software: you can redistribute it and/or modify
-  it under the terms of the GNU General Public License as published by
-  the Free Software Foundation, either version 3 of the License, or
-  (at your option) any later version.
-
-  Stockfish is distributed in the hope that it will be useful,
-  but WITHOUT ANY WARRANTY; without even the implied warranty of
-  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  GNU General Public License for more details.
-
-  You should have received a copy of the GNU General Public License
-  along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-
-#if !defined(DIRECTION_H_INCLUDED)
-#define DIRECTION_H_INCLUDED
-
-////
-//// Includes
-////
-
-#include "square.h"
-#include "types.h"
-
-
-////
-//// Types
-////
-
-enum Direction {
-  DIR_E = 0, DIR_N = 1, DIR_NE = 2, DIR_NW = 3, DIR_NONE = 4
-};
-
-enum SignedDirection {
-  SIGNED_DIR_E  = 0, SIGNED_DIR_W  = 1,
-  SIGNED_DIR_N  = 2, SIGNED_DIR_S  = 3,
-  SIGNED_DIR_NE = 4, SIGNED_DIR_SW = 5,
-  SIGNED_DIR_NW = 6, SIGNED_DIR_SE = 7,
-  SIGNED_DIR_NONE = 8
-};
-
-ENABLE_OPERATORS_ON(SignedDirection);
-
-
-////
-//// Variables
-////
-
-extern uint8_t DirectionTable[64][64];
-extern uint8_t SignedDirectionTable[64][64];
-
-
-////
-//// Inline functions
-////
-
-inline Direction direction_between_squares(Square s1, Square s2) {
-  return Direction(DirectionTable[s1][s2]);
-}
-
-inline SignedDirection signed_direction_between_squares(Square s1, Square s2) {
-  return SignedDirection(SignedDirectionTable[s1][s2]);
-}
-
-inline int direction_is_diagonal(Square s1, Square s2) {
-  return DirectionTable[s1][s2] & 2;
-}
-
-inline bool direction_is_straight(Square s1, Square s2) {
-  return DirectionTable[s1][s2] < 2;
-}
-
-////
-//// Prototypes
-////
-
-extern void init_direction_table();
-
-
-#endif // !defined(DIRECTION_H_INCLUDED)
index de77e58..70359fd 100644 (file)
@@ -30,7 +30,6 @@
 
 #include "bitboard.h"
 #include "bitcount.h"
-#include "direction.h"
 #include "endgame.h"
 #include "evaluate.h"
 #include "material.h"
index bb574e1..5b1bc66 100644 (file)
@@ -27,7 +27,6 @@
 
 #include "bitboard.h"
 #include "color.h"
-#include "direction.h"
 #include "move.h"
 #include "piece.h"
 #include "square.h"
index 88ae136..621e398 100644 (file)
@@ -68,10 +68,23 @@ enum SquareDelta {
   DELTA_NW = DELTA_N + DELTA_W,
 };
 
+enum Direction {
+  DIR_E = 0, DIR_N = 1, DIR_NE = 2, DIR_NW = 3, DIR_NONE = 4
+};
+
+enum SignedDirection {
+  SIGNED_DIR_E  = 0, SIGNED_DIR_W  = 1,
+  SIGNED_DIR_N  = 2, SIGNED_DIR_S  = 3,
+  SIGNED_DIR_NE = 4, SIGNED_DIR_SW = 5,
+  SIGNED_DIR_NW = 6, SIGNED_DIR_SE = 7,
+  SIGNED_DIR_NONE = 8
+};
+
 ENABLE_OPERATORS_ON(Square);
 ENABLE_OPERATORS_ON(File);
 ENABLE_OPERATORS_ON(Rank);
 ENABLE_OPERATORS_ON(SquareDelta);
+ENABLE_OPERATORS_ON(SignedDirection);
 
 
 ////
@@ -81,6 +94,9 @@ ENABLE_OPERATORS_ON(SquareDelta);
 const int FlipMask = 56;
 const int FlopMask =  7;
 
+extern uint8_t DirectionTable[64][64];
+extern uint8_t SignedDirectionTable[64][64];
+
 
 ////
 //// Inline functions
@@ -181,4 +197,22 @@ inline bool square_is_ok(Square s) {
   return file_is_ok(square_file(s)) && rank_is_ok(square_rank(s));
 }
 
+inline Direction direction_between_squares(Square s1, Square s2) {
+  return Direction(DirectionTable[s1][s2]);
+}
+
+inline int direction_is_diagonal(Square s1, Square s2) {
+  return DirectionTable[s1][s2] & 2;
+}
+
+inline bool direction_is_straight(Square s1, Square s2) {
+  return DirectionTable[s1][s2] < 2;
+}
+
+////
+//// Prototypes
+////
+
+extern void init_direction_table();
+
 #endif // !defined(SQUARE_H_INCLUDED)