// -*- mode: cpp; mode: fold -*-
// Description /*{{{*/
-// $Id: acquire.h,v 1.26 2000/01/17 07:11:49 jgg Exp $
+// $Id: acquire.h,v 1.29 2001/05/22 04:17:18 jgg Exp $
/* ######################################################################
Acquire - File Acquiration
#include <vector>
#include <string>
+using std::vector;
+using std::string;
+
#ifdef __GNUG__
#pragma interface "apt-pkg/acquire.h"
#endif
class Worker;
struct MethodConfig;
struct ItemDesc;
- friend Item;
- friend Queue;
+ friend class Item;
+ friend class Queue;
+
+ typedef vector<Item *>::iterator ItemIterator;
+ typedef vector<Item *>::const_iterator ItemCIterator;
protected:
// Simple iteration mechanism
inline Worker *WorkersBegin() {return Workers;};
Worker *WorkerStep(Worker *I);
- inline Item **ItemsBegin() {return Items.begin();};
- inline Item **ItemsEnd() {return Items.end();};
+ inline ItemIterator ItemsBegin() {return Items.begin();};
+ inline ItemIterator ItemsEnd() {return Items.end();};
// Iterate over queued Item URIs
class UriIterator;
bool Clean(string Dir);
// Returns the size of the total download set
- unsigned long TotalNeeded();
- unsigned long FetchNeeded();
- unsigned long PartialPresent();
+ double TotalNeeded();
+ double FetchNeeded();
+ double PartialPresent();
pkgAcquire(pkgAcquireStatus *Log = 0);
virtual ~pkgAcquire();
// List of possible items queued for download.
class pkgAcquire::Queue
{
- friend pkgAcquire;
- friend pkgAcquire::UriIterator;
+ friend class pkgAcquire;
+ friend class pkgAcquire::UriIterator;
+ friend class pkgAcquire::Worker;
Queue *Next;
protected:
struct timeval Time;
struct timeval StartTime;
- unsigned long LastBytes;
+ double LastBytes;
double CurrentCPS;
- unsigned long CurrentBytes;
- unsigned long TotalBytes;
- unsigned long FetchedBytes;
+ double CurrentBytes;
+ double TotalBytes;
+ double FetchedBytes;
unsigned long ElapsedTime;
unsigned long TotalItems;
unsigned long CurrentItems;
public:
bool Update;
-
+ bool MorePulses;
+
// Called by items when they have finished a real download
virtual void Fetched(unsigned long Size,unsigned long ResumePoint);