|
19 | 19 | namespace nbl::video
|
20 | 20 | {
|
21 | 21 |
|
22 |
| -class IOpenGLPhysicalDeviceBase |
| 22 | +class IOpenGLPhysicalDeviceBase : public IPhysicalDevice |
23 | 23 | {
|
24 | 24 | public:
|
25 | 25 | static inline constexpr uint32_t MaxQueues = 8u;
|
| 26 | + |
| 27 | + IOpenGLPhysicalDeviceBase(core::smart_refctd_ptr<system::ISystem>&& s, core::smart_refctd_ptr<asset::IGLSLCompiler>&& glslc) |
| 28 | + : IPhysicalDevice(std::move(s), std::move(glslc)) |
| 29 | + {} |
26 | 30 | };
|
27 | 31 |
|
28 | 32 | template <typename LogicalDeviceType>
|
29 |
| -class IOpenGL_PhysicalDeviceBase : public IPhysicalDevice, public IOpenGLPhysicalDeviceBase |
| 33 | +class IOpenGL_PhysicalDeviceBase : public IOpenGLPhysicalDeviceBase |
30 | 34 | {
|
31 | 35 | using function_table_t = typename LogicalDeviceType::FunctionTableType;
|
32 | 36 | static inline constexpr EGLint EGL_API_TYPE = function_table_t::EGL_API_TYPE;
|
@@ -167,7 +171,7 @@ class IOpenGL_PhysicalDeviceBase : public IPhysicalDevice, public IOpenGLPhysica
|
167 | 171 |
|
168 | 172 | public:
|
169 | 173 | IOpenGL_PhysicalDeviceBase(IAPIConnection* api, renderdoc_api_t* rdoc, core::smart_refctd_ptr<system::ISystem>&& s, egl::CEGL&& _egl, COpenGLDebugCallback&& _dbgCb, EGLConfig _config, EGLContext ctx, EGLint _major, EGLint _minor)
|
170 |
| - : IPhysicalDevice(std::move(s),core::make_smart_refctd_ptr<asset::IGLSLCompiler>(s.get())), m_api(api), m_rdoc_api(rdoc), m_egl(std::move(_egl)), m_dbgCb(std::move(_dbgCb)), m_config(_config), m_gl_major(_major), m_gl_minor(_minor) |
| 174 | + : IOpenGLPhysicalDeviceBase(std::move(s),core::make_smart_refctd_ptr<asset::IGLSLCompiler>(s.get())), m_api(api), m_rdoc_api(rdoc), m_egl(std::move(_egl)), m_dbgCb(std::move(_dbgCb)), m_config(_config), m_gl_major(_major), m_gl_minor(_minor) |
171 | 175 | {
|
172 | 176 | // OpenGL backend emulates presence of just one queue family with all capabilities (graphics, compute, transfer, ... what about sparse binding?)
|
173 | 177 | SQueueFamilyProperties qprops;
|
|
0 commit comments