Files
rtorrent/src/core/http_queue.h
T
rakshasa 78d3d78ef3 Improved the http progress display, includes truncated names, download
progress and 10 second delay on hiding.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@286 e378c898-3ddf-0310-93e7-cc216c733640
2005-02-17 21:20:18 +00:00

52 lines
1.2 KiB
C++

#ifndef RTORRENT_CORE_HTTP_QUEUE_H
#define RTORRENT_CORE_HTTP_QUEUE_H
#include <list>
#include <iosfwd>
#include <sigc++/signal.h>
namespace core {
class CurlGet;
class HttpQueue : private std::list<CurlGet*> {
public:
typedef std::list<CurlGet*> Base;
typedef sigc::signal1<void, CurlGet*> SignalHttp;
typedef sigc::slot0<CurlGet*> SlotFactory;
using Base::iterator;
using Base::const_iterator;
using Base::reverse_iterator;
using Base::const_reverse_iterator;
using Base::begin;
using Base::end;
using Base::rbegin;
using Base::rend;
using Base::empty;
using Base::size;
// Note that any slots connected to the CurlGet signals must be
// pushed in front of the erase slot added by HttpQueue::insert.
iterator insert(const std::string& url);
void erase(iterator itr);
void clear();
void slot_factory(SlotFactory s) { m_slotFactory = s; }
SignalHttp& signal_insert() { return m_signalInsert; }
SignalHttp& signal_erase() { return m_signalErase; }
private:
SlotFactory m_slotFactory;
SignalHttp m_signalInsert;
SignalHttp m_signalErase;
};
}
#endif