1 /* GStreamer Editing Services
2  * Copyright (C) 2009 Edward Hervey <edward.hervey@collabora.co.uk>
3  *               2009 Nokia Corporation
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 __GES_TYPES_H__
22 #define __GES_TYPES_H__
23 
24 #include <glib.h>
25 #include <ges/ges-prelude.h>
26 
27 G_BEGIN_DECLS
28 
29 /* Padding */
30 #define GES_PADDING         4
31 
32 /* padding for very extensible base classes */
33 #define GES_PADDING_LARGE   20
34 
35 /* Type definitions */
36 
37 typedef struct _GESTimeline GESTimeline;
38 typedef struct _GESTimelineClass GESTimelineClass;
39 
40 typedef struct _GESLayer GESLayer;
41 typedef struct _GESLayerClass GESLayerClass;
42 
43 typedef struct _GESTimelineElementClass GESTimelineElementClass;
44 typedef struct _GESTimelineElement GESTimelineElement;
45 
46 typedef struct _GESContainer GESContainer;
47 typedef struct _GESContainerClass GESContainerClass;
48 
49 typedef struct _GESClip GESClip;
50 typedef struct _GESClipClass GESClipClass;
51 
52 typedef struct _GESOperationClip GESOperationClip;
53 typedef struct _GESOperationClipClass GESOperationClipClass;
54 
55 typedef struct _GESPipeline GESPipeline;
56 typedef struct _GESPipelineClass GESPipelineClass;
57 
58 typedef struct _GESSourceClip GESSourceClip;
59 typedef struct _GESSourceClipClass GESSourceClipClass;
60 
61 typedef struct _GESBaseEffectClip GESBaseEffectClip;
62 typedef struct _GESBaseEffectClipClass GESBaseEffectClipClass;
63 
64 typedef struct _GESUriClip GESUriClip;
65 typedef struct _GESUriClipClass GESUriClipClass;
66 
67 typedef struct _GESBaseTransitionClip GESBaseTransitionClip;
68 typedef struct _GESBaseTransitionClipClass GESBaseTransitionClipClass;
69 
70 typedef struct _GESTransitionClip GESTransitionClip;
71 typedef struct _GESTransitionClipClass GESTransitionClipClass;
72 
73 typedef struct _GESTestClip GESTestClip;
74 typedef struct _GESTestClipClass GESTestClipClass;
75 
76 typedef struct _GESTitleClip GESTitleClip;
77 typedef struct _GESTitleClipClass GESTitleClipClass;
78 
79 typedef struct _GESOverlayClip GESOverlayClip;
80 typedef struct _GESOverlayClipClass GESOverlayClipClass;
81 
82 typedef struct _GESTextOverlayClip GESTextOverlayClip;
83 typedef struct _GESTextOverlayClipClass GESTextOverlayClipClass;
84 
85 typedef struct _GESEffectClip GESEffectClip;
86 typedef struct _GESEffectClipClass GESEffectClipClass;
87 
88 typedef struct _GESGroup GESGroup;
89 typedef struct _GESGroupClass GESGroupClass;
90 
91 typedef struct _GESTrack GESTrack;
92 typedef struct _GESTrackClass GESTrackClass;
93 
94 typedef struct _GESTrackElement GESTrackElement;
95 typedef struct _GESTrackElementClass GESTrackElementClass;
96 
97 typedef struct _GESSource GESSource;
98 typedef struct _GESSourceClass GESSourceClass;
99 
100 typedef struct _GESOperation GESOperation;
101 typedef struct _GESOperationClass GESOperationClass;
102 
103 typedef struct _GESBaseEffect GESBaseEffect;
104 typedef struct _GESBaseEffectClass GESBaseEffectClass;
105 
106 typedef struct _GESEffect GESEffect;
107 typedef struct _GESEffectClass GESEffectClass;
108 
109 typedef struct _GESVideoSource GESVideoSource;
110 typedef struct _GESVideoSourceClass GESVideoSourceClass;
111 
112 typedef struct _GESAudioSource GESAudioSource;
113 typedef struct _GESAudioSourceClass GESAudioSourceClass;
114 
115 typedef struct _GESVideoUriSource GESVideoUriSource;
116 typedef struct _GESVideoUriSourceClass GESVideoUriSourceClass;
117 
118 typedef struct _GESAudioUriSource GESAudioUriSource;
119 typedef struct _GESAudioUriSourceClass GESAudioUriSourceClass;
120 
121 typedef struct _GESImageSource GESImageSource;
122 typedef struct _GESImageSourceClass GESImageSourceClass;
123 
124 typedef struct _GESMultiFileSource GESMultiFileSource;
125 typedef struct _GESMultiFileSourceClass GESMultiFileSourceClass;
126 
127 typedef struct _GESTransition GESTransition;
128 typedef struct _GESTransitionClass GESTransitionClass;
129 
130 typedef struct _GESAudioTransition GESAudioTransition;
131 typedef struct _GESAudioTransitionClass
132   GESAudioTransitionClass;
133 
134 typedef struct _GESVideoTransition GESVideoTransition;
135 typedef struct _GESVideoTransitionClass
136   GESVideoTransitionClass;
137 
138 typedef struct _GESVideoTestSource GESVideoTestSource;
139 typedef struct _GESVideoTestSourceClass
140   GESVideoTestSourceClass;
141 
142 typedef struct _GESAudioTestSource GESAudioTestSource;
143 typedef struct _GESAudioTestSourceClass
144   GESAudioTestSourceClass;
145 
146 typedef struct _GESTitleSource GESTitleSource;
147 typedef struct _GESTitleSourceClass
148   GESTitleSourceClass;
149 
150 typedef struct _GESTextOverlay GESTextOverlay;
151 typedef struct _GESTextOverlayClass
152   GESTextOverlayClass;
153 
154 typedef struct _GESFormatter GESFormatter;
155 typedef struct _GESFormatterClass GESFormatterClass;
156 
157 typedef struct _GESPitiviFormatter GESPitiviFormatter;
158 typedef struct _GESPitiviFormatterClass GESPitiviFormatterClass;
159 
160 typedef struct _GESAsset GESAsset;
161 typedef struct _GESAssetClass GESAssetClass;
162 
163 typedef struct _GESClipAsset GESClipAsset;
164 typedef struct _GESClipAssetClass GESClipAssetClass;
165 
166 typedef struct _GESUriClipAsset GESUriClipAsset;
167 typedef struct _GESUriClipAssetClass GESUriClipAssetClass;
168 
169 typedef struct _GESTrackElementAsset GESTrackElementAsset;
170 typedef struct _GESTrackElementAssetClass GESTrackElementAssetClass;
171 
172 typedef struct _GESUriSourceAsset GESUriSourceAsset;
173 typedef struct _GESUriSourceAssetClass GESUriSourceAssetClass;
174 
175 typedef struct _GESProject GESProject;
176 typedef struct _GESProjectClass GESProjectClass;
177 
178 typedef struct _GESExtractable GESExtractable;
179 typedef struct _GESExtractableInterface GESExtractableInterface;
180 
181 typedef struct _GESVideoTrackClass GESVideoTrackClass;
182 typedef struct _GESVideoTrack GESVideoTrack;
183 
184 typedef struct _GESAudioTrackClass GESAudioTrackClass;
185 typedef struct _GESAudioTrack GESAudioTrack;
186 
187 G_END_DECLS
188 
189 #endif /* __GES_TYPES_H__ */
190