diff options
author | Andres Rodriguez <[email protected]> | 2017-07-12 18:45:06 -0400 |
---|---|---|
committer | Timothy Arceri <[email protected]> | 2017-08-06 12:42:06 +1000 |
commit | 322ee1b3636a38c22bc65009f13667a9d5f438cf (patch) | |
tree | 5924dfb4dc6979c96f9a138093bffede3dda61b8 /src/mesa/main/externalobjects.h | |
parent | 293b3e0a3f73ef85b446259dc9422932e0b8ff49 (diff) |
mapi: add EXT_external_objects and EXT_external_objects_fd
Includes implementation stubs.
Signed-off-by: Andres Rodriguez <[email protected]>
Acked-by: Timothy Arceri <[email protected]>
Acked-by: Samuel Pitoiset <[email protected]>
Diffstat (limited to 'src/mesa/main/externalobjects.h')
-rw-r--r-- | src/mesa/main/externalobjects.h | 200 |
1 files changed, 200 insertions, 0 deletions
diff --git a/src/mesa/main/externalobjects.h b/src/mesa/main/externalobjects.h new file mode 100644 index 00000000000..f70be8e8ab9 --- /dev/null +++ b/src/mesa/main/externalobjects.h @@ -0,0 +1,200 @@ +/* + * Mesa 3-D graphics library + * + * Copyright (C) 2017 Red Hat. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + * + * Authors: Dave Airlie <[email protected]> + * Andres Rodriguez <[email protected]> + */ + +/** + * \file externalobjects.h + * + * Declarations of functions related to the API interop extensions. + */ + +#ifndef EXTERNALOBJECTS_H +#define EXTERNALOBJECTS_H + +#include "glheader.h" + +extern void GLAPIENTRY +_mesa_DeleteMemoryObjectsEXT(GLsizei n, const GLuint *memoryObjects); + +extern GLboolean GLAPIENTRY +_mesa_IsMemoryObjectEXT(GLuint memoryObject); + +extern void GLAPIENTRY +_mesa_CreateMemoryObjectsEXT(GLsizei n, GLuint *memoryObjects); + +extern void GLAPIENTRY +_mesa_MemoryObjectParameterivEXT(GLuint memoryObject, + GLenum pname, + const GLint *params); + +extern void GLAPIENTRY +_mesa_GetMemoryObjectParameterivEXT(GLuint memoryObject, + GLenum pname, + GLint *params); + +extern void GLAPIENTRY +_mesa_TexStorageMem2DEXT(GLenum target, + GLsizei levels, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLuint memory, + GLuint64 offset); + +extern void GLAPIENTRY +_mesa_TexStorageMem2DMultisampleEXT(GLenum target, + GLsizei samples, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLboolean fixedSampleLocations, + GLuint memory, + GLuint64 offset); + +extern void GLAPIENTRY +_mesa_TexStorageMem3DEXT(GLenum target, + GLsizei levels, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLsizei depth, + GLuint memory, + GLuint64 offset); + +extern void GLAPIENTRY +_mesa_TexStorageMem3DMultisampleEXT(GLenum target, + GLsizei samples, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLsizei depth, + GLboolean fixedSampleLocations, + GLuint memory, + GLuint64 offset); + +extern void GLAPIENTRY +_mesa_TextureStorageMem2DEXT(GLuint texture, + GLsizei levels, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLuint memory, + GLuint64 offset); + +extern void GLAPIENTRY +_mesa_TextureStorageMem2DMultisampleEXT(GLuint texture, + GLsizei samples, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLboolean fixedSampleLocations, + GLuint memory, + GLuint64 offset); + +extern void GLAPIENTRY +_mesa_TextureStorageMem3DEXT(GLuint texture, + GLsizei levels, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLsizei depth, + GLuint memory, + GLuint64 offset); + +extern void GLAPIENTRY +_mesa_TextureStorageMem3DMultisampleEXT(GLuint texture, + GLsizei samples, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLsizei depth, + GLboolean fixedSampleLocations, + GLuint memory, + GLuint64 offset); + +extern void GLAPIENTRY +_mesa_TexStorageMem1DEXT(GLenum target, + GLsizei levels, + GLenum internalFormat, + GLsizei width, + GLuint memory, + GLuint64 offset); + +extern void GLAPIENTRY +_mesa_TextureStorageMem1DEXT(GLuint texture, + GLsizei levels, + GLenum internalFormat, + GLsizei width, + GLuint memory, + GLuint64 offset); + +extern void GLAPIENTRY +_mesa_GenSemaphoresEXT(GLsizei n, GLuint *semaphores); + +extern void GLAPIENTRY +_mesa_DeleteSemaphoresEXT(GLsizei n, const GLuint *semaphores); + +extern GLboolean GLAPIENTRY +_mesa_IsSemaphoreEXT(GLuint semaphore); + +extern void GLAPIENTRY +_mesa_SemaphoreParameterui64vEXT(GLuint semaphore, + GLenum pname, + const GLuint64 *params); + +extern void GLAPIENTRY +_mesa_GetSemaphoreParameterui64vEXT(GLuint semaphore, + GLenum pname, + GLuint64 *params); + +extern void GLAPIENTRY +_mesa_WaitSemaphoreEXT(GLuint semaphore, + GLuint numBufferBarriers, + const GLuint *buffers, + GLuint numTextureBarriers, + const GLuint *textures, + const GLenum *srcLayouts); + +extern void GLAPIENTRY +_mesa_SignalSemaphoreEXT(GLuint semaphore, + GLuint numBufferBarriers, + const GLuint *buffers, + GLuint numTextureBarriers, + const GLuint *textures, + const GLenum *dstLayouts); + +extern void GLAPIENTRY +_mesa_ImportMemoryFdEXT(GLuint memory, + GLuint64 size, + GLenum handleType, + GLint fd); + +extern void GLAPIENTRY +_mesa_ImportSemaphoreFdEXT(GLuint semaphore, + GLenum handleType, + GLint fd); + +#endif |