C# 클래스 Queem.Core.BitBoards.Helpers.BitBoardHelper

파일 보기 프로젝트 열기: Ribtoks/Queem 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
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[]

공개 메소드들

메소드 설명
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

비공개 메소드들

메소드 설명
BitBoardHelper ( ) : System
CreateMoveTypes ( ) : MoveType[][][][]
FillAllButPawns ( MoveType moveTypes ) : void
FillPawns ( MoveType moveTypes ) : void
GenerateMoveTypes ( ) : MoveType[][][][]
GetPawnMoveTypes ( Figure destinationFigure ) : MoveType[][]
GetSameMoveTypes ( MoveType type ) : MoveType[][]

메소드 상세

BitScan() 공개 정적인 메소드

public static BitScan ( ulong bb ) : int
bb ulong
리턴 int

BitsCount() 공개 정적인 메소드

public static BitsCount ( ulong board ) : int
board ulong
리턴 int

FileMask() 공개 정적인 메소드

public static FileMask ( File file ) : ulong
file File
리턴 ulong

FlipDiagonalA1H8() 공개 정적인 메소드

public static FlipDiagonalA1H8 ( ulong board ) : ulong
board ulong
리턴 ulong

FlipDiagonalA8H1() 공개 정적인 메소드

public static FlipDiagonalA8H1 ( ulong board ) : ulong
board ulong
리턴 ulong

FlipHorizontal() 공개 정적인 메소드

public static FlipHorizontal ( ulong board ) : ulong
board ulong
리턴 ulong

FlipVertical() 공개 정적인 메소드

public static FlipVertical ( ulong board ) : ulong
board ulong
리턴 ulong

FromString() 공개 정적인 메소드

public static FromString ( string s ) : ulong
s string
리턴 ulong

GenerateMirroredByte() 공개 정적인 메소드

public static GenerateMirroredByte ( byte b ) : byte
b byte
리턴 byte

GenerateRealPositions() 공개 정적인 메소드

public static GenerateRealPositions ( ) : ulong[]
리턴 ulong[]

GetEmptyBoardString() 공개 정적인 메소드

public static GetEmptyBoardString ( ) : string
리턴 string

GetFileFromRank() 공개 정적인 메소드

public static GetFileFromRank ( byte rank ) : ulong
rank byte
리턴 ulong

GetFileFromSquare() 공개 정적인 메소드

public static GetFileFromSquare ( Square sq ) : File
sq Square
리턴 File

GetMirroredByte() 공개 정적인 메소드

public static GetMirroredByte ( byte b ) : byte
b byte
리턴 byte

GetOneBitNumber() 공개 정적인 메소드

public static GetOneBitNumber ( int rank, int file ) : ulong
rank int
file int
리턴 ulong

GetRankFromAFile() 공개 정적인 메소드

public static GetRankFromAFile ( ulong A_File ) : byte
A_File ulong
리턴 byte

GetRankFromSquare() 공개 정적인 메소드

public static GetRankFromSquare ( Square sq ) : int
sq Square
리턴 int

GetSquare() 공개 정적인 메소드

public static GetSquare ( int rank, int file ) : Square
rank int
file int
리턴 Square

RankMask() 공개 정적인 메소드

public static RankMask ( int rank ) : ulong
rank int
리턴 ulong

Rotate90Clockwise() 공개 정적인 메소드

public static Rotate90Clockwise ( ulong board ) : ulong
board ulong
리턴 ulong

Rotate90CounterClockwise() 공개 정적인 메소드

public static Rotate90CounterClockwise ( ulong board ) : ulong
board ulong
리턴 ulong

RotateLeft() 공개 정적인 메소드

public static RotateLeft ( ulong x, int s ) : ulong
x ulong
s int
리턴 ulong

RotateRight() 공개 정적인 메소드

public static RotateRight ( ulong x, int s ) : ulong
x ulong
s int
리턴 ulong

ShiftEastOne() 공개 정적인 메소드

public static ShiftEastOne ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftNorhtWestOne() 공개 정적인 메소드

public static ShiftNorhtWestOne ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftNorthEastEast() 공개 정적인 메소드

public static ShiftNorthEastEast ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftNorthEastOne() 공개 정적인 메소드

public static ShiftNorthEastOne ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftNorthNorthEast() 공개 정적인 메소드

public static ShiftNorthNorthEast ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftNorthNorthWest() 공개 정적인 메소드

public static ShiftNorthNorthWest ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftNorthOne() 공개 정적인 메소드

public static ShiftNorthOne ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftNorthWestWest() 공개 정적인 메소드

public static ShiftNorthWestWest ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftSouthEastEast() 공개 정적인 메소드

public static ShiftSouthEastEast ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftSouthEastOne() 공개 정적인 메소드

public static ShiftSouthEastOne ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftSouthOne() 공개 정적인 메소드

public static ShiftSouthOne ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftSouthSouthEast() 공개 정적인 메소드

public static ShiftSouthSouthEast ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftSouthSouthWest() 공개 정적인 메소드

public static ShiftSouthSouthWest ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftSouthWestOne() 공개 정적인 메소드

public static ShiftSouthWestOne ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftSouthWestWest() 공개 정적인 메소드

public static ShiftSouthWestWest ( ulong b ) : ulong
b ulong
리턴 ulong

ShiftWestOne() 공개 정적인 메소드

public static ShiftWestOne ( ulong b ) : ulong
b ulong
리턴 ulong

SplitString() 공개 정적인 메소드

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

SwapNBits() 공개 정적인 메소드

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

ToString() 공개 정적인 메소드

public static ToString ( ulong board, string separator ) : string
board ulong
separator string
리턴 string

프로퍼티 상세

FilesMasks 공개적으로 정적으로 프로퍼티

public static ulong[] FilesMasks
리턴 ulong[]

MainDiagonal 공개적으로 정적으로 프로퍼티

public static ulong MainDiagonal
리턴 ulong

MirroredBytes 공개적으로 정적으로 프로퍼티

public static byte[] MirroredBytes
리턴 byte[]

MoveTypes 공개적으로 정적으로 프로퍼티

public static MoveType[][][][] MoveTypes
리턴 MoveType[][][][]

NotABFile 공개적으로 정적으로 프로퍼티

public static ulong NotABFile
리턴 ulong

NotAFile 공개적으로 정적으로 프로퍼티

public static ulong NotAFile
리턴 ulong

NotGHFile 공개적으로 정적으로 프로퍼티

public static ulong NotGHFile
리턴 ulong

NotHFile 공개적으로 정적으로 프로퍼티

public static ulong NotHFile
리턴 ulong

RankToFileArray 공개적으로 정적으로 프로퍼티

public static ulong[] RankToFileArray
리턴 ulong[]

RanksMasks 공개적으로 정적으로 프로퍼티

public static ulong[] RanksMasks
리턴 ulong[]

RealPositions 공개적으로 정적으로 프로퍼티

public static ulong[] RealPositions
리턴 ulong[]

lsb_64_table 공개적으로 정적으로 프로퍼티

public static int[] lsb_64_table
리턴 int[]