1/* GStreamer
2 * Copyright (C) 1999,2000 Erik Walthinsen <[email protected]>
3 * 2000 Wim Taymans <[email protected]>
4 *
5 * gst.h: Main header for GStreamer, apps should include this
6 *
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version.
11 *
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Library General Public License for more details.
16 *
17 * You should have received a copy of the GNU Library General Public
18 * License along with this library; if not, write to the
19 * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
20 * Boston, MA 02110-1301, USA.
21 */
22
23
24#ifndef __GST_H__
25#define __GST_H__
26
27#include <glib.h>
28
29#include <gst/glib-compat.h>
30
31#include <gst/gstenumtypes.h>
32#include <gst/gstversion.h>
33
34#include <gst/gstatomicqueue.h>
35#include <gst/gstbin.h>
36#include <gst/gstbuffer.h>
37#include <gst/gstbufferlist.h>
38#include <gst/gstbufferpool.h>
39#include <gst/gstcaps.h>
40#include <gst/gstcapsfeatures.h>
41#include <gst/gstchildproxy.h>
42#include <gst/gstclock.h>
43#include <gst/gstcontrolsource.h>
44#include <gst/gstdatetime.h>
45#include <gst/gstdebugutils.h>
46#include <gst/gstdevice.h>
47#include <gst/gstdevicemonitor.h>
48#include <gst/gstdeviceprovider.h>
49#include <gst/gstdynamictypefactory.h>
50#include <gst/gstelement.h>
51#include <gst/gstelementmetadata.h>
52#include <gst/gsterror.h>
53#include <gst/gstevent.h>
54#include <gst/gstghostpad.h>
55#include <gst/gstinfo.h>
56#include <gst/gstiterator.h>
57#include <gst/gstmessage.h>
58#include <gst/gstmemory.h>
59#include <gst/gstmeta.h>
60#include <gst/gstminiobject.h>
61#include <gst/gstobject.h>
62#include <gst/gststreamcollection.h>
63#include <gst/gstpad.h>
64#include <gst/gstparamspecs.h>
65#include <gst/gstpipeline.h>
66#include <gst/gstplugin.h>
67#include <gst/gstpoll.h>
68#include <gst/gstpreset.h>
69#include <gst/gstprotection.h>
70#include <gst/gstquery.h>
71#include <gst/gstregistry.h>
72#include <gst/gstpromise.h>
73#include <gst/gstsample.h>
74#include <gst/gstsegment.h>
75#include <gst/gststreams.h>
76#include <gst/gststructure.h>
77#include <gst/gstsystemclock.h>
78#include <gst/gsttaglist.h>
79#include <gst/gsttagsetter.h>
80#include <gst/gsttask.h>
81#include <gst/gsttaskpool.h>
82#include <gst/gsttoc.h>
83#include <gst/gsttocsetter.h>
84#include <gst/gsttracer.h>
85#include <gst/gsttracerfactory.h>
86#include <gst/gsttracerrecord.h>
87#include <gst/gsttypefind.h>
88#include <gst/gsttypefindfactory.h>
89#include <gst/gsturi.h>
90#include <gst/gstutils.h>
91#include <gst/gstvalue.h>
92
93#include <gst/gstparse.h>
94
95/* API compatibility stuff */
96#include <gst/gstcompat.h>
97
98G_BEGIN_DECLS
99
100GST_API
101void gst_init (int *argc, char **argv[]);
102
103GST_API
104gboolean gst_init_check (int *argc, char **argv[],
105 GError ** err);
106GST_API
107gboolean gst_is_initialized (void);
108
109GST_API
110GOptionGroup * gst_init_get_option_group (void);
111
112GST_API
113void gst_deinit (void);
114
115GST_API
116void gst_version (guint *major, guint *minor,
117 guint *micro, guint *nano);
118GST_API
119gchar * gst_version_string (void);
120
121GST_API
122gboolean gst_segtrap_is_enabled (void);
123
124GST_API
125void gst_segtrap_set_enabled (gboolean enabled);
126
127GST_API
128gboolean gst_registry_fork_is_enabled (void);
129
130GST_API
131void gst_registry_fork_set_enabled (gboolean enabled);
132
133GST_API
134gboolean gst_update_registry (void);
135
136GST_API
137const gchar * gst_get_main_executable_path (void);
138
139G_END_DECLS
140
141#endif /* __GST_H__ */
142