1 /* 2 * GStreamer 3 * Copyright (C) 2012 Matthew Waters <ystreet00@gmail.com> 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Library General Public 7 * License as published by the Free Software Foundation; either 8 * version 2 of the License, or (at your option) any later version. 9 * 10 * This library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Library General Public License for more details. 14 * 15 * You should have received a copy of the GNU Library General Public 16 * License along with this library; if not, write to the 17 * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, 18 * Boston, MA 02110-1301, USA. 19 */ 20 /* 21 * Cogl 22 * 23 * An object oriented GL/GLES Abstraction/Utility Layer 24 * 25 * Copyright (C) 2009, 2011 Intel Corporation. 26 * 27 * This library is free software; you can redistribute it and/or 28 * modify it under the terms of the GNU Lesser General Public 29 * License as published by the Free Software Foundation; either 30 * version 2 of the License, or (at your option) any later version. 31 * 32 * This library is distributed in the hope that it will be useful, 33 * but WITHOUT ANY WARRANTY; without even the implied warranty of 34 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 35 * Lesser General Public License for more details. 36 * 37 * You should have received a copy of the GNU Lesser General Public 38 * License along with this library. If not, see <http://www.gnu.org/licenses/>. 39 */ 40 41 GST_GL_EXT_BEGIN (offscreen, 42 GST_GL_API_OPENGL | GST_GL_API_OPENGL3 | 43 GST_GL_API_GLES2, 44 3, 0, 45 2, 0, 46 /* for some reason the ARB version of this 47 extension doesn't have an ARB suffix for the 48 functions */ 49 "ARB:\0EXT\0OES\0", 50 "framebuffer_object\0") 51 GST_GL_EXT_FUNCTION (void, GenRenderbuffers, 52 (GLsizei n, 53 GLuint *renderbuffers)) 54 GST_GL_EXT_FUNCTION (void, DeleteRenderbuffers, 55 (GLsizei n, 56 const GLuint *renderbuffers)) 57 GST_GL_EXT_FUNCTION (void, BindRenderbuffer, 58 (GLenum target, 59 GLuint renderbuffer)) 60 GST_GL_EXT_FUNCTION (void, RenderbufferStorage, 61 (GLenum target, 62 GLenum internalformat, 63 GLsizei width, 64 GLsizei height)) 65 GST_GL_EXT_FUNCTION (void, GenFramebuffers, 66 (GLsizei n, 67 GLuint *framebuffers)) 68 GST_GL_EXT_FUNCTION (void, BindFramebuffer, 69 (GLenum target, 70 GLuint framebuffer)) 71 GST_GL_EXT_FUNCTION (void, FramebufferTexture2D, 72 (GLenum target, 73 GLenum attachment, 74 GLenum textarget, 75 GLuint texture, 76 GLint level)) 77 GST_GL_EXT_FUNCTION (void, FramebufferRenderbuffer, 78 (GLenum target, 79 GLenum attachment, 80 GLenum renderbuffertarget, 81 GLuint renderbuffer)) 82 GST_GL_EXT_FUNCTION (GLboolean, IsRenderbuffer, 83 (GLuint renderbuffer)) 84 GST_GL_EXT_FUNCTION (GLenum, CheckFramebufferStatus, 85 (GLenum target)) 86 GST_GL_EXT_FUNCTION (void, DeleteFramebuffers, 87 (GLsizei n, 88 const GLuint *framebuffers)) 89 GST_GL_EXT_FUNCTION (void, GenerateMipmap, 90 (GLenum target)) 91 GST_GL_EXT_FUNCTION (void, GetFramebufferAttachmentParameteriv, 92 (GLenum target, 93 GLenum attachment, 94 GLenum pname, 95 GLint *params)) 96 GST_GL_EXT_FUNCTION (void, GetRenderbufferParameteriv, 97 (GLenum target, 98 GLenum pname, 99 GLint *params)) 100 GST_GL_EXT_FUNCTION (GLboolean, IsFramebuffer, 101 (GLuint framebuffer)) 102 GST_GL_EXT_END () 103 104 GST_GL_EXT_BEGIN (offscreen_blit, 105 GST_GL_API_OPENGL | GST_GL_API_OPENGL3 | 106 GST_GL_API_GLES2, 107 3, 0, 108 3, 0, 109 "EXT\0ANGLE\0", 110 "framebuffer_blit\0") 111 GST_GL_EXT_FUNCTION (void, BlitFramebuffer, 112 (GLint srcX0, 113 GLint srcY0, 114 GLint srcX1, 115 GLint srcY1, 116 GLint dstX0, 117 GLint dstY0, 118 GLint dstX1, 119 GLint dstY1, 120 GLbitfield mask, 121 GLenum filter)) 122 GST_GL_EXT_END () 123 124 GST_GL_EXT_BEGIN (framebuffer_discard, 125 GST_GL_API_NONE, 126 255, 255, 127 255, 255, /* not in either GLES */ 128 "EXT\0", 129 "framebuffer_discard\0") 130 GST_GL_EXT_FUNCTION (void, DiscardFramebuffer, 131 (GLenum target, 132 GLsizei numAttachments, 133 const GLenum *attachments)) 134 GST_GL_EXT_END () 135 136 137 GST_GL_EXT_BEGIN (read_buffer, 138 GST_GL_API_OPENGL | GST_GL_API_OPENGL3 | 139 GST_GL_API_GLES2, 140 1, 0, 141 3, 0, 142 "NV\0", 143 "read_buffer\0") 144 GST_GL_EXT_FUNCTION (void, ReadBuffer, 145 (GLenum mode)) 146 GST_GL_EXT_END () 147 148 GST_GL_EXT_BEGIN (draw_buffers, 149 GST_GL_API_OPENGL | GST_GL_API_OPENGL3 | 150 GST_GL_API_GLES2, 151 2, 1, 152 3, 0, 153 "ARB\0ATI\0NV\0", 154 "draw_buffers\0") 155 GST_GL_EXT_FUNCTION (void, DrawBuffers, 156 (GLsizei n, const GLenum *bufs)) 157 GST_GL_EXT_END () 158