mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-06-05 06:58:56 +00:00
NavigationAdapter: Added ParseCommand
This commit is contained in:
parent
c5e5940a76
commit
8386a11aae
2 changed files with 46 additions and 0 deletions
43
sources/custom/NavigationQuery.cs
Normal file
43
sources/custom/NavigationQuery.cs
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
// 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/>.
|
||||||
|
|
||||||
|
namespace Gst.Video {
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
public partial class NavigationAdapter {
|
||||||
|
|
||||||
|
public static bool ParseCommands (Gst.Query query, out NavigationCommand[] cmds) {
|
||||||
|
uint len;
|
||||||
|
|
||||||
|
cmds = null;
|
||||||
|
if (!QueryParseCommandsLength (query, out len))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
cmds = new NavigationCommand[len];
|
||||||
|
|
||||||
|
for (uint i = 0; i < len; i++) {
|
||||||
|
NavigationCommand cmd;
|
||||||
|
|
||||||
|
if (!QueryParseCommandsNth (query, i, out cmd))
|
||||||
|
return false;
|
||||||
|
cmds[i] = cmd;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -112,6 +112,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
<attr path="/api/namespace/object[@cname='GstAdapter']/method[@cname='gst_adapter_copy']" name="hidden">1</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>
|
<attr path="/api/namespace/struct[@cname='GstByteReader']" name="opaque">1</attr>
|
||||||
<remove-node path="/api/namespace//struct[@cname='GstByteReader']//method" />
|
<remove-node path="/api/namespace//struct[@cname='GstByteReader']//method" />
|
||||||
|
<!-- FIXME: remove when https://bugzilla.gnome.org/show_bug.cgi?id=709938 is fixed -->
|
||||||
|
<attr path="/api/namespace/interface[@cname='GstNavigation']/method[@cname='gst_navigation_query_parse_commands_length']/parameters/parameter[@name='n_cmds']" name="pass_as">out</attr>
|
||||||
|
<attr path="/api/namespace/interface[@cname='GstNavigation']/method[@cname='gst_navigation_query_parse_commands_nth']/parameters/parameter[@name='cmd']" name="pass_as">out</attr>
|
||||||
|
|
||||||
<!-- GstAudio -->
|
<!-- GstAudio -->
|
||||||
<attr path="/api/namespace/object[@cname='GstAudioClock']/field[@cname='destroy_notify']" name="hidden">1</attr>
|
<attr path="/api/namespace/object[@cname='GstAudioClock']/field[@cname='destroy_notify']" name="hidden">1</attr>
|
||||||
|
|
Loading…
Reference in a new issue