epoc32/include/EGL/eglext.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
williamr@4
     1
williamr@4
     2
#ifndef __eglext_h_
williamr@4
     3
#define __eglext_h_
williamr@4
     4
williamr@4
     5
#ifdef __cplusplus
williamr@4
     6
extern "C" {
williamr@4
     7
#endif
williamr@4
     8
williamr@4
     9
/*
williamr@4
    10
** Copyright (c) 2007-2009 The Khronos Group Inc.
williamr@4
    11
**
williamr@4
    12
** Permission is hereby granted, free of charge, to any person obtaining a
williamr@4
    13
** copy of this software and/or associated documentation files (the
williamr@4
    14
** "Materials"), to deal in the Materials without restriction, including
williamr@4
    15
** without limitation the rights to use, copy, modify, merge, publish,
williamr@4
    16
** distribute, sublicense, and/or sell copies of the Materials, and to
williamr@4
    17
** permit persons to whom the Materials are furnished to do so, subject to
williamr@4
    18
** the following conditions:
williamr@4
    19
**
williamr@4
    20
** The above copyright notice and this permission notice shall be included
williamr@4
    21
** in all copies or substantial portions of the Materials.
williamr@4
    22
**
williamr@4
    23
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
williamr@4
    24
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
williamr@4
    25
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
williamr@4
    26
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
williamr@4
    27
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
williamr@4
    28
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
williamr@4
    29
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
williamr@4
    30
*/
williamr@4
    31
williamr@4
    32
/**
williamr@4
    33
@publishedAll
williamr@4
    34
@released
williamr@4
    35
*/
williamr@4
    36
williamr@4
    37
/* differences from the actual sample implementation provided by Khronos:
williamr@4
    38
- this comment
williamr@4
    39
- the Doxygen comment with tag 'publishedAll', and tag 'released'
williamr@4
    40
- changing platform-dependant header name from <EGL/eglplatform.h> to <EGL/egltypes.h>
williamr@4
    41
- EGLImageKHR definition is consistent with other EGL objects, i.e. is defined as integer 
williamr@4
    42
  instead of pointer to void.
williamr@4
    43
- macro EGL_IMAGE_PRESERVED_SYMBIAN introduced in this header represents EGL_IMAGE_PRESERVED_KHR
williamr@4
    44
  macro defined in Khronos spec. Note that it has been retained temporarily for compatibility reasons 
williamr@4
    45
  and it is advised to use Khronos macro instead.
williamr@4
    46
- resource profiler and reusable sync object extensions are added
williamr@4
    47
*/
williamr@4
    48
williamr@4
    49
#include <EGL/egltypes.h>
williamr@4
    50
#include <khronos_types.h>
williamr@4
    51
williamr@4
    52
/*************************************************************/
williamr@4
    53
williamr@4
    54
#define EGL_EGLEXT_VERSION 3
williamr@4
    55
williamr@4
    56
#ifndef EGL_KHR_config_attribs
williamr@4
    57
#define EGL_KHR_config_attribs 1
williamr@4
    58
#define EGL_CONFORMANT_KHR			0x3042	/* EGLConfig attribute */
williamr@4
    59
#define EGL_VG_COLORSPACE_LINEAR_BIT_KHR	0x0020	/* EGL_SURFACE_TYPE bitfield */
williamr@4
    60
#define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR		0x0040	/* EGL_SURFACE_TYPE bitfield */
williamr@4
    61
#endif
williamr@4
    62
williamr@4
    63
#ifndef EGL_KHR_lock_surface
williamr@4
    64
#define EGL_KHR_lock_surface 1
williamr@4
    65
#define EGL_READ_SURFACE_BIT_KHR		0x0001	/* EGL_LOCK_USAGE_HINT_KHR bitfield */
williamr@4
    66
#define EGL_WRITE_SURFACE_BIT_KHR		0x0002	/* EGL_LOCK_USAGE_HINT_KHR bitfield */
williamr@4
    67
#define EGL_LOCK_SURFACE_BIT_KHR		0x0080	/* EGL_SURFACE_TYPE bitfield */
williamr@4
    68
#define EGL_OPTIMAL_FORMAT_BIT_KHR		0x0100	/* EGL_SURFACE_TYPE bitfield */
williamr@4
    69
#define EGL_MATCH_FORMAT_KHR			0x3043	/* EGLConfig attribute */
williamr@4
    70
#define EGL_FORMAT_RGB_565_EXACT_KHR		0x30C0	/* EGL_MATCH_FORMAT_KHR value */
williamr@4
    71
#define EGL_FORMAT_RGB_565_KHR			0x30C1	/* EGL_MATCH_FORMAT_KHR value */
williamr@4
    72
#define EGL_FORMAT_RGBA_8888_EXACT_KHR		0x30C2	/* EGL_MATCH_FORMAT_KHR value */
williamr@4
    73
#define EGL_FORMAT_RGBA_8888_KHR		0x30C3	/* EGL_MATCH_FORMAT_KHR value */
williamr@4
    74
#define EGL_MAP_PRESERVE_PIXELS_KHR		0x30C4	/* eglLockSurfaceKHR attribute */
williamr@4
    75
#define EGL_LOCK_USAGE_HINT_KHR			0x30C5	/* eglLockSurfaceKHR attribute */
williamr@4
    76
#define EGL_BITMAP_POINTER_KHR			0x30C6	/* eglQuerySurface attribute */
williamr@4
    77
#define EGL_BITMAP_PITCH_KHR			0x30C7	/* eglQuerySurface attribute */
williamr@4
    78
#define EGL_BITMAP_ORIGIN_KHR			0x30C8	/* eglQuerySurface attribute */
williamr@4
    79
#define EGL_BITMAP_PIXEL_RED_OFFSET_KHR		0x30C9	/* eglQuerySurface attribute */
williamr@4
    80
#define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR	0x30CA	/* eglQuerySurface attribute */
williamr@4
    81
#define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR	0x30CB	/* eglQuerySurface attribute */
williamr@4
    82
#define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR	0x30CC	/* eglQuerySurface attribute */
williamr@4
    83
#define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR	0x30CD	/* eglQuerySurface attribute */
williamr@4
    84
#define EGL_LOWER_LEFT_KHR			0x30CE	/* EGL_BITMAP_ORIGIN_KHR value */
williamr@4
    85
#define EGL_UPPER_LEFT_KHR			0x30CF	/* EGL_BITMAP_ORIGIN_KHR value */
williamr@4
    86
#ifdef EGL_EGLEXT_PROTOTYPES
williamr@4
    87
EGLAPI EGLBoolean EGLAPIENTRY eglLockSurfaceKHR (EGLDisplay display, EGLSurface surface, const EGLint *attrib_list);
williamr@4
    88
EGLAPI EGLBoolean EGLAPIENTRY eglUnlockSurfaceKHR (EGLDisplay display, EGLSurface surface);
williamr@4
    89
#endif /* EGL_EGLEXT_PROTOTYPES */
williamr@4
    90
typedef EGLBoolean (EGLAPIENTRYP PFNEGLLOCKSURFACEKHRPROC) (EGLDisplay display, EGLSurface surface, const EGLint *attrib_list);
williamr@4
    91
typedef EGLBoolean (EGLAPIENTRYP PFNEGLUNLOCKSURFACEKHRPROC) (EGLDisplay display, EGLSurface surface);
williamr@4
    92
#endif
williamr@4
    93
williamr@4
    94
#ifndef EGL_KHR_image
williamr@4
    95
#define EGL_KHR_image 1
williamr@4
    96
#define EGL_NATIVE_PIXMAP_KHR			0x30B0	/* eglCreateImageKHR target */
williamr@4
    97
typedef int EGLImageKHR;
williamr@4
    98
#define EGL_NO_IMAGE_KHR			((EGLImageKHR)0)
williamr@4
    99
#ifdef EGL_EGLEXT_PROTOTYPES
williamr@4
   100
EGLAPI EGLImageKHR EGLAPIENTRY eglCreateImageKHR (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list);
williamr@4
   101
EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImageKHR (EGLDisplay dpy, EGLImageKHR image);
williamr@4
   102
#endif /* EGL_EGLEXT_PROTOTYPES */
williamr@4
   103
typedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list);
williamr@4
   104
typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYIMAGEKHRPROC) (EGLDisplay dpy, EGLImageKHR image);
williamr@4
   105
#endif
williamr@4
   106
williamr@4
   107
#ifndef EGL_KHR_vg_parent_image
williamr@4
   108
#define EGL_KHR_vg_parent_image 1
williamr@4
   109
#define EGL_VG_PARENT_IMAGE_KHR			0x30BA	/* eglCreateImageKHR target */
williamr@4
   110
#endif
williamr@4
   111
williamr@4
   112
#ifndef EGL_KHR_gl_texture_2D_image
williamr@4
   113
#define EGL_KHR_gl_texture_2D_image 1
williamr@4
   114
#define EGL_GL_TEXTURE_2D_KHR			0x30B1	/* eglCreateImageKHR target */
williamr@4
   115
#define EGL_GL_TEXTURE_LEVEL_KHR		0x30BC	/* eglCreateImageKHR attribute */
williamr@4
   116
#endif
williamr@4
   117
williamr@4
   118
#ifndef EGL_KHR_gl_texture_cubemap_image
williamr@4
   119
#define EGL_KHR_gl_texture_cubemap_image 1
williamr@4
   120
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X_KHR	0x30B3	/* eglCreateImageKHR target */
williamr@4
   121
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X_KHR	0x30B4	/* eglCreateImageKHR target */
williamr@4
   122
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y_KHR	0x30B5	/* eglCreateImageKHR target */
williamr@4
   123
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_KHR	0x30B6	/* eglCreateImageKHR target */
williamr@4
   124
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z_KHR	0x30B7	/* eglCreateImageKHR target */
williamr@4
   125
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_KHR	0x30B8	/* eglCreateImageKHR target */
williamr@4
   126
