// -*- mode: cpp; mode: fold -*-
// Description /*{{{*/
-// $Id: debsystem.h,v 1.2 2001/02/20 07:03:17 jgg Exp $
+// $Id: debsystem.h,v 1.4 2003/01/11 07:16:33 jgg Exp $
/* ######################################################################
System - Debian version of the System Class
#ifndef PKGLIB_DEBSYSTEM_H
#define PKGLIB_DEBSYSTEM_H
-#ifdef __GNUG__
-#pragma interface "apt-pkg/debsystem.h"
+#include <apt-pkg/pkgsystem.h>
+#include <apt-pkg/pkgcache.h>
+#include <apt-pkg/cacheiterators.h>
+
+#include <vector>
+class Configuration;
+class pkgIndexFile;
+class pkgPackageManager;
+class debSystemPrivate;
+class pkgDepCache;
+
+#ifndef APT_10_CLEANER_HEADERS
+class debStatusIndex;
#endif
-#include <apt-pkg/pkgsystem.h>
-
class debSystem : public pkgSystem
{
- // For locking support
- int LockFD;
- unsigned LockCount;
+ // private d-pointer
+ debSystemPrivate *d;
bool CheckUpdates();
-
+
public:
virtual bool Lock();
virtual bool Initialize(Configuration &Cnf);
virtual bool ArchiveSupported(const char *Type);
virtual signed Score(Configuration const &Cnf);
- virtual bool AddStatusFiles(vector<pkgIndexFile *> &List);
+ virtual bool AddStatusFiles(std::vector<pkgIndexFile *> &List);
+ virtual bool FindIndex(pkgCache::PkgFileIterator File,
+ pkgIndexFile *&Found) const;
debSystem();
+ virtual ~debSystem();
};
extern debSystem debSys;