gstreamer/gstreamer-sharp/Task.custom

40 lines
933 B
Text
Raw Normal View History

[DllImport ("gstreamersharpglue-0.10") ]
extern static uint gstsharp_gst_task_get_cond_offset ();
static uint cond_offset = gstsharp_gst_task_get_cond_offset ();
private IntPtr CondPtr {
get {
unsafe {
IntPtr* raw_ptr = (IntPtr*) ( ( (byte*) Handle) + cond_offset);
return (*raw_ptr);
}
}
}
[DllImport ("libglib-2.0-0.dll") ]
static extern void g_cond_wait (IntPtr cond, IntPtr mutex);
[DllImport ("libglib-2.0-0.dll") ]
static extern void g_cond_signal (IntPtr cond);
public void Wait () {
g_cond_wait (CondPtr, LockPtr);
}
public void Signal () {
g_cond_signal (CondPtr);
}
[DllImport ("gstreamersharpglue-0.10") ]
extern static uint gstsharp_gst_task_get_running_offset ();
static uint running_offset = gstsharp_gst_task_get_running_offset ();
public bool IsRunning {
get {
unsafe {
bool* raw_ptr = (bool*) ( ( (byte*) Handle) + running_offset);
return (*raw_ptr);
}
}
}