ntesukiMoveList.h
Go to the documentation of this file.
00001 /* ntesukiMoveList.h
00002  */
00003 #ifndef _NTESUKI_MOVELIST_H
00004 #define _NTESUKI_MOVELIST_H
00005 
00006 #include "osl/ntesuki/ntesukiMove.h"
00007 #include "osl/ntesuki/ntesukiExceptions.h"
00008 #include "osl/state/numEffectState.h"
00009 #include "osl/container/moveVector.h"
00010 #include "osl/move_classifier/moveAdaptor.h"
00011 #include "osl/move_classifier/check_.h"
00012 #include "osl/stl/slist.h"
00013 #include <cassert>
00014 #include <algorithm>
00015 #include <iterator>
00016 #include <iosfwd>
00017 
00018 namespace osl
00019 {
00020   namespace ntesuki
00021   {
00022     // TODO: 自作すべき
00023     typedef slist<NtesukiMove> NtesukiMoveListBase;
00027     class NtesukiMoveList : public NtesukiMoveListBase
00028     {
00029     public:
00030       NtesukiMoveList();
00031       NtesukiMoveList(const NumEffectState& state,
00032                       const osl::MoveVector& mv);
00033 
00043       NtesukiMove* add(const NtesukiMove& move);
00044       const NtesukiMove& find(const NtesukiMove& move) const;
00045     };
00046     std::ostream& operator<<(std::ostream&, const NtesukiMoveList&);
00047   } // namespace ntesukimate
00048 } // namespace osl
00049 
00050 #endif /* _NTESUKI_MOVELIST_H */
00051 // ;;; Local Variables:
00052 // ;;; mode:c++
00053 // ;;; c-basic-offset:2
00054 // ;;; End:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines