Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes
osl::Offset Class Reference

座標の差分 More...

#include <offset.h>

List of all members.

Public Types

enum  {
  OFFSET_MIN = -0x100, ONBOARD_OFFSET_MIN = -0x88, OFFSET_ZERO = 0, ONBOARD_OFFSET_MAX = 0x88,
  OFFSET_MAX = 0x100, ONBOARD_OFFSET_SIZE = 0x88*2+1
}

Public Member Functions

int intValue () const
 Offset (int dx, int dy)
 Offset ()
int dx () const
 Offsetから一般に dxは求まらないので, ここでの入力は12近傍のみとする
int dy () const
 Offsetから一般に dyは求まらないので, ここでの入力は12近傍のみとする
unsigned int index () const
Offsetoperator+= (Offset other)
Offsetoperator-= (Offset other)
const Offset operator+ (Offset other) const
const Offset operator- (const Offset other) const
const Offset operator* (const int mult) const
const Offset operator- () const
template<Player P>
const Offset blackOffset () const
 Player P からみた offset を黒番のものに変更する
bool zero () const

Static Public Member Functions

static const Offset makeDirect (int value)
static int makeOffset (int dx, int dy)
static const Offset ZERO ()

Static Public Attributes

static const int BOARD_HEIGHT = 16

Private Member Functions

 Offset (int o)
const Offset blackOffset (Int2Type< BLACK >) const
const Offset blackOffset (Int2Type< WHITE >) const

Private Attributes

int offset

Detailed Description

座標の差分

Definition at line 15 of file offset.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
OFFSET_MIN 
ONBOARD_OFFSET_MIN 
OFFSET_ZERO 
ONBOARD_OFFSET_MAX 
OFFSET_MAX 
ONBOARD_OFFSET_SIZE 

Definition at line 18 of file offset.h.


Constructor & Destructor Documentation

osl::Offset::Offset ( int  o) [inline, explicit, private]

Definition at line 29 of file offset.h.

osl::Offset::Offset ( int  dx,
int  dy 
) [inline]

Definition at line 37 of file offset.h.

osl::Offset::Offset ( ) [inline]

Definition at line 40 of file offset.h.

Referenced by makeDirect(), operator-(), and ZERO().


Member Function Documentation

const Offset osl::Offset::blackOffset ( Int2Type< BLACK >  ) const [inline, private]
template<Player P>
const Offset osl::Offset::blackOffset ( ) const [inline]

Player P からみた offset を黒番のものに変更する

Definition at line 92 of file offset.h.

References blackOffset().

Referenced by blackOffset().

const Offset osl::Offset::blackOffset ( Int2Type< WHITE >  ) const [inline, private]

Definition at line 86 of file offset.h.

int osl::Offset::dx ( ) const

Offsetから一般に dxは求まらないので, ここでの入力は12近傍のみとする

Definition at line 12 of file offset.cc.

References index(), OFFSET_INDEX, and ZERO().

Referenced by osl::effect::hasShortMove(), osl::effect_util::Neighboring8Effect::Table::init(), osl::effect_util::Neighboring8Direct::Table::init(), and osl::effect_util::SendOffSquare::Table::Table().

int osl::Offset::dy ( ) const

Offsetから一般に dyは求まらないので, ここでの入力は12近傍のみとする

Definition at line 39 of file offset.cc.

References OFFSET_INDEX.

Referenced by osl::effect::hasShortMove(), osl::effect_util::Neighboring8Effect::Table::init(), osl::effect_util::Neighboring8Direct::Table::init(), makeOffset(), and osl::effect_util::SendOffSquare::Table::Table().

unsigned int osl::Offset::index ( ) const [inline]

Definition at line 54 of file offset.h.

References offset, and OFFSET_MIN.

Referenced by dx(), and osl::eval::ml::PiecePair::evalWithUpdate().