#endif
williamr@4
   127
williamr@4
   128
#ifndef EGL_KHR_gl_texture_3D_image
williamr@4
   129
#define EGL_KHR_gl_texture_3D_image 1
williamr@4
   130
#define EGL_GL_TEXTURE_3D_KHR			0x30B2	/* eglCreateImageKHR target */
williamr@4
   131
#define EGL_GL_TEXTURE_ZOFFSET_KHR		0x30BD	/* eglCreateImageKHR attribute */
williamr@4
   132
#endif
williamr@4
   133
williamr@4
   134
#ifndef EGL_KHR_gl_renderbuffer_image
williamr@4
   135
#define EGL_KHR_gl_renderbuffer_image 1
williamr@4
   136
#define EGL_GL_RENDERBUFFER_KHR			0x30B9	/* eglCreateImageKHR target */
williamr@4
   137
#endif
williamr@4
   138
williamr@4
   139
#ifndef EGL_KHR_image_base
williamr@4
   140
#define EGL_KHR_image_base 1
williamr@4
   141
/* Most interfaces defined by EGL_KHR_image_pixmap above */
williamr@4
   142
#define EGL_IMAGE_PRESERVED_KHR			0x30D2	/* eglCreateImageKHR attribute */
williamr@4
   143
#endif
williamr@4
   144
williamr@4
   145
#ifndef EGL_KHR_image_pixmap
williamr@4
   146
#define EGL_KHR_image_pixmap 1
williamr@4
   147
/* Interfaces defined by EGL_KHR_image above */
williamr@4
   148
#endif
williamr@4
   149
williamr@4
   150
#ifndef EGL_SYMBIAN_image_preserved
williamr@4
   151
#define EGL_SYMBIAN_image_preserved 1
williamr@4
   152
/* The following macro was retained for compatibility reasons and will be removed soon. 
williamr@4
   153
   For the new written code it is advised to use EGL_IMAGE_PRESERVED_KHR macro 
williamr@4
   154
   defined in Khronos spec. */
williamr@4
   155
#define EGL_IMAGE_PRESERVED_SYMBIAN		0x30D2	/* eglCreateImageKHR attribute */
williamr@4
   156
#endif
williamr@4
   157
williamr@4
   158
#ifndef EGL_NOK_resource_profiling2
williamr@4
   159
#define EGL_NOK_resource_profiling2 1
williamr@4
   160
