TestClock

Added in version 1.2.

class TestClock(**properties: Any)

Superclasses: Clock, Object, InitiallyUnowned, Object

Constructors:

TestClock(**properties)
new() -> Gst.Clock
new_with_start_time(start_time:int) -> Gst.Clock

Constructors

class TestClock
classmethod new() Clock

Creates a new test clock with its time set to zero.

MT safe.

Added in version 1.2.

classmethod new_with_start_time(start_time: int) Clock

Creates a new test clock with its time set to the specified time.

MT safe.

Added in version 1.2.

Parameters:

start_time – a ClockTime set to the desired start time of the clock.

Methods

class TestClock
advance_time(delta: int) None

Advances the time of the test_clock by the amount given by delta. The time of test_clock is monotonically increasing, therefore providing a delta which is negative or zero is a programming error.

MT safe.

Added in version 1.2.

Parameters:

delta – a positive ClockTimeDiff to be added to the time of the clock

crank() bool

A “crank” consists of three steps: 1: Wait for a ClockID to be registered with the TestClock. 2: Advance the TestClock to the time the ClockID is waiting, unless

the clock time is already passed the clock id (Since: 1.18).

3: Release the ClockID wait. A “crank” can be though of as the notion of manually driving the clock forward to its next logical step.

Added in version 1.8.

get_next_entry_time() int

Retrieve the requested time for the next pending clock notification.

MT safe.

Added in version 1.2.

has_id(id: None) bool

Checks whether test_clock was requested to provide the clock notification given by id.

MT safe.

Added in version 1.2.

Parameters:

id – a ClockID clock notification

id_list_get_latest_time(pending_list: list[None] | None = None) int

Finds the latest time inside the list.

MT safe.

Added in version 1.4.

Parameters:

pending_list – List of of pending ClockID

peek_id_count() int

Determine the number of pending clock notifications that have been requested from the test_clock.

MT safe.

Added in version 1.2.

peek_next_pending_id() tuple[bool, None]

Determines if the pending_id is the next clock notification scheduled to be triggered given the current time of the test_clock.

MT safe.

Added in version 1.2.

process_id(pending_id: None) bool

Processes and releases the pending ID.

MT safe.

Added in version 1.18.

Parameters:

pending_idClockID

process_id_list(pending_list: list[None] | None = None) int

Processes and releases the pending IDs in the list.

MT safe.

Added in version 1.4.

Parameters:

pending_list – List of pending ClockID

process_next_clock_id() None

MT safe.

Added in version 1.2.

set_time(new_time: int) None

Sets the time of test_clock to the time given by new_time. The time of test_clock is monotonically increasing, therefore providing a new_time which is earlier or equal to the time of the clock as given by get_time() is a programming error.

MT safe.

Added in version 1.2.

Parameters:

new_time – a ClockTime later than that returned by get_time()

timed_wait_for_multiple_pending_ids(count: int, timeout_ms: int) tuple[bool, list[None]]

Blocks until at least count clock notifications have been requested from test_clock, or the timeout expires.

MT safe.

Added in version 1.16.

Parameters:
  • count – the number of pending clock notifications to wait for

  • timeout_ms – the timeout in milliseconds

wait_for_multiple_pending_ids(count: int) list[None]

Blocks until at least count clock notifications have been requested from test_clock. There is no timeout for this wait, see the main description of TestClock.

MT safe.

Added in version 1.4.

Parameters:

count – the number of pending clock notifications to wait for

wait_for_next_pending_id() None

Waits until a clock notification is requested from test_clock. There is no timeout for this wait, see the main description of TestClock. A reference to the pending clock notification is stored in pending_id.

MT safe.

Added in version 1.2.

wait_for_pending_id_count(count: int) None

Blocks until at least count clock notifications have been requested from test_clock. There is no timeout for this wait, see the main description of TestClock.

Added in version 1.2.

Deprecated since version Unknown: use wait_for_multiple_pending_ids() instead.

Parameters:

count – the number of pending clock notifications to wait for

Properties

class TestClock
props.clock_type: ClockType
props.start_time: int

When a TestClock is constructed it will have a certain start time set. If the clock was created using new_with_start_time() then this property contains the value of the start_time argument. If new() was called the clock started at time zero, and thus this property contains the value 0.

Fields

class TestClock
parent
priv