30 #ifndef PKGLIB_ALGORITHMS_H
31 #define PKGLIB_ALGORITHMS_H
34 #include <apt-pkg/packagemanager.h>
35 #include <apt-pkg/depcache.h>
39 #include <apt-pkg/macros.h>
41 #ifndef APT_8_CLEANER_HEADERS
46 #ifndef APT_9_CLEANER_HEADERS
48 #include <apt-pkg/upgrade.h>
49 #include <apt-pkg/update.h>
64 return (*Cache)[Pkg].CandidateVerIter(*Cache);
77 virtual bool Install(
PkgIterator Pkg,std::string File);
83 void Describe(
PkgIterator iPkg,std::ostream &out,
bool Current,
bool Candidate);
105 enum Flags {Protected = (1 << 0), PreInstalled = (1 << 1),
106 Upgradable = (1 << 2), ReInstateTried = (1 << 3),
107 ToRemove = (1 << 4)};
109 unsigned char *Flags;
114 static int ScoreSort(
const void *a,
const void *b);
125 bool ResolveInternal(
bool const BrokenFix =
false);
126 bool ResolveByKeepInternal();
133 inline void Protect(
pkgCache::PkgIterator Pkg) {Flags[Pkg->ID] |= Protected; Cache.MarkProtected(Pkg);};
138 bool Resolve(
bool BrokenFix =
false);
141 bool ResolveByKeep();
143 __deprecated
void InstallProtect();
Definition: cacheiterators.h:136
Definition: algorithms.h:53
Definition: cacheiterators.h:315
Represents an active action group.
Definition: depcache.h:156
information for a single version of a package
Definition: pkgcache.h:501
Definition: packagemanager.h:47
Definition: pkgcache.h:86
contains information for a single unique package
Definition: pkgcache.h:361
Definition: cacheiterators.h:264
Definition: depcache.h:264
Definition: algorithms.h:91
Definition: cacheiterators.h:185
Definition: depcache.h:56
Definition: algorithms.h:57