C# Class Queem.Core.BitBoards.Helpers.BitBoardHelper

Datei anzeigen Open project: Ribtoks/Queem Class Usage Examples

Public Properties

Property Type Description
FilesMasks ulong[]
MainDiagonal ulong
MirroredBytes byte[]
MoveTypes MoveType[][][][]
NotABFile ulong
NotAFile ulong
NotGHFile ulong
NotHFile ulong
RankToFileArray ulong[]
RanksMasks ulong[]
RealPositions ulong[]
lsb_64_table int[]

Public Methods

Method Description
BitScan ( ulong bb ) : int
BitsCount ( ulong board ) : int
FileMask ( File file ) : ulong
FlipDiagonalA1H8 ( ulong board ) : ulong
FlipDiagonalA8H1 ( ulong board ) : ulong
FlipHorizontal ( ulong board ) : ulong
FlipVertical ( ulong board ) : ulong
FromString ( string s ) : ulong
GenerateMirroredByte ( byte b ) : byte
GenerateRealPositions ( ) : ulong[]
GetEmptyBoardString ( ) : string
GetFileFromRank ( byte rank ) : ulong
GetFileFromSquare ( Square sq ) : File
GetMirroredByte ( byte b ) : byte
GetOneBitNumber ( int rank, int file ) : ulong
GetRankFromAFile ( ulong A_File ) : byte
GetRankFromSquare ( Square sq ) : int
GetSquare ( int rank, int file ) : Square
RankMask ( int rank ) : ulong
Rotate90Clockwise ( ulong board ) : ulong
Rotate90CounterClockwise ( ulong board ) : ulong
RotateLeft ( ulong x, int s ) : ulong
RotateRight ( ulong x, int s ) : ulong
ShiftEastOne ( ulong b ) : ulong
ShiftNorhtWestOne ( ulong b ) : ulong
ShiftNorthEastEast ( ulong b ) : ulong
ShiftNorthEastOne ( ulong b ) : ulong
ShiftNorthNorthEast ( ulong b ) : ulong
ShiftNorthNorthWest ( ulong b ) : ulong
ShiftNorthOne ( ulong b ) : ulong
ShiftNorthWestWest ( ulong b ) : ulong
ShiftSouthEastEast ( ulong b ) : ulong
ShiftSouthEastOne ( ulong b ) : ulong
ShiftSouthOne ( ulong b ) : ulong
ShiftSouthSouthEast ( ulong b ) : ulong
ShiftSouthSouthWest ( ulong b ) : ulong
ShiftSouthWestOne ( ulong b ) : ulong
ShiftSouthWestWest ( ulong b ) : ulong
ShiftWestOne ( ulong b ) : ulong
SplitString ( string str, int chunkSize ) : IEnumerable
SwapNBits ( ulong b, int i, int j, int n ) : ulong
ToString ( ulong board, string separator ) : string

Private Methods

Method Description
BitBoardHelper ( ) : System
CreateMoveTypes ( ) : MoveType[][][][]
FillAllButPawns ( MoveType moveTypes ) : void
FillPawns ( MoveType moveTypes ) : void
GenerateMoveTypes ( ) : MoveType[][][][]
GetPawnMoveTypes ( Figure destinationFigure ) : MoveType[][]
GetSameMoveTypes ( MoveType type ) : MoveType[][]

Method Details

BitScan() public static method

public static BitScan ( ulong bb ) : int
bb ulong
return int

BitsCount() public static method

public static BitsCount ( ulong board ) : int
board ulong
return int

FileMask() public static method

public static FileMask ( File file ) : ulong
file File
return ulong

FlipDiagonalA1H8() public static method

public static FlipDiagonalA1H8 ( ulong board ) : ulong
board ulong
return ulong

FlipDiagonalA8H1() public static method

public static FlipDiagonalA8H1 ( ulong board ) : ulong
board ulong
return ulong

FlipHorizontal() public static method

public static FlipHorizontal ( ulong board ) : ulong
board ulong
return ulong

FlipVertical() public static method

public static FlipVertical ( ulong board ) : ulong
board ulong
return ulong

FromString() public static method

public static FromString ( string s ) : ulong
s string
return ulong

GenerateMirroredByte() public static method

public static GenerateMirroredByte ( byte b ) : byte
b byte
return byte

GenerateRealPositions() public static method

public static GenerateRealPositions ( ) : ulong[]
return ulong[]

GetEmptyBoardString() public static method

public static GetEmptyBoardString ( ) : string
return string

GetFileFromRank() public static method

public static GetFileFromRank ( byte rank ) : ulong
rank byte
return ulong

GetFileFromSquare() public static method

public static GetFileFromSquare ( Square sq ) : File
sq Square
return File

