gnomemm r1331 - in gstreamermm/trunk: . gstreamer gstreamer/src
- From: jaalburqu svn gnome org
- To: svn-commits-list gnome org
- Subject: gnomemm r1331 - in gstreamermm/trunk: . gstreamer gstreamer/src
- Date: Fri, 8 Feb 2008 20:39:42 +0000 (GMT)
Author: jaalburqu
Date: Fri Feb 8 20:39:41 2008
New Revision: 1331
URL: http://svn.gnome.org/viewvc/gnomemm?rev=1331&view=rev
Log:
2008-02-08 Josà Alburquerque <jaalburqu svn gnome org>
* gstreamer/gstreamermm.h:
* gstreamer/src/Makefile_list_of_hg.am_fragment:
* gstreamer/src/element.hg:
* gstreamer/src/elementfactory.ccg:
* gstreamer/src/elementfactory.hg:
* gstreamer/src/plugin.ccg:
* gstreamer/src/plugin.hg:
* gstreamer/src/pluginfeature.ccg:
* gstreamer/src/pluginfeature.hg: Added PluginFeature, Plugin and
ElementFactory (still need to be wrapped); Removed unused _PINCLUDE in
element.hg
Added:
gstreamermm/trunk/gstreamer/src/elementfactory.ccg
gstreamermm/trunk/gstreamer/src/elementfactory.hg
gstreamermm/trunk/gstreamer/src/plugin.ccg
gstreamermm/trunk/gstreamer/src/plugin.hg
gstreamermm/trunk/gstreamer/src/pluginfeature.ccg
gstreamermm/trunk/gstreamer/src/pluginfeature.hg
Modified:
gstreamermm/trunk/ChangeLog
gstreamermm/trunk/gstreamer/gstreamermm.h
gstreamermm/trunk/gstreamer/src/Makefile_list_of_hg.am_fragment
gstreamermm/trunk/gstreamer/src/element.hg
Modified: gstreamermm/trunk/gstreamer/gstreamermm.h
==============================================================================
--- gstreamermm/trunk/gstreamer/gstreamermm.h (original)
+++ gstreamermm/trunk/gstreamer/gstreamermm.h Fri Feb 8 20:39:41 2008
@@ -8,6 +8,7 @@
#include <gstreamermm/childproxy.h>
#include <gstreamermm/clock.h>
#include <gstreamermm/element.h>
+#include <gstreamermm/elementfactory.h>
#include <gstreamermm/enums.h>
#include <gstreamermm/error.h>
#include <gstreamermm/event.h>
@@ -18,6 +19,8 @@
#include <gstreamermm/pad.h>
#include <gstreamermm/padtemplate.h>
#include <gstreamermm/pipeline.h>
+#include <gstreamermm/plugin.h>
+#include <gstreamermm/pluginfeature.h>
#include <gstreamermm/query.h>
#include <gstreamermm/structure.h>
#include <gstreamermm/systemclock.h>
Modified: gstreamermm/trunk/gstreamer/src/Makefile_list_of_hg.am_fragment
==============================================================================
--- gstreamermm/trunk/gstreamer/src/Makefile_list_of_hg.am_fragment (original)
+++ gstreamermm/trunk/gstreamer/src/Makefile_list_of_hg.am_fragment Fri Feb 8 20:39:41 2008
@@ -5,9 +5,10 @@
files_posix_hg =
files_win32_hg =
files_general_hg = bin.hg buffer.hg bus.hg caps.hg childproxy.hg clock.hg \
- element.hg enums.hg error.hg event.hg format.hg iterator.hg \
- message.hg pad.hg padtemplate.hg pipeline.hg query.hg structure.hg \
- systemclock.hg value.hg xml.hg
+ element.hg elementfactory.hg enums.hg error.hg event.hg format.hg \
+ iterator.hg message.hg pad.hg padtemplate.hg pipeline.hg plugin.hg \
+ pluginfeature.hg query.hg structure.hg systemclock.hg value.hg \
+ xml.hg
files_general_deprecated_hg =
Modified: gstreamermm/trunk/gstreamer/src/element.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/element.hg (original)
+++ gstreamermm/trunk/gstreamer/src/element.hg Fri Feb 8 20:39:41 2008
@@ -21,7 +21,6 @@
#include <gstreamermm/clock.h>
#include <gstreamermm/enums.h>
_DEFS(gstreamermm,gst)
-_PINCLUDE(glibmm/private/object_p.h)
_PINCLUDE(gstreamermm/private/object_p.h)
namespace Gst
Added: gstreamermm/trunk/gstreamer/src/elementfactory.ccg
==============================================================================
--- (empty file)
+++ gstreamermm/trunk/gstreamer/src/elementfactory.ccg Fri Feb 8 20:39:41 2008
@@ -0,0 +1,21 @@
+// -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 2 -*-
+
+/* gstreamermm - a C++ wrapper for gstreamer
+ *
+ * Copyright 2008 The gstreamermm Development Team
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the Free
+ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
Added: gstreamermm/trunk/gstreamer/src/elementfactory.hg
==============================================================================
--- (empty file)
+++ gstreamermm/trunk/gstreamer/src/elementfactory.hg Fri Feb 8 20:39:41 2008
@@ -0,0 +1,56 @@
+// -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 2 -*-
+
+/* gstreamermm - a C++ wrapper for gstreamer
+ *
+ * Copyright 2008 The gstreamermm Development Team
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the Free
+ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#include <gst/gstelement.h>
+#include <gst/gstelementfactory.h>
+#include <gstreamermm/pluginfeature.h>
+#include <gstreamermm/object.h>
+
+_DEFS(gstreamermm,gst)
+_PINCLUDE(gstreamermm/private/pluginfeature_p.h)
+_PINCLUDE(gstreamermm/private/object_p.h)
+
+namespace Gst
+{
+
+/** ElementFactory â Create Elements from a factory.
+ * ElementFactory is used to create instances of elements. A Elementfactory can
+ * be added to a Plugin as it is also a PluginFeature.
+ *
+ * Use the find() and create() functions to create element instances or use
+ * make() as a convenient shortcut.
+ *
+ * The following code example shows you how to create a GstFileSrc element.
+ *
+ * TODO: Add code example from GStreamer docs
+ *
+ * @newin2p16
+ */
+class ElementFactory : public PluginFeature
+{
+ _CLASS_GOBJECT(ElementFactory, GstElementFactory, GST_ELEMENT_FACTORY, PluginFeature, GstPluginFeature)
+
+public:
+
+};
+
+} // namespace Gst
+
Added: gstreamermm/trunk/gstreamer/src/plugin.ccg
==============================================================================
--- (empty file)
+++ gstreamermm/trunk/gstreamer/src/plugin.ccg Fri Feb 8 20:39:41 2008
@@ -0,0 +1,21 @@
+// -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 2 -*-
+
+/* gstreamermm - a C++ wrapper for gstreamer
+ *
+ * Copyright 2008 The gstreamermm Development Team
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the Free
+ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
Added: gstreamermm/trunk/gstreamer/src/plugin.hg
==============================================================================
--- (empty file)
+++ gstreamermm/trunk/gstreamer/src/plugin.hg Fri Feb 8 20:39:41 2008
@@ -0,0 +1,65 @@
+// -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 2 -*-
+
+/* gstreamermm - a C++ wrapper for gstreamer
+ *
+ * Copyright 2008 The gstreamermm Development Team
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the Free
+ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#include <gst/gstplugin.h>
+#include <gstreamermm/object.h>
+
+_DEFS(gstreamermm,gst)
+_PINCLUDE(gstreamermm/private/object_p.h)
+
+namespace Gst
+{
+
+//TODO: Edit references below to use gstreamermm classes/methods
+
+/** Plugin â Container for features loaded from a shared object module.
+ * GStreamer is extensible, so Element instances can be loaded at runtime. A
+ * plugin system can provide one or more of the basic GStreamer
+ * PluginFeature subclasses.
+ *
+ * A plugin should export a symbol gst_plugin_desc that is a struct of type
+ * PluginDesc. the plugin loader will check the version of the core library
+ * the plugin was linked against and will create a new Plugin. It will then
+ * call the PluginInitFunc function that was provided in the gst_plugin_desc.
+ *
+ * Once you have a handle to a Plugin (e.g. from the RegistryPool), you can add
+ * any object that subclasses PluginFeature.
+ *
+ * Use find_feature() and feature_list() to find features in a plugin.
+ *
+ * Usually plugins are always automaticlly loaded so you don't need to call
+ * gst_plugin_load() explicitly to bring it into memory. There are options to
+ * statically link plugins to an app or even use GStreamer without a plugin
+ * repository in which case gst_plugin_load() can be needed to bring the plugin
+ * into memory.
+ *
+ * @newin2p16
+ */
+class Plugin : public Object
+{
+ _CLASS_GOBJECT(Plugin, GstPlugin, GST_PLUGIN, Object, GstObject)
+
+public:
+
+};
+
+} // namespace Gst
+
Added: gstreamermm/trunk/gstreamer/src/pluginfeature.ccg
==============================================================================
--- (empty file)
+++ gstreamermm/trunk/gstreamer/src/pluginfeature.ccg Fri Feb 8 20:39:41 2008
@@ -0,0 +1,21 @@
+// -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 2 -*-
+
+/* gstreamermm - a C++ wrapper for gstreamer
+ *
+ * Copyright 2008 The gstreamermm Development Team
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the Free
+ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
Added: gstreamermm/trunk/gstreamer/src/pluginfeature.hg
==============================================================================
--- (empty file)
+++ gstreamermm/trunk/gstreamer/src/pluginfeature.hg Fri Feb 8 20:39:41 2008
@@ -0,0 +1,44 @@
+// -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 2 -*-
+
+/* gstreamermm - a C++ wrapper for gstreamer
+ *
+ * Copyright 2008 The gstreamermm Development Team
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the Free
+ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#include <gst/gstpluginfeature.h>
+#include <gstreamermm/object.h>
+
+_DEFS(gstreamermm,gst)
+_PINCLUDE(gstreamermm/private/object_p.h)
+
+namespace Gst
+{
+
+/** This is a base class for anything that can be added to a Plugin.
+ *
+ * @newin2p16
+ */
+class PluginFeature : public Object
+{
+ _CLASS_GOBJECT(PluginFeature, GstPluginFeature, GST_PLUGIN_FEATURE, Object, GstObject)
+
+public:
+
+};
+
+} // namespace Gst
+
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]