Empirical
Public Types | Public Member Functions | List of all members
emp::Mancala Class Reference

#include <Mancala.h>

Public Types

using move_t = size_t
 

Public Member Functions

 Mancala (bool A_first=true)
 
 ~Mancala ()
 
void Reset (bool A_first=true)
 
size_t GetA (size_t i) const
 
size_t GetB (size_t i) const
 
const side_tGetSideA () const
 
const side_tGetSideB () const
 
const side_tGetCurSide () const
 
const side_tGetOtherSide () const
 
side_tGetSideA ()
 
side_tGetSideB ()
 
side_tGetCurSide ()
 
side_tGetOtherSide ()
 
std::unordered_map< int, double > AsInput (size_t player_id) const
 
bool DoMove (move_t cell)
 
bool DoMove (size_t player, move_t cell)
 
void SetBoard (side_t a, side_t b)
 
bool IsDone () const
 
bool IsMoveValid (size_t move) const
 
emp::vector< move_tGetMoveOptions ()
 
void PrintSmall (std::ostream &os=std::cout)
 
void Print (std::ostream &os=std::cout)
 
size_t GetCurPlayer () const
 
bool IsTurnA () const
 
bool IsTurnB () const
 
size_t ScoreA () const
 
size_t ScoreB () const
 
double GetScore (size_t player)
 

Member Typedef Documentation

using emp::Mancala::move_t = size_t

Constructor & Destructor Documentation

emp::Mancala::Mancala ( bool  A_first = true)
inline
emp::Mancala::~Mancala ( )
inline

Member Function Documentation

std::unordered_map<int, double> emp::Mancala::AsInput ( size_t  player_id) const
inline
bool emp::Mancala::DoMove ( move_t  cell)
inline
bool emp::Mancala::DoMove ( size_t  player,
move_t  cell 
)
inline
size_t emp::Mancala::GetA ( size_t  i) const
inline
size_t emp::Mancala::GetB ( size_t  i) const
inline
size_t emp::Mancala::GetCurPlayer ( ) const
inline
const side_t& emp::Mancala::GetCurSide ( ) const
inline
side_t& emp::Mancala::GetCurSide ( )
inline
emp::vector<move_t> emp::Mancala::GetMoveOptions ( )
inline
const side_t& emp::Mancala::GetOtherSide ( ) const
inline
side_t& emp::Mancala::GetOtherSide ( )
inline
double emp::Mancala::GetScore ( size_t  player)
inline
const side_t& emp::Mancala::GetSideA ( ) const
inline
side_t& emp::Mancala::GetSideA ( )
inline
const side_t& emp::Mancala::GetSideB ( ) const
inline
side_t& emp::Mancala::GetSideB ( )
inline
bool emp::Mancala::IsDone ( ) const
inline
bool emp::Mancala::IsMoveValid ( size_t  move) const
inline
bool emp::Mancala::IsTurnA ( ) const
inline
bool emp::Mancala::IsTurnB ( ) const
inline
void emp::Mancala::Print ( std::ostream &  os = std::cout)
inline
void emp::Mancala::PrintSmall ( std::ostream &  os = std::cout)
inline
void emp::Mancala::Reset ( bool  A_first = true)
inline
size_t emp::Mancala::ScoreA ( ) const
inline
size_t emp::Mancala::ScoreB ( ) const
inline
void emp::Mancala::SetBoard ( side_t  a,
side_t  b 
)
inline

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