Updated copyright notice to 2012
[xboard.git] / moves.h
diff --git a/moves.h b/moves.h
index b783727..db2427d 100644 (file)
--- a/moves.h
+++ b/moves.h
@@ -5,7 +5,7 @@
  * Massachusetts.
  *
  * Enhancements Copyright 1992-2001, 2002, 2003, 2004, 2005, 2006,
- * 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+ * 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
  *
  * Enhancements Copyright 2005 Alessandro Scotti
  *
@@ -60,6 +60,7 @@ extern int PieceToNumber P((ChessSquare p));
 extern void CopyBoard P((Board to, Board from));
 extern int CompareBoards P((Board board1, Board board2));
 extern char pieceToChar[(int)EmptySquare+1];
+extern char pieceNickName[(int)EmptySquare];
 
 typedef void (*MoveCallback) P((Board board, int flags, ChessMove kind,
                                int rf, int ff, int rt, int ft,
@@ -104,7 +105,7 @@ typedef void (*MoveCallback) P((Board board, int flags, ChessMove kind,
    Promotion moves generated are to Queen only.
 */
 extern void GenPseudoLegal P((Board board, int flags,
-                             MoveCallback callback, VOIDSTAR closure));
+                             MoveCallback callback, VOIDSTAR closure, ChessSquare filter));
 
 /* Like GenPseudoLegal, but include castling moves and (unless 
    F_IGNORE_CHECK is set in the flags) omit moves that would leave the
@@ -113,7 +114,7 @@ extern void GenPseudoLegal P((Board board, int flags,
    on move is currently in check and F_IGNORE_CHECK is not set.
 */
 extern int GenLegal P((Board board, int flags,
-                       MoveCallback callback, VOIDSTAR closure));
+                       MoveCallback callback, VOIDSTAR closure, ChessSquare filter));
 
 /* If the player on move were to move from (rf, ff) to (rt, ft), would
    he leave himself in check?  Or if rf == -1, is the player on move
@@ -157,6 +158,7 @@ typedef struct {
     int rf, ff, rt, ft;
     int promoChar; /* 'q' if a promotion and promoCharIn was NULLCHAR */
     int count;     /* Number of possibilities found */
+    int captures;  /* [HGM] oneclick: number of matching captures */
 } DisambiguateClosure;
 
 /* Disambiguate a partially-known move */
@@ -169,3 +171,5 @@ void Disambiguate P((Board board, int flags, DisambiguateClosure *closure));
 ChessMove CoordsToAlgebraic P((Board board, int flags,
                               int rf, int ff, int rt, int ft,
                               int promoChar, char out[MOVE_LEN]));
+
+extern int quickFlag;