int osl::Offset::intValue ( ) const [inline]
static const Offset osl::Offset::makeDirect ( int  value) [inline, static]
static int osl::Offset::makeOffset ( int  dx,
int  dy 
) [inline, static]

Definition at line 36 of file offset.h.

References BOARD_HEIGHT, and dy().

const Offset osl::Offset::operator* ( const int  mult) const [inline]

Definition at line 75 of file offset.h.

References offset.

const Offset osl::Offset::operator+ ( Offset  other) const [inline]

Definition at line 65 of file offset.h.

References result.

Offset& osl::Offset::operator+= ( Offset  other) [inline]

Definition at line 56 of file offset.h.

References offset.

const Offset osl::Offset::operator- ( const Offset  other) const [inline]

Definition at line 70 of file offset.h.

References result.

const Offset osl::Offset::operator- ( ) const [inline]

Definition at line 78 of file offset.h.

References offset, and Offset().

Offset& osl::Offset::operator-= ( Offset  other) [inline]

Definition at line 61 of file offset.h.

References offset.

static const Offset osl::Offset::ZERO ( ) [inline, static]

Definition at line 43 of file offset.h.

References Offset(), and OFFSET_ZERO.

Referenced by dx(), and osl::effect::Liberty8Table::longEffectOf().

bool osl::Offset::zero ( ) const [inline]

Definition at line 94 of file offset.h.

References offset, and OFFSET_ZERO.

Referenced by osl::checkmate::ProofNumberTable::countLibertyLong(), osl::mobility::countMobilityBoth(), osl::move_probability::CoverFork::defending(), osl::effect::NumSimpleEffectTable::doEffectLong(), osl::effect_util::AdditionalEffect::find(), osl::eval::See::findAdditionalPieces(), osl::eval::TakeBackValue::findEffectPiecesAfterMove(), osl::effect_util::Neighboring8Direct::Table::findNearest(), osl::effect_util::Pin::findPtype(), osl::move_generator::Escape< Action >::generateBlockingKing(), osl::move_generator::promote::MayPromoteDir< P, T, noCapture, Dir >::generateIfValid(), osl::move_generator::promote::AllPromoteDir< P, T, noCapture, Dir >::generateIfValid(), osl::move_generator::piece_on_board::generateLong(), osl::move_generator::addeffect8::generateLongDrop(), osl::move_generator::without_effect::generateLongMove(), osl::move_generator::addeffect8::generateLongMove(), osl::move_generator::addeffect8::generateShortMove(), osl::effect_util::Neighboring8Effect::Table::hasEffect(), osl::effect_util::Neighboring8Direct::Table::hasEffect(), osl::effect_util::Neighboring8Direct::Table::hasEffectOrAdditional(), osl::move_generator::addeffect8::hasShortEffect(), osl::effect::hasShortMove(), osl::checkmate::ImmediateCheckmateTable::ImmediateCheckmateTable(), osl::effect_util::Neighboring8Effect::Table::init(), osl::effect_util::Neighboring8Direct::Table::init(), osl::state::SimpleState::isAlmostValidMove(), osl::state::SimpleState::isEmptyBetween(), osl::move_generator::without_effect::isEmptyOrAdditional(), osl::move_classifier::KingOpenMove< P >::isMemberMain(), osl::state::SimpleState::isValidMoveByRule(), osl::move_probability::BlockLong::makeLongAttackOne(), osl::move_probability::PromotionBySacrifice::match(), osl::state::SimpleState::nextPiece(), and osl::rating::PatternLong::nextPieceOrEnd().


Member Data Documentation

const int osl::Offset::BOARD_HEIGHT = 16 [static]

Definition at line 26 of file offset.h.

Referenced by osl::Square::makeNoCheck(), and makeOffset().

int osl::Offset::offset [private]

Definition at line 28 of file offset.h.

Referenced by index(), intValue(), operator*(), operator+=(), operator-(), operator-=(), and zero().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines