osl::rating::Pattern Class Reference

`#include <pattern.h>`

Inheritance diagram for osl::rating::Pattern:

## Public Member Functions

| Pattern (Direction d, Ptype s, Ptype t, bool ss, int attack, int defense)
| Pattern (Direction d, Direction d2, Ptype s, Ptype t, bool ss, int attack, int defense)
bool | match (const NumEffectState &state, Move move, const RatingEnv &env) const
Public Member Functions inherited from osl::rating::Feature
| Feature (const std::string &name)
virtual | ~Feature ()
virtual bool | effectiveInCheck () const
const std::string & | name () const

## Static Public Member Functions

static Square | nextSquare (Player player, Square start, Direction direction, Direction direction2)
static Square | nextSquare (Move move, Direction direction, Direction direction2)

## Static Public Attributes

static const Direction | INVALID = LONG_UL

## Static Private Member Functions

static const std::string | name (Direction d, Direction d2, Ptype self, Ptype target, bool same)
Static Private Member Functions inherited from osl::rating::CountEffect2
static std::pair< int, int > | count (const NumEffectState &state, Square position, const RatingEnv &env)
static std::string | name (int attack, int defense)
static int | index (const NumEffectState &state, Square position, const RatingEnv &env)

## Private Attributes

Direction | direction
Direction | direction2
Ptype | self
Ptype | target
bool | same
Private Attributes inherited from osl::rating::CountEffect2
int | attack
int | defense

## Additional Inherited Members

Private Member Functions inherited from osl::rating::CountEffect2
| CountEffect2 (int a, int d)
bool | match (const NumEffectState &state, Square position, const RatingEnv &env) const
Static Private Attributes inherited from osl::rating::CountEffect2
static const int | Max = 2

## Detailed Description

Definition at line 13 of file pattern.h.

## Constructor & Destructor Documentation

## Pattern() [1/2]

osl::rating::Pattern::Pattern | ( | Direction | d,
|  | Ptype | s,
|  | Ptype | t,
|  | bool | ss,
|  | int | attack,
|  | int | defense )

inline

Definition at line 23 of file pattern.h.

References osl::rating::CountEffect2::attack, osl::rating::CountEffect2::CountEffect2(), osl::rating::CountEffect2::defense, direction, direction2, osl::rating::Feature::Feature(), INVALID, name(), same, self, and target.

## Pattern() [2/2]

osl::rating::Pattern::Pattern | ( | Direction | d,
|  | Direction | d2,
|  | Ptype | s,
|  | Ptype | t,
|  | bool | ss,
|  | int | attack,
|  | int | defense )

inline

Definition at line 28 of file pattern.h.

References osl::rating::CountEffect2::attack, osl::rating::CountEffect2::CountEffect2(), osl::rating::CountEffect2::defense, direction, direction2, osl::rating::Feature::Feature(), name(), same, self, and target.

## Member Function Documentation

## match()

bool osl::rating::Pattern::match | ( | const NumEffectState & | state,
|  | Move | move,
|  | const RatingEnv & | env ) const

inline virtual

Implements osl::rating::Feature.

Definition at line 44 of file pattern.h.

References direction, direction2, osl::Piece::EMPTY(), osl::Move::from(), osl::isPiece(), osl::rating::CountEffect2::match(), nextSquare(), osl::Piece::owner(), osl::SimpleState::pieceAt(), osl::Move::player(), osl::Move::ptype(), osl::Piece::ptype(), same, self, and target.

## name()

const std::string osl::rating::Pattern::name | ( | Direction | d,
|  | Direction | d2,
|  | Ptype | self,
|  | Ptype | target,
|  | bool | same )

static private

Definition at line 6 of file pattern.cc.

References INVALID, osl::Ptype_Table, same, self, and target.

Referenced by Pattern(), and Pattern().

## nextSquare() [1/2]

Square osl::rating::Pattern::nextSquare | ( | Move | move,
|  | Direction | direction,
|  | Direction | direction2 )

inline static

Definition at line 40 of file pattern.h.

References direction, direction2, nextSquare(), osl::Move::player(), and osl::Move::to().

## nextSquare() [2/2]

Square osl::rating::Pattern::nextSquare | ( | Player | player,
|  | Square | start,
|  | Direction | direction,
|  | Direction | direction2 )

inline static

Definition at line 33 of file pattern.h.

References osl::Board_Table, direction, direction2, INVALID, and osl::Square::isOnBoard().

Referenced by osl::rating::PatternGroup::findMatch(), match(), nextSquare(), and osl::rating::PatternGroup::PatternGroup().

## Member Data Documentation

## direction

Direction osl::rating::Pattern::direction

private

Definition at line 18 of file pattern.h.

Referenced by match(), nextSquare(), nextSquare(), Pattern(), and Pattern().

## direction2

Direction osl::rating::Pattern::direction2

private

Definition at line 18 of file pattern.h.

Referenced by match(), nextSquare(), nextSquare(), Pattern(), and Pattern().

## INVALID

const Direction osl::rating::Pattern::INVALID = LONG_UL

static

Definition at line 16 of file pattern.h.

Referenced by name(), osl::rating::PatternGroup::name(), nextSquare(), and Pattern().

## same

bool osl::rating::Pattern::same

private

Definition at line 20 of file pattern.h.

Referenced by match(), name(), Pattern(), and Pattern().

## self

Ptype osl::rating::Pattern::self

private

Definition at line 19 of file pattern.h.

Referenced by match(), name(), Pattern(), and Pattern().

## target

Ptype osl::rating::Pattern::target

private

Definition at line 19 of file pattern.h.

Referenced by match(), name(), Pattern(), and Pattern().

The documentation for this class was generated from the following files:

- pattern.h
- pattern.cc