Go to the documentation of this file.00001
00002
00003 #ifndef OSL_PSN_H
00004 #define OSL_PSN_H
00005
00006 #include "osl/move.h"
00007 #include <string>
00008 #include <stdexcept>
00009 namespace osl
00010 {
00011 namespace state
00012 {
00013 class SimpleState;
00014 }
00015 namespace record
00016 {
00021 namespace psn
00022 {
00023 class ParseError : public std::invalid_argument
00024 {
00025 public:
00026 ParseError(const std::string& msg = "")
00027 : invalid_argument(msg)
00028 { }
00029 };
00030 const Move strToMove(const std::string&, const state::SimpleState&);
00031 const Square strToPos(const std::string&);
00032 Ptype charToPtype(char);
00033
00034 const std::string show(Move);
00035 const std::string show(Square);
00036 char show(Ptype);
00037
00039 const std::string showXP(Move);
00040 }
00041 }
00042 }
00043
00044
00045 #endif
00046
00047
00048
00049