CMTimeMapping

Struct CMTimeMapping 

Source
#[repr(C)]
pub struct CMTimeMapping { pub source: CMTimeRange, pub target: CMTimeRange, }
Available on crate features CMTime and CMTimeRange only.
Expand description

A CMTimeMapping specifies the mapping of a segment of one time line (called “source”) into another time line (called “target”).

When used for movie edit lists, the source time line is the media and the target time line is the track/movie. Field: source The time range on the source time line. For an empty edit, source.start is an invalid CMTime, in which case source.duration shall be ignored. Otherwise, source.start is the starting time within the source, and source.duration is the duration of the source timeline to be mapped to the target time range. Field: target The time range on the target time line. If target.duration and source.duration are different, then the source segment should be played at rate source.duration/target.duration to fit.

See also Apple’s documentation

Fields§

§source: CMTimeRange§target: CMTimeRange

Implementations§

Source§

impl CMTimeMapping

Source

pub unsafe fn new(source: CMTimeRange, target: CMTimeRange) -> CMTimeMapping

Make a valid CMTimeMapping with source and target.

Returns: The resulting CMTimeMapping.

The source and target parameters must have durations whose epoch is 0; otherwise an invalid time mapping will be returned.

Source

pub unsafe fn empty(target: CMTimeRange) -> CMTimeMapping

Make a valid CMTimeMapping with an empty source.

Returns: The resulting CMTimeMapping.

The target parameter must have a duration whose epoch is 0; otherwise an invalid time mapping will be returned.

Source

pub unsafe fn as_dictionary( self, allocator: Option<&CFAllocator>, ) -> Option<CFRetained<CFDictionary>>

Returns a CFDictionary version of a CMTimeMapping.

This is useful when putting CMTimeMappings in CF container types.

Returns: A CFDictionary version of the CMTimeMapping.

Source

pub unsafe fn from_dictionary( dictionary_representation: &CFDictionary, ) -> CMTimeMapping

Reconstitutes a CMTimeMapping struct from a CFDictionary previously created by CMTimeMappingCopyAsDictionary.

This is useful when getting CMTimeMappings from CF container types. If the CFDictionary does not have the requisite keyed values, an invalid time mapping is returned.

Returns: The created CMTimeMapping.

§Safety

dictionary_representation generics must be of the correct type.

Source§

impl CMTimeMapping

Source

pub unsafe fn description( allocator: Option<&CFAllocator>, mapping: CMTimeMapping, ) -> Option<CFRetained<CFString>>

Creates a CFString with a description of a CMTimeMapping (just like CFCopyDescription).

This is used from within CFShow on an object that contains CMTimeMapping fields. It is also useful from other client debugging code. The caller owns the returned CFString and is responsible for releasing it.

Returns: The created CFString description.

Source

pub unsafe fn show(self)

Prints a description of a CMTimeMapping (just like CFShow).

This is most useful from within gdb.

Trait Implementations§

Source§

impl Clone for CMTimeMapping

Source§

fn clone(&self) -> CMTimeMapping

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for CMTimeMapping

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Encode for CMTimeMapping

Available on crate feature objc2 only.
Source§

const ENCODING: Encoding

The Objective-C type-encoding for this type.
Source§

impl PartialEq for CMTimeMapping

Source§

fn eq(&self, other: &CMTimeMapping) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl RefEncode for CMTimeMapping

Available on crate feature objc2 only.
Source§

const ENCODING_REF: Encoding

The Objective-C type-encoding for a reference of this type. Read more
Source§

impl Copy for CMTimeMapping

Source§

impl StructuralPartialEq for CMTimeMapping

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> EncodeArgument for T
where T: Encode,

Source§

const ENCODING_ARGUMENT: Encoding = T::ENCODING

The Objective-C type-encoding for this type.
Source§

impl<T> EncodeReturn for T
where T: Encode,

Source§

const ENCODING_RETURN: Encoding = T::ENCODING

The Objective-C type-encoding for this type.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> AutoreleaseSafe for T
where T: ?Sized,