gstreamer/gstreamer-sharp/IndexEntry.custom
Maarten Bosmans 6cb104a67a Add .dll to gstreamersharpglue DllImport
Nescessary for .NET compatibility, where .dll isn't
added for libraries with a . in the filename.
2009-05-25 12:12:35 +02:00

157 lines
4.6 KiB
Text

protected override GLib.Opaque Copy (IntPtr raw)
{
return GLib.Opaque.GetOpaque (raw, typeof (Gst.IndexEntry), true);
}
[DllImport ("gstreamersharpglue-0.10.dll") ]
extern static uint gstsharp_gst_index_entry_get_id_description_offset ();
static uint id_description_offset = gstsharp_gst_index_entry_get_id_description_offset ();
public string IdDescription {
get {
if (Type != Gst.IndexEntryType.Id)
throw new Exception ();
unsafe {
IntPtr* raw_ptr = (IntPtr*) ( ( (byte*) Handle) + id_description_offset);
return GLib.Marshaller.Utf8PtrToString (*raw_ptr);
}
}
}
[DllImport ("gstreamersharpglue-0.10.dll") ]
extern static uint gstsharp_gst_index_entry_get_assoc_nassocs_offset ();
static uint assoc_nassocs_offset = gstsharp_gst_index_entry_get_assoc_nassocs_offset ();
public int AssocNAssocs {
get {
if (Type != Gst.IndexEntryType.Association)
throw new Exception ();
unsafe {
int* raw_ptr = (int*) ( ( (byte*) Handle) + assoc_nassocs_offset);
return (*raw_ptr);
}
}
}
[DllImport ("gstreamersharpglue-0.10.dll") ]
extern static uint gstsharp_gst_index_entry_get_assoc_assocs_offset ();
static uint assoc_assocs_offset = gstsharp_gst_index_entry_get_assoc_assocs_offset ();
public Gst.IndexAssociation[] AssocAssocs {
get {
if (Type != Gst.IndexEntryType.Association)
throw new Exception ();
unsafe {
IntPtr* raw_ptr = (IntPtr*) ( ( (byte*) Handle) + assoc_assocs_offset);
Gst.IndexAssociation[] ret = new Gst.IndexAssociation[AssocNAssocs];
if (AssocNAssocs == 0)
return ret;
int unmanaged_struct_size = Marshal.SizeOf (typeof (Gst.IndexAssociation));
for (int i = 0; i < AssocNAssocs; i++)
ret[i] = Gst.IndexAssociation.New (new IntPtr ( (*raw_ptr).ToInt64() + i * unmanaged_struct_size));
return ret;
}
}
}
[DllImport ("gstreamersharpglue-0.10.dll") ]
extern static uint gstsharp_gst_index_entry_get_assoc_flags_offset ();
static uint assoc_flags_offset = gstsharp_gst_index_entry_get_assoc_flags_offset ();
public Gst.AssocFlags AssocFlags {
get {
if (Type != Gst.IndexEntryType.Association)
throw new Exception ();
unsafe {
int* raw_ptr = (int*) ( ( (byte*) Handle) + assoc_flags_offset);
return (Gst.AssocFlags) (*raw_ptr);
}
}
}
[DllImport ("gstreamersharpglue-0.10.dll") ]
extern static uint gstsharp_gst_index_entry_get_object_key_offset ();
static uint object_key_offset = gstsharp_gst_index_entry_get_object_key_offset ();
public string ObjectKey {
get {
if (Type != Gst.IndexEntryType.Object)
throw new Exception ();
unsafe {
IntPtr* raw_ptr = (IntPtr*) ( ( (byte*) Handle) + object_key_offset);
return GLib.Marshaller.Utf8PtrToString (*raw_ptr);
}
}
}
[DllImport ("gstreamersharpglue-0.10.dll") ]
extern static uint gstsharp_gst_index_entry_get_object_type_offset ();
static uint object_type_offset = gstsharp_gst_index_entry_get_object_type_offset ();
public GLib.GType ObjectGType {
get {
if (Type != Gst.IndexEntryType.Object)
throw new Exception ();
unsafe {
IntPtr* raw_ptr = (IntPtr*) ( ( (byte*) Handle) + object_type_offset);
return new GLib.GType (*raw_ptr);
}
}
}
[DllImport ("gstreamersharpglue-0.10.dll") ]
extern static uint gstsharp_gst_index_entry_get_object_object_offset ();
static uint object_object_offset = gstsharp_gst_index_entry_get_object_object_offset ();
public object ObjectObject {
get {
if (Type != Gst.IndexEntryType.Object)
throw new Exception ();
unsafe {
IntPtr* raw_ptr = (IntPtr*) ( ( (byte*) Handle) + object_object_offset);
return GLib.Object.GetObject (*raw_ptr, false);
}
}
}
[DllImport ("gstreamersharpglue-0.10.dll") ]
extern static uint gstsharp_gst_index_entry_get_format_format_offset ();
static uint format_format_offset = gstsharp_gst_index_entry_get_format_format_offset ();
public Gst.Format FormatFormat {
get {
if (Type != Gst.IndexEntryType.Format)
throw new Exception ();
unsafe {
int* raw_ptr = (int*) ( ( (byte*) Handle) + format_format_offset);
return (Gst.Format) (*raw_ptr);
}
}
}
[DllImport ("gstreamersharpglue-0.10.dll") ]
extern static uint gstsharp_gst_index_entry_get_format_key_offset ();
static uint format_key_offset = gstsharp_gst_index_entry_get_format_key_offset ();
public string FormatKey {
get {
if (Type != Gst.IndexEntryType.Format)
throw new Exception ();
unsafe {
IntPtr* raw_ptr = (IntPtr*) ( ( (byte*) Handle) + format_key_offset);
return GLib.Marshaller.Utf8PtrToString (*raw_ptr);
}
}
}