Files
compute-runtime/shared/source/os_interface/os_interface.h
kamdiedrich e072275ae6 Reorganization directory structure [3/n]
Change-Id: If3dfa3f6007f8810a6a1ae1a4f0c7da38544648d
2020-02-23 23:48:28 +01:00

39 lines
823 B
C++

/*
* Copyright (C) 2017-2020 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#pragma once
#include <cstdint>
#include <memory>
#include <vector>
namespace NEO {
class HwDeviceId;
class OSInterface {
public:
class OSInterfaceImpl;
OSInterface();
virtual ~OSInterface();
OSInterface(const OSInterface &) = delete;
OSInterface &operator=(const OSInterface &) = delete;
OSInterfaceImpl *get() const {
return osInterfaceImpl;
};
static bool osEnabled64kbPages;
static bool osEnableLocalMemory;
static bool are64kbPagesEnabled();
uint32_t getDeviceHandle() const;
void setGmmInputArgs(void *args);
static std::vector<std::unique_ptr<HwDeviceId>> discoverDevices();
protected:
OSInterfaceImpl *osInterfaceImpl = nullptr;
};
} // namespace NEO