qlonglong TorrentSpeedMonitor::getETA(const QString &hash) const
{
  QMutexLocker locker(&m_mutex);
  QTorrentHandle h = m_session->getTorrentHandle(hash);
  if (h.is_paused() || !m_samples.contains(hash)) return -1;
  const qreal speed_average = m_samples.value(hash).average();
  if (speed_average == 0) return -1;
  return (h.total_wanted() - h.total_done()) / speed_average;
}