Commit 3d890436 by Geoff Lang

Load the WGL_NV_DX_interop entry points in FunctionsWGL.

BUG=540829 Change-Id: Iab080789f2a21b900e2641aa97c0e3392d007391 Reviewed-on: https://chromium-review.googlesource.com/316802Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Tested-by: 's avatarGeoff Lang <geofflang@chromium.org>
parent 7f1cd75b
......@@ -85,7 +85,15 @@ FunctionsWGL::FunctionsWGL()
queryPbufferARB(nullptr),
bindTexImageARB(nullptr),
releaseTexImageARB(nullptr),
setPbufferAttribARB(nullptr)
setPbufferAttribARB(nullptr),
dxSetResourceShareHandleNV(nullptr),
dxOpenDeviceNV(nullptr),
dxCloseDeviceNV(nullptr),
dxRegisterObjectNV(nullptr),
dxUnregisterObjectNV(nullptr),
dxObjectAccessNV(nullptr),
dxLockObjectsNV(nullptr),
dxUnlockObjectsNV(nullptr)
{
}
......@@ -154,6 +162,16 @@ void FunctionsWGL::initialize(HMODULE glModule, HDC context)
GetWGLExtensionProcAddress(glModule, getProcAddress, extensions, "WGL_ARB_render_texture", "wglBindTexImageARB", &bindTexImageARB);
GetWGLExtensionProcAddress(glModule, getProcAddress, extensions, "WGL_ARB_render_texture", "wglReleaseTexImageARB", &releaseTexImageARB);
GetWGLExtensionProcAddress(glModule, getProcAddress, extensions, "WGL_ARB_render_texture", "wglSetPbufferAttribARB", &setPbufferAttribARB);
// WGL_NV_DX_interop
GetWGLExtensionProcAddress(glModule, getProcAddress, extensions, "WGL_NV_DX_interop", "wglDXSetResourceShareHandleNV", &dxSetResourceShareHandleNV);
GetWGLExtensionProcAddress(glModule, getProcAddress, extensions, "WGL_NV_DX_interop", "wglDXOpenDeviceNV", &dxOpenDeviceNV);
GetWGLExtensionProcAddress(glModule, getProcAddress, extensions, "WGL_NV_DX_interop", "wglDXCloseDeviceNV", &dxCloseDeviceNV);
GetWGLExtensionProcAddress(glModule, getProcAddress, extensions, "WGL_NV_DX_interop", "wglDXRegisterObjectNV", &dxRegisterObjectNV);
GetWGLExtensionProcAddress(glModule, getProcAddress, extensions, "WGL_NV_DX_interop", "wglDXUnregisterObjectNV", &dxUnregisterObjectNV);
GetWGLExtensionProcAddress(glModule, getProcAddress, extensions, "WGL_NV_DX_interop", "wglDXObjectAccessNV", &dxObjectAccessNV);
GetWGLExtensionProcAddress(glModule, getProcAddress, extensions, "WGL_NV_DX_interop", "wglDXLockObjectsNV", &dxLockObjectsNV);
GetWGLExtensionProcAddress(glModule, getProcAddress, extensions, "WGL_NV_DX_interop", "wglDXUnlockObjectsNV", &dxUnlockObjectsNV);
}
bool FunctionsWGL::hasExtension(const std::string &ext) const
......
......@@ -77,6 +77,16 @@ class FunctionsWGL : angle::NonCopyable
PFNWGLBINDTEXIMAGEARBPROC bindTexImageARB;
PFNWGLRELEASETEXIMAGEARBPROC releaseTexImageARB;
PFNWGLSETPBUFFERATTRIBARBPROC setPbufferAttribARB;
// WGL_NV_DX_interop
PFNWGLDXSETRESOURCESHAREHANDLENVPROC dxSetResourceShareHandleNV;
PFNWGLDXOPENDEVICENVPROC dxOpenDeviceNV;
PFNWGLDXCLOSEDEVICENVPROC dxCloseDeviceNV;
PFNWGLDXREGISTEROBJECTNVPROC dxRegisterObjectNV;
PFNWGLDXUNREGISTEROBJECTNVPROC dxUnregisterObjectNV;
PFNWGLDXOBJECTACCESSNVPROC dxObjectAccessNV;
PFNWGLDXLOCKOBJECTSNVPROC dxLockObjectsNV;
PFNWGLDXUNLOCKOBJECTSNVPROC dxUnlockObjectsNV;
};
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment