説明を見る。00001
00002
00003
00004 #ifndef OSL_RECORD_KI2_H
00005 #define OSL_RECORD_KI2_H
00006
00007 #include "osl/record/record.h"
00008 #include "osl/record/kanjiMove.h"
00009 #include <string>
00010 #include <iosfwd>
00011
00012 namespace osl
00013 {
00014 namespace ki2
00015 {
00021 class Ki2File : public RecordFile
00022 {
00023 private:
00024 bool verbose;
00025 public:
00026 Ki2File(const std::string& filename, bool verbose=false);
00027
00028 enum ParseResult {
00029 OK = 0, Komaochi, Illegal,
00030 };
00031 static ParseResult parseLine(NumEffectState&, Record&, KanjiMove&, std::string element);
00032 };
00033
00034 const std::string show(Square);
00035 const std::string show(Square cur, Square prev);
00036 const std::string show(Ptype);
00037 const std::string showPromote(bool);
00038 const std::string show(Move move, const NumEffectState& state, Move prev=Move());
00039 const std::string show(const Move *first, const Move *last, const NumEffectState& state, Move prev=Move());
00040 const std::string show(const Move *first, const Move *last, const char *threatmate_first, const char *threatmate_last, const NumEffectState& state, Move prev=Move());
00041 }
00042 using ki2::Ki2File;
00043 }
00044
00045 #endif
00046
00047
00048
00049