Switch away from the now deprecated methods for Cache building
[ntk/apt.git] / apt-pkg / cachefile.h
CommitLineData
2d11135a
AL
1// -*- mode: cpp; mode: fold -*-
2// Description /*{{{*/
0077d829 3// $Id: cachefile.h,v 1.5 2002/04/27 04:28:04 jgg Exp $
2d11135a
AL
4/* ######################################################################
5
6 CacheFile - Simple wrapper class for opening, generating and whatnot
7
8 This class implements a simple 2 line mechanism to open various sorts
9 of caches. It can operate as root, as not root, show progress and so on,
10 it transparently handles everything necessary.
11
b2e465d6
AL
12 This means it can rebuild caches from the source list and instantiates
13 and prepares the standard policy mechanism.
14
2d11135a
AL
15 ##################################################################### */
16 /*}}}*/
17#ifndef PKGLIB_CACHEFILE_H
18#define PKGLIB_CACHEFILE_H
19
2d11135a
AL
20
21#include <apt-pkg/depcache.h>
89b70b5a
MV
22#include <apt-pkg/acquire.h>
23#include <apt-pkg/sourcelist.h>
2d11135a 24
b2e465d6 25class pkgPolicy;
2d11135a
AL
26class pkgCacheFile
27{
28 protected:
29
30 MMap *Map;
b2e465d6
AL
31 pkgCache *Cache;
32 pkgDepCache *DCache;
2e5f4e45
DK
33 pkgPolicy *Policy;
34
2d11135a 35 public:
b2e465d6 36
2d11135a 37 // We look pretty much exactly like a pointer to a dep cache
b2e465d6
AL
38 inline operator pkgCache &() {return *Cache;};
39 inline operator pkgCache *() {return Cache;};
40 inline operator pkgDepCache &() {return *DCache;};
41 inline operator pkgDepCache *() {return DCache;};
42 inline pkgDepCache *operator ->() {return DCache;};
43 inline pkgDepCache &operator *() {return *DCache;};
44 inline pkgDepCache::StateCache &operator [](pkgCache::PkgIterator const &I) {return (*DCache)[I];};
45 inline unsigned char &operator [](pkgCache::DepIterator const &I) {return (*DCache)[I];};
099a4759 46
2e5f4e45
DK
47 bool BuildCaches(OpProgress *Progress = NULL,bool WithLock = true);
48 __deprecated bool BuildCaches(OpProgress &Progress,bool const &WithLock = true) { return BuildCaches(&Progress, WithLock); };
49 bool BuildPolicy(OpProgress *Progress = NULL);
50 bool BuildDepCache(OpProgress *Progress = NULL);
51 bool Open(OpProgress *Progress = NULL, bool WithLock = true);
52 __deprecated bool Open(OpProgress &Progress,bool const &WithLock = true) { return Open(&Progress, WithLock); };
b2e465d6 53 void Close();
2d11135a
AL
54
55 pkgCacheFile();
2e5f4e45 56 virtual ~pkgCacheFile();
2d11135a
AL
57};
58
59#endif