/* Accepted by the <query_bits> parameter of eglQueryProfilingDataNOK */
williamr@4
   161
#define EGL_PROF_QUERY_GLOBAL_BIT_NOK               0x0001
williamr@4
   162
#define EGL_PROF_QUERY_MEMORY_USAGE_BIT_NOK         0x0002
williamr@4
   163
/* Returned as attribute identifiers by eglQueryProfilingDataNOK */
williamr@4
   164
#define EGL_PROF_TOTAL_MEMORY_NOK                   0x3070
williamr@4
   165
#define EGL_PROF_USED_MEMORY_NOK                    0x3071
williamr@4
   166
#define EGL_PROF_PROCESS_ID_NOK                      0x3072
williamr@4
   167
#define EGL_PROF_PROCESS_USED_PRIVATE_MEMORY_NOK     0x3073
williamr@4
   168
#define EGL_PROF_PROCESS_USED_SHARED_MEMORY_NOK      0x3074
williamr@4
   169
/* Accepted as the <type> parameter of eglCreateSyncKHR */
williamr@4
   170
#define EGL_SYNC_RESOURCE_PROFILING_NOK             0x3078
williamr@4
   171
/* Accepted as the value of the EGL_SYNC_CONDITION_KHR attribute passed in */
williamr@4
   172
/* <attrib_list> for eglCreateSyncKHR, and returned in <value> when */
williamr@4
   173
/* eglGetSyncAttribKHR is called with <attribute> EGL_SYNC_CONDITION_KHR */
williamr@4
   174
#define EGL_PROF_TOTAL_MEMORY_USAGE_GT_NOK          0x3075
williamr@4
   175
#define EGL_PROF_TOTAL_MEMORY_USAGE_LT_NOK          0x3076
williamr@4
   176
/* Accepted as an attribute name in the <attrib_list> parameter of */
williamr@4
   177
/* eglCreateSyncKHR and in <attribute> for eglGetSyncAttribKHR */
williamr@4
   178
#define EGL_PROF_MEMORY_USAGE_THRESHOLD_NOK         0x3077
williamr@4
   179
typedef TUint64 EGLNativeProcessIdTypeNOK;
williamr@4
   180
#ifdef EGL_EGLEXT_PROTOTYPES
williamr@4
   181
EGLAPI EGLBoolean EGLAPIENTRY eglQueryProfilingDataNOK(EGLDisplay dpy, EGLint query_bits, EGLint *data, EGLint data_size, EGLint *data_count);
williamr@4
   182
#endif /* EGL_EGLEXT_PROTOTYPES */
williamr@4
   183
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYPROFILINGDATANOKPROC) (EGLDisplay dpy, EGLint query_bits, EGLint *data, EGLint data_size, EGLint *data_count);
williamr@4
   184
#endif
williamr@4
   185
williamr@4
   186
#ifndef EGL_KHR_reusable_sync
williamr@4
   187
#define EGL_KHR_reusable_sync 1
williamr@4
   188
/* Accepted by the <type> parameter of eglCreateSyncKHR, and returned
williamr@4
   189
in <value> when eglGetSyncAttribKHR is called with <attribute>
williamr@4
   190
EGL_SYNC_TYPE_KHR */
williamr@4
   191
#define EGL_SYNC_REUSABLE_KHR                   0x30FA
williamr@4
   192
/* Accepted by the <attribute> parameter of eglGetSyncAttribKHR */
williamr@4
   193
#define EGL_SYNC_TYPE_KHR                       0x30F7
williamr@4
   194
#define EGL_SYNC_STATUS_KHR                     0x30F1
williamr@4
   195
/* Accepted by the <mode> parameter of eglSignalSyncKHR and returned in
williamr@4
   196
<value> when eglGetSyncAttribKHR is called with <attribute>
williamr@4
   197
EGL_SYNC_STATUS_KHR */
williamr@4
   198
#define EGL_SIGNALED_KHR                        0x30F2
williamr@4
   199
#define EGL_UNSIGNALED_KHR                      0x30F3
williamr@4
   200
/* Accepted in the <flags> parameter of eglClientWaitSyncKHR */
williamr@4
   201
