00001 /* ratedMoveVector.cc 00002 */ 00003 #include "osl/rating/ratedMoveVector.h" 00004 #include <algorithm> 00005 #include <iostream> 00006 00007 std::ostream& osl::rating::operator<<(std::ostream& os, RatedMoveVector const& mv) 00008 { 00009 os<< "RatedMoves" << std::endl; 00010 for (RatedMoveVector::const_iterator p=mv.begin(); p!=mv.end(); ++p) { 00011 os << *p << std::endl; 00012 } 00013 return os << std::endl; 00014 } 00015 00016 bool osl::rating::operator==(const RatedMoveVector& l, const RatedMoveVector& r) 00017 { 00018 return l.size() == r.size() 00019 && std::equal(l.begin(), l.end(), r.begin()); 00020 } 00021 00022 void osl::rating::RatedMoveVector::sort() 00023 { 00024 std::sort(begin(), end(), std::greater<RatedMove>()); 00025 } 00026 00027 const osl::rating::RatedMove* osl::rating::RatedMoveVector::find(Move m) const 00028 { 00029 for (const_iterator p=begin(); p!=end(); ++p) 00030 if (p->move() == m) 00031 return &*p; 00032 return 0; 00033 } 00034 00035 /* ------------------------------------------------------------------------- */ 00036 // ;;; Local Variables: 00037 // ;;; mode:c++ 00038 // ;;; c-basic-offset:2 00039 // ;;; End: 00040