mesa_glinterop: use generic variable types for the GL interop
authorEmil Velikov <emil.velikov@collabora.com>
Thu, 21 Apr 2016 15:36:01 +0000 (16:36 +0100)
committerEmil Velikov <emil.l.velikov@gmail.com>
Tue, 24 May 2016 22:02:08 +0000 (23:02 +0100)
Thus we can preserve the ABI, while avoiding the inclusion of some/all
of the following:

  EGL/egl.h
  GL/gl.h
  GL/glcorearb.h
  GLES/gl.h
  GLES2/gl2.h
  GLES3/gl3.h
  GLES3/gl31.h

This will allow us to build/use it alongside any combination of APIs.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
include/GL/mesa_glinterop.h

index 087764e2a8aa1db48a50c455bdf9084be4f8be1d..05435744cbcce3386a073a368ff1f881cb923337 100644 (file)
@@ -141,16 +141,16 @@ typedef struct _mesa_glinterop_export_in {
     * - GL_RENDERBUFFER
     * - GL_ARRAY_BUFFER
     */
-   GLenum target;
+   unsigned target;
 
    /* If target is GL_ARRAY_BUFFER, it's a buffer object.
     * If target is GL_RENDERBUFFER, it's a renderbuffer object.
     * If target is GL_TEXTURE_*, it's a texture object.
     */
-   GLuint obj;
+   unsigned obj;
 
    /* Mipmap level. Ignored for non-texture objects. */
-   GLuint miplevel;
+   unsigned miplevel;
 
    /* One of MESA_GLINTEROP_ACCESS_* flags. This describes how the exported
     * object is going to be used.
@@ -193,7 +193,7 @@ typedef struct _mesa_glinterop_export_out {
     * format specified by glTexStorage, glTexImage, or glRenderbufferStorage
     * will be returned.
     */
-   GLenum internal_format;
+   unsigned internal_format;
 
    /* Buffer offset and size for GL_ARRAY_BUFFER and GL_TEXTURE_BUFFER.
     * This allows interop with suballocations (a buffer allocated within
@@ -208,10 +208,10 @@ typedef struct _mesa_glinterop_export_out {
    /* Parameters specified by glTextureView. If the object is not a texture
     * view, default parameters covering the whole texture will be returned.
     */
-   GLuint view_minlevel;
-   GLuint view_numlevels;
-   GLuint view_minlayer;
-   GLuint view_numlayers;
+   unsigned view_minlevel;
+   unsigned view_numlevels;
+   unsigned view_minlayer;
+   unsigned view_numlayers;
 
    /* The number of bytes written to out_driver_data. */
    uint32_t out_driver_data_written;