#define EGL_SYNC_FLUSH_COMMANDS_BIT_KHR         0x0001
williamr@4
   202
/* Accepted in the <timeout> parameter of eglClientWaitSyncKHR */
williamr@4
   203
#define EGL_FOREVER_KHR                         0xFFFFFFFFFFFFFFFFull
williamr@4
   204
/* Returned by eglClientWaitSyncKHR */
williamr@4
   205
#define EGL_TIMEOUT_EXPIRED_KHR                 0x30F5
williamr@4
   206
#define EGL_CONDITION_SATISFIED_KHR             0x30F6
williamr@4
   207
/* EGLSyncKHR is an opaque handle to an EGL sync object */
williamr@4
   208
typedef void* EGLSyncKHR;
williamr@4
   209
/* EGLTimeKHR is a 64-bit unsigned integer representing intervals in nanoseconds. */
williamr@4
   210
typedef khronos_utime_nanoseconds_t EGLTimeKHR;
williamr@4
   211
/* Returned by eglCreateSyncKHR in the event of an error */
williamr@4
   212
#define EGL_NO_SYNC_KHR                         ((EGLSyncKHR)0)
williamr@4
   213
#ifdef EGL_EGLEXT_PROTOTYPES
williamr@4
   214
EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSyncKHR(EGLDisplay dpy, EGLenum type, const EGLint *attrib_list);
williamr@4
   215
EGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync);
williamr@4
   216
EGLAPI EGLint EGLAPIENTRY eglClientWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
williamr@4
   217
EGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
williamr@4
   218
EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value);
williamr@4
   219
#endif /* EGL_EGLEXT_PROTOTYPES */
williamr@4
   220
typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNCKHRPROC) (EGLDisplay dpy, EGLenum type, const EGLint *attrib_list);
williamr@4
   221
typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync);
williamr@4
   222
typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
williamr@4
   223
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
williamr@4
   224
typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value);
williamr@4
   225
#endif
williamr@4
   226
williamr@4
   227
#ifndef EGL_NOK_swap_region
williamr@4
   228
#define EGL_NOK_swap_region 1
williamr@4
   229
#ifdef EGL_EGLEXT_PROTOTYPES
williamr@4
   230
EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersRegionNOK(EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects);
williamr@4
   231
#endif /* EGL_EGLEXT_PROTOTYPES */
williamr@4
   232
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSREGIONNOKPROC) (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects);
williamr@4
   233
#endif
williamr@4
   234
williamr@4
   235
williamr@4
   236
#ifndef EGL_NOK_ENDPOINT
williamr@4
   237
#define EGL_NOK_ENDPOINT 1
williamr@4
   238
/* Endpoint datatype */
williamr@4
   239
typedef void* EGLEndpointNOK;
williamr@4
   240
typedef void* EGLTRequestStatusNOK;
williamr@4
   241
typedef void* EGLEndpointSourceNOK;
williamr@4
   242
/* Endpoint constant */
williamr@4
   243
#define EGL_ENDPOINT_TYPE_CONSUMER_NOK   0x30D5
williamr@4
   244
#define EGL_TSURFACEID_NOK               0x30D3
williamr@4
   245
/* Endpoint invalid parameter */
williamr@4
   246
#define EGL_NO_ENDPOINT_NOK              ((EGLEndpointNOK)0)
williamr@4
   247
/* Endpoint error code */
williamr@4
   248
#define EGL_BAD_ENDPOINT_NOK             0x30D4
williamr@4
   249
/* Endpoint attribute keys */
williamr@4
   250
#define EGL_ENDPOINT_READY_NOK           0x30D6
williamr@4
   251
#define EGL_DELAY_NOK                    0x30D7
williamr@4
   252
williamr@4
   253
#ifdef EGL_EGLEXT_PROTOTYPES
williamr@4
   254
EGLAPI EGLEndpointNOK EGLAPIENTRY eglCreateEndpointNOK(EGLDisplay dpy, EGLenum type, EGLenum source_type, EGLEndpointSourceNOK source, const EGLint *attrib_list);
williamr@4
   255
EGLAPI EGLBoolean EGLAPIENTRY eglDestroyEndpointNOK(EGLDisplay dpy, EGLEndpointNOK endpoint);
williamr@4
   256
