mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-07-20 21:38:23 +00:00
541 lines
21 KiB
C#
541 lines
21 KiB
C#
// This file was generated by the Gtk# code generator.
|
|
// Any changes made will be lost if regenerated.
|
|
|
|
namespace Gst {
|
|
|
|
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Runtime.InteropServices;
|
|
|
|
#region Autogenerated code
|
|
public partial class TagList : Gst.MiniObject {
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern IntPtr gst_tag_list_get_type();
|
|
|
|
public static GLib.GType GType {
|
|
get {
|
|
IntPtr raw_ret = gst_tag_list_get_type();
|
|
GLib.GType ret = new GLib.GType(raw_ret);
|
|
return ret;
|
|
}
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern void gst_tag_list_add_value(IntPtr raw, int mode, IntPtr tag, IntPtr value);
|
|
|
|
public void AddValue(Gst.TagMergeMode mode, string tag, GLib.Value value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
IntPtr native_value = GLib.Marshaller.StructureToPtrAlloc (value);
|
|
gst_tag_list_add_value(Handle, (int) mode, native_tag, native_value);
|
|
GLib.Marshaller.Free (native_tag);
|
|
Marshal.FreeHGlobal (native_value);
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern IntPtr gst_tag_list_copy(IntPtr raw);
|
|
|
|
public Gst.TagList Copy() {
|
|
IntPtr raw_ret = gst_tag_list_copy(Handle);
|
|
Gst.TagList ret = raw_ret == IntPtr.Zero ? null : (Gst.TagList) GLib.Opaque.GetOpaque (raw_ret, typeof (Gst.TagList), true);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern void gst_tag_list_foreach(IntPtr raw, GstSharp.TagForeachFuncNative func, IntPtr user_data);
|
|
|
|
public void Foreach(Gst.TagForeachFunc func) {
|
|
GstSharp.TagForeachFuncWrapper func_wrapper = new GstSharp.TagForeachFuncWrapper (func);
|
|
gst_tag_list_foreach(Handle, func_wrapper.NativeDelegate, IntPtr.Zero);
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_boolean(IntPtr raw, IntPtr tag, out bool value);
|
|
|
|
public bool GetBoolean(string tag, out bool value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_boolean(Handle, native_tag, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_boolean_index(IntPtr raw, IntPtr tag, uint index, out bool value);
|
|
|
|
public bool GetBooleanIndex(string tag, uint index, out bool value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_boolean_index(Handle, native_tag, index, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_date(IntPtr raw, IntPtr tag, out IntPtr value);
|
|
|
|
public bool GetDate(string tag, out GLib.Date value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
IntPtr native_value;
|
|
bool raw_ret = gst_tag_list_get_date(Handle, native_tag, out native_value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
value = new GLib.Date(native_value);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_date_index(IntPtr raw, IntPtr tag, uint index, out IntPtr value);
|
|
|
|
public bool GetDateIndex(string tag, uint index, out GLib.Date value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
IntPtr native_value;
|
|
bool raw_ret = gst_tag_list_get_date_index(Handle, native_tag, index, out native_value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
value = new GLib.Date(native_value);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_date_time(IntPtr raw, IntPtr tag, out IntPtr value);
|
|
|
|
public bool GetDateTime(string tag, out Gst.DateTime value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
IntPtr native_value;
|
|
bool raw_ret = gst_tag_list_get_date_time(Handle, native_tag, out native_value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
value = native_value == IntPtr.Zero ? null : (Gst.DateTime) GLib.Opaque.GetOpaque (native_value, typeof (Gst.DateTime), true);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_date_time_index(IntPtr raw, IntPtr tag, uint index, out IntPtr value);
|
|
|
|
public bool GetDateTimeIndex(string tag, uint index, out Gst.DateTime value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
IntPtr native_value;
|
|
bool raw_ret = gst_tag_list_get_date_time_index(Handle, native_tag, index, out native_value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
value = native_value == IntPtr.Zero ? null : (Gst.DateTime) GLib.Opaque.GetOpaque (native_value, typeof (Gst.DateTime), true);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_double(IntPtr raw, IntPtr tag, out double value);
|
|
|
|
public bool GetDouble(string tag, out double value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_double(Handle, native_tag, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_double_index(IntPtr raw, IntPtr tag, uint index, out double value);
|
|
|
|
public bool GetDoubleIndex(string tag, uint index, out double value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_double_index(Handle, native_tag, index, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_float(IntPtr raw, IntPtr tag, out float value);
|
|
|
|
public bool GetFloat(string tag, out float value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_float(Handle, native_tag, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_float_index(IntPtr raw, IntPtr tag, uint index, out float value);
|
|
|
|
public bool GetFloatIndex(string tag, uint index, out float value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_float_index(Handle, native_tag, index, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_int(IntPtr raw, IntPtr tag, out int value);
|
|
|
|
public bool GetInt(string tag, out int value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_int(Handle, native_tag, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_int64(IntPtr raw, IntPtr tag, out long value);
|
|
|
|
public bool GetInt64(string tag, out long value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_int64(Handle, native_tag, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_int64_index(IntPtr raw, IntPtr tag, uint index, out long value);
|
|
|
|
public bool GetInt64Index(string tag, uint index, out long value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_int64_index(Handle, native_tag, index, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_int_index(IntPtr raw, IntPtr tag, uint index, out int value);
|
|
|
|
public bool GetIntIndex(string tag, uint index, out int value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_int_index(Handle, native_tag, index, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_pointer(IntPtr raw, IntPtr tag, out IntPtr value);
|
|
|
|
public bool GetPointer(string tag, out IntPtr value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_pointer(Handle, native_tag, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_pointer_index(IntPtr raw, IntPtr tag, uint index, out IntPtr value);
|
|
|
|
public bool GetPointerIndex(string tag, uint index, out IntPtr value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_pointer_index(Handle, native_tag, index, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_sample(IntPtr raw, IntPtr tag, out IntPtr sample);
|
|
|
|
public bool GetSample(string tag, out Gst.Sample sample) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
IntPtr native_sample;
|
|
bool raw_ret = gst_tag_list_get_sample(Handle, native_tag, out native_sample);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
sample = native_sample == IntPtr.Zero ? null : (Gst.Sample) GLib.Opaque.GetOpaque (native_sample, typeof (Gst.Sample), true);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_sample_index(IntPtr raw, IntPtr tag, uint index, out IntPtr sample);
|
|
|
|
public bool GetSampleIndex(string tag, uint index, out Gst.Sample sample) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
IntPtr native_sample;
|
|
bool raw_ret = gst_tag_list_get_sample_index(Handle, native_tag, index, out native_sample);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
sample = native_sample == IntPtr.Zero ? null : (Gst.Sample) GLib.Opaque.GetOpaque (native_sample, typeof (Gst.Sample), true);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern int gst_tag_list_get_scope(IntPtr raw);
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern void gst_tag_list_set_scope(IntPtr raw, int scope);
|
|
|
|
public Gst.TagScope Scope {
|
|
get {
|
|
int raw_ret = gst_tag_list_get_scope(Handle);
|
|
Gst.TagScope ret = (Gst.TagScope) raw_ret;
|
|
return ret;
|
|
}
|
|
set {
|
|
gst_tag_list_set_scope(Handle, (int) value);
|
|
}
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_string(IntPtr raw, IntPtr tag, out IntPtr value);
|
|
|
|
public bool GetString(string tag, out string value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
IntPtr native_value;
|
|
bool raw_ret = gst_tag_list_get_string(Handle, native_tag, out native_value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
value = GLib.Marshaller.PtrToStringGFree(native_value);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_string_index(IntPtr raw, IntPtr tag, uint index, out IntPtr value);
|
|
|
|
public bool GetStringIndex(string tag, uint index, out string value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
IntPtr native_value;
|
|
bool raw_ret = gst_tag_list_get_string_index(Handle, native_tag, index, out native_value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
value = GLib.Marshaller.PtrToStringGFree(native_value);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern uint gst_tag_list_get_tag_size(IntPtr raw, IntPtr tag);
|
|
|
|
public uint GetTagSize(string tag) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
uint raw_ret = gst_tag_list_get_tag_size(Handle, native_tag);
|
|
uint ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_uint(IntPtr raw, IntPtr tag, out uint value);
|
|
|
|
public bool GetUint(string tag, out uint value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_uint(Handle, native_tag, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_uint64(IntPtr raw, IntPtr tag, out ulong value);
|
|
|
|
public bool GetUint64(string tag, out ulong value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_uint64(Handle, native_tag, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_uint64_index(IntPtr raw, IntPtr tag, uint index, out ulong value);
|
|
|
|
public bool GetUint64Index(string tag, uint index, out ulong value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_uint64_index(Handle, native_tag, index, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_get_uint_index(IntPtr raw, IntPtr tag, uint index, out uint value);
|
|
|
|
public bool GetUintIndex(string tag, uint index, out uint value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_get_uint_index(Handle, native_tag, index, out value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern IntPtr gst_tag_list_get_value_index(IntPtr raw, IntPtr tag, uint index);
|
|
|
|
public GLib.Value GetValueIndex(string tag, uint index) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
IntPtr raw_ret = gst_tag_list_get_value_index(Handle, native_tag, index);
|
|
GLib.Value ret = (GLib.Value) Marshal.PtrToStructure (raw_ret, typeof (GLib.Value));
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern void gst_tag_list_insert(IntPtr raw, IntPtr from, int mode);
|
|
|
|
public void Insert(Gst.TagList from, Gst.TagMergeMode mode) {
|
|
gst_tag_list_insert(Handle, from == null ? IntPtr.Zero : from.Handle, (int) mode);
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_is_empty(IntPtr raw);
|
|
|
|
public bool IsEmpty {
|
|
get {
|
|
bool raw_ret = gst_tag_list_is_empty(Handle);
|
|
bool ret = raw_ret;
|
|
return ret;
|
|
}
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_is_equal(IntPtr raw, IntPtr list2);
|
|
|
|
public bool IsEqual(Gst.TagList list2) {
|
|
bool raw_ret = gst_tag_list_is_equal(Handle, list2 == null ? IntPtr.Zero : list2.Handle);
|
|
bool ret = raw_ret;
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern IntPtr gst_tag_list_merge(IntPtr raw, IntPtr list2, int mode);
|
|
|
|
public Gst.TagList Merge(Gst.TagList list2, Gst.TagMergeMode mode) {
|
|
IntPtr raw_ret = gst_tag_list_merge(Handle, list2 == null ? IntPtr.Zero : list2.Handle, (int) mode);
|
|
Gst.TagList ret = raw_ret == IntPtr.Zero ? null : (Gst.TagList) GLib.Opaque.GetOpaque (raw_ret, typeof (Gst.TagList), true);
|
|
return ret;
|
|
}
|
|
|
|
public Gst.TagList Merge(Gst.TagMergeMode mode) {
|
|
return Merge (null, mode);
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern int gst_tag_list_n_tags(IntPtr raw);
|
|
|
|
public int NTags() {
|
|
int raw_ret = gst_tag_list_n_tags(Handle);
|
|
int ret = raw_ret;
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern IntPtr gst_tag_list_nth_tag_name(IntPtr raw, uint index);
|
|
|
|
public string NthTagName(uint index) {
|
|
IntPtr raw_ret = gst_tag_list_nth_tag_name(Handle, index);
|
|
string ret = GLib.Marshaller.Utf8PtrToString (raw_ret);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_peek_string_index(IntPtr raw, IntPtr tag, uint index, out IntPtr value);
|
|
|
|
public bool PeekStringIndex(string tag, uint index, out string value) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
IntPtr native_value;
|
|
bool raw_ret = gst_tag_list_peek_string_index(Handle, native_tag, index, out native_value);
|
|
bool ret = raw_ret;
|
|
GLib.Marshaller.Free (native_tag);
|
|
value = GLib.Marshaller.Utf8PtrToString (native_value);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern void gst_tag_list_remove_tag(IntPtr raw, IntPtr tag);
|
|
|
|
public void RemoveTag(string tag) {
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
gst_tag_list_remove_tag(Handle, native_tag);
|
|
GLib.Marshaller.Free (native_tag);
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern IntPtr gst_tag_list_to_string(IntPtr raw);
|
|
|
|
public override string ToString() {
|
|
IntPtr raw_ret = gst_tag_list_to_string(Handle);
|
|
string ret = GLib.Marshaller.PtrToStringGFree(raw_ret);
|
|
return ret;
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern bool gst_tag_list_copy_value(IntPtr dest, IntPtr list, IntPtr tag);
|
|
|
|
public static bool CopyValue(ref GLib.Value dest, Gst.TagList list, string tag) {
|
|
IntPtr native_dest = GLib.Marshaller.StructureToPtrAlloc (dest);
|
|
IntPtr native_tag = GLib.Marshaller.StringToPtrGStrdup (tag);
|
|
bool raw_ret = gst_tag_list_copy_value(native_dest, list == null ? IntPtr.Zero : list.Handle, native_tag);
|
|
bool ret = raw_ret;
|
|
dest = (GLib.Value) Marshal.PtrToStructure (native_dest, typeof (GLib.Value));
|
|
Marshal.FreeHGlobal (native_dest);
|
|
GLib.Marshaller.Free (native_tag);
|
|
return ret;
|
|
}
|
|
|
|
public TagList(IntPtr raw) : base(raw) {}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern IntPtr gst_tag_list_new_empty();
|
|
|
|
public TagList ()
|
|
{
|
|
Raw = gst_tag_list_new_empty();
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern IntPtr gst_tag_list_new_from_string(IntPtr str);
|
|
|
|
public TagList (string str)
|
|
{
|
|
IntPtr native_str = GLib.Marshaller.StringToPtrGStrdup (str);
|
|
Raw = gst_tag_list_new_from_string(native_str);
|
|
GLib.Marshaller.Free (native_str);
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern IntPtr gst_tag_list_ref(IntPtr raw);
|
|
|
|
protected override void Ref (IntPtr raw)
|
|
{
|
|
if (!Owned) {
|
|
gst_tag_list_ref (raw);
|
|
Owned = true;
|
|
}
|
|
}
|
|
|
|
[DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
|
|
static extern void gst_tag_list_unref(IntPtr raw);
|
|
|
|
protected override void Unref (IntPtr raw)
|
|
{
|
|
if (Owned) {
|
|
gst_tag_list_unref (raw);
|
|
Owned = false;
|
|
}
|
|
}
|
|
|
|
protected override Action<IntPtr> DisposeUnmanagedFunc {
|
|
get {
|
|
return gst_tag_list_unref;
|
|
}
|
|
}
|
|
|
|
|
|
// Internal representation of the wrapped structure ABI.
|
|
static GLib.AbiStruct _abi_info = null;
|
|
static public new GLib.AbiStruct abi_info {
|
|
get {
|
|
if (_abi_info == null)
|
|
_abi_info = new GLib.AbiStruct (Gst.MiniObject.abi_info.Fields);
|
|
|
|
return _abi_info;
|
|
}
|
|
}
|
|
|
|
|
|
// End of the ABI representation.
|
|
|
|
#endregion
|
|
}
|
|
}
|