]> git.saurik.com Git - apt.git/blame - apt-pkg/edsp/edspsystem.h
edsp: optionally store a compressed copy of the last scenario
[apt.git] / apt-pkg / edsp / edspsystem.h
CommitLineData
6d38011b
DK
1// -*- mode: cpp; mode: fold -*-
2// Description /*{{{*/
3// $Id: debsystem.h,v 1.4 2003/01/11 07:16:33 jgg Exp $
4/* ######################################################################
5
6 System - Debian version of the System Class
7
8 ##################################################################### */
9 /*}}}*/
10#ifndef PKGLIB_EDSPSYSTEM_H
11#define PKGLIB_EDSPSYSTEM_H
12
13#include <apt-pkg/pkgsystem.h>
453b82a3
DK
14#include <apt-pkg/cacheiterators.h>
15#include <apt-pkg/pkgcache.h>
6d38011b 16
d59671c9 17#include <memory>
453b82a3
DK
18#include <vector>
19
3b302846
DK
20#include <apt-pkg/macros.h>
21
453b82a3
DK
22class Configuration;
23class pkgDepCache;
24class pkgIndexFile;
25class pkgPackageManager;
453b82a3 26
d59671c9 27class APT_HIDDEN edspLikeSystem : public pkgSystem
6d38011b 28{
d59671c9
DK
29protected:
30 std::unique_ptr<pkgIndexFile> StatusFile;
6d38011b 31
d59671c9 32public:
3b302846
DK
33 virtual bool Lock() APT_OVERRIDE APT_CONST;
34 virtual bool UnLock(bool NoErrors = false) APT_OVERRIDE APT_CONST;
35 virtual pkgPackageManager *CreatePM(pkgDepCache *Cache) const APT_OVERRIDE APT_CONST;
36 virtual bool Initialize(Configuration &Cnf) APT_OVERRIDE;
37 virtual bool ArchiveSupported(const char *Type) APT_OVERRIDE APT_CONST;
38 virtual signed Score(Configuration const &Cnf) APT_OVERRIDE;
6d38011b 39 virtual bool FindIndex(pkgCache::PkgFileIterator File,
3b302846 40 pkgIndexFile *&Found) const APT_OVERRIDE;
6d38011b 41
d59671c9
DK
42 edspLikeSystem(char const * const Label);
43 virtual ~edspLikeSystem();
44};
45
46class APT_HIDDEN edspSystem : public edspLikeSystem
47{
48 std::string tempDir;
49 std::string tempStatesFile;
50 std::string tempPrefsFile;
51
52public:
53 virtual bool Initialize(Configuration &Cnf) APT_OVERRIDE;
54 virtual bool AddStatusFiles(std::vector<pkgIndexFile *> &List) APT_OVERRIDE;
55
6d38011b 56 edspSystem();
c8a4ce6c 57 virtual ~edspSystem();
6d38011b
DK
58};
59
6d38011b 60#endif