#include <tracker_manager.hpp>
Public Member Functions | |
| tracker_manager (const session_settings &s) | |
| void | queue_request (asio::strand &str, tracker_request r, std::string const &auth, address bind_infc, boost::weak_ptr< request_callback > c=boost::weak_ptr< request_callback >()) |
| void | abort_all_requests () |
| void | remove_request (tracker_connection const *) |
| bool | empty () const |
Private Types | |
| typedef boost::recursive_mutex | mutex_t |
| typedef std::list < boost::intrusive_ptr < tracker_connection > > | tracker_connections_t |
Private Attributes | |
| mutex_t | m_mutex |
| tracker_connections_t | m_connections |
| session_settings const & | m_settings |
Definition at line 222 of file tracker_manager.hpp.
typedef boost::recursive_mutex libtorrent::tracker_manager::mutex_t [private] |
Definition at line 243 of file tracker_manager.hpp.
typedef std::list<boost::intrusive_ptr<tracker_connection> > libtorrent::tracker_manager::tracker_connections_t [private] |
Definition at line 247 of file tracker_manager.hpp.
| libtorrent::tracker_manager::tracker_manager | ( | const session_settings & | s | ) | [inline] |
Definition at line 226 of file tracker_manager.hpp.
| void libtorrent::tracker_manager::queue_request | ( | asio::strand & | str, | |
| tracker_request | r, | |||
| std::string const & | auth, | |||
| address | bind_infc, | |||
| boost::weak_ptr< request_callback > | c = boost::weak_ptr<request_callback>() | |||
| ) |
Definition at line 458 of file tracker_manager.cpp.
References libtorrent::tracker_request::event, l, m_connections, m_mutex, m_settings, libtorrent::tracker_request::num_want, libtorrent::parse_url_components(), libtorrent::tracker_request::stopped, and libtorrent::tracker_request::url.
Referenced by libtorrent::http_tracker_connection::on_response(), libtorrent::aux::session_impl::operator()(), libtorrent::aux::session_impl::remove_torrent(), and libtorrent::aux::session_impl::second_tick().
| void libtorrent::tracker_manager::abort_all_requests | ( | ) |
Definition at line 524 of file tracker_manager.cpp.
References libtorrent::tracker_request::event, l, m_connections, m_mutex, and libtorrent::tracker_request::stopped.
Referenced by libtorrent::aux::session_impl::operator()().
| void libtorrent::tracker_manager::remove_request | ( | tracker_connection const * | c | ) |
Definition at line 393 of file tracker_manager.cpp.
References asio::placeholders::iterator, l, m_connections, and m_mutex.
Referenced by libtorrent::udp_tracker_connection::announce_response(), libtorrent::tracker_connection::close(), and libtorrent::udp_tracker_connection::scrape_response().
| bool libtorrent::tracker_manager::empty | ( | ) | const |
Definition at line 544 of file tracker_manager.cpp.
References l, m_connections, and m_mutex.
Referenced by libtorrent::aux::session_impl::operator()().
mutex_t libtorrent::tracker_manager::m_mutex [mutable, private] |
Definition at line 244 of file tracker_manager.hpp.
Referenced by abort_all_requests(), empty(), queue_request(), and remove_request().
Definition at line 248 of file tracker_manager.hpp.
Referenced by abort_all_requests(), empty(), queue_request(), and remove_request().
session_settings const& libtorrent::tracker_manager::m_settings [private] |
1.5.6