kifu-to-myshogi.cc
Go to the documentation of this file.
00001 /* kifu-to-myshogi.cc
00002  */
00003 #include "osl/record/myshogi.h"
00004 #include "osl/record/kakinoki.h"
00005 #include <iostream>
00006 using namespace std;
00007 int main(int argc, char **argv) {
00008   if (! argv[1] || ! osl::KakinokiFile::isKakinokiFile(argv[1]))
00009     return 1;
00010   std::string filename = argv[1];
00011   const osl::KakinokiFile file(filename);
00012   const osl::record::Record record = file.getRecord();
00013   osl::vector<osl::Move> moves = record.getMoves();
00014   osl::NumEffectState state = record.getInitialState();
00015   for (size_t i=0; i<moves.size(); ++i) {
00016     osl::NumEffectState next(state);
00017     next.makeMove(moves[i]);
00018     std::cout << osl::record::myshogi::show(next, moves[i], state, true) << "\n";
00019     state = next;
00020   }
00021 }
00022 // ;;; Local Variables:
00023 // ;;; mode:c++
00024 // ;;; c-basic-offset:2
00025 // ;;; End:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines