summaryrefslogtreecommitdiff
path: root/apt-private/private-cachefile.h
diff options
context:
space:
mode:
authorMichael Vogt <mvo@debian.org>2013-08-12 23:24:08 +0200
committerMichael Vogt <mvo@debian.org>2013-08-12 23:24:08 +0200
commitb917917067e757c4479a344a263ef7cf43c00866 (patch)
tree2894b0e1260ed91f2bd205e2b2b3d25eed79b3d2 /apt-private/private-cachefile.h
parent713a2de01cc1a0b8dcd71a4137f8a099d22783b7 (diff)
squash merge of the feature/apt-binary branch without the changes from experimental
Diffstat (limited to 'apt-private/private-cachefile.h')
-rw-r--r--apt-private/private-cachefile.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/apt-private/private-cachefile.h b/apt-private/private-cachefile.h
new file mode 100644
index 000000000..f24d93020
--- /dev/null
+++ b/apt-private/private-cachefile.h
@@ -0,0 +1,51 @@
+#ifndef APT_PRIVATE_CACHEFILE_H
+#define APT_PRIVATE_CACHEFILE_H
+
+#include <apt-pkg/cachefile.h>
+#include <apt-pkg/progress.h>
+
+
+// class CacheFile - Cover class for some dependency cache functions /*{{{*/
+// ---------------------------------------------------------------------
+/* */
+class CacheFile : public pkgCacheFile
+{
+ static pkgCache *SortCache;
+ static int NameComp(const void *a,const void *b);
+
+ public:
+ pkgCache::Package **List;
+
+ void Sort();
+ bool CheckDeps(bool AllowBroken = false);
+ bool BuildCaches(bool WithLock = true)
+ {
+ OpTextProgress Prog(*_config);
+ if (pkgCacheFile::BuildCaches(&Prog,WithLock) == false)
+ return false;
+ return true;
+ }
+ bool Open(bool WithLock = true)
+ {
+ OpTextProgress Prog(*_config);
+ if (pkgCacheFile::Open(&Prog,WithLock) == false)
+ return false;
+ Sort();
+
+ return true;
+ };
+ bool OpenForInstall()
+ {
+ if (_config->FindB("APT::Get::Print-URIs") == true)
+ return Open(false);
+ else
+ return Open(true);
+ }
+ CacheFile() : List(0) {};
+ ~CacheFile() {
+ delete[] List;
+ }
+};
+ /*}}}*/
+
+#endif