mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-23 03:01:20 +08:00
Make platformImpl a vector
Related-To: NEO-4207 Change-Id: I85fa2d5a44160e1cf98321f9835a5173e59e479c Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:
committed by
sys_ocldev
parent
3aec3d41c2
commit
e77ed5f4fa
@@ -35,19 +35,24 @@
|
||||
|
||||
namespace NEO {
|
||||
|
||||
std::unique_ptr<Platform> platformImpl;
|
||||
std::vector<std::unique_ptr<Platform>> platformsImpl;
|
||||
|
||||
bool getDevices(size_t &numDevicesReturned, ExecutionEnvironment &executionEnvironment);
|
||||
|
||||
Platform *platform() { return platformImpl.get(); }
|
||||
Platform *platform() {
|
||||
if (platformsImpl.empty()) {
|
||||
return nullptr;
|
||||
}
|
||||
return platformsImpl[0].get();
|
||||
}
|
||||
|
||||
Platform *constructPlatform() {
|
||||
static std::mutex mutex;
|
||||
std::unique_lock<std::mutex> lock(mutex);
|
||||
if (!platformImpl) {
|
||||
platformImpl.reset(new Platform());
|
||||
if (platformsImpl.empty()) {
|
||||
platformsImpl.push_back(std::make_unique<Platform>());
|
||||
}
|
||||
return platformImpl.get();
|
||||
return platformsImpl[0].get();
|
||||
}
|
||||
|
||||
Platform::Platform() {
|
||||
|
||||
Reference in New Issue
Block a user