X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/f5b622ed48fdbe235d81b61b3edd8dbb84d9cc9c..3b4d8136e78b9f2a70431ece4c850861d90e8bb1:/apt-pkg/algorithms.h diff --git a/apt-pkg/algorithms.h b/apt-pkg/algorithms.h index 050934bad..37eacf1f8 100644 --- a/apt-pkg/algorithms.h +++ b/apt-pkg/algorithms.h @@ -33,11 +33,15 @@ #include #include -#include #include +#ifndef APT_8_CLEANER_HEADERS +#include using std::ostream; +#endif + +class pkgAcquireStatus; class pkgSimulate : public pkgPackageManager /*{{{*/ { @@ -63,13 +67,13 @@ class pkgSimulate : public pkgPackageManager /*{{{*/ pkgDepCache::ActionGroup group; // The Actuall installation implementation - virtual bool Install(PkgIterator Pkg,string File); + virtual bool Install(PkgIterator Pkg,std::string File); virtual bool Configure(PkgIterator Pkg); virtual bool Remove(PkgIterator Pkg,bool Purge); private: void ShortBreaks(); - void Describe(PkgIterator iPkg,ostream &out,bool Current,bool Candidate); + void Describe(PkgIterator iPkg,std::ostream &out,bool Current,bool Candidate); public: @@ -92,7 +96,7 @@ class pkgProblemResolver /*{{{*/ enum Flags {Protected = (1 << 0), PreInstalled = (1 << 1), Upgradable = (1 << 2), ReInstateTried = (1 << 3), ToRemove = (1 << 4)}; - signed short *Scores; + int *Scores; unsigned char *Flags; bool Debug; @@ -112,6 +116,9 @@ class pkgProblemResolver /*{{{*/ bool ResolveInternal(bool const BrokenFix = false); bool ResolveByKeepInternal(); + protected: + bool InstOrNewPolicyBroken(pkgCache::PkgIterator Pkg); + public: inline void Protect(pkgCache::PkgIterator Pkg) {Flags[Pkg->ID] |= Protected; Cache.MarkProtected(Pkg);};