epoc32/include/EGL/eglext.h
branchSymbian3
changeset 4 837f303aceeb
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/epoc32/include/EGL/eglext.h	Wed Mar 31 12:33:34 2010 +0100
     1.3 @@ -0,0 +1,284 @@
     1.4 +
     1.5 +#ifndef __eglext_h_
     1.6 +#define __eglext_h_
     1.7 +
     1.8 +#ifdef __cplusplus
     1.9 +extern "C" {
    1.10 +#endif
    1.11 +
    1.12 +/*
    1.13 +** Copyright (c) 2007-2009 The Khronos Group Inc.
    1.14 +**
    1.15 +** Permission is hereby granted, free of charge, to any person obtaining a
    1.16 +** copy of this software and/or associated documentation files (the
    1.17 +** "Materials"), to deal in the Materials without restriction, including
    1.18 +** without limitation the rights to use, copy, modify, merge, publish,
    1.19 +** distribute, sublicense, and/or sell copies of the Materials, and to
    1.20 +** permit persons to whom the Materials are furnished to do so, subject to
    1.21 +** the following conditions:
    1.22 +**
    1.23 +** The above copyright notice and this permission notice shall be included
    1.24 +** in all copies or substantial portions of the Materials.
    1.25 +**
    1.26 +** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
    1.27 +** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
    1.28 +** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
    1.29 +** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
    1.30 +** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
    1.31 +** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
    1.32 +** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
    1.33 +*/
    1.34 +
    1.35 +/**
    1.36 +@publishedAll
    1.37 +@released
    1.38 +*/
    1.39 +
    1.40 +/* differences from the actual sample implementation provided by Khronos:
    1.41 +- this comment
    1.42 +- the Doxygen comment with tag 'publishedAll', and tag 'released'
    1.43 +- changing platform-dependant header name from <EGL/eglplatform.h> to <EGL/egltypes.h>
    1.44 +- EGLImageKHR definition is consistent with other EGL objects, i.e. is defined as integer 
    1.45 +  instead of pointer to void.
    1.46 +- macro EGL_IMAGE_PRESERVED_SYMBIAN introduced in this header represents EGL_IMAGE_PRESERVED_KHR
    1.47 +  macro defined in Khronos spec. Note that it has been retained temporarily for compatibility reasons 
    1.48 +  and it is advised to use Khronos macro instead.
    1.49 +- resource profiler and reusable sync object extensions are added
    1.50 +*/
    1.51 +
    1.52 +#include <EGL/egltypes.h>
    1.53 +#include <khronos_types.h>
    1.54 +
    1.55 +/*************************************************************/
    1.56 +
    1.57 +#define EGL_EGLEXT_VERSION 3
    1.58 +
    1.59 +#ifndef EGL_KHR_config_attribs
    1.60 +#define EGL_KHR_config_attribs 1
    1.61 +#define EGL_CONFORMANT_KHR			0x3042	/* EGLConfig attribute */
    1.62 +#define EGL_VG_COLORSPACE_LINEAR_BIT_KHR	0x0020	/* EGL_SURFACE_TYPE bitfield */
    1.63 +#define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR		0x0040	/* EGL_SURFACE_TYPE bitfield */
    1.64 +#endif
    1.65 +
    1.66 +#ifndef EGL_KHR_lock_surface
    1.67 +#define EGL_KHR_lock_surface 1
    1.68 +#define EGL_READ_SURFACE_BIT_KHR		0x0001	/* EGL_LOCK_USAGE_HINT_KHR bitfield */
    1.69 +#define EGL_WRITE_SURFACE_BIT_KHR		0x0002	/* EGL_LOCK_USAGE_HINT_KHR bitfield */
    1.70 +#define EGL_LOCK_SURFACE_BIT_KHR		0x0080	/* EGL_SURFACE_TYPE bitfield */
    1.71 +#define EGL_OPTIMAL_FORMAT_BIT_KHR		0x0100	/* EGL_SURFACE_TYPE bitfield */
    1.72 +#define EGL_MATCH_FORMAT_KHR			0x3043	/* EGLConfig attribute */
    1.73 +#define EGL_FORMAT_RGB_565_EXACT_KHR		0x30C0	/* EGL_MATCH_FORMAT_KHR value */
    1.74 +#define EGL_FORMAT_RGB_565_KHR			0x30C1	/* EGL_MATCH_FORMAT_KHR value */
    1.75 +#define EGL_FORMAT_RGBA_8888_EXACT_KHR		0x30C2	/* EGL_MATCH_FORMAT_KHR value */
    1.76 +#define EGL_FORMAT_RGBA_8888_KHR		0x30C3	/* EGL_MATCH_FORMAT_KHR value */
    1.77 +#define EGL_MAP_PRESERVE_PIXELS_KHR		0x30C4	/* eglLockSurfaceKHR attribute */
    1.78 +#define EGL_LOCK_USAGE_HINT_KHR			0x30C5	/* eglLockSurfaceKHR attribute */
    1.79 +#define EGL_BITMAP_POINTER_KHR			0x30C6	/* eglQuerySurface attribute */
    1.80 +#define EGL_BITMAP_PITCH_KHR			0x30C7	/* eglQuerySurface attribute */
    1.81 +#define EGL_BITMAP_ORIGIN_KHR			0x30C8	/* eglQuerySurface attribute */
    1.82 +#define EGL_BITMAP_PIXEL_RED_OFFSET_KHR		0x30C9	/* eglQuerySurface attribute */
    1.83 +#define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR	0x30CA	/* eglQuerySurface attribute */
    1.84 +#define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR	0x30CB	/* eglQuerySurface attribute */
    1.85 +#define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR	0x30CC	/* eglQuerySurface attribute */
    1.86 +#define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR	0x30CD	/* eglQuerySurface attribute */
    1.87 +#define EGL_LOWER_LEFT_KHR			0x30CE	/* EGL_BITMAP_ORIGIN_KHR value */
    1.88 +#define EGL_UPPER_LEFT_KHR			0x30CF	/* EGL_BITMAP_ORIGIN_KHR value */
    1.89 +#ifdef EGL_EGLEXT_PROTOTYPES
    1.90 +EGLAPI EGLBoolean EGLAPIENTRY eglLockSurfaceKHR (EGLDisplay display, EGLSurface surface, const EGLint *attrib_list);
    1.91 +EGLAPI EGLBoolean EGLAPIENTRY eglUnlockSurfaceKHR (EGLDisplay display, EGLSurface surface);
    1.92 +#endif /* EGL_EGLEXT_PROTOTYPES */
    1.93 +typedef EGLBoolean (EGLAPIENTRYP PFNEGLLOCKSURFACEKHRPROC) (EGLDisplay display, EGLSurface surface, const EGLint *attrib_list);
    1.94 +typedef EGLBoolean (EGLAPIENTRYP PFNEGLUNLOCKSURFACEKHRPROC) (EGLDisplay display, EGLSurface surface);
    1.95 +#endif
    1.96 +
    1.97 +#ifndef EGL_KHR_image
    1.98 +#define EGL_KHR_image 1
    1.99 +#define EGL_NATIVE_PIXMAP_KHR			0x30B0	/* eglCreateImageKHR target */
   1.100 +typedef int EGLImageKHR;
   1.101 +#define EGL_NO_IMAGE_KHR			((EGLImageKHR)0)
   1.102 +#ifdef EGL_EGLEXT_PROTOTYPES
   1.103 +EGLAPI EGLImageKHR EGLAPIENTRY eglCreateImageKHR (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list);
   1.104 +EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImageKHR (EGLDisplay dpy, EGLImageKHR image);
   1.105 +#endif /* EGL_EGLEXT_PROTOTYPES */
   1.106 +typedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list);
   1.107 +typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYIMAGEKHRPROC) (EGLDisplay dpy, EGLImageKHR image);
   1.108 +#endif
   1.109 +
   1.110 +#ifndef EGL_KHR_vg_parent_image
   1.111 +#define EGL_KHR_vg_parent_image 1
   1.112 +#define EGL_VG_PARENT_IMAGE_KHR			0x30BA	/* eglCreateImageKHR target */
   1.113 +#endif
   1.114 +
   1.115 +#ifndef EGL_KHR_gl_texture_2D_image
   1.116 +#define EGL_KHR_gl_texture_2D_image 1
   1.117 +#define EGL_GL_TEXTURE_2D_KHR			0x30B1	/* eglCreateImageKHR target */
   1.118 +#define EGL_GL_TEXTURE_LEVEL_KHR		0x30BC	/* eglCreateImageKHR attribute */
   1.119 +#endif
   1.120 +
   1.121 +#ifndef EGL_KHR_gl_texture_cubemap_image
   1.122 +#define EGL_KHR_gl_texture_cubemap_image 1
   1.123 +#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X_KHR	0x30B3	/* eglCreateImageKHR target */
   1.124 +#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X_KHR	0x30B4	/* eglCreateImageKHR target */
   1.125 +#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y_KHR	0x30B5	/* eglCreateImageKHR target */
   1.126 +#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_KHR	0x30B6	/* eglCreateImageKHR target */
   1.127 +#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z_KHR	0x30B7	/* eglCreateImageKHR target */
   1.128 +#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_KHR	0x30B8	/* eglCreateImageKHR target */
   1.129 +#endif
   1.130 +
   1.131 +#ifndef EGL_KHR_gl_texture_3D_image
   1.132 +#define EGL_KHR_gl_texture_3D_image 1
   1.133 +#define EGL_GL_TEXTURE_3D_KHR			0x30B2	/* eglCreateImageKHR target */
   1.134 +#define EGL_GL_TEXTURE_ZOFFSET_KHR		0x30BD	/* eglCreateImageKHR attribute */
   1.135 +#endif
   1.136 +
   1.137 +#ifndef EGL_KHR_gl_renderbuffer_image
   1.138 +#define EGL_KHR_gl_renderbuffer_image 1
   1.139 +#define EGL_GL_RENDERBUFFER_KHR			0x30B9	/* eglCreateImageKHR target */
   1.140 +#endif
   1.141 +
   1.142 +#ifndef EGL_KHR_image_base
   1.143 +#define EGL_KHR_image_base 1
   1.144 +/* Most interfaces defined by EGL_KHR_image_pixmap above */
   1.145 +#define EGL_IMAGE_PRESERVED_KHR			0x30D2	/* eglCreateImageKHR attribute */
   1.146 +#endif
   1.147 +
   1.148 +#ifndef EGL_KHR_image_pixmap
   1.149 +#define EGL_KHR_image_pixmap 1
   1.150 +/* Interfaces defined by EGL_KHR_image above */
   1.151 +#endif
   1.152 +
   1.153 +#ifndef EGL_SYMBIAN_image_preserved
   1.154 +#define EGL_SYMBIAN_image_preserved 1
   1.155 +/* The following macro was retained for compatibility reasons and will be removed soon. 
   1.156 +   For the new written code it is advised to use EGL_IMAGE_PRESERVED_KHR macro 
   1.157 +   defined in Khronos spec. */
   1.158 +#define EGL_IMAGE_PRESERVED_SYMBIAN		0x30D2	/* eglCreateImageKHR attribute */
   1.159 +#endif
   1.160 +
   1.161 +#ifndef EGL_NOK_resource_profiling2
   1.162 +#define EGL_NOK_resource_profiling2 1
   1.163 +/* Accepted by the <query_bits> parameter of eglQueryProfilingDataNOK */
   1.164 +#define EGL_PROF_QUERY_GLOBAL_BIT_NOK               0x0001
   1.165 +#define EGL_PROF_QUERY_MEMORY_USAGE_BIT_NOK         0x0002
   1.166 +/* Returned as attribute identifiers by eglQueryProfilingDataNOK */
   1.167 +#define EGL_PROF_TOTAL_MEMORY_NOK                   0x3070
   1.168 +#define EGL_PROF_USED_MEMORY_NOK                    0x3071
   1.169 +#define EGL_PROF_PROCESS_ID_NOK                      0x3072
   1.170 +#define EGL_PROF_PROCESS_USED_PRIVATE_MEMORY_NOK     0x3073
   1.171 +#define EGL_PROF_PROCESS_USED_SHARED_MEMORY_NOK      0x3074
   1.172 +/* Accepted as the <type> parameter of eglCreateSyncKHR */
   1.173 +#define EGL_SYNC_RESOURCE_PROFILING_NOK             0x3078
   1.174 +/* Accepted as the value of the EGL_SYNC_CONDITION_KHR attribute passed in */
   1.175 +/* <attrib_list> for eglCreateSyncKHR, and returned in <value> when */
   1.176 +/* eglGetSyncAttribKHR is called with <attribute> EGL_SYNC_CONDITION_KHR */
   1.177 +#define EGL_PROF_TOTAL_MEMORY_USAGE_GT_NOK          0x3075
   1.178 +#define EGL_PROF_TOTAL_MEMORY_USAGE_LT_NOK          0x3076
   1.179 +/* Accepted as an attribute name in the <attrib_list> parameter of */
   1.180 +/* eglCreateSyncKHR and in <attribute> for eglGetSyncAttribKHR */
   1.181 +#define EGL_PROF_MEMORY_USAGE_THRESHOLD_NOK         0x3077
   1.182 +typedef TUint64 EGLNativeProcessIdTypeNOK;
   1.183 +#ifdef EGL_EGLEXT_PROTOTYPES
   1.184 +EGLAPI EGLBoolean EGLAPIENTRY eglQueryProfilingDataNOK(EGLDisplay dpy, EGLint query_bits, EGLint *data, EGLint data_size, EGLint *data_count);
   1.185 +#endif /* EGL_EGLEXT_PROTOTYPES */
   1.186 +typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYPROFILINGDATANOKPROC) (EGLDisplay dpy, EGLint query_bits, EGLint *data, EGLint data_size, EGLint *data_count);
   1.187 +#endif
   1.188 +
   1.189 +#ifndef EGL_KHR_reusable_sync
   1.190 +#define EGL_KHR_reusable_sync 1
   1.191 +/* Accepted by the <type> parameter of eglCreateSyncKHR, and returned
   1.192 +in <value> when eglGetSyncAttribKHR is called with <attribute>
   1.193 +EGL_SYNC_TYPE_KHR */
   1.194 +#define EGL_SYNC_REUSABLE_KHR                   0x30FA
   1.195 +/* Accepted by the <attribute> parameter of eglGetSyncAttribKHR */
   1.196 +#define EGL_SYNC_TYPE_KHR                       0x30F7
   1.197 +#define EGL_SYNC_STATUS_KHR                     0x30F1
   1.198 +/* Accepted by the <mode> parameter of eglSignalSyncKHR and returned in
   1.199 +<value> when eglGetSyncAttribKHR is called with <attribute>
   1.200 +EGL_SYNC_STATUS_KHR */
   1.201 +#define EGL_SIGNALED_KHR                        0x30F2
   1.202 +#define EGL_UNSIGNALED_KHR                      0x30F3
   1.203 +/* Accepted in the <flags> parameter of eglClientWaitSyncKHR */
   1.204 +#define EGL_SYNC_FLUSH_COMMANDS_BIT_KHR         0x0001
   1.205 +/* Accepted in the <timeout> parameter of eglClientWaitSyncKHR */
   1.206 +#define EGL_FOREVER_KHR                         0xFFFFFFFFFFFFFFFFull
   1.207 +/* Returned by eglClientWaitSyncKHR */
   1.208 +#define EGL_TIMEOUT_EXPIRED_KHR                 0x30F5
   1.209 +#define EGL_CONDITION_SATISFIED_KHR             0x30F6
   1.210 +/* EGLSyncKHR is an opaque handle to an EGL sync object */
   1.211 +typedef void* EGLSyncKHR;
   1.212 +/* EGLTimeKHR is a 64-bit unsigned integer representing intervals in nanoseconds. */
   1.213 +typedef khronos_utime_nanoseconds_t EGLTimeKHR;
   1.214 +/* Returned by eglCreateSyncKHR in the event of an error */
   1.215 +#define EGL_NO_SYNC_KHR                         ((EGLSyncKHR)0)
   1.216 +#ifdef EGL_EGLEXT_PROTOTYPES
   1.217 +EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSyncKHR(EGLDisplay dpy, EGLenum type, const EGLint *attrib_list);
   1.218 +EGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync);
   1.219 +EGLAPI EGLint EGLAPIENTRY eglClientWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
   1.220 +EGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
   1.221 +EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value);
   1.222 +#endif /* EGL_EGLEXT_PROTOTYPES */
   1.223 +typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNCKHRPROC) (EGLDisplay dpy, EGLenum type, const EGLint *attrib_list);
   1.224 +typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync);
   1.225 +typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
   1.226 +typedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
   1.227 +typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value);
   1.228 +#endif
   1.229 +
   1.230 +#ifndef EGL_NOK_swap_region
   1.231 +#define EGL_NOK_swap_region 1
   1.232 +#ifdef EGL_EGLEXT_PROTOTYPES
   1.233 +EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersRegionNOK(EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects);
   1.234 +#endif /* EGL_EGLEXT_PROTOTYPES */
   1.235 +typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSREGIONNOKPROC) (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects);
   1.236 +#endif
   1.237 +
   1.238 +
   1.239 +#ifndef EGL_NOK_ENDPOINT
   1.240 +#define EGL_NOK_ENDPOINT 1
   1.241 +/* Endpoint datatype */
   1.242 +typedef void* EGLEndpointNOK;
   1.243 +typedef void* EGLTRequestStatusNOK;
   1.244 +typedef void* EGLEndpointSourceNOK;
   1.245 +/* Endpoint constant */
   1.246 +#define EGL_ENDPOINT_TYPE_CONSUMER_NOK   0x30D5
   1.247 +#define EGL_TSURFACEID_NOK               0x30D3
   1.248 +/* Endpoint invalid parameter */
   1.249 +#define EGL_NO_ENDPOINT_NOK              ((EGLEndpointNOK)0)
   1.250 +/* Endpoint error code */
   1.251 +#define EGL_BAD_ENDPOINT_NOK             0x30D4
   1.252 +/* Endpoint attribute keys */
   1.253 +#define EGL_ENDPOINT_READY_NOK           0x30D6
   1.254 +#define EGL_DELAY_NOK                    0x30D7
   1.255 +
   1.256 +#ifdef EGL_EGLEXT_PROTOTYPES
   1.257 +EGLAPI EGLEndpointNOK EGLAPIENTRY eglCreateEndpointNOK(EGLDisplay dpy, EGLenum type, EGLenum source_type, EGLEndpointSourceNOK source, const EGLint *attrib_list);
   1.258 +EGLAPI EGLBoolean EGLAPIENTRY eglDestroyEndpointNOK(EGLDisplay dpy, EGLEndpointNOK endpoint);
   1.259 +EGLAPI EGLint EGLAPIENTRY eglGetEndpointAttribNOK(EGLDisplay dpy, EGLEndpointNOK endpoint, EGLint attrib);
   1.260 +EGLAPI EGLBoolean EGLAPIENTRY eglSetEndpointAttribNOK(EGLDisplay dpy, EGLEndpointNOK endpoint, EGLint attrib, EGLint value);
   1.261 +EGLAPI EGLBoolean EGLAPIENTRY eglEndpointBeginStreamingNOK(EGLDisplay dpy, EGLEndpointNOK endpoint);
   1.262 +EGLAPI EGLBoolean EGLAPIENTRY eglEndpointEndStreamingNOK(EGLDisplay dpy, EGLEndpointNOK endpoint);
   1.263 +EGLAPI EGLImageKHR EGLAPIENTRY eglAcquireImageNOK(EGLDisplay dpy, EGLEndpointNOK endpoint);
   1.264 +EGLAPI EGLBoolean EGLAPIENTRY eglReleaseImageNOK(EGLDisplay dpy, EGLEndpointNOK endpoint, EGLImageKHR image, EGLenum api);
   1.265 +EGLAPI EGLint EGLAPIENTRY eglGetEndpointDirtyAreaNOK(EGLDisplay dpy, EGLEndpointNOK endpoint, EGLint* rects, EGLint start_rect, EGLint max_rects, EGLBoolean collapse); 
   1.266 +EGLAPI EGLBoolean EGLAPIENTRY eglEndpointRequestNotificationNOK(EGLDisplay dpy, EGLEndpointNOK endpoint, EGLTRequestStatusNOK sync);
   1.267 +EGLAPI EGLBoolean EGLAPIENTRY eglEndpointCancelNotificationNOK(EGLDisplay dpy, EGLEndpointNOK endpoint);
   1.268 +#endif
   1.269 +
   1.270 +typedef EGLEndpointNOK ( *PFNEGLCREATEENDPOINTNOKPROC) (EGLDisplay dpy, EGLenum type, EGLenum source_type, EGLEndpointSourceNOK source, const EGLint* attrib_list);
   1.271 +typedef EGLBoolean ( *PFNEGLDESTROYENDPOINTNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint);
   1.272 +typedef EGLint ( *PFNEGLGETENDPOINTATTRIBNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint, EGLint attrib);
   1.273 +typedef EGLBoolean ( *PFNEGLSETENDPOINTATTRIBNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint, EGLint attrib, EGLint value);
   1.274 +typedef EGLBoolean ( *PFNEGLENDPOINTBEGINSTREAMINGNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint);
   1.275 +typedef EGLBoolean ( *PFNEGLENDPOINTENDSTREAMINGNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint);
   1.276 +typedef EGLImageKHR  ( *PFNEGLACQUIREIMAGENOKPROC)(EGLDisplay dpy, EGLEndpointNOK endpoint);
   1.277 +typedef EGLBoolean ( *PFNEGLRELEASEIMAGENOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint, EGLImageKHR image, EGLenum api);
   1.278 +typedef EGLint ( *PFNEGLGETENDPOINTDIRTYAREANOKPROC) (EGLDisplay dpy,  EGLEndpointNOK endpoint, EGLint* rects, EGLint start_rect, EGLint max_rects,  EGLBoolean collapse); 
   1.279 +typedef EGLBoolean ( *PFNEGLENDPOINTREQUESTNOTIFICATIONNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint, EGLTRequestStatusNOK sync);
   1.280 +typedef EGLBoolean ( *PFNEGLENDPOINTCANCELNOTIFICATIONNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint);
   1.281 +#endif
   1.282 +
   1.283 +#ifdef __cplusplus
   1.284 +}
   1.285 +#endif
   1.286 +
   1.287 +#endif