[][src]Enum gstreamer::StateChange

#[non_exhaustive]pub enum StateChange {
    NullToReady,
    ReadyToPaused,
    PausedToPlaying,
    PlayingToPaused,
    PausedToReady,
    ReadyToNull,
    NullToNull,
    ReadyToReady,
    PausedToPaused,
    PlayingToPlaying,
    // some variants omitted
}

These are the different state changes an element goes through. State::NullState::Playing is called an upwards state change and State::PlayingState::Null a downwards state change.

Variants (Non-exhaustive)

Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
NullToReady

state change from NULL to READY.

ReadyToPaused

state change from READY to PAUSED.

PausedToPlaying

state change from PAUSED to PLAYING.

PlayingToPaused

state change from PLAYING to PAUSED.

PausedToReady

state change from PAUSED to READY.

ReadyToNull

state change from READY to NULL.

NullToNull

state change from NULL to NULL. (Since: 1.14)

ReadyToReady

state change from READY to READY, This might happen when going to PAUSED asynchronously failed, in that case elements should make sure they are in a proper, coherent READY state. (Since: 1.14)

PausedToPaused

state change from PAUSED to PAUSED. This might happen when elements were in PLAYING state and 'lost state', they should make sure to go back to real 'PAUSED' state (prerolling for example). (Since: 1.14)

PlayingToPlaying

state change from PLAYING to PLAYING. (Since: 1.14)

Implementations

impl StateChange[src]

pub fn new(current: State, next: State) -> Self[src]

pub fn current(self) -> State[src]

pub fn next(self) -> State[src]

Trait Implementations

impl Clone for StateChange[src]

impl Copy for StateChange[src]

impl Debug for StateChange[src]

impl Eq for StateChange[src]

impl<'a> FromValue<'a> for StateChange[src]

impl<'a> FromValueOptional<'a> for StateChange[src]

impl Hash for StateChange[src]

impl Ord for StateChange[src]

impl PartialEq<StateChange> for StateChange[src]

impl PartialOrd<StateChange> for StateChange[src]

impl SetValue for StateChange[src]

impl StaticType for StateChange[src]

impl StructuralEq for StateChange[src]

impl StructuralPartialEq for StateChange[src]

Auto Trait Implementations

impl RefUnwindSafe for StateChange

impl Send for StateChange

impl Sync for StateChange

impl Unpin for StateChange

impl UnwindSafe for StateChange

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToSendValue for T where
    T: ToValue + SetValue + Send + ?Sized
[src]

impl<T> ToValue for T where
    T: SetValue + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.