blob: ce35633b5b09a3cc6aee964d1ea14cc0beba6921 [file] [log] [blame]
Name
NV_native_query
Name Strings
EGL_NV_native_query
Contributors
Mathias Heyer, NVIDIA
Daniel Kartch, NVIDIA
Peter Pipkorn, NVIDIA
Acorn Pooley, NVIDIA
Greg Roth, NVIDIA
Contacts
Peter Pipkorn, NVIDIA Corporation (ppipkorn 'at' nvidia.com)
Status
Complete
Version
Version 0.4, 25 Sept, 2012
Number
EGL Extension #45
Dependencies
Requires EGL 1.0
This extension is written against the wording of the EGL 1.4
Specification.
Overview
This extension allows an application to query which native display,
pixmap and surface corresponds to a EGL object.
New Procedures and Functions
EGLBoolean eglQueryNativeDisplayNV(
EGLDisplay dpy,
EGLNativeDisplayType* display_id);
EGLBoolean eglQueryNativeWindowNV(
EGLDisplay dpy,
EGLSurface surf,
EGLNativeWindowType* window);
EGLBoolean eglQueryNativePixmapNV(
EGLDisplay dpy,
EGLSurface surf,
EGLNativePixmapType* pixmap);
Changes to Chapter 3 of the EGL 1.4 Specification (EGL Functions and Errors)
In Chapter 3.2, after the description of eglInitialize and before the
description of eglTerminate insert
"While initialized, the native display that corresponds to an
EGLDisplay can retrieved by
EGLBoolean eglQueryNativeDisplayNV(
EGLDisplay dpy,
EGLNativeDisplayType* display_id);
If the <dpy> is a valid and initialized EGLDisplay, EGL_TRUE
will be returned and the native display handle will be written
to <display_id>. Otherwise EGL_FALSE will be returned and the
contents of <display_id> are left untouched. If the <dpy> is
not valid, an EGL_BAD_DISPLAY error will be generated. If <dpy>
is not initialized, an EGL_NOT_INITIALIZED error will be
generated. If <display_id> is NULL, an EGL_BAD_PARAMETER error
will be generated.
In Chapter 3.5 Rendering Surfaces, after section 3.5.1 insert
"The native window that corresponds to an EGLSurface can be
retrieved by
EGLBoolean eglQueryNativeWindowNV(
EGLDisplay dpy,
EGLSurface surf,
EGLNativeWindowType* win);
The corresponding native window will be written to <win>,
and EGL_TRUE will be returned. If the call fails, EGL_FALSE
will be returned, and content of <win> will not be modified.
If <dpy> is not a valid EGLDisplay, an EGL_BAD_DISPLAY error
will be generated. If <dpy> is not initialized, an EGL_NOT_-
INITIALIZED error will be generated. If <surf> is not a valid
EGLSurface, or <surf> does not have a corresponding native
window, an EGL_BAD_SURFACE error will be generated." If <win>
is NULL, an EGL_BAD_PARAMETER error will be generated.
After section 3.5.4 Creating Native Pixmap Rendering Surfaces insert
"The native pixmap that corresponds to an EGLSurface can be
retrieved by
EGLBoolean eglQueryNativePixmapNV(
EGLDisplay dpy,
EGLSurface surf,
EGLNativePixmapType* pixmap);
The corresponding native pixmap will be written to <pixmap>,
and EGL_TRUE will be returned. If the call fails, EGL_FALSE
will be returned, and the content of <pixmap> will not be
modified. If <dpy> is not a valid EGLDisplay, an EGL_BAD_-
DISPLAY error will be generated. If <dpy> is not initialized,
an EGL_NOT_INITIALIZED error will be generated. If <surf> is
not a valid EGLSurface, or <surf> does not have a corresponding
native pixmap, an EGL_BAD_SURFACE error will be generated." If
<pixmap> is NULL, an EGL_BAD_PARAMETER error will be
generated.
Issues
Revision History
#4 (Greg Roth, Sept 25, 2012)
- Further document all potential errors for all functions
#3 (Daniel Kartch, August 30, 2011)
- Add restriction that EGLDisplay be initialized
#2 (Peter Pipkorn, December 16, 2009)
- Minor cleanup
#1 (Peter Pipkorn, December 15, 2009)
- First Draft