usi.h
Go to the documentation of this file.
/* usi.h
*/
#ifndef OSL_USI_H
#define OSL_USI_H
#include "osl/numEffectState.h"
#include <vector>
#include <string>
#include <stdexcept>
namespace osl
{
namespace usi
{
const Move strToMove(const std::string&, const NumEffectState&);
PtypeO charToPtypeO(char);
const std::string show(Move);
const std::string show(PtypeO);
const std::string show(Piece);
const std::string show(const NumEffectState&);
class ParseError : public std::invalid_argument
{
public:
ParseError(const std::string& msg = "")
: invalid_argument(msg)
{ }
};
void parseBoard(const std::string& board, NumEffectState&);
void parse(const std::string& line, NumEffectState&);
void parse(const std::string& line, NumEffectState& initial, std::vector<Move>& moves);
NumEffectState makeState(const std::string& line);
}
namespace psn
{
class ParseError : public std::invalid_argument
{
public:
ParseError(const std::string& msg = "")
: invalid_argument(msg)
{ }
};
const Move strToMove(const std::string&, const SimpleState&);
const Square strToPos(const std::string&);
Ptype charToPtype(char);
const std::string show(Move);
const std::string show(Square);
char show(Ptype);
const std::string showXP(Move);
}
} // osl
#endif /* OSL_USI_H */
// ;;; Local Variables:
// ;;; mode:c++
// ;;; c-basic-offset:2
// ;;; End:
osl::Move
圧縮していない moveの表現 .
Definition basic_type.h:1052
osl::NumEffectState
利きを持つ局面
Definition numEffectState.h:34
osl::Piece
駒.
Definition basic_type.h:788
osl::SimpleState
Definition simpleState.h:35
osl::Square
Definition basic_type.h:532
osl::psn::ParseError::ParseError
ParseError(const std::string &msg="")
Definition usi.h:54
osl::usi::ParseError::ParseError
ParseError(const std::string &msg="")
Definition usi.h:26
osl::psn
gnushogi で使われるフォーマット.
Definition usi.h:50
osl::psn::strToPos
const Square strToPos(const std::string &)
Definition usi.cc:115
osl::psn::showXP
const std::string showXP(Move)
decorate capture by 'x', promote by '+', and unpromote by '='
Definition usi.cc:58
osl::psn::show
const std::string show(Move)
Definition usi.cc:39
osl::psn::charToPtype
Ptype charToPtype(char)
Definition usi.cc:126
osl::psn::strToMove
const Move strToMove(const std::string &, const SimpleState &)
Definition usi.cc:87
osl::usi
Definition usi.h:14
osl::usi::strToMove
const Move strToMove(const std::string &, const NumEffectState &)
Definition usi.cc:226
osl::usi::makeState
NumEffectState makeState(const std::string &line)
Definition usi.cc:312
osl::usi::charToPtypeO
PtypeO charToPtypeO(char)
Definition usi.cc:246
osl::usi::parse
void parse(const std::string &line, NumEffectState &)
[sfen <sfenstring> | startpos ] moves <move1> ... <movei>
Definition usi.cc:301
osl::usi::parseBoard
void parseBoard(const std::string &board, NumEffectState &)
盤面を取得する.
Definition usi.cc:255
osl::usi::show
const std::string show(Move)
Definition usi.cc:146
osl
Definition additionalEffect.h:6
osl::Ptype
Ptype
駒の種類を4ビットでコード化する
Definition basic_type.h:84
osl::PtypeO
PtypeO
Player + Ptype [-15, 15] PtypeO の O は Owner の O.
Definition basic_type.h:199
numEffectState.h