summaryrefslogtreecommitdiff
path: root/apt-pkg/packagemanager.h
diff options
context:
space:
mode:
Diffstat (limited to 'apt-pkg/packagemanager.h')
-rw-r--r--apt-pkg/packagemanager.h24
1 files changed, 18 insertions, 6 deletions
diff --git a/apt-pkg/packagemanager.h b/apt-pkg/packagemanager.h
index 344ed9192..558132ceb 100644
--- a/apt-pkg/packagemanager.h
+++ b/apt-pkg/packagemanager.h
@@ -44,6 +44,11 @@ class pkgDepCache;
class pkgSourceList;
class pkgOrderList;
class pkgRecords;
+namespace APT {
+ namespace Progress {
+ class PackageManager;
+ };
+};
class pkgPackageManager : protected pkgCache::Namespace
@@ -79,13 +84,14 @@ class pkgPackageManager : protected pkgCache::Namespace
// Install helpers
bool ConfigureAll();
- bool SmartConfigure(PkgIterator Pkg, int const Depth);
+ bool SmartConfigure(PkgIterator Pkg, int const Depth) APT_MUSTCHECK;
//FIXME: merge on abi break
- bool SmartUnPack(PkgIterator Pkg);
- bool SmartUnPack(PkgIterator Pkg, bool const Immediate, int const Depth);
- bool SmartRemove(PkgIterator Pkg);
- bool EarlyRemove(PkgIterator Pkg);
-
+ bool SmartUnPack(PkgIterator Pkg) APT_MUSTCHECK;
+ bool SmartUnPack(PkgIterator Pkg, bool const Immediate, int const Depth) APT_MUSTCHECK;
+ bool SmartRemove(PkgIterator Pkg) APT_MUSTCHECK;
+ bool EarlyRemove(PkgIterator Pkg, DepIterator const * const Dep) APT_MUSTCHECK;
+ APT_DEPRECATED bool EarlyRemove(PkgIterator Pkg) APT_MUSTCHECK;
+
// The Actual installation implementation
virtual bool Install(PkgIterator /*Pkg*/,std::string /*File*/) {return false;};
virtual bool Configure(PkgIterator /*Pkg*/) {return false;};
@@ -139,6 +145,12 @@ class pkgPackageManager : protected pkgCache::Namespace
pkgPackageManager(pkgDepCache *Cache);
virtual ~pkgPackageManager();
+
+ private:
+ enum APT_HIDDEN SmartAction { UNPACK_IMMEDIATE, UNPACK, CONFIGURE };
+ APT_HIDDEN bool NonLoopingSmart(SmartAction const action, pkgCache::PkgIterator &Pkg,
+ pkgCache::PkgIterator DepPkg, int const Depth, bool const PkgLoop,
+ bool * const Bad, bool * const Changed) APT_MUSTCHECK;
};
#endif