2002-01-15 00:41:22 +00:00
|
|
|
<!-- ##### SECTION Title ##### -->
|
|
|
|
GstScheduler
|
|
|
|
|
|
|
|
<!-- ##### SECTION Short_Description ##### -->
|
2004-03-25 04:20:33 +00:00
|
|
|
Abstract class for objects that manage the scheduling of groups of elements
|
2002-01-15 00:41:22 +00:00
|
|
|
|
|
|
|
<!-- ##### SECTION Long_Description ##### -->
|
|
|
|
<para>
|
|
|
|
This is a base class for custom schedulers.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### SECTION See_Also ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2005-12-16 18:29:42 +00:00
|
|
|
<!-- ##### SECTION Stability_Level ##### -->
|
|
|
|
|
|
|
|
|
2004-05-14 14:00:04 +00:00
|
|
|
<!-- ##### STRUCT GstScheduler ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
2004-03-25 04:20:33 +00:00
|
|
|
<!-- ##### ENUM GstSchedulerFlags ##### -->
|
|
|
|
<para>
|
|
|
|
Flags for the scheduler
|
|
|
|
</para>
|
|
|
|
|
2005-01-04 18:13:51 +00:00
|
|
|
@GST_SCHEDULER_FLAG_FIXED_CLOCK: the scheduler works with a fixed clock
|
|
|
|
@GST_SCHEDULER_FLAG_NEW_API: the scheduler supports select and lock calls
|
2004-03-25 04:20:33 +00:00
|
|
|
@GST_SCHEDULER_FLAG_LAST: subclasses can start numbering their flags starting
|
|
|
|
from here.
|
|
|
|
|
2002-01-15 00:41:22 +00:00
|
|
|
<!-- ##### MACRO GST_SCHEDULER_PARENT ##### -->
|
|
|
|
<para>
|
|
|
|
Get the parent object of this scheduler.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched: the scheduler to get the parent of.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### MACRO GST_SCHEDULER_STATE ##### -->
|
|
|
|
<para>
|
|
|
|
Get the state of the scheduler.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched: the scheduler to get the state of.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### ENUM GstSchedulerState ##### -->
|
|
|
|
<para>
|
2002-12-14 13:02:16 +00:00
|
|
|
The state of the scheduler
|
2002-01-15 00:41:22 +00:00
|
|
|
</para>
|
|
|
|
|
2002-12-14 13:02:16 +00:00
|
|
|
@GST_SCHEDULER_STATE_NONE: no state
|
|
|
|
@GST_SCHEDULER_STATE_RUNNING: the scheduler is running
|
|
|
|
@GST_SCHEDULER_STATE_STOPPED: the scheduler is stopped
|
|
|
|
@GST_SCHEDULER_STATE_ERROR: the scheduler is in error
|
2002-01-15 00:41:22 +00:00
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_scheduler_setup ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_scheduler_reset ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_scheduler_add_element ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@element:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_scheduler_remove_element ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@element:
|
|
|
|
|
|
|
|
|
2004-03-25 04:20:33 +00:00
|
|
|
<!-- ##### FUNCTION gst_scheduler_add_scheduler ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@sched2:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_scheduler_remove_scheduler ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@sched2:
|
|
|
|
|
|
|
|
|
2002-01-15 00:41:22 +00:00
|
|
|
<!-- ##### FUNCTION gst_scheduler_state_transition ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@element:
|
|
|
|
@transition:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
2002-12-14 13:02:16 +00:00
|
|
|
<!-- ##### FUNCTION gst_scheduler_scheduling_change ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@element:
|
|
|
|
|
|
|
|
|
2002-01-15 00:41:22 +00:00
|
|
|
<!-- ##### FUNCTION gst_scheduler_lock_element ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@element:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_scheduler_unlock_element ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@element:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_scheduler_yield ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@element:
|
2003-01-24 18:08:39 +00:00
|
|
|
@Returns:
|
2002-01-15 00:41:22 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_scheduler_interrupt ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@element:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_scheduler_error ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@element:
|
|
|
|
|
|
|
|
|
2003-01-24 18:08:39 +00:00
|
|
|
<!-- ##### FUNCTION gst_scheduler_pad_link ##### -->
|
2002-01-15 00:41:22 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@srcpad:
|
|
|
|
@sinkpad:
|
|
|
|
|
|
|
|
|
2003-01-24 18:08:39 +00:00
|
|
|
<!-- ##### FUNCTION gst_scheduler_pad_unlink ##### -->
|
2002-01-15 00:41:22 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@srcpad:
|
|
|
|
@sinkpad:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_scheduler_pad_select ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@padlist:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
2004-03-25 04:20:33 +00:00
|
|
|
<!-- ##### FUNCTION gst_scheduler_clock_wait ##### -->
|
2002-03-31 14:00:33 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
2004-03-25 04:20:33 +00:00
|
|
|
@element:
|
|
|
|
@id:
|
|
|
|
@jitter:
|
|
|
|
@Returns:
|
|
|
|
<!-- # Unused Parameters # -->
|
|
|
|
@clock:
|
|
|
|
@time:
|
2002-03-31 14:00:33 +00:00
|
|
|
|
|
|
|
|
2004-03-25 04:20:33 +00:00
|
|
|
<!-- ##### FUNCTION gst_scheduler_iterate ##### -->
|
2002-03-31 14:00:33 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
2004-03-25 04:20:33 +00:00
|
|
|
@Returns:
|
2002-03-31 14:00:33 +00:00
|
|
|
|
|
|
|
|
2004-03-25 04:20:33 +00:00
|
|
|
<!-- ##### FUNCTION gst_scheduler_use_clock ##### -->
|
2002-03-31 14:00:33 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
2004-03-25 04:20:33 +00:00
|
|
|
@clock:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_scheduler_set_clock ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@clock:
|
2002-03-31 14:00:33 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_scheduler_get_clock ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
2004-03-25 04:20:33 +00:00
|
|
|
<!-- ##### FUNCTION gst_scheduler_auto_clock ##### -->
|
2002-03-31 14:00:33 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
|
|
|
|
|
2004-03-25 04:20:33 +00:00
|
|
|
<!-- ##### FUNCTION gst_scheduler_show ##### -->
|
2002-03-31 14:00:33 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@sched:
|
|
|
|
|
|
|
|
|
2004-03-25 04:20:33 +00:00
|
|
|
<!-- ##### MACRO GST_SCHEDULER_DEFAULT_NAME ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
|