Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef CUPT_SYSTEM_RESOLVERS_NATIVE
00019 #define CUPT_SYSTEM_RESOLVERS_NATIVE
00020
00022
00023 #include <cupt/system/resolver.hpp>
00024 #include <cupt/cache/relation.hpp>
00025
00026 namespace cupt {
00027
00028 namespace internal {
00029
00030 class NativeResolverImpl;
00031
00032 }
00033
00034 namespace system {
00035
00037 class CUPT_API NativeResolver: public Resolver
00038 {
00039 internal::NativeResolverImpl* __impl;
00040
00041 public:
00043 NativeResolver(const shared_ptr< const Config >&, const shared_ptr< const Cache >&);
00044
00045 void installVersion(const shared_ptr< const BinaryVersion >&);
00046 void satisfyRelationExpression(const RelationExpression&);
00047 void unsatisfyRelationExpression(const RelationExpression&);
00048 void removePackage(const string& packageName);
00049 void upgrade();
00050
00051 bool resolve(Resolver::CallbackType);
00052
00053 ~NativeResolver();
00054 };
00055
00056 }
00057 }
00058
00059 #endif
00060