mirror of https://github.com/opencv/opencv.git
Open Source Computer Vision Library
https://opencv.org/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
1.2 KiB
34 lines
1.2 KiB
13 years ago
|
#ifndef __COMMON_PACKAGE_MANAGER_H__
|
||
|
#define __COMMON_PACKAGE_MANAGER_H__
|
||
|
|
||
|
#include "IPackageManager.h"
|
||
|
#include "PackageInfo.h"
|
||
|
#include <set>
|
||
|
#include <vector>
|
||
|
#include <string>
|
||
|
|
||
|
class CommonPackageManager: public IPackageManager
|
||
|
{
|
||
|
public:
|
||
|
std::set<std::string> GetInstalledVersions();
|
||
|
bool CheckVersionInstalled(const std::string& version, int platform, int cpu_id);
|
||
|
bool InstallVersion(const std::string& version, int platform, int cpu_id);
|
||
|
std::string GetPackagePathByVersion(const std::string& version, int platform, int cpu_id);
|
||
|
virtual ~CommonPackageManager();
|
||
|
|
||
|
protected:
|
||
|
static std::vector<std::pair<int, int> > ArmRating;
|
||
|
static std::vector<std::pair<int, int> > IntelRating;
|
||
|
|
||
|
static std::vector<std::pair<int, int> > InitArmRating();
|
||
|
static std::vector<std::pair<int, int> > InitIntelRating();
|
||
|
|
||
|
bool IsVersionCompatible(const std::string& target_version, const std::string& package_version);
|
||
|
int GetHardwareRating(int platform, int cpu_id, const std::vector<std::pair<int, int> >& group);
|
||
|
|
||
|
virtual bool InstallPackage(const PackageInfo& package) = 0;
|
||
|
virtual std::vector<PackageInfo> GetInstalledPackages() = 0;
|
||
|
};
|
||
|
|
||
|
|
||
|
#endif
|