mirror of https://github.com/aria2/aria2
2010-11-20 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added BtLeecherStateChoke::PeerEntry::swap(). Also added non-member swap for it, which is friend function for BtLeecherStateChoke because PeerEntry is private. * src/BtLeecherStateChoke.cc * src/BtLeecherStateChoke.hpull/1/head
parent
4ed364d772
commit
8f46dbc0ab
|
@ -1,3 +1,11 @@
|
|||
2010-11-20 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
|
||||
|
||||
Added BtLeecherStateChoke::PeerEntry::swap(). Also added
|
||||
non-member swap for it, which is friend function for
|
||||
BtLeecherStateChoke because PeerEntry is private.
|
||||
* src/BtLeecherStateChoke.cc
|
||||
* src/BtLeecherStateChoke.h
|
||||
|
||||
2010-11-20 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
|
||||
|
||||
Added CookieStorage::DomainEntry::swap(). Also added non-member
|
||||
|
|
|
@ -65,6 +65,14 @@ BtLeecherStateChoke::PeerEntry::PeerEntry(const PeerEntry& c)
|
|||
regularUnchoker_(c.regularUnchoker_)
|
||||
{}
|
||||
|
||||
void BtLeecherStateChoke::PeerEntry::swap(PeerEntry& c)
|
||||
{
|
||||
using std::swap;
|
||||
swap(peer_, c.peer_);
|
||||
swap(downloadSpeed_, c.downloadSpeed_);
|
||||
swap(regularUnchoker_, c.regularUnchoker_);
|
||||
}
|
||||
|
||||
BtLeecherStateChoke::PeerEntry& BtLeecherStateChoke::PeerEntry::operator=
|
||||
(const PeerEntry& c)
|
||||
{
|
||||
|
@ -123,6 +131,13 @@ bool BtLeecherStateChoke::PeerEntry::operator<(const PeerEntry& peerEntry) const
|
|||
return downloadSpeed_ > peerEntry.downloadSpeed_;
|
||||
}
|
||||
|
||||
void swap
|
||||
(BtLeecherStateChoke::PeerEntry& a,
|
||||
BtLeecherStateChoke::PeerEntry& b)
|
||||
{
|
||||
a.swap(b);
|
||||
}
|
||||
|
||||
bool BtLeecherStateChoke::PeerFilter::operator()
|
||||
(const PeerEntry& peerEntry) const
|
||||
{
|
||||
|
@ -224,3 +239,13 @@ const Timer& BtLeecherStateChoke::getLastRound() const
|
|||
}
|
||||
|
||||
} // namespace aria2
|
||||
|
||||
namespace std {
|
||||
template<>
|
||||
void swap<aria2::BtLeecherStateChoke::PeerEntry>
|
||||
(aria2::BtLeecherStateChoke::PeerEntry& a,
|
||||
aria2::BtLeecherStateChoke::PeerEntry& b)
|
||||
{
|
||||
a.swap(b);
|
||||
}
|
||||
} // namespace std;
|
||||
|
|
|
@ -66,6 +66,8 @@ private:
|
|||
|
||||
bool operator<(const PeerEntry& rhs) const;
|
||||
|
||||
void swap(PeerEntry& c);
|
||||
|
||||
const SharedHandle<Peer>& getPeer() const;
|
||||
|
||||
unsigned int getDownloadSpeed() const;
|
||||
|
@ -114,8 +116,22 @@ public:
|
|||
void executeChoke(const std::vector<SharedHandle<Peer> >& peerSet);
|
||||
|
||||
const Timer& getLastRound() const;
|
||||
|
||||
friend void swap(PeerEntry& a, PeerEntry& b);
|
||||
friend void std::swap<PeerEntry>(PeerEntry& a, PeerEntry& b);
|
||||
};
|
||||
|
||||
void swap
|
||||
(BtLeecherStateChoke::PeerEntry& a,
|
||||
BtLeecherStateChoke::PeerEntry& b);
|
||||
|
||||
} // namespace aria2
|
||||
|
||||
namespace std {
|
||||
template<>
|
||||
void swap<aria2::BtLeecherStateChoke::PeerEntry>
|
||||
(aria2::BtLeecherStateChoke::PeerEntry& a,
|
||||
aria2::BtLeecherStateChoke::PeerEntry& b);
|
||||
} // namespace std
|
||||
|
||||
#endif // D_BT_LEECHER_STATE_CHOKE_H
|
||||
|
|
Loading…
Reference in New Issue