1 /*
2  * GStreamer
3  * Copyright (C) 2013 Julien Isorce <julien.isorce@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 #ifndef __GST_GL_FWD_H__
22 #define __GST_GL_FWD_H__
23 
24 #include <gst/gst.h>
25 
26 #include <gst/gl/gstglapi.h>
27 
28 G_BEGIN_DECLS
29 
30 typedef struct _GstGLDisplay GstGLDisplay;
31 typedef struct _GstGLDisplayClass GstGLDisplayClass;
32 typedef struct _GstGLDisplayPrivate GstGLDisplayPrivate;
33 
34 typedef struct _GstGLContext GstGLContext;
35 typedef struct _GstGLContextClass GstGLContextClass;
36 typedef struct _GstGLContextPrivate GstGLContextPrivate;
37 
38 typedef struct _GstGLWindow        GstGLWindow;
39 typedef struct _GstGLWindowPrivate GstGLWindowPrivate;
40 typedef struct _GstGLWindowClass   GstGLWindowClass;
41 
42 typedef struct _GstGLBaseMemory GstGLBaseMemory;
43 typedef struct _GstGLBaseMemoryAllocator GstGLBaseMemoryAllocator;
44 typedef struct _GstGLBaseMemoryAllocatorClass GstGLBaseMemoryAllocatorClass;
45 
46 typedef struct _GstGLBuffer GstGLBuffer;
47 typedef struct _GstGLBufferAllocator GstGLBufferAllocator;
48 typedef struct _GstGLBufferAllocatorClass GstGLBufferAllocatorClass;
49 
50 typedef struct _GstGLMemory GstGLMemory;
51 typedef struct _GstGLMemoryAllocator GstGLMemoryAllocator;
52 typedef struct _GstGLMemoryAllocatorClass GstGLMemoryAllocatorClass;
53 
54 typedef struct _GstGLMemoryPBO GstGLMemoryPBO;
55 typedef struct _GstGLMemoryPBOAllocator GstGLMemoryPBOAllocator;
56 typedef struct _GstGLMemoryPBOAllocatorClass GstGLMemoryPBOAllocatorClass;
57 
58 typedef struct _GstGLMemoryEGL GstGLMemoryEGL;
59 typedef struct _GstGLMemoryEGLAllocator GstGLMemoryEGLAllocator;
60 typedef struct _GstGLMemoryEGLAllocatorClass GstGLMemoryEGLAllocatorClass;
61 
62 typedef struct _GstGLRenderbuffer GstGLRenderbuffer;
63 typedef struct _GstGLRenderbufferAllocator GstGLRenderbufferAllocator;
64 typedef struct _GstGLRenderbufferAllocatorClass GstGLRenderbufferAllocatorClass;
65 
66 typedef struct _GstGLFramebuffer GstGLFramebuffer;
67 typedef struct _GstGLFramebufferClass GstGLFramebufferClass;
68 
69 typedef struct _GstGLSLStage        GstGLSLStage;
70 typedef struct _GstGLSLStagePrivate GstGLSLStagePrivate;
71 typedef struct _GstGLSLStageClass   GstGLSLStageClass;
72 
73 typedef struct _GstGLShader        GstGLShader;
74 typedef struct _GstGLShaderPrivate GstGLShaderPrivate;
75 typedef struct _GstGLShaderClass   GstGLShaderClass;
76 
77 typedef struct _GstGLUpload GstGLUpload;
78 typedef struct _GstGLUploadClass GstGLUploadClass;
79 typedef struct _GstGLUploadPrivate GstGLUploadPrivate;
80 
81 typedef struct _GstGLBufferPool GstGLBufferPool;
82 typedef struct _GstGLBufferPoolClass GstGLBufferPoolClass;
83 typedef struct _GstGLBufferPoolPrivate GstGLBufferPoolPrivate;
84 
85 typedef struct _GstGLColorConvert GstGLColorConvert;
86 typedef struct _GstGLColorConvertClass GstGLColorConvertClass;
87 typedef struct _GstGLColorConvertPrivate GstGLColorConvertPrivate;
88 
89 typedef struct _GstGLBaseFilter GstGLBaseFilter;
90 typedef struct _GstGLBaseFilterClass GstGLBaseFilterClass;
91 typedef struct _GstGLBaseFilterPrivate GstGLBaseFilterPrivate;
92 
93 typedef struct _GstGLFilter GstGLFilter;
94 typedef struct _GstGLFilterClass GstGLFilterClass;
95 
96 typedef struct _GstGLViewConvert GstGLViewConvert;
97 typedef struct _GstGLViewConvertClass GstGLViewConvertClass;
98 typedef struct _GstGLViewConvertPrivate GstGLViewConvertPrivate;
99 
100 typedef struct _GstGLOverlayCompositor GstGLOverlayCompositor;
101 typedef struct _GstGLOverlayCompositorClass GstGLOverlayCompositorClass;
102 
103 typedef struct _GstGLQuery GstGLQuery;
104 
105 typedef struct _GstGLFuncs GstGLFuncs;
106 
107 typedef struct _GstGLAsyncDebug GstGLAsyncDebug;
108 
109 #include <gst/gl/gstgl_enums.h>
110 
111 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
112 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLBaseFilter, gst_object_unref)
113 #endif
114 
115 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
116 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLBaseMemoryAllocator, gst_object_unref)
117 #endif
118 
119 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
120 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLBufferAllocator, gst_object_unref)
121 #endif
122 
123 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
124 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLBufferPool, gst_object_unref)
125 #endif
126 
127 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
128 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLColorConvert, gst_object_unref)
129 #endif
130 
131 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
132 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLContext, gst_object_unref)
133 #endif
134 
135 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
136 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLDisplay, gst_object_unref)
137 #endif
138 
139 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
140 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLFilter, gst_object_unref)
141 #endif
142 
143 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
144 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLMemoryAllocator, gst_object_unref)
145 #endif
146 
147 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
148 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLMemoryPBOAllocator, gst_object_unref)
149 #endif
150 
151 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
152 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLOverlayCompositor, gst_object_unref)
153 #endif
154 
155 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
156 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLSLStage, gst_object_unref)
157 #endif
158 
159 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
160 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLShader, gst_object_unref)
161 #endif
162 
163 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
164 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLUpload, gst_object_unref)
165 #endif
166 
167 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
168 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLViewConvert, gst_object_unref)
169 #endif
170 
171 #ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
172 G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGLWindow, gst_object_unref)
173 #endif
174 
175 G_END_DECLS
176 
177 #endif /* __GST_GL_FWD_H__ */
178