mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-09-08 13:18:52 +00:00
TODO: For now Global and Constants for plugins are moved into their own classes because the code generator overrides files which already exists.
133 lines
11 KiB
XML
133 lines
11 KiB
XML
<?xml version="1.0"?>
|
|
|
|
<!--
|
|
Copyright (C) 2013 Stephan Sundermann <stephansundermann@gmail.com>
|
|
|
|
This program is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU Affero General Public License as
|
|
published by the Free Software Foundation, either version 3 of the
|
|
License, or (at your option) any later version.
|
|
|
|
This program 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 Affero General Public License for more details.
|
|
|
|
You should have received a copy of the GNU Affero General Public License
|
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
-->
|
|
<metadata>
|
|
<attr path="/api/namespace" name="library">libgstreamer-1.0-0.dll</attr>
|
|
<!-- Conflicts with structs -->
|
|
<attr path="/api/namespace/callback[@cname='GstMessageFunc']" name="name">MessageFunc</attr>
|
|
<attr path="/api/namespace/callback[@cname='GstQueryFunc']" name="name">QueryFunc</attr>
|
|
<!-- No Conversion for GLib.Value -->
|
|
<attr path="/api/namespace/object[@cname='GstPad']/property[@name='Caps']" name="type">gpointer</attr>
|
|
<!-- Error with array -->
|
|
<attr path="/api/namespace/object[@cname='GstGlobal']/method[@cname='gst_formats_contains']" name="hidden">true</attr>
|
|
<!-- MiniObject issues -->
|
|
<attr path="/api/namespace/struct[@cname='GstMiniObject']/field[@cname='copy']" name="type">gpointer</attr>
|
|
<attr path="/api/namespace/struct[@cname='GstMiniObject']/field[@cname='free']" name="type">gpointer</attr>
|
|
<attr path="/api/namespace/struct[@cname='GstMiniObject']/field[@cname='dispose']" name="type">gpointer</attr>
|
|
<attr path="/api/namespace/struct[@cname='GstMessage']/field[@cname='cond']" name="type">GCond*</attr>
|
|
<!-- structs and objects that should be opaque -->
|
|
<attr path="/api/namespace/boxed[@cname='GstDateTime']" name="opaque">true</attr>
|
|
<attr path="/api/namespace/boxed[@cname='GstBufferList']" name="opaque">true</attr>
|
|
<attr path="/api/namespace/boxed[@cname='GstSample']" name="opaque">true</attr>
|
|
<attr path="/api/namespace/boxed[@cname='GstAtomicQueue']" name="opaque">true</attr>
|
|
<attr path="/api/namespace/boxed[@cname='GstParseContext']" name="opaque">true</attr>
|
|
<attr path="/api/namespace/object[@cname='GstElementFactory']" name="opaque">true</attr>
|
|
<attr path="/api/namespace/object[@cname='GstTypeFindFactory']" name="opaque">true</attr>
|
|
<attr path="/api/namespace/object[@cname='GstPluginFeature']" name="opaque">true</attr>
|
|
<attr path="/api/namespace/object[@cname='GstPlugin']" name="opaque">true</attr>
|
|
<attr path="/api/namespace/object[@cname='GstBus']" name="opaque">true</attr>
|
|
<attr path="/api/namespace/object[@cname='GstRegistry']" name="opaque">true</attr>
|
|
<!-- add native attribute to all structs which need special handling -->
|
|
<change-node-type path="/api/namespace//boxed[field/@cname='mini_object']">struct</change-node-type>
|
|
<attr path="/api/namespace//struct[field/@cname='mini_object']" name="native">true</attr>
|
|
<change-node-type path="/api/namespace//boxed[@cname='GstStructure']">struct</change-node-type>
|
|
<attr path="/api/namespace/struct[@cname='GstStructure']" name="native">true</attr>
|
|
<remove-node path="/api/namespace/boxed[@cname='GstStructure']/field[@cname='name']" />
|
|
<!-- Maybe some problems with the name -->
|
|
<remove-node path="/api/namespace/interface[@cname='GstURIHandler']/class_struct/method[@vm='get_type']" name="vm" />
|
|
<remove-node path="/api/namespace/interface[@cname='GstURIHandler']/virtual_method[@cname='get_type']" name="hidden" />
|
|
<!-- gapi cannot handle count parameters properly -->
|
|
<attr path="/api/namespace/object[@cname='GstGlobal']/method[@cname='gst_init']/parameters/parameter[@name='argc']" name="name">n_argc</attr>
|
|
<attr path="/api/namespace/object[@cname='GstGlobal']/method[@cname='gst_init_check']/parameters/parameter[@name='argc']" name="name">n_argc</attr>
|
|
<!-- calling oldobj.Handle should fix this -->
|
|
<remove-attr path="/api/namespace/object[@cname='GstObject']/method[@cname='gst_object_replace']/parameters/parameter[@name='oldobj']" name="pass_as" />
|
|
<!-- Some glue problems -->
|
|
<attr path="/api/namespace/object[@cname='GstObject']/field[@cname='object']" name="hidden">true</attr>
|
|
<attr path="/api/namespace/struct[@cname='GstClockEntry']/field[@cname='func']" name="hidden">true</attr>
|
|
<attr path="/api/namespace/struct[@cname='GstClockEntry']/field[@cname='destroy_data']" name="hidden">true</attr>
|
|
<attr path="/api/namespace/object[@cname='GstTask']/field[@cname='notify']" name="hidden">true</attr>
|
|
<!-- Element is not abstract but should not be instantiable from managed -->
|
|
<remove-attr path="/api/namespace/object[@cname='GstElement']" name="abstract" />
|
|
<attr path="/api/namespace/object[@cname='GstElement']" name="defaultconstructoraccess" >protected</attr>
|
|
<!-- Add miniobject methods to all miniobject types -->
|
|
<copy-node path="/api/namespace/struct[@cname='GstMiniObject']//method">/api/namespace//boxed[field/@cname='mini_object']</copy-node>
|
|
<attr path="/api/namespace/struct[@cname='GstMiniObject']//method" name="hidden">true</attr>
|
|
<!-- API improvements -->
|
|
<add-node path="/api/namespace[@name='Gst']"><class name="Parse" cname="GstParse" disable_void_ctor="1"></class></add-node>
|
|
<move-node path="/api/namespace/object[@name='Global']//method[starts-with(@cname, 'gst_parse')]">/api/namespace/class[@name='Parse']</move-node>
|
|
|
|
<remove-node path="/api/namespace/object[@name='Global']//method[@cname = 'gst_caps_from_string']" />
|
|
<move-node path="/api/namespace/object[@name='Global']//method[contains(@cname, 'caps')]">/api/namespace/struct[@cname='GstCaps']</move-node>
|
|
|
|
<add-node path="/api/namespace[@name='Gst']"><class name="Debug" cname="GstDebug" disable_void_ctor="1"></class></add-node>
|
|
<move-node path="/api/namespace/object[@name='Global']//method[starts-with(@cname, 'gst_debug')]">/api/namespace/class[@cname='GstDebug']</move-node>
|
|
|
|
<add-node path="/api/namespace[@name='Gst']"><class name="Application" cname="GstApplication" disable_void_ctor="1"></class></add-node>
|
|
<move-node path="/api/namespace/object[@name='Global']//method[contains(@cname, 'init') or starts-with(@cname, 'gst_version')]">/api/namespace/class[@cname='GstApplication']</move-node>
|
|
|
|
<add-node path="/api/namespace[@name='Gst']"><class name="Value" cname="GstValue" disable_void_ctor="1"></class></add-node>
|
|
<move-node path="/api/namespace/object[@name='Global']//method[starts-with(@cname, 'gst_value')]">/api/namespace/class[@cname='GstValue']</move-node>
|
|
|
|
<add-node path="/api/namespace[@name='Gst']"><class name="Tag" cname="GstTag" disable_void_ctor="1"></class></add-node>
|
|
<move-node path="/api/namespace/object[@name='Global']//method[starts-with(@cname, 'gst_tag')]">/api/namespace/class[@cname='GstTag']</move-node>
|
|
|
|
<add-node path="/api/namespace[@name='Gst']"><class name="Util" cname="GstUtil" disable_void_ctor="1"></class></add-node>
|
|
<move-node path="/api/namespace/object[@name='Global']//method[starts-with(@cname, 'gst_format') or starts-with(@cname, 'gst_uri') or starts-with(@cname, 'gst_util') or @cname='gst_filename_to_uri']">/api/namespace/class[@cname='GstUtil']</move-node>
|
|
|
|
<move-node path="/api/namespace/object[@name='Global']//method[contains(@cname, 'registry')]">/api/namespace/object[@cname='GstRegistry']</move-node>
|
|
<move-node path="/api/namespace/object[@name='Global']//method[starts-with(@cname, 'gst_poll')]">/api/namespace/struct[@cname='GstPoll']</move-node>
|
|
<move-node path="/api/namespace/object[@name='Global']//method[starts-with(@cname, 'gst_message')]">/api/namespace/struct[@cname='GstMessage']</move-node>
|
|
<move-node path="/api/namespace/object[@name='Global']//method[starts-with(@cname, 'gst_event')]">/api/namespace/struct[@cname='GstEvent']</move-node>
|
|
<move-node path="/api/namespace/object[@name='Global']//method[starts-with(@cname, 'gst_query')]">/api/namespace/struct[@cname='GstQuery']</move-node>
|
|
<move-node path="/api/namespace/object[@name='Global']//method[starts-with(@cname, 'gst_pad')]">/api/namespace/object[@cname='GstPad']</move-node>
|
|
|
|
<!-- Things implemented on our own -->
|
|
<attr path="/api/namespace/struct[@cname='GstMessage']/method[@cname='gst_message_parse_error']" name="hidden">true</attr>
|
|
<attr path="/api/namespace/struct[@cname='GstMessage']/method[@cname='gst_message_get_stream_status_object']" name="hidden">true</attr>
|
|
<attr path="/api/namespace/struct[@cname='GstMessage']/method[@cname='gst_message_set_stream_status_object']" name="hidden">true</attr>
|
|
|
|
<!-- GstVideo -->
|
|
<attr path="/api/namespace/boxed[@cname='GstVideoCodecState']/field[@cname='padding']" name="type">gpointer</attr>
|
|
<attr path="/api/namespace/object[@cname='GstVideoDecoder']/field[@cname='padding']" name="type">gpointer</attr>
|
|
<attr path="/api/namespace/object[@cname='GstVideoDecoder']/class_struct/field[@cname='padding']" name="type">gpointer</attr>
|
|
<attr path="/api/namespace/enum[@cname='GstVideoColorRange']/member[@name='0255']" name="name">EightBit</attr>
|
|
<attr path="/api/namespace/enum[@cname='GstVideoColorRange']/member[@name='16235']" name="name">SixteenBit</attr>
|
|
<attr path="/api/namespace/object[@cname='GstAdapter']/method[@cname='gst_adapter_copy']" name="hidden">1</attr>
|
|
<attr path="/api/namespace/struct[@cname='GstByteReader']" name="opaque">1</attr>
|
|
<remove-node path="/api/namespace//struct[@cname='GstByteReader']//method" />
|
|
|
|
<!-- GstAudio -->
|
|
<attr path="/api/namespace/object[@cname='GstAudioClock']/field[@cname='destroy_notify']" name="hidden">1</attr>
|
|
<attr path="/api/namespace/interface[@cname='GstStreamVolume']/property[@cname='volume']" name="hidden">1</attr>
|
|
|
|
<!-- Namespace switches -->
|
|
<attr path="/api/namespace[@name='GstVideo']" name="name">Gst.Video</attr>
|
|
<attr path="/api/namespace[@name='GstAudio']" name="name">Gst.Audio</attr>
|
|
<attr path="/api/namespace[@name='GstBase']" name="name">Gst.Base</attr>
|
|
<attr path="/api/namespace[@name='GstPbutils']" name="name">Gst.PbUtils</attr>
|
|
<attr path="/api/namespace[@name='Gst.Base']/object[@name='Global']" name="name">GlobalBase</attr>
|
|
<attr path="/api/namespace[@name='Gst.Video']/object[@name='Global']" name="name">GlobalVideo</attr>
|
|
<attr path="/api/namespace[@name='Gst.Audio']/object[@name='Global']" name="name">GlobalAudio</attr>
|
|
<attr path="/api/namespace[@name='Gst.PbUtils']/object[@name='Global']" name="name">GlobalPbUtil</attr>
|
|
<attr path="/api/namespace[@name='GstPbutils']" name="name">Gst.PbUtils</attr>
|
|
<attr path="/api/namespace[@name='Gst.Base']/object[@name='Constants']" name="name">ConstantsBase</attr>
|
|
<attr path="/api/namespace[@name='Gst.Video']/object[@name='Constants']" name="name">ConstantsVideo</attr>
|
|
<attr path="/api/namespace[@name='Gst.Audio']/object[@name='Constants']" name="name">ConstantsAudio</attr>
|
|
<attr path="/api/namespace[@name='Gst.PbUtils']/object[@name='Constants']" name="name">ConstantsPbUtil</attr>
|
|
</metadata>
|
|
|