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
41GST_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")
51GST_GL_EXT_FUNCTION (void, GenRenderbuffers,
52 (GLsizei n,
53 GLuint *renderbuffers))
54GST_GL_EXT_FUNCTION (void, DeleteRenderbuffers,
55 (GLsizei n,
56 const GLuint *renderbuffers))
57GST_GL_EXT_FUNCTION (void, BindRenderbuffer,
58 (GLenum target,
59 GLuint renderbuffer))
60GST_GL_EXT_FUNCTION (void, RenderbufferStorage,
61 (GLenum target,
62 GLenum internalformat,
63 GLsizei width,
64 GLsizei height))
65GST_GL_EXT_FUNCTION (void, GenFramebuffers,
66 (GLsizei n,
67 GLuint *framebuffers))
68GST_GL_EXT_FUNCTION (void, BindFramebuffer,
69 (GLenum target,
70 GLuint framebuffer))
71GST_GL_EXT_FUNCTION (void, FramebufferTexture2D,
72 (GLenum target,
73 GLenum attachment,
74 GLenum textarget,
75 GLuint texture,
76 GLint level))
77GST_GL_EXT_FUNCTION (void, FramebufferRenderbuffer,
78 (GLenum target,
79 GLenum attachment,
80 GLenum renderbuffertarget,
81 GLuint renderbuffer))
82GST_GL_EXT_FUNCTION (GLboolean, IsRenderbuffer,
83 (GLuint renderbuffer))
84GST_GL_EXT_FUNCTION (GLenum, CheckFramebufferStatus,
85 (GLenum target))
86GST_GL_EXT_FUNCTION (void, DeleteFramebuffers,
87 (GLsizei n,
88 const GLuint *framebuffers))
89GST_GL_EXT_FUNCTION (void, GenerateMipmap,
90 (GLenum target))
91GST_GL_EXT_FUNCTION (void, GetFramebufferAttachmentParameteriv,
92 (GLenum target,
93 GLenum attachment,
94 GLenum pname,
95 GLint *params))
96GST_GL_EXT_FUNCTION (void, GetRenderbufferParameteriv,
97 (GLenum target,
98 GLenum pname,
99 GLint *params))
100GST_GL_EXT_FUNCTION (GLboolean, IsFramebuffer,
101 (GLuint framebuffer))
102GST_GL_EXT_END ()
103
104GST_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")
111GST_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))
122GST_GL_EXT_END ()
123
124GST_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")
130GST_GL_EXT_FUNCTION (void, DiscardFramebuffer,
131 (GLenum target,
132 GLsizei numAttachments,
133 const GLenum *attachments))
134GST_GL_EXT_END ()
135
136
137GST_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")
144GST_GL_EXT_FUNCTION (void, ReadBuffer,
145 (GLenum mode))
146GST_GL_EXT_END ()
147
148GST_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")
155GST_GL_EXT_FUNCTION (void, DrawBuffers,
156 (GLsizei n, const GLenum *bufs))
157GST_GL_EXT_END ()
158

source code of include/gstreamer-1.0/gst/gl/glprototypes/fbo.h