2009-05-25 10:12:35 +00:00
[DllImport ("gstreamersharpglue-0.10.dll") ]
2009-05-09 18:04:43 +00:00
extern static uint gst__interfacessharp_gst__interfaces_mixertrack_get_label_offset ();
static uint label_offset = gst__interfacessharp_gst__interfaces_mixertrack_get_label_offset ();
2009-05-25 10:12:35 +00:00
[DllImport ("gstreamersharpglue-0.10.dll") ]
2009-05-09 18:04:43 +00:00
extern static uint gst__interfacessharp_gst__interfaces_mixertrack_get_flags_offset ();
static uint flags_offset = gst__interfacessharp_gst__interfaces_mixertrack_get_flags_offset ();
2009-05-25 10:12:35 +00:00
[DllImport ("gstreamersharpglue-0.10.dll") ]
2009-05-09 18:04:43 +00:00
extern static uint gst__interfacessharp_gst__interfaces_mixertrack_get_num_channels_offset ();
static uint num_channels_offset = gst__interfacessharp_gst__interfaces_mixertrack_get_num_channels_offset ();
2009-05-25 10:12:35 +00:00
[DllImport ("gstreamersharpglue-0.10.dll") ]
2009-05-09 18:04:43 +00:00
extern static uint gst__interfacessharp_gst__interfaces_mixertrack_get_min_volume_offset ();
static uint min_volume_offset = gst__interfacessharp_gst__interfaces_mixertrack_get_min_volume_offset ();
2009-05-25 10:12:35 +00:00
[DllImport ("gstreamersharpglue-0.10.dll") ]
2009-05-09 18:04:43 +00:00
extern static uint gst__interfacessharp_gst__interfaces_mixertrack_get_max_volume_offset ();
static uint max_volume_offset = gst__interfacessharp_gst__interfaces_mixertrack_get_max_volume_offset ();
public MixerTrack (uint index, string untranslated_label, string label, MixerTrackFlags flags, int num_channels, int min_volume, int max_volume) : base (IntPtr.Zero) {
2009-08-05 14:57:20 +00:00
CreateNativeObject (new string [] {"index", "untranslated-label"}, new Gst.GLib.Value [] { new Gst.GLib.Value (index), new Gst.GLib.Value (untranslated_label) });
2009-05-09 18:04:43 +00:00
unsafe {
IntPtr* raw_ptr = (IntPtr*) ( ( (byte*) Handle) + label_offset);
2009-08-05 14:57:20 +00:00
*raw_ptr = Gst.GLib.Marshaller.StringToPtrGStrdup (label);
2009-05-09 18:04:43 +00:00
}
unsafe {
int* raw_ptr = (int*) ( ( (byte*) Handle) + flags_offset);
*raw_ptr = (int) flags;
}
unsafe {
int* raw_ptr = (int*) ( ( (byte*) Handle) + num_channels_offset);
*raw_ptr = num_channels;
}
unsafe {
int* raw_ptr = (int*) ( ( (byte*) Handle) + min_volume_offset);
*raw_ptr = min_volume;
}
unsafe {
int* raw_ptr = (int*) ( ( (byte*) Handle) + max_volume_offset);
*raw_ptr = max_volume;
}
}