#ifndef PKGLIB_POLICY_H
#define PKGLIB_POLICY_H
-#ifdef __GNUG__
-#pragma interface "apt-pkg/policy.h"
-#endif
#include <apt-pkg/depcache.h>
#include <apt-pkg/versionmatch.h>
class pkgPolicy : public pkgDepCache::Policy
{
+ protected:
+
struct Pin
{
pkgVersionMatch::MatchType Type;
string Pkg;
};
- protected:
-
Pin *Pins;
signed short *PFPriority;
vector<Pin> Defaults;
inline signed short GetPriority(pkgCache::PkgFileIterator const &File)
{return PFPriority[File->ID];};
signed short GetPriority(pkgCache::PkgIterator const &Pkg);
- pkgCache::VerIterator GetMatch(pkgCache::PkgIterator Pkg);
+ pkgCache::VerIterator GetMatch(pkgCache::PkgIterator const &Pkg);
// Things for the cache interface.
- virtual pkgCache::VerIterator GetCandidateVer(pkgCache::PkgIterator Pkg);
- virtual bool IsImportantDep(pkgCache::DepIterator Dep) {return pkgDepCache::Policy::IsImportantDep(Dep);};
+ virtual pkgCache::VerIterator GetCandidateVer(pkgCache::PkgIterator const &Pkg);
+ virtual bool IsImportantDep(pkgCache::DepIterator const &Dep) {return pkgDepCache::Policy::IsImportantDep(Dep);};
bool InitDefaults();
pkgPolicy(pkgCache *Owner);
};
bool ReadPinFile(pkgPolicy &Plcy,string File = "");
+bool ReadPinDir(pkgPolicy &Plcy,string Dir = "");
#endif