]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/contrib/progress.h
* doc/external-dependency-solver-protocol.txt:
[apt.git] / apt-pkg / contrib / progress.h
index 39e770fa3a4e64091d106287981e1e2f1699cdb9..3a914d17f6aca935059a30a56834875b85d745ea 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
-// $Id: progress.h,v 1.1 1998/07/21 05:33:21 jgg Exp $
+// $Id: progress.h,v 1.6 2001/05/07 05:06:52 jgg Exp $
 /* ######################################################################
    
    OpProgress - Operation Progress
    
    ##################################################################### */
                                                                        /*}}}*/
-// Header section: pkglib
 #ifndef PKGLIB_PROGRESS_H
 #define PKGLIB_PROGRESS_H
 
-#ifdef __GNUG__
-#pragma interface "apt-pkg/progress.h"
-#endif 
 
 #include <string>
 #include <sys/time.h>
 
+using std::string;
+
+class Configuration;
 class OpProgress
 {
    unsigned long Current;
@@ -40,6 +39,7 @@ class OpProgress
    // Change reduction code
    struct timeval LastTime;
    string LastOp;
+   string LastSubOp;
    
    protected:
    
@@ -55,10 +55,11 @@ class OpProgress
    public:
    
    void Progress(unsigned long Current);
-   void SubProgress(unsigned long SubTotal,string Op);
+   void SubProgress(unsigned long SubTotal, const string &Op = "", float const Percent = -1);
    void OverallProgress(unsigned long Current,unsigned long Total,
-                       unsigned long Size,string Op);
-
+                       unsigned long Size,const string &Op);
+   virtual void Done() {};
+   
    OpProgress();
    virtual ~OpProgress() {};
 };
@@ -69,15 +70,18 @@ class OpTextProgress : public OpProgress
    
    string OldOp;
    bool NoUpdate;
+   bool NoDisplay;
    unsigned long LastLen;
    virtual void Update();
    void Write(const char *S);
    
    public:
 
-   void Done();
+   virtual void Done();
    
-   OpTextProgress(bool NoUpdate = false) : NoUpdate(NoUpdate), LastLen(0) {};
+   OpTextProgress(bool NoUpdate = false) : NoUpdate(NoUpdate), 
+                NoDisplay(false), LastLen(0) {};
+   OpTextProgress(Configuration &Config);
    virtual ~OpTextProgress() {Done();};
 };