-
-// class that can be subclassed by the client to bring in
-// certain own packages into the root set (if the client returns
-// True the package will be considered as part of the root set)
-class InRootSetFunc
-{
- public:
- virtual bool InRootSet(const pkgCache::PkgIterator &pkg) {return false;};
- virtual ~InRootSetFunc() {};
-};
-
-
-// Mark all reachable packages with "pkgDepCache::StateCache.Marked=1"
-// the root-set are all essential packages+everything that was not
-// installed automatically
-//
-// If InRootSetFunc is set, it will be called for each PkgIterator. This
-// is usefull for clients that have there own idea about the root-set
-//
-// Everything that is not reach can be removed
-bool pkgMarkUsed(pkgDepCache &Cache);
-bool pkgMarkUsed(pkgDepCache &Cache, InRootSetFunc &f);