GetMirroredByte() public static method

public static GetMirroredByte ( byte b ) : byte
b byte
return byte

GetOneBitNumber() public static method

public static GetOneBitNumber ( int rank, int file ) : ulong
rank int
file int
return ulong

GetRankFromAFile() public static method

public static GetRankFromAFile ( ulong A_File ) : byte
A_File ulong
return byte

GetRankFromSquare() public static method

public static GetRankFromSquare ( Square sq ) : int
sq Square
return int

GetSquare() public static method

public static GetSquare ( int rank, int file ) : Square
rank int
file int
return Square

RankMask() public static method

public static RankMask ( int rank ) : ulong
rank int
return ulong

Rotate90Clockwise() public static method

public static Rotate90Clockwise ( ulong board ) : ulong
board ulong
return ulong

Rotate90CounterClockwise() public static method

public static Rotate90CounterClockwise ( ulong board ) : ulong
board ulong
return ulong

RotateLeft() public static method

public static RotateLeft ( ulong x, int s ) : ulong
x ulong
s int
return ulong

RotateRight() public static method

public static RotateRight ( ulong x, int s ) : ulong
x ulong
s int
return ulong

ShiftEastOne() public static method

public static ShiftEastOne ( ulong b ) : ulong
b ulong
return ulong

ShiftNorhtWestOne() public static method

public static ShiftNorhtWestOne ( ulong b ) : ulong
b ulong
return ulong

ShiftNorthEastEast() public static method

public static ShiftNorthEastEast ( ulong b ) : ulong
b ulong
return ulong

ShiftNorthEastOne() public static method

public static ShiftNorthEastOne ( ulong b ) : ulong
b ulong
return ulong

ShiftNorthNorthEast() public static method

public static ShiftNorthNorthEast ( ulong b ) : ulong
b ulong
return ulong

ShiftNorthNorthWest() public static method

public static ShiftNorthNorthWest ( ulong b ) : ulong
b ulong
return ulong

ShiftNorthOne() public static method

public static ShiftNorthOne ( ulong b ) : ulong
b ulong
return ulong

ShiftNorthWestWest() public static method

public static ShiftNorthWestWest ( ulong b ) : ulong
b ulong
return ulong

ShiftSouthEastEast() public static method

public static ShiftSouthEastEast ( ulong b ) : ulong
b ulong
return ulong

ShiftSouthEastOne() public static method

public static ShiftSouthEastOne ( ulong b ) : ulong
b ulong
return ulong

ShiftSouthOne() public static method

public static ShiftSouthOne ( ulong b ) : ulong
b ulong
return ulong

ShiftSouthSouthEast() public static method

public static ShiftSouthSouthEast ( ulong b ) : ulong
b ulong
return ulong

ShiftSouthSouthWest() public static method

public static ShiftSouthSouthWest ( ulong b ) : ulong
b ulong
return ulong

ShiftSouthWestOne() public static method

public static ShiftSouthWestOne ( ulong b ) : ulong
b ulong
return ulong

ShiftSouthWestWest() public static method

public static ShiftSouthWestWest ( ulong b ) : ulong
b ulong
return ulong

ShiftWestOne() public static method

public static ShiftWestOne ( ulong b ) : ulong
b ulong
return ulong

SplitString() public static method

public static SplitString ( string str, int chunkSize ) : IEnumerable
str string
chunkSize int
return IEnumerable

SwapNBits() public static method

public static SwapNBits ( ulong b, int i, int j, int n ) : ulong
b ulong
i int
j int
n int
return ulong

ToString() public static method

public static ToString ( ulong board, string separator ) : string
board ulong
separator string
return string

Property Details

FilesMasks public_oe static_oe property

public static ulong[] FilesMasks
return ulong[]

MainDiagonal public_oe static_oe property

public static ulong MainDiagonal
return ulong

MirroredBytes public_oe static_oe property

public static byte[] MirroredBytes
return byte[]

MoveTypes public_oe static_oe property

public static MoveType[][][][] MoveTypes
return MoveType[][][][]

NotABFile public_oe static_oe property

public static ulong NotABFile
return ulong

NotAFile public_oe static_oe property

public static ulong NotAFile
return ulong

NotGHFile public_oe static_oe property

public static ulong NotGHFile
return ulong

NotHFile public_oe static_oe property

public static ulong NotHFile
return ulong

RankToFileArray public_oe static_oe property

public static ulong[] RankToFileArray
return ulong[]

RanksMasks public_oe static_oe property

public static ulong[] RanksMasks
return ulong[]

RealPositions public_oe static_oe property

public static ulong[] RealPositions
return ulong[]

lsb_64_table public_oe static_oe property

public static int[] lsb_64_table
return int[]