EGLAPI EGLint EGLAPIENTRY eglGetEndpointAttribNOK(EGLDisplay dpy, EGLEndpointNOK endpoint, EGLint attrib);
williamr@4
   257
EGLAPI EGLBoolean EGLAPIENTRY eglSetEndpointAttribNOK(EGLDisplay dpy, EGLEndpointNOK endpoint, EGLint attrib, EGLint value);
williamr@4
   258
EGLAPI EGLBoolean EGLAPIENTRY eglEndpointBeginStreamingNOK(EGLDisplay dpy, EGLEndpointNOK endpoint);
williamr@4
   259
EGLAPI EGLBoolean EGLAPIENTRY eglEndpointEndStreamingNOK(EGLDisplay dpy, EGLEndpointNOK endpoint);
williamr@4
   260
EGLAPI EGLImageKHR EGLAPIENTRY eglAcquireImageNOK(EGLDisplay dpy, EGLEndpointNOK endpoint);
williamr@4
   261
EGLAPI EGLBoolean EGLAPIENTRY eglReleaseImageNOK(EGLDisplay dpy, EGLEndpointNOK endpoint, EGLImageKHR image, EGLenum api);
williamr@4
   262
EGLAPI EGLint EGLAPIENTRY eglGetEndpointDirtyAreaNOK(EGLDisplay dpy, EGLEndpointNOK endpoint, EGLint* rects, EGLint start_rect, EGLint max_rects, EGLBoolean collapse); 
williamr@4
   263
EGLAPI EGLBoolean EGLAPIENTRY eglEndpointRequestNotificationNOK(EGLDisplay dpy, EGLEndpointNOK endpoint, EGLTRequestStatusNOK sync);
williamr@4
   264
EGLAPI EGLBoolean EGLAPIENTRY eglEndpointCancelNotificationNOK(EGLDisplay dpy, EGLEndpointNOK endpoint);
williamr@4
   265
#endif
williamr@4
   266
williamr@4
   267
typedef EGLEndpointNOK ( *PFNEGLCREATEENDPOINTNOKPROC) (EGLDisplay dpy, EGLenum type, EGLenum source_type, EGLEndpointSourceNOK source, const EGLint* attrib_list);
williamr@4
   268
typedef EGLBoolean ( *PFNEGLDESTROYENDPOINTNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint);
williamr@4
   269
typedef EGLint ( *PFNEGLGETENDPOINTATTRIBNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint, EGLint attrib);
williamr@4
   270
typedef EGLBoolean ( *PFNEGLSETENDPOINTATTRIBNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint, EGLint attrib, EGLint value);
williamr@4
   271
typedef EGLBoolean ( *PFNEGLENDPOINTBEGINSTREAMINGNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint);
williamr@4
   272
typedef EGLBoolean ( *PFNEGLENDPOINTENDSTREAMINGNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint);
williamr@4
   273
typedef EGLImageKHR  ( *PFNEGLACQUIREIMAGENOKPROC)(EGLDisplay dpy, EGLEndpointNOK endpoint);
williamr@4
   274
typedef EGLBoolean ( *PFNEGLRELEASEIMAGENOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint, EGLImageKHR image, EGLenum api);
williamr@4
   275
typedef EGLint ( *PFNEGLGETENDPOINTDIRTYAREANOKPROC) (EGLDisplay dpy,  EGLEndpointNOK endpoint, EGLint* rects, EGLint start_rect, EGLint max_rects,  EGLBoolean collapse); 
williamr@4
   276
typedef EGLBoolean ( *PFNEGLENDPOINTREQUESTNOTIFICATIONNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint, EGLTRequestStatusNOK sync);
williamr@4
   277
typedef EGLBoolean ( *PFNEGLENDPOINTCANCELNOTIFICATIONNOKPROC) (EGLDisplay dpy, EGLEndpointNOK endpoint);
williamr@4
   278
#endif
williamr@4
   279
williamr@4
   280
#ifdef __cplusplus
williamr@4
   281
}
williamr@4
   282
#endif
williamr@4
   283
williamr@4
   284
#endif