1 // 2 // Copyright 2024 The ANGLE Project Authors. All rights reserved. 3 // Use of this source code is governed by a BSD-style license that can be 4 // found in the LICENSE file. 5 // 6 // DeviceWgpu.h: 7 // Defines the class interface for DeviceWgpu, implementing DeviceImpl. 8 // 9 10 #ifndef LIBANGLE_RENDERER_WGPU_DEVICEWGPU_H_ 11 #define LIBANGLE_RENDERER_WGPU_DEVICEWGPU_H_ 12 13 #include "libANGLE/renderer/DeviceImpl.h" 14 #include "libANGLE/renderer/wgpu/wgpu_helpers.h" 15 16 namespace rx 17 { 18 19 class DeviceWgpu : public DeviceImpl 20 { 21 public: 22 DeviceWgpu(); 23 ~DeviceWgpu() override; 24 25 egl::Error initialize() override; 26 egl::Error getAttribute(const egl::Display *display, 27 EGLint attribute, 28 void **outValue) override; 29 void generateExtensions(egl::DeviceExtensions *outExtensions) const override; 30 }; 31 32 } // namespace rx 33 34 #endif // LIBANGLE_RENDERER_WGPU_DEVICEWGPU_H_ 35