00001 #ifndef SEARCHMOVE_VECTOR_H 00002 #define SEARCHMOVE_VECTOR_H 00003 00004 #include "osl/move.h" 00005 #include "osl/misc/fixedCapacityVector.h" 00006 #include <iosfwd> 00007 00008 namespace osl 00009 { 00010 namespace search 00011 { 00012 class SearchMove; 00013 typedef FixedCapacityVector<const SearchMove*,Move::MaxUniqMoves> 00014 SearchMoveVectorBase; 00015 00016 class SearchMoveVector : public SearchMoveVectorBase 00017 { 00018 typedef SearchMoveVectorBase base_t; 00019 public: 00020 void push_back(const SearchMove* move) { 00021 base_t::push_back(move); 00022 } 00027 template <Player P> 00028 void sortByValue(int default_value); 00029 00031 template <Player P> 00032 void sortByValueUP(int default_value); 00033 template <Player P> 00034 void sortByValueMP(int default_value); 00035 00037 void sortByProbability(); 00039 void sortByProbabilityReverse(); 00040 }; 00041 std::ostream& operator<<(std::ostream& os,const SearchMoveVector& mv); 00042 00043 } // namespace search 00044 } // namespace osl 00045 #endif // SEARCHMOVE_VECTOR_H 00046 // ;;; Local Variables: 00047 // ;;; mode:c++ 00048 // ;;; c-basic-offset:2 00049 // ;;; End: