My Project
|
Functions | |
static unsigned long long | flip_A1 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_B1 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_C1 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_D1 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_E1 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_F1 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_G1 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_H1 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_A2 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_B2 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_C2 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_D2 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_E2 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_F2 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_G2 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_H2 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_A3 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_B3 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_C3 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_D3 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_E3 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_F3 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_G3 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_H3 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_A4 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_B4 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_C4 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_D4 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_E4 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_F4 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_G4 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_H4 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_A5 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_B5 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_C5 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_D5 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_E5 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_F5 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_G5 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_H5 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_A6 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_B6 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_C6 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_D6 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_E6 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_F6 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_G6 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_H6 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_A7 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_B7 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_C7 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_D7 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_E7 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_F7 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_G7 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_H7 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_A8 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_B8 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_C8 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_D8 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_E8 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_F8 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_G8 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_H8 (const unsigned long long P, const unsigned long long O) |
static unsigned long long | flip_pass (const unsigned long long P, const unsigned long long O) |
Variables | |
static const unsigned char | OUTFLANK_2 [64] |
static const unsigned char | OUTFLANK_3 [64] |
static const unsigned char | OUTFLANK_4 [64] |
static const unsigned char | OUTFLANK_5 [64] |
static const unsigned char | OUTFLANK_7 [64] |
static const unsigned char | CONTIG_UP [64] |
static const unsigned char | CONTIG_UPLEFT [64] |
static const unsigned char | CONTIG_UPRIGHT [64] |
static const unsigned long long | FLIPPED_2_H [130] |
static const unsigned long long | FLIPPED_3_H [131] |
static const unsigned long long | FLIPPED_4_H [133] |
static const unsigned long long | FLIPPED_5_H [137] |
static const unsigned long long | FLIPPED_3_V [131] |
static const unsigned long long | FLIPPED_4_V [133] |
static const unsigned long long | FLIPPED_5_V [137] |
static const unsigned long long | FLIPPED_3_U [131] |
unsigned long long(* | flip [])(const unsigned long long, const unsigned long long) |
This module deals with flipping discs.
A function is provided for each square of the board. These functions are gathered into an array of functions, so that a fast access to each function is allowed. The generic form of the function take as input the player and the opponent bitboards and return the flipped squares into a bitboard.
Given the following notation:
If the OUTFLANK search is in LSB to MSB direction, carry propagation can be used to determine contiguous opponent discs. If the OUTFLANK search is in MSB to LSB direction, CONTIG_X tables are used to determine coutiguous opponent discs.
|
static |
Compute flipped discs when playing on square A1.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square A2.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square A3.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square A4.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square A5.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square A6.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square A7.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square A8.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square B1.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square B2.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square B3.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square B4.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square B5.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square B6.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square B7.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square B8.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square C1.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square C2.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square C3.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square C4.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square C5.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square C6.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square C7.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square C8.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square D1.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square D2.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square D3.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square D4.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square D5.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square D6.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square D7.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square D8.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square E1.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square E2.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square E3.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square E3.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square E5.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square E6.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square E7.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square E8.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square F1.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square F2.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square F3.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square F4.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square F5.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square F6.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square F7.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square F8.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square G1.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square G2.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square G3.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square G4.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square G5.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square G6.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square G7.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square G8.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square H1.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square H2.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square H3.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square H4.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square H5.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square H6.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square H7.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute flipped discs when playing on square H8.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
Compute (zero-) flipped discs when plassing.
P | player's disc pattern. |
O | opponent's disc pattern. |
|
static |
|
static |
|
static |
unsigned long long(* flip[])(const unsigned long long, const unsigned long long) | ( | const unsigned long long | , |
const unsigned long long | |||
) |
Array of functions to compute flipped discs
|
static |
flip array (indexed with outflank, returns inner 6 bits)
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
outflank array (indexed with inner 6 bits)
|
static |
|
static |
|
static |
|
static |