]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/deb/dpkgpm.h
* merged changes from the conference
[apt.git] / apt-pkg / deb / dpkgpm.h
index db6ce2a28879d2b8d3f884b390e00a3f5b9f792a..5d60b32d2c18a7ccccba8daea72fac918b1285a7 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
-// $Id: dpkgpm.h,v 1.3 1999/01/31 08:49:39 jgg Exp $
+// $Id: dpkgpm.h,v 1.8 2001/05/07 05:05:13 jgg Exp $
 /* ######################################################################
 
    DPKG Package Manager - Provide an interface to dpkg
@@ -16,6 +16,9 @@
 
 #include <apt-pkg/packagemanager.h>
 #include <vector>
+#include <stdio.h>
+
+using std::vector;
 
 class pkgDPkgPM : public pkgPackageManager
 {
@@ -23,10 +26,10 @@ class pkgDPkgPM : public pkgPackageManager
    
    struct Item
    {
-      enum Ops {Install, Configure, Remove} Op;
+      enum Ops {Install, Configure, Remove, Purge} Op;
       string File;
       PkgIterator Pkg;
-      Item(Ops Op,PkgIterator Pkg,string File = "") : Op(Op), 
+      Item(Ops Op,PkgIterator Pkg,string File = "") : Op(Op),
             File(File), Pkg(Pkg) {};
       Item() {};
       
@@ -35,16 +38,19 @@ class pkgDPkgPM : public pkgPackageManager
 
    // Helpers
    bool RunScripts(const char *Cnf);
+   bool RunScriptsWithPkgs(const char *Cnf);
+   bool SendV2Pkgs(FILE *F);
    
    // The Actuall installation implementation
    virtual bool Install(PkgIterator Pkg,string File);
    virtual bool Configure(PkgIterator Pkg);
-   virtual bool Remove(PkgIterator Pkg);
+   virtual bool Remove(PkgIterator Pkg,bool Purge = false);
    virtual bool Go();
+   virtual void Reset();
    
    public:
 
-   pkgDPkgPM(pkgDepCache &Cache);
+   pkgDPkgPM(pkgDepCache *Cache);
    virtual ~pkgDPkgPM();
 };