4 #ifndef vtkEGLRenderWindowInternals_h
5 #define vtkEGLRenderWindowInternals_h
10 #include "vtkglad/include/glad/egl.h"
12 VTK_ABI_NAMESPACE_BEGIN
25 [[nodiscard]] EGLDisplay
GetDisplay()
const {
return this->Display; }
30 [[nodiscard]] EGLDisplay
GetSurface()
const {
return this->Surface; }
36 [[nodiscard]] EGLContext
GetContext()
const {
return this->Context; }
37 void SetContext(EGLContext context) { this->Context = context; }
44 [[nodiscard]] EGLNativeWindowType
GetWindow()
const {
return this->Window; }
45 void SetWindow(EGLNativeWindowType window) { this->Window = window; }
56 [[nodiscard]]
int GetNumberOfDevices();
62 [[nodiscard]]
bool SetDeviceAsDisplay(
int deviceIndex);
73 void ConfigureWindow(
int width,
int height);
84 void SetUseOnscreenRendering(
bool useOnscreenRendering);
89 void GetSizeFromSurface(
int*
size);
94 void ReleaseCurrent();
106 EGLNativeWindowType Window;
111 int DeviceIndex = -1;
112 bool UseOnscreenRendering =
false;
114 std::unique_ptr<vtkEGLConfig> Config;
117 VTK_ABI_NAMESPACE_END
void SetDeviceIndex(int deviceIndex)
Setter used to store the device expected by the user.
EGLContext GetContext() const
Get/Set the EGLContext.
EGLDisplay GetDisplay() const
Return the EGLDisplay.
Internal class used to store and control EGL state.
void SetWindow(EGLNativeWindowType window)
Get/Set the EGLWindow.
void SetContext(EGLContext context)
Get/Set the EGLContext.
EGLDisplay GetSurface() const
Return the EGLSurface.
EGLNativeWindowType GetWindow() const
Get/Set the EGLWindow.