From 0f20af3710a42fe90ba3cb3cfea025ab7216c0f6 Mon Sep 17 00:00:00 2001 From: Alden Torres Date: Sun, 16 Oct 2016 01:12:41 -0600 Subject: [PATCH] minor refactor, consts and cleanup in alerts (#1210) minor refactor, consts and cleanup in alerts --- ChangeLog | 1 + examples/session_view.cpp | 6 +++--- examples/session_view.hpp | 4 ++-- include/libtorrent/alert_types.hpp | 22 +++++++++++----------- src/alert.cpp | 12 +++--------- 5 files changed, 20 insertions(+), 25 deletions(-) diff --git a/ChangeLog b/ChangeLog index 247c16ebd..922f6d4bc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,4 @@ + * changed session_stats_alert counters type to signed (std::int64_t) * remove torrent eviction/ghost torrent feature * include target in DHT lookups, when queried from the session * improve support for HTTP redirects for web seeds diff --git a/examples/session_view.cpp b/examples/session_view.cpp index 33e0f527a..9278eb814 100644 --- a/examples/session_view.cpp +++ b/examples/session_view.cpp @@ -108,9 +108,9 @@ void session_view::render() , color(to_string(int(m_cnt[0][m_queued_reads_idx]), 3), col_red).c_str() , color(to_string(int(m_cnt[0][m_queued_writes_idx]), 3), col_green).c_str() , int((m_cnt[0][m_blocks_written_idx] - m_cnt[0][m_write_ops_idx]) * 100 - / (std::max)(std::uint64_t(1), m_cnt[0][m_blocks_written_idx])) + / (std::max)(std::int64_t(1), m_cnt[0][m_blocks_written_idx])) , int(m_cnt[0][m_cache_hit_idx] * 100 - / (std::max)(std::uint64_t(1), m_cnt[0][m_num_blocks_read_idx])) + / (std::max)(std::int64_t(1), m_cnt[0][m_num_blocks_read_idx])) , add_suffix(m_cnt[0][m_writes_cache_idx] * 16 * 1024).c_str() , add_suffix(m_cnt[0][m_reads_cache_idx] * 16 * 1024).c_str() , add_suffix(m_cnt[0][m_blocks_in_use_idx] * 16 * 1024).c_str() @@ -189,7 +189,7 @@ void session_view::render() } } -void session_view::update_counters(std::uint64_t* stats_counters +void session_view::update_counters(std::int64_t* stats_counters , int num_cnt, std::uint64_t t) { // only update the previous counters if there's been enough diff --git a/examples/session_view.hpp b/examples/session_view.hpp index 43008d762..e8ca504ad 100644 --- a/examples/session_view.hpp +++ b/examples/session_view.hpp @@ -21,7 +21,7 @@ struct session_view void print_utp_stats(bool p) { m_print_utp_stats = p; } bool print_utp_stats() const { return m_print_utp_stats; } - void update_counters(std::uint64_t* stats_counters, int num_cnt + void update_counters(std::int64_t* stats_counters, int num_cnt , std::uint64_t t); private: @@ -31,7 +31,7 @@ private: // there are two sets of counters. the current one and the last one. This // is used to calculate rates - std::vector m_cnt[2]; + std::vector m_cnt[2]; // the timestamps of the counters in m_cnt[0] and m_cnt[1] // respectively. The timestamps are microseconds since session start diff --git a/include/libtorrent/alert_types.hpp b/include/libtorrent/alert_types.hpp index cdf87643d..54395ae86 100644 --- a/include/libtorrent/alert_types.hpp +++ b/include/libtorrent/alert_types.hpp @@ -117,10 +117,10 @@ namespace libtorrent virtual std::string message() const override; // The peer's IP address and port. - tcp::endpoint ip; + tcp::endpoint const ip; // the peer ID, if known. - peer_id pid; + peer_id const pid; }; // This is a base class used for alerts that are associated with a @@ -671,7 +671,7 @@ namespace libtorrent static const int static_category = alert::debug_notification; virtual std::string message() const override; - int socket_type; + int const socket_type; }; // This alert is generated when a peer is disconnected for any reason (other than the ones @@ -1501,7 +1501,7 @@ namespace libtorrent // the reason for the peer being blocked. Is one of the values from the // reason_t enum. - int reason; + int const reason; }; // This alert is generated when a DHT node announces to an info-hash on our @@ -1758,10 +1758,10 @@ namespace libtorrent // 8. HTTPS (SSL/HTTP) // 9. SSL/uTP // - int socket_type; + int const socket_type; // is the IP address and port the connection came from. - tcp::endpoint ip; + tcp::endpoint const ip; }; // This alert is always posted when a torrent was attempted to be added @@ -1781,10 +1781,10 @@ namespace libtorrent // a copy of the parameters used when adding the torrent, it can be used // to identify which invocation to ``async_add_torrent()`` caused this alert. - add_torrent_params params; + add_torrent_params const params; // set to the error, if one occurred while adding the torrent. - error_code error; + error_code const error; }; // This alert is only posted when requested by the user, by calling @@ -1843,7 +1843,7 @@ namespace libtorrent // interpret these values throughout the process' runtime. // // For more information, see the session-statistics_ section. - std::uint64_t values[counters::num_counters]; + std::int64_t values[counters::num_counters]; }; #ifndef TORRENT_NO_DEPRECATE @@ -2308,7 +2308,7 @@ namespace libtorrent virtual std::string message() const override; - sha1_hash info_hash; + sha1_hash const info_hash; int num_peers() const; @@ -2413,7 +2413,7 @@ namespace libtorrent std::string message() const override; // The error code, if one is associated with this error - error_code error; + error_code const error; private: std::reference_wrapper m_alloc; diff --git a/src/alert.cpp b/src/alert.cpp index 2b9e98173..9df059f7c 100644 --- a/src/alert.cpp +++ b/src/alert.cpp @@ -38,7 +38,6 @@ POSSIBILITY OF SUCH DAMAGE. #include "libtorrent/alert.hpp" #include "libtorrent/alert_types.hpp" #include "libtorrent/socket_io.hpp" -#include "libtorrent/time.hpp" #include "libtorrent/error_code.hpp" #include "libtorrent/torrent.hpp" #include "libtorrent/performance_counters.hpp" @@ -110,7 +109,6 @@ namespace libtorrent { std::string peer_alert::message() const { - error_code ec; return torrent_alert::message() + " peer (" + print_endpoint(ip) + ", " + identify_client(pid) + ")"; } @@ -1076,7 +1074,6 @@ namespace libtorrent { std::string peer_blocked_alert::message() const { - error_code ec; char ret[600]; static char const* reason_str[] = { @@ -1320,7 +1317,6 @@ namespace libtorrent { std::string incoming_connection_alert::message() const { char msg[600]; - error_code ec; std::snprintf(msg, sizeof(msg), "incoming connection from %s (%s)" , print_endpoint(ip).c_str(), socket_type_str[socket_type]); return msg; @@ -1335,7 +1331,6 @@ namespace libtorrent { std::string peer_connect_alert::message() const { char msg[600]; - error_code ec; std::snprintf(msg, sizeof(msg), "%s connecting to peer (%s)" , peer_alert::message().c_str(), socket_type_str[socket_type]); return msg; @@ -1900,7 +1895,7 @@ namespace libtorrent { , m_alloc(alloc) , m_num_peers(int(peers.size())) { - std::size_t total_size = m_num_peers; // num bytes for sizes + std::size_t total_size = 0; // num bytes for sizes for (int i = 0; i < m_num_peers; i++) { total_size += peers[i].size(); } @@ -1909,7 +1904,7 @@ namespace libtorrent { char *ptr = alloc.ptr(m_peers_idx); for (int i = 0; i < m_num_peers; i++) { - tcp::endpoint endp = peers[i]; + tcp::endpoint const& endp = peers[i]; std::size_t size = endp.size(); TORRENT_ASSERT(size < 0x100); detail::write_uint8(uint8_t(size), ptr); @@ -2003,8 +1998,7 @@ namespace libtorrent { { // we need to copy this array to make sure the structures are properly // aligned, not just to have a nice API - std::vector ret; - ret.resize(m_num_blocks); + std::vector ret(m_num_blocks); char const* start = m_alloc.get().ptr(m_array_idx); std::memcpy(&ret[0], start, m_num_blocks * sizeof(piece_block));