mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-07-14 17:16:01 +00:00
AdapterBase will become a (thin) wrapper class in an upcoming patch, allowing a single PhysicalDeviceBase to be wrapped in multiple AdapterBases, each with different toggles and flags. For now, alias AdapterBase to PhysicalDeviceBase. Design doc: https://docs.google.com/document/d/1Ag3UAD6D1OVt9-MwKltzLefVhwKRdX0RqML2etrYVS4/edit Change-Id: Ie77e99508be5285b651aa24ccb412bc9ff8b0111 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/130300 Reviewed-by: Austin Eng <enga@chromium.org> Kokoro: Kokoro <noreply+kokoro@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
48 lines
1.3 KiB
C++
48 lines
1.3 KiB
C++
// Copyright 2023 The Dawn Authors
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
#ifndef SRC_DAWN_NATIVE_D3D_ADAPTERD3D_H_
|
|
#define SRC_DAWN_NATIVE_D3D_ADAPTERD3D_H_
|
|
|
|
#include "dawn/native/PhysicalDevice.h"
|
|
|
|
#include "dawn/native/d3d/d3d_platform.h"
|
|
|
|
namespace dawn::native::d3d {
|
|
|
|
class Backend;
|
|
|
|
class Adapter : public PhysicalDeviceBase {
|
|
public:
|
|
Adapter(Backend* backend,
|
|
ComPtr<IDXGIAdapter3> hardwareAdapter,
|
|
wgpu::BackendType backendType,
|
|
const TogglesState& adapterToggles);
|
|
~Adapter() override;
|
|
|
|
IDXGIAdapter3* GetHardwareAdapter() const;
|
|
Backend* GetBackend() const;
|
|
|
|
protected:
|
|
MaybeError InitializeImpl() override;
|
|
|
|
private:
|
|
ComPtr<IDXGIAdapter3> mHardwareAdapter;
|
|
Backend* mBackend;
|
|
};
|
|
|
|
} // namespace dawn::native::d3d
|
|
|
|
#endif // SRC_DAWN_NATIVE_D3D_ADAPTERD3D_H_
|