2020-03-06 18:09:57 +08:00
|
|
|
/*
|
2022-07-02 18:23:53 +08:00
|
|
|
* Copyright (C) 2020-2022 Intel Corporation
|
2020-03-06 18:09:57 +08:00
|
|
|
*
|
|
|
|
* SPDX-License-Identifier: MIT
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#pragma once
|
2020-07-29 17:45:54 +08:00
|
|
|
#include <level_zero/zes_api.h>
|
2022-07-02 18:23:53 +08:00
|
|
|
|
|
|
|
#include <vector>
|
|
|
|
|
2020-03-06 18:09:57 +08:00
|
|
|
namespace L0 {
|
|
|
|
|
2020-07-03 22:35:35 +08:00
|
|
|
struct SysmanDeviceImp;
|
2020-03-06 18:09:57 +08:00
|
|
|
|
|
|
|
struct OsSysman {
|
|
|
|
virtual ~OsSysman(){};
|
|
|
|
|
|
|
|
virtual ze_result_t init() = 0;
|
2020-07-03 22:35:35 +08:00
|
|
|
static OsSysman *create(SysmanDeviceImp *pSysmanImp);
|
2022-07-02 18:23:53 +08:00
|
|
|
virtual std::vector<ze_device_handle_t> &getDeviceHandles() = 0;
|
2022-07-18 03:12:13 +08:00
|
|
|
virtual ze_device_handle_t getCoreDeviceHandle() = 0;
|
2020-03-06 18:09:57 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace L0
|