refactor: correct variable naming

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:
Mateusz Jablonski
2023-10-30 11:52:17 +00:00
committed by Compute-Runtime-Automation
parent f8ad191b16
commit 036d1e4814
30 changed files with 320 additions and 320 deletions

View File

@@ -116,12 +116,12 @@ std::vector<DXGI_FORMAT> &D3DSharingFunctions<D3D>::retrieveTextureFormats(cl_me
bool success;
std::tie(cached, success) = textureFormatCache.emplace(imageType, std::vector<DXGI_FORMAT>(0));
if (!success) {
return DXGINoFormats;
return dxgiNoFormats;
}
std::vector<DXGI_FORMAT> &cached_formats = cached->second;
std::vector<DXGI_FORMAT> &cachedFormats = cached->second;
std::vector<DXGI_FORMAT> planarFormats(0);
constexpr DXGI_FORMAT DXGIFormats[] = {
constexpr DXGI_FORMAT dxgiFormats[] = {
DXGI_FORMAT_R32G32B32A32_TYPELESS,
DXGI_FORMAT_R32G32B32A32_FLOAT,
DXGI_FORMAT_R32G32B32A32_UINT,
@@ -238,19 +238,19 @@ std::vector<DXGI_FORMAT> &D3DSharingFunctions<D3D>::retrieveTextureFormats(cl_me
DXGI_FORMAT_V208,
DXGI_FORMAT_V408,
DXGI_FORMAT_FORCE_UINT};
cached_formats.reserve(arrayCount(DXGIFormats));
for (auto DXGIFormat : DXGIFormats) {
cachedFormats.reserve(arrayCount(dxgiFormats));
for (auto dxgiFormat : dxgiFormats) {
UINT format = 0;
if (checkFormatSupport(DXGIFormat, &format)) {
if (checkFormatSupport(dxgiFormat, &format)) {
if (memObjectFormatSupport(imageType, format)) {
cached_formats.push_back(DXGIFormat);
if (D3DSharing<D3D>::isFormatWithPlane1(DXGIFormat)) {
planarFormats.push_back(DXGIFormat);
cachedFormats.push_back(dxgiFormat);
if (D3DSharing<D3D>::isFormatWithPlane1(dxgiFormat)) {
planarFormats.push_back(dxgiFormat);
}
}
}
}
cached_formats.shrink_to_fit();
cachedFormats.shrink_to_fit();
textureFormatPlane1Cache.emplace(imageType, planarFormats);
}

View File

@@ -31,7 +31,7 @@ void D3DSharingFunctions<D3DTypesHelper::D3D9>::fillCreateBufferDesc(D3DBufferDe
template <>
std::vector<DXGI_FORMAT> &D3DSharingFunctions<D3DTypesHelper::D3D9>::retrieveTextureFormats(cl_mem_object_type imageType, cl_uint plane) {
return DXGINoFormats;
return dxgiNoFormats;
}
template <>

View File

@@ -171,7 +171,7 @@ class D3DSharingFunctions : public SharingFunctions {
D3DDevice *d3dDevice = nullptr;
ID3D11DeviceContext *d3d11DeviceContext = nullptr;
std::vector<DXGI_FORMAT> DXGINoFormats;
std::vector<DXGI_FORMAT> dxgiNoFormats;
std::vector<std::pair<D3DResource *, cl_uint>> trackedResources;
std::map<cl_mem_object_type, std::vector<DXGI_FORMAT>> textureFormatCache;
std::map<cl_mem_object_type, std::vector<DXGI_FORMAT>> textureFormatPlane1Cache;

View File

@@ -228,11 +228,11 @@ const std::vector<D3DFORMAT> D3DSurface::D3DPlane2Formats =
cl_int D3DSurface::findImgFormat(D3DFORMAT d3dFormat, cl_image_format &imgFormat, cl_uint plane, ImagePlane &imagePlane) {
imagePlane = ImagePlane::NO_PLANE;
static const cl_image_format unknown_format = {0, 0};
static const cl_image_format unknownFormat = {0, 0};
auto element = D3DtoClFormatConversions.find(d3dFormat);
if (element == D3DtoClFormatConversions.end()) {
imgFormat = unknown_format;
imgFormat = unknownFormat;
return CL_INVALID_IMAGE_FORMAT_DESCRIPTOR;
}
@@ -250,7 +250,7 @@ cl_int D3DSurface::findImgFormat(D3DFORMAT d3dFormat, cl_image_format &imgFormat
imagePlane = ImagePlane::PLANE_UV;
return CL_SUCCESS;
default:
imgFormat = unknown_format;
imgFormat = unknownFormat;
return CL_INVALID_VALUE;
}
@@ -269,7 +269,7 @@ cl_int D3DSurface::findImgFormat(D3DFORMAT d3dFormat, cl_image_format &imgFormat
return CL_SUCCESS;
default:
imgFormat = unknown_format;
imgFormat = unknownFormat;
return CL_INVALID_VALUE;
}
}

View File

@@ -17,14 +17,14 @@ extern const char *openglDllName;
namespace NEO {
GLSharingFunctionsWindows::GLSharingFunctionsWindows(GLType glhdcType, GLContext glhglrcHandle, GLContext glhglrcHandleBkpCtx, GLDisplay glhdcHandle)
: GLHDCType(glhdcType), GLHGLRCHandle(glhglrcHandle), GLHGLRCHandleBkpCtx(glhglrcHandleBkpCtx), GLHDCHandle(glhdcHandle) {
: glHDCType(glhdcType), glHGLRCHandle(glhglrcHandle), glHGLRCHandleBkpCtx(glhglrcHandleBkpCtx), glHDCHandle(glhdcHandle) {
initGLFunctions();
updateOpenGLContext();
createBackupContext();
}
GLSharingFunctionsWindows::~GLSharingFunctionsWindows() {
if (pfnWglDeleteContext) {
pfnWglDeleteContext(GLHGLRCHandleBkpCtx);
pfnWglDeleteContext(glHGLRCHandleBkpCtx);
}
}
@@ -35,32 +35,32 @@ bool GLSharingFunctionsWindows::isGlSharingEnabled() {
void GLSharingFunctionsWindows::createBackupContext() {
if (pfnWglCreateContext) {
GLHGLRCHandleBkpCtx = pfnWglCreateContext(GLHDCHandle);
pfnWglShareLists(GLHGLRCHandle, GLHGLRCHandleBkpCtx);
glHGLRCHandleBkpCtx = pfnWglCreateContext(glHDCHandle);
pfnWglShareLists(glHGLRCHandle, glHGLRCHandleBkpCtx);
}
}
GLboolean GLSharingFunctionsWindows::setSharedOCLContextState() {
ContextInfo CtxInfo = {0};
GLboolean retVal = GLSetSharedOCLContextState(GLHDCHandle, GLHGLRCHandle, CL_TRUE, &CtxInfo);
ContextInfo ctxInfo = {0};
GLboolean retVal = glSetSharedOCLContextState(glHDCHandle, glHGLRCHandle, CL_TRUE, &ctxInfo);
if (retVal == GL_FALSE) {
return GL_FALSE;
}
GLContextHandle = CtxInfo.contextHandle;
GLDeviceHandle = CtxInfo.deviceHandle;
glContextHandle = ctxInfo.contextHandle;
glDeviceHandle = ctxInfo.deviceHandle;
return retVal;
}
bool GLSharingFunctionsWindows::isOpenGlExtensionSupported(const unsigned char *pExtensionString) {
bool LoadedNull = (glGetStringi == nullptr) || (glGetIntegerv == nullptr);
if (LoadedNull) {
bool loadedNull = (glGetStringi == nullptr) || (glGetIntegerv == nullptr);
if (loadedNull) {
return false;
}
cl_int NumberOfExtensions = 0;
glGetIntegerv(GL_NUM_EXTENSIONS, &NumberOfExtensions);
for (cl_int i = 0; i < NumberOfExtensions; i++) {
cl_int numberOfExtensions = 0;
glGetIntegerv(GL_NUM_EXTENSIONS, &numberOfExtensions);
for (cl_int i = 0; i < numberOfExtensions; i++) {
std::basic_string<unsigned char> pString = glGetStringi(GL_EXTENSIONS, i);
if (pString == pExtensionString) {
return true;
@@ -71,10 +71,10 @@ bool GLSharingFunctionsWindows::isOpenGlExtensionSupported(const unsigned char *
bool GLSharingFunctionsWindows::isOpenGlSharingSupported() {
std::basic_string<unsigned char> Vendor = glGetString(GL_VENDOR);
std::basic_string<unsigned char> vendor = glGetString(GL_VENDOR);
const unsigned char intelVendor[] = "Intel";
if ((Vendor.empty()) || (Vendor != intelVendor)) {
if ((vendor.empty()) || (vendor != intelVendor)) {
return false;
}
std::basic_string<unsigned char> Version = glGetString(GL_VERSION);
@@ -82,13 +82,13 @@ bool GLSharingFunctionsWindows::isOpenGlSharingSupported() {
return false;
}
bool IsOpenGLES = false;
bool isOpenGLES = false;
const unsigned char versionES[] = "OpenGL ES";
if (Version.find(versionES) != std::string::npos) {
IsOpenGLES = true;
isOpenGLES = true;
}
if (IsOpenGLES == true) {
if (isOpenGLES == true) {
const unsigned char versionES1[] = "OpenGL ES 1.";
if (Version.find(versionES1) != std::string::npos) {
const unsigned char supportGLOES[] = "GL_OES_framebuffer_object";
@@ -132,8 +132,8 @@ GLboolean GLSharingFunctionsWindows::initGLFunctions() {
if (glLibrary->isLoaded()) {
GlFunctionHelper wglLibrary(glLibrary.get(), "wglGetProcAddress");
GLGetCurrentContext = (*glLibrary)["wglGetCurrentContext"];
GLGetCurrentDisplay = (*glLibrary)["wglGetCurrentDC"];
glGetCurrentContext = (*glLibrary)["wglGetCurrentContext"];
glGetCurrentDisplay = (*glLibrary)["wglGetCurrentDC"];
glGetString = (*glLibrary)["glGetString"];
glGetIntegerv = (*glLibrary)["glGetIntegerv"];
pfnWglCreateContext = (*glLibrary)["wglCreateContext"];
@@ -141,16 +141,16 @@ GLboolean GLSharingFunctionsWindows::initGLFunctions() {
pfnWglShareLists = (*glLibrary)["wglShareLists"];
wglMakeCurrent = (*glLibrary)["wglMakeCurrent"];
GLSetSharedOCLContextState = wglLibrary["wglSetSharedOCLContextStateINTEL"];
GLAcquireSharedBuffer = wglLibrary["wglAcquireSharedBufferINTEL"];
GLReleaseSharedBuffer = wglLibrary["wglReleaseSharedBufferINTEL"];
GLAcquireSharedRenderBuffer = wglLibrary["wglAcquireSharedRenderBufferINTEL"];
GLReleaseSharedRenderBuffer = wglLibrary["wglReleaseSharedRenderBufferINTEL"];
GLAcquireSharedTexture = wglLibrary["wglAcquireSharedTextureINTEL"];
GLReleaseSharedTexture = wglLibrary["wglReleaseSharedTextureINTEL"];
GLRetainSync = wglLibrary["wglRetainSyncINTEL"];
GLReleaseSync = wglLibrary["wglReleaseSyncINTEL"];
GLGetSynciv = wglLibrary["wglGetSyncivINTEL"];
glSetSharedOCLContextState = wglLibrary["wglSetSharedOCLContextStateINTEL"];
glAcquireSharedBuffer = wglLibrary["wglAcquireSharedBufferINTEL"];
glReleaseSharedBuffer = wglLibrary["wglReleaseSharedBufferINTEL"];
glAcquireSharedRenderBuffer = wglLibrary["wglAcquireSharedRenderBufferINTEL"];
glReleaseSharedRenderBuffer = wglLibrary["wglReleaseSharedRenderBufferINTEL"];
glAcquireSharedTexture = wglLibrary["wglAcquireSharedTextureINTEL"];
glReleaseSharedTexture = wglLibrary["wglReleaseSharedTextureINTEL"];
glRetainSync = wglLibrary["wglRetainSyncINTEL"];
glReleaseSync = wglLibrary["wglReleaseSyncINTEL"];
glGetSynciv = wglLibrary["wglGetSyncivINTEL"];
glGetStringi = wglLibrary["glGetStringi"];
glGetLuid = wglLibrary["wglGetLuidINTEL"];
}

View File

@@ -52,8 +52,8 @@ class GLSharingFunctionsWindows : public GLSharingFunctions {
GLSharingFunctionsWindows(GLType glhdcType, GLContext glhglrcHandle, GLContext glhglrcHandleBkpCtx, GLDisplay glhdcHandle);
~GLSharingFunctionsWindows() override;
OS_HANDLE getGLDeviceHandle() const { return GLDeviceHandle; }
OS_HANDLE getGLContextHandle() const { return GLContextHandle; }
OS_HANDLE getGLDeviceHandle() const { return glDeviceHandle; }
OS_HANDLE getGLContextHandle() const { return glContextHandle; }
GLboolean initGLFunctions() override;
bool isOpenGlSharingSupported() override;
@@ -69,49 +69,49 @@ class GLSharingFunctionsWindows : public GLSharingFunctions {
// Gl functions
GLboolean acquireSharedBufferINTEL(GLvoid *pBufferInfo) {
return GLAcquireSharedBuffer(GLHDCHandle, GLHGLRCHandle, GLHGLRCHandleBkpCtx, pBufferInfo);
return glAcquireSharedBuffer(glHDCHandle, glHGLRCHandle, glHGLRCHandleBkpCtx, pBufferInfo);
}
GLboolean releaseSharedBufferINTEL(GLvoid *pBufferInfo) {
return GLReleaseSharedBuffer(GLHDCHandle, GLHGLRCHandle, GLHGLRCHandleBkpCtx, pBufferInfo);
return glReleaseSharedBuffer(glHDCHandle, glHGLRCHandle, glHGLRCHandleBkpCtx, pBufferInfo);
}
GLboolean acquireSharedRenderBuffer(GLvoid *pResourceInfo) {
return GLAcquireSharedRenderBuffer(GLHDCHandle, GLHGLRCHandle, GLHGLRCHandleBkpCtx, pResourceInfo);
return glAcquireSharedRenderBuffer(glHDCHandle, glHGLRCHandle, glHGLRCHandleBkpCtx, pResourceInfo);
}
GLboolean releaseSharedRenderBuffer(GLvoid *pResourceInfo) {
return GLReleaseSharedRenderBuffer(GLHDCHandle, GLHGLRCHandle, GLHGLRCHandleBkpCtx, pResourceInfo);
return glReleaseSharedRenderBuffer(glHDCHandle, glHGLRCHandle, glHGLRCHandleBkpCtx, pResourceInfo);
}
GLboolean acquireSharedTexture(GLvoid *pResourceInfo) {
return GLAcquireSharedTexture(GLHDCHandle, GLHGLRCHandle, GLHGLRCHandleBkpCtx, pResourceInfo);
return glAcquireSharedTexture(glHDCHandle, glHGLRCHandle, glHGLRCHandleBkpCtx, pResourceInfo);
}
GLboolean releaseSharedTexture(GLvoid *pResourceInfo) {
return GLReleaseSharedTexture(GLHDCHandle, GLHGLRCHandle, GLHGLRCHandleBkpCtx, pResourceInfo);
return glReleaseSharedTexture(glHDCHandle, glHGLRCHandle, glHGLRCHandleBkpCtx, pResourceInfo);
}
GLboolean retainSync(GLvoid *pSyncInfo) {
return GLRetainSync(GLHDCHandle, GLHGLRCHandle, GLHGLRCHandleBkpCtx, pSyncInfo);
return glRetainSync(glHDCHandle, glHGLRCHandle, glHGLRCHandleBkpCtx, pSyncInfo);
}
GLboolean releaseSync(GLvoid *pSync) {
return GLReleaseSync(GLHDCHandle, GLHGLRCHandle, GLHGLRCHandleBkpCtx, pSync);
return glReleaseSync(glHDCHandle, glHGLRCHandle, glHGLRCHandleBkpCtx, pSync);
}
void getSynciv(GLvoid *pSync, GLenum pname, GLint *value) {
return GLGetSynciv(pSync, pname, value);
return glGetSynciv(pSync, pname, value);
}
GLContext getCurrentContext() {
return GLGetCurrentContext();
return glGetCurrentContext();
}
GLDisplay getCurrentDisplay() {
return GLGetCurrentDisplay();
return glGetCurrentDisplay();
}
GLboolean makeCurrent(GLContext contextHandle, GLDisplay displayHandle = 0) {
if (displayHandle == 0) {
displayHandle = GLHDCHandle;
displayHandle = glHDCHandle;
}
return this->wglMakeCurrent(displayHandle, contextHandle);
}
GLContext getBackupContextHandle() {
return GLHGLRCHandleBkpCtx;
return glHGLRCHandleBkpCtx;
}
GLContext getContextHandle() {
return GLHGLRCHandle;
return glHGLRCHandle;
}
bool glArbSyncObjectSetup(OSInterface &osInterface, CL_GL_SYNC_INFO &glSyncInfo) {
return pfnGlArbSyncObjectSetup(*this, osInterface, glSyncInfo);
@@ -134,7 +134,7 @@ class GLSharingFunctionsWindows : public GLSharingFunctions {
protected:
void updateOpenGLContext() {
if (GLSetSharedOCLContextState) {
if (glSetSharedOCLContextState) {
setSharedOCLContextState();
}
}
@@ -143,24 +143,24 @@ class GLSharingFunctionsWindows : public GLSharingFunctions {
bool isOpenGlExtensionSupported(const unsigned char *pExtentionString);
// Handles
GLType GLHDCType = 0;
GLContext GLHGLRCHandle = 0;
GLContext GLHGLRCHandleBkpCtx = 0;
GLDisplay GLHDCHandle = 0;
OS_HANDLE GLDeviceHandle = 0;
OS_HANDLE GLContextHandle = 0;
GLType glHDCType = 0;
GLContext glHGLRCHandle = 0;
GLContext glHGLRCHandleBkpCtx = 0;
GLDisplay glHDCHandle = 0;
OS_HANDLE glDeviceHandle = 0;
OS_HANDLE glContextHandle = 0;
// GL functions
std::unique_ptr<OsLibrary> glLibrary;
PFNOGLSetSharedOCLContextStateINTEL GLSetSharedOCLContextState = nullptr;
PFNOGLAcquireSharedBufferINTEL GLAcquireSharedBuffer = nullptr;
PFNOGLReleaseSharedBufferINTEL GLReleaseSharedBuffer = nullptr;
PFNOGLAcquireSharedRenderBufferINTEL GLAcquireSharedRenderBuffer = nullptr;
PFNOGLReleaseSharedRenderBufferINTEL GLReleaseSharedRenderBuffer = nullptr;
PFNOGLAcquireSharedTextureINTEL GLAcquireSharedTexture = nullptr;
PFNOGLReleaseSharedTextureINTEL GLReleaseSharedTexture = nullptr;
PFNOGLGetCurrentContext GLGetCurrentContext = nullptr;
PFNOGLGetCurrentDisplay GLGetCurrentDisplay = nullptr;
PFNOGLSetSharedOCLContextStateINTEL glSetSharedOCLContextState = nullptr;
PFNOGLAcquireSharedBufferINTEL glAcquireSharedBuffer = nullptr;
PFNOGLReleaseSharedBufferINTEL glReleaseSharedBuffer = nullptr;
PFNOGLAcquireSharedRenderBufferINTEL glAcquireSharedRenderBuffer = nullptr;
PFNOGLReleaseSharedRenderBufferINTEL glReleaseSharedRenderBuffer = nullptr;
PFNOGLAcquireSharedTextureINTEL glAcquireSharedTexture = nullptr;
PFNOGLReleaseSharedTextureINTEL glReleaseSharedTexture = nullptr;
PFNOGLGetCurrentContext glGetCurrentContext = nullptr;
PFNOGLGetCurrentDisplay glGetCurrentDisplay = nullptr;
PFNglGetString glGetString = nullptr;
PFNglGetStringi glGetStringi = nullptr;
PFNglGetIntegerv glGetIntegerv = nullptr;
@@ -168,9 +168,9 @@ class GLSharingFunctionsWindows : public GLSharingFunctions {
PFNwglMakeCurrent wglMakeCurrent = nullptr;
PFNwglShareLists pfnWglShareLists = nullptr;
PFNwglDeleteContext pfnWglDeleteContext = nullptr;
PFNOGLRetainSyncINTEL GLRetainSync = nullptr;
PFNOGLReleaseSyncINTEL GLReleaseSync = nullptr;
PFNOGLGetSyncivINTEL GLGetSynciv = nullptr;
PFNOGLRetainSyncINTEL glRetainSync = nullptr;
PFNOGLReleaseSyncINTEL glReleaseSync = nullptr;
PFNOGLGetSyncivINTEL glGetSynciv = nullptr;
PFNglArbSyncObjectSetup pfnGlArbSyncObjectSetup = nullptr;
PFNglArbSyncObjectCleanup pfnGlArbSyncObjectCleanup = nullptr;
PFNglArbSyncObjectSignal pfnGlArbSyncObjectSignal = nullptr;

View File

@@ -95,12 +95,12 @@ Image *GlTexture::createSharedGlTexture(Context *context, cl_mem_flags flags, cl
}
if (imgDesc.image_array_size > 1 || imgDesc.image_depth > 1) {
GMM_REQ_OFFSET_INFO GMMReqInfo = {};
GMMReqInfo.ArrayIndex = imgDesc.image_array_size > 1 ? 1 : 0;
GMMReqInfo.Slice = imgDesc.image_depth > 1 ? 1 : 0;
GMMReqInfo.ReqLock = 1;
gmm->gmmResourceInfo->getOffset(GMMReqInfo);
imgDesc.image_slice_pitch = GMMReqInfo.Lock.Offset;
GMM_REQ_OFFSET_INFO gmmReqInfo = {};
gmmReqInfo.ArrayIndex = imgDesc.image_array_size > 1 ? 1 : 0;
gmmReqInfo.Slice = imgDesc.image_depth > 1 ? 1 : 0;
gmmReqInfo.ReqLock = 1;
gmm->gmmResourceInfo->getOffset(gmmReqInfo);
imgDesc.image_slice_pitch = gmmReqInfo.Lock.Offset;
} else {
imgDesc.image_slice_pitch = alloc->getUnderlyingBufferSize();
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2020-2021 Intel Corporation
* Copyright (C) 2020-2023 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
@@ -27,19 +27,19 @@ bool GlSharingContextBuilder::processProperties(cl_context_properties &propertyT
switch (propertyType) {
case CL_GL_CONTEXT_KHR:
contextData->GLHGLRCHandle = (GLContext)propertyValue;
contextData->glHGLRCHandle = (GLContext)propertyValue;
return true;
case CL_WGL_HDC_KHR:
contextData->GLHDCType = (GLType)CL_WGL_HDC_KHR;
contextData->GLHDCHandle = (GLDisplay)propertyValue;
contextData->glHDCHandle = (GLDisplay)propertyValue;
return true;
case CL_GLX_DISPLAY_KHR:
contextData->GLHDCType = (GLType)CL_GLX_DISPLAY_KHR;
contextData->GLHDCHandle = (GLDisplay)propertyValue;
contextData->glHDCHandle = (GLDisplay)propertyValue;
return true;
case CL_EGL_DISPLAY_KHR:
contextData->GLHDCType = (GLType)CL_EGL_DISPLAY_KHR;
contextData->GLHDCHandle = (GLDisplay)propertyValue;
contextData->glHDCHandle = (GLDisplay)propertyValue;
return true;
}
return false;
@@ -49,9 +49,9 @@ bool GlSharingContextBuilder::finalizeProperties(Context &context, int32_t &errc
if (contextData.get() == nullptr)
return true;
if (contextData->GLHGLRCHandle) {
context.registerSharing(new GLSharingFunctionsWindows(contextData->GLHDCType, contextData->GLHGLRCHandle,
nullptr, contextData->GLHDCHandle));
if (contextData->glHGLRCHandle) {
context.registerSharing(new GLSharingFunctionsWindows(contextData->GLHDCType, contextData->glHGLRCHandle,
nullptr, contextData->glHDCHandle));
}
contextData.reset(nullptr);

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2019-2021 Intel Corporation
* Copyright (C) 2019-2023 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
@@ -16,8 +16,8 @@ class Context;
struct GlCreateContextProperties {
GLType GLHDCType = 0;
GLContext GLHGLRCHandle = 0;
GLDisplay GLHDCHandle = 0;
GLContext glHGLRCHandle = 0;
GLDisplay glHDCHandle = 0;
};
class GlSharingContextBuilder : public SharingContextBuilder {