claw 1.9.0
 
Loading...
Searching...
No Matches
claw::ai::game::game_state< Action, Numeric > Class Template Referenceabstract

A state of a game. More...

#include <game_ai.hpp>

Public Types

typedef Numeric score
 The type used for evaluationg the players' scores.
 
typedef Action action
 A type representing an action of a player.
 

Public Member Functions

virtual score evaluate () const =0
 Evaluate this state of the game.
 
virtual void next_actions (std::list< action > &l) const =0
 Get all actions that can be done from this state.
 
virtual game_statedo_action (const action &a) const =0
 Get a new state obtained when applying an action.
 
virtual bool final () const =0
 Tell if the game is over.
 

Static Public Member Functions

static score min_score ()
 
static score max_score ()
 

Protected Member Functions

score fit (score score_val) const
 

Static Protected Attributes

static const score s_min_score
 Minimal score that can be given to a state.
 
static const score s_max_score
 Maximal score that can be given to a state.
 

Detailed Description

template<typename Action, typename Numeric = int>
class claw::ai::game::game_state< Action, Numeric >

A state of a game.

Template parameters:

  • Parameters
    Actiona type representing an action of a player.
  • Parameters
    Numericthe type used for evaluationg the players' scores.
    Author
    Julien Jorge

Definition at line 55 of file game_ai.hpp.

Member Typedef Documentation

◆ action

template<typename Action, typename Numeric = int>
typedef Action claw::ai::game::game_state< Action, Numeric >::action

A type representing an action of a player.

Definition at line 62 of file game_ai.hpp.

◆ score

template<typename Action, typename Numeric = int>
typedef Numeric claw::ai::game::game_state< Action, Numeric >::score

The type used for evaluationg the players' scores.

Definition at line 59 of file game_ai.hpp.

Member Function Documentation

◆ do_action()

template<typename Action, typename Numeric = int>
virtual game_state * claw::ai::game::game_state< Action, Numeric >::do_action ( const action & a) const
pure virtual

Get a new state obtained when applying an action.

Parameters
aThe action to apply.
Returns
The state resulting from this action.

◆ next_actions()

template<typename Action, typename Numeric = int>
virtual void claw::ai::game::game_state< Action, Numeric >::next_actions ( std::list< action > & l) const
pure virtual

Get all actions that can be done from this state.

Parameters
l(out) The actions.

Member Data Documentation

◆ s_max_score

template<typename Action, typename Numeric = int>
const score claw::ai::game::game_state< Action, Numeric >::s_max_score
staticprotected

Maximal score that can be given to a state.

Definition at line 97 of file game_ai.hpp.

◆ s_min_score

template<typename Action, typename Numeric = int>
const score claw::ai::game::game_state< Action, Numeric >::s_min_score
staticprotected

Minimal score that can be given to a state.

Definition at line 94 of file game_ai.hpp.


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