X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/2d11135a1b8e8ee0a21c7932d7ce08a89b354784..c82ffeb66a6a4de0b672ac80fcb4955022e7a615:/apt-pkg/cachefile.h?ds=sidebyside

diff --git a/apt-pkg/cachefile.h b/apt-pkg/cachefile.h
index 23bd4008b..e2540ed58 100644
--- a/apt-pkg/cachefile.h
+++ b/apt-pkg/cachefile.h
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description								/*{{{*/
-// $Id: cachefile.h,v 1.1 1999/04/18 06:36:36 jgg Exp $
+// $Id: cachefile.h,v 1.4 2001/02/20 07:03:17 jgg Exp $
 /* ######################################################################
    
    CacheFile - Simple wrapper class for opening, generating and whatnot
@@ -9,6 +9,9 @@
    of caches. It can operate as root, as not root, show progress and so on,
    it transparently handles everything necessary.
    
+   This means it can rebuild caches from the source list and instantiates
+   and prepares the standard policy mechanism.
+   
    ##################################################################### */
 									/*}}}*/
 #ifndef PKGLIB_CACHEFILE_H
@@ -19,27 +22,32 @@
 #endif 
 
 #include <apt-pkg/depcache.h>
-#include <apt-pkg/dpkginit.h>
 
+class pkgPolicy;
 class pkgCacheFile
 {
    protected:
    
    MMap *Map;
-   pkgDepCache *Cache;
-   pkgDpkgLock *Lock;
+   pkgCache *Cache;
+   pkgDepCache *DCache;
    
    public:
+
+   pkgPolicy *Policy;
       
    // We look pretty much exactly like a pointer to a dep cache
-   inline operator pkgDepCache &() {return *Cache;};
-   inline pkgDepCache *operator ->() {return Cache;};
-   inline pkgDepCache &operator *() {return *Cache;};
+   inline operator pkgCache &() {return *Cache;};
+   inline operator pkgCache *() {return Cache;};
+   inline operator pkgDepCache &() {return *DCache;};
+   inline operator pkgDepCache *() {return DCache;};
+   inline pkgDepCache *operator ->() {return DCache;};
+   inline pkgDepCache &operator *() {return *DCache;};
+   inline pkgDepCache::StateCache &operator [](pkgCache::PkgIterator const &I) {return (*DCache)[I];};
+   inline unsigned char &operator [](pkgCache::DepIterator const &I) {return (*DCache)[I];};
 
-   // Release the dpkg status lock
-   inline void ReleaseLock() {Lock->Close();};
-   
    bool Open(OpProgress &Progress,bool WithLock = true);
+   void Close();
    
    pkgCacheFile();
    ~pkgCacheFile();