Etterna 0.74.4
Loading...
Searching...
No Matches
LowLevelWindow_X11.h
1/* LowLevelWindow_X11 - OpenGL GLX window driver. */
2
3#ifndef LOW_LEVEL_WINDOW_X11_H
4#define LOW_LEVEL_WINDOW_X11_H
5
6#include "RageUtil/Graphics/RageDisplay.h" // VideoModeParams
7#include "LowLevelWindow.h"
8
10{
11 public:
14
15 void* GetProcAddress(const std::string& s);
16 std::string TryVideoMode(const VideoModeParams& p, bool& bNewDeviceOut);
17 void LogDebugInformation() const;
18 bool IsSoftwareRenderer(std::string& sError);
19 void SwapBuffers();
20 void Update();
21
22 const ActualVideoModeParams* GetActualVideoModeParams() const
23 {
24 return &CurrentParams;
25 }
26
27 void GetDisplaySpecs(DisplaySpecs& out) const;
28
29 bool SupportsRenderToTexture() const;
30 RenderTarget* CreateRenderTarget();
31
32 bool SupportsFullscreenBorderlessWindow() const;
33
34 bool SupportsThreadedRendering();
35 void BeginConcurrentRenderingMainThread();
36 void EndConcurrentRenderingMainThread();
37 void BeginConcurrentRendering();
38 void EndConcurrentRendering();
39
40 private:
41 void RestoreOutputConfig();
42
43 bool m_bWasWindowed;
44 ActualVideoModeParams CurrentParams;
45};
46
47#ifdef ARCH_LOW_LEVEL_WINDOW
48#error "More than one LowLevelWindow selected!"
49#endif
50#define ARCH_LOW_LEVEL_WINDOW LowLevelWindow_X11
51
52#endif
The actual VideoModeParams determined by the LowLevelWindow implementation. Contains all the attribut...
Definition RageDisplay.h:207
Definition LowLevelWindow_X11.h:10
Handle low-level operations that OGL 1.x doesn't give us.
Definition LowLevelWindow.h:14
Definition RageDisplay_D3D.h:113
The parameters used for the present Video Mode.
Definition RageDisplay.h:101