RHI: Internalize OpenGL-specific methods in OpenGLDevice
- Remove GetTextureUnitAllocator/GetUniformBufferManager from public interface - Remove SwapBuffers from public interface (friend OpenGLSwapChain can still access) - Add MakeContextCurrent() and GetNativeContext() public methods - Update integration tests to use MakeContextCurrent() instead of wglMakeCurrent - Update RenderDoc calls to use GetNativeContext() instead of GetGLContext() - Remove Device_SwapBuffers_NoErrors test (SwapBuffers no longer public) - Mark Priority 7 as completed in RHI_Design_Issues.md
This commit is contained in:
@@ -29,14 +29,10 @@ public:
|
||||
void Shutdown() override;
|
||||
|
||||
bool InitializeWithExistingWindow(HWND hwnd);
|
||||
HDC GetPresentationDC() const { return m_hdc; }
|
||||
HGLRC GetGLContext() const { return m_hglrc; }
|
||||
const RHIDeviceInfo& GetDeviceInfoImpl() const { return m_deviceInfo; }
|
||||
|
||||
OpenGLTextureUnitAllocator* GetTextureUnitAllocator() { return m_textureUnitAllocator.get(); }
|
||||
OpenGLUniformBufferManager* GetUniformBufferManager() { return m_uniformBufferManager.get(); }
|
||||
|
||||
void SwapBuffers();
|
||||
bool MakeContextCurrent();
|
||||
void* GetNativeContext() const { return m_hglrc; }
|
||||
|
||||
RHIBuffer* CreateBuffer(const BufferDesc& desc) override;
|
||||
RHITexture* CreateTexture(const TextureDesc& desc) override;
|
||||
@@ -66,6 +62,11 @@ public:
|
||||
private:
|
||||
friend class OpenGLSwapChain;
|
||||
|
||||
HDC GetPresentationDC() const { return m_hdc; }
|
||||
OpenGLTextureUnitAllocator* GetTextureUnitAllocator() { return m_textureUnitAllocator.get(); }
|
||||
OpenGLUniformBufferManager* GetUniformBufferManager() { return m_uniformBufferManager.get(); }
|
||||
void SwapBuffers();
|
||||
|
||||
HWND m_hwnd = nullptr;
|
||||
HDC m_hdc = nullptr;
|
||||
HGLRC m_hglrc = nullptr;
|
||||
|
||||
Reference in New Issue
Block a user