Struct gstreamer::memory::Memory

source ·
pub struct Memory { /* private fields */ }

Implementations§

source§

impl Memory

source

pub unsafe fn from_glib_ptr_borrow(ptr: &*mut GstMemory) -> &Self

source

pub unsafe fn from_glib_none(ptr: *const GstMemory) -> Self

source

pub unsafe fn from_glib_full(ptr: *const GstMemory) -> Self

source

pub unsafe fn from_glib_borrow(ptr: *const GstMemory) -> Borrowed<Self>

source

pub unsafe fn replace_ptr(&mut self, ptr: *mut GstMemory)

source

pub fn make_mut(&mut self) -> &mut MemoryRef

source

pub fn get_mut(&mut self) -> Option<&mut MemoryRef>

source

pub fn is_writable(&self) -> bool

source

pub fn upcast(self) -> MiniObject

source§

impl Memory

source

pub fn with_size(size: usize) -> Self

source

pub fn with_size_and_params(size: usize, params: &AllocationParams) -> Self

source

pub fn into_mapped_memory_readable(self) -> Result<MappedMemory<Readable>, Self>

Fill info with the pointer and sizes of the memory in self that can be accessed according to flags.

This function can return false for various reasons:

  • the memory backed by self is not accessible with the given flags.
  • the memory was already mapped with a different mapping.

info and its contents remain valid for as long as self is valid and until gst_memory_unmap() is called.

For each into_mapped_memory_readable() call, a corresponding gst_memory_unmap() call should be done.

§flags

mapping flags

§Returns

true if the map operation was successful.

§info

pointer for info

source

pub fn into_mapped_memory_writable(self) -> Result<MappedMemory<Writable>, Self>

source§

impl Memory

source

pub fn downcast_memory<M: MemoryType>(self) -> Result<M, Self>

source§

impl Memory

source

pub fn from_slice<T: AsRef<[u8]> + Send + 'static>(slice: T) -> Self

source

pub fn from_mut_slice<T: AsMut<[u8]> + Send + 'static>(slice: T) -> Self

Methods from Deref<Target = MemoryRef>§

source

pub fn as_ptr(&self) -> *const GstMemory

source

pub fn as_mut_ptr(&self) -> *mut GstMemory

source

pub fn copy(&self) -> Memory

source

pub fn upcast_ref(&self) -> &MiniObjectRef

source

pub fn allocator(&self) -> Option<&Allocator>

source

pub fn parent(&self) -> Option<&MemoryRef>

source

pub fn maxsize(&self) -> usize

source

pub fn align(&self) -> usize

source

pub fn offset(&self) -> usize

source

pub fn size(&self) -> usize

source

pub fn flags(&self) -> MemoryFlags

source

pub fn copy_range(&self, range: impl RangeBounds<usize>) -> Memory

source

pub fn copy_range_maxsize(&self, range: impl RangeBounds<usize>) -> Memory

source

pub fn is_span(&self, mem2: &MemoryRef) -> Option<usize>

source

pub fn is_type(&self, mem_type: &str) -> bool

source

pub fn map_readable(&self) -> Result<MemoryMap<'_, Readable>, BoolError>

source

pub fn share(&self, range: impl RangeBounds<usize>) -> Memory

source

pub fn share_maxsize(&self, range: impl RangeBounds<usize>) -> Memory

source

pub fn dump(&self) -> Dump<'_>

source

pub fn dump_range(&self, range: impl RangeBounds<usize>) -> Dump<'_>

source

pub fn is_memory_type<M: MemoryType>(&self) -> bool

source

pub fn downcast_memory_ref<M: MemoryType>(&self) -> Option<&M::RefType>

Trait Implementations§

source§

impl AsRef<Memory> for Memory

source§

fn as_ref(&self) -> &Memory

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl AsRef<MemoryRef> for Memory

source§

fn as_ref(&self) -> &MemoryRef

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl Borrow<MemoryRef> for Memory

source§

fn borrow(&self) -> &MemoryRef

Immutably borrows from an owned value. Read more
source§

impl Clone for Memory

source§

fn clone(&self) -> Self

Returns a copy 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 Memory

source§

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

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

impl Deref for Memory

§

type Target = MemoryRef

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Drop for Memory

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

impl Extend<Memory> for BufferRef

source§

fn extend<T: IntoIterator<Item = Memory>>(&mut self, iter: T)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl From<Memory> for Buffer

source§

fn from(value: Memory) -> Self

Converts to this type from the input type.
source§

impl From<Memory> for Value

source§

fn from(v: Memory) -> Value

Converts to this type from the input type.
source§

impl FromGlibContainerAsVec<*mut GstMemory, *const *mut GstMemory> for Memory

source§

impl FromGlibContainerAsVec<*mut GstMemory, *mut *mut GstMemory> for Memory

source§

impl FromGlibPtrArrayContainerAsVec<*mut GstMemory, *const *mut GstMemory> for Memory

source§

impl FromGlibPtrArrayContainerAsVec<*mut GstMemory, *mut *mut GstMemory> for Memory

source§

impl FromGlibPtrBorrow<*const GstMemory> for Memory

source§

impl FromGlibPtrBorrow<*mut GstMemory> for Memory

source§

impl FromGlibPtrFull<*const GstMemory> for Memory

source§

unsafe fn from_glib_full(ptr: *const GstMemory) -> Self

Safety Read more
source§

impl FromGlibPtrFull<*mut GstMemory> for Memory

source§

unsafe fn from_glib_full(ptr: *mut GstMemory) -> Self

Safety Read more
source§

impl FromGlibPtrNone<*const GstMemory> for Memory

source§

unsafe fn from_glib_none(ptr: *const GstMemory) -> Self

Safety Read more
source§

impl FromGlibPtrNone<*mut GstMemory> for Memory

source§

unsafe fn from_glib_none(ptr: *mut GstMemory) -> Self

Safety Read more
source§

impl FromIterator<Memory> for Buffer

source§

fn from_iter<T: IntoIterator<Item = Memory>>(iter: T) -> Self

Creates a value from an iterator. Read more
source§

impl<'a> FromValue<'a> for &'a Memory

§

type Checker = GenericValueTypeOrNoneChecker<&'a Memory>

Value type checker.
source§

unsafe fn from_value(value: &'a Value) -> Self

Get the contained value from a Value. Read more
source§

impl<'a> FromValue<'a> for Memory

§

type Checker = GenericValueTypeOrNoneChecker<Memory>

Value type checker.
source§

unsafe fn from_value(value: &'a Value) -> Self

Get the contained value from a Value. Read more
source§

impl GlibPtrDefault for Memory

source§

impl HasParamSpec for Memory

§

type ParamSpec = ParamSpecBoxed

§

type SetValue = Memory

Preferred value to be used as setter for the associated ParamSpec.
§

type BuilderFn = fn(_: &str) -> ParamSpecBoxedBuilder<'_, Memory>

source§

fn param_spec_builder() -> Self::BuilderFn

source§

impl IntoGlibPtr<*mut GstMemory> for Memory

source§

unsafe fn into_glib_ptr(self) -> *mut GstMemory

Transfer: full.
source§

impl IsMiniObject for Memory

source§

impl MemoryType for Memory

source§

impl StaticType for Memory

source§

fn static_type() -> Type

Returns the type identifier of Self.
source§

impl<'a> ToGlibContainerFromSlice<'a, *const *mut GstMemory> for Memory

source§

impl<'a> ToGlibContainerFromSlice<'a, *mut *mut GstMemory> for Memory

source§

impl<'a> ToGlibPtr<'a, *const GstMemory> for Memory

§

type Storage = PhantomData<&'a Memory>

source§

fn to_glib_none(&'a self) -> Stash<'a, *const GstMemory, Self>

Transfer: none. Read more
source§

fn to_glib_full(&self) -> *const GstMemory

Transfer: full. Read more
source§

fn to_glib_container(&'a self) -> Stash<'a, P, Self>

Transfer: container. Read more
source§

impl<'a> ToGlibPtr<'a, *mut GstMemory> for Memory

§

type Storage = PhantomData<&'a Memory>

source§

fn to_glib_none(&'a self) -> Stash<'a, *mut GstMemory, Self>

Transfer: none. Read more
source§

fn to_glib_full(&self) -> *mut GstMemory

Transfer: full. Read more
source§

fn to_glib_container(&'a self) -> Stash<'a, P, Self>

Transfer: container. Read more
source§

impl<'a> ToGlibPtrMut<'a, *mut GstMemory> for Memory

§

type Storage = PhantomData<&'a mut Memory>

source§

fn to_glib_none_mut(&'a mut self) -> StashMut<'_, *mut GstMemory, Self>

Transfer: none. Read more
source§

impl ToValue for Memory

source§

fn to_value(&self) -> Value

Convert a value to a Value.
source§

fn value_type(&self) -> Type

Returns the type identifier of self. Read more
source§

impl ToValueOptional for Memory

source§

fn to_value_optional(s: Option<&Self>) -> Value

Convert an Option to a Value.
source§

impl ValueType for Memory

§

type Type = Memory

Type to get the Type from. Read more
source§

impl Send for Memory

source§

impl Sync for Memory

source§

impl TransparentPtrType for Memory

source§

impl ValueTypeOptional for Memory

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, dst: *mut T)

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

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GList> for T

source§

unsafe fn from_glib_none_num_as_vec(ptr: *const GList, num: usize) -> Vec<T>

source§

unsafe fn from_glib_container_num_as_vec(_: *const GList, _: usize) -> Vec<T>

source§

unsafe fn from_glib_full_num_as_vec(_: *const GList, _: usize) -> Vec<T>

source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GPtrArray> for T

source§

unsafe fn from_glib_none_num_as_vec(ptr: *const GPtrArray, num: usize) -> Vec<T>

source§

unsafe fn from_glib_container_num_as_vec( _: *const GPtrArray, _: usize, ) -> Vec<T>

source§

unsafe fn from_glib_full_num_as_vec(_: *const GPtrArray, _: usize) -> Vec<T>

source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GSList> for T

source§

unsafe fn from_glib_none_num_as_vec(ptr: *const GSList, num: usize) -> Vec<T>

source§

unsafe fn from_glib_container_num_as_vec(_: *const GSList, _: usize) -> Vec<T>

source§

unsafe fn from_glib_full_num_as_vec(_: *const GSList, _: usize) -> Vec<T>

source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GList> for T

source§

unsafe fn from_glib_none_num_as_vec(ptr: *mut GList, num: usize) -> Vec<T>

source§

unsafe fn from_glib_container_num_as_vec(ptr: *mut GList, num: usize) -> Vec<T>

source§

unsafe fn from_glib_full_num_as_vec(ptr: *mut GList, num: usize) -> Vec<T>

source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GPtrArray> for T

source§

unsafe fn from_glib_none_num_as_vec(ptr: *mut GPtrArray, num: usize) -> Vec<T>

source§

unsafe fn from_glib_container_num_as_vec( ptr: *mut GPtrArray, num: usize, ) -> Vec<T>

source§

unsafe fn from_glib_full_num_as_vec(ptr: *mut GPtrArray, num: usize) -> Vec<T>

source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GSList> for T

source§

unsafe fn from_glib_none_num_as_vec(ptr: *mut GSList, num: usize) -> Vec<T>

source§

unsafe fn from_glib_container_num_as_vec(ptr: *mut GSList, num: usize) -> Vec<T>

source§

unsafe fn from_glib_full_num_as_vec(ptr: *mut GSList, num: usize) -> Vec<T>

source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GList> for T

source§

unsafe fn from_glib_none_as_vec(ptr: *const GList) -> Vec<T>

source§

unsafe fn from_glib_container_as_vec(_: *const GList) -> Vec<T>

source§

unsafe fn from_glib_full_as_vec(_: *const GList) -> Vec<T>

source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GPtrArray> for T

source§

unsafe fn from_glib_none_as_vec(ptr: *const GPtrArray) -> Vec<T>

source§

unsafe fn from_glib_container_as_vec(_: *const GPtrArray) -> Vec<T>

source§

unsafe fn from_glib_full_as_vec(_: *const GPtrArray) -> Vec<T>

source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GSList> for T

source§

unsafe fn from_glib_none_as_vec(ptr: *const GSList) -> Vec<T>

source§

unsafe fn from_glib_container_as_vec(_: *const GSList) -> Vec<T>

source§

unsafe fn from_glib_full_as_vec(_: *const GSList) -> Vec<T>

source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GList> for T

source§

unsafe fn from_glib_none_as_vec(ptr: *mut GList) -> Vec<T>

source§

unsafe fn from_glib_container_as_vec(ptr: *mut GList) -> Vec<T>

source§

unsafe fn from_glib_full_as_vec(ptr: *mut GList) -> Vec<T>

source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GPtrArray> for T

source§

unsafe fn from_glib_none_as_vec(ptr: *mut GPtrArray) -> Vec<T>

source§

unsafe fn from_glib_container_as_vec(ptr: *mut GPtrArray) -> Vec<T>

source§

unsafe fn from_glib_full_as_vec(ptr: *mut GPtrArray) -> Vec<T>

source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GSList> for T

source§

unsafe fn from_glib_none_as_vec(ptr: *mut GSList) -> Vec<T>

source§

unsafe fn from_glib_container_as_vec(ptr: *mut GSList) -> Vec<T>

source§

unsafe fn from_glib_full_as_vec(ptr: *mut GSList) -> Vec<T>

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> IntoClosureReturnValue for T
where T: Into<Value>,

source§

impl<T> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

impl<T> Property for T
where T: HasParamSpec,

§

type Value = T

source§

impl<T> PropertyGet for T
where T: HasParamSpec,

§

type Value = T

source§

fn get<R, F>(&self, f: F) -> R
where F: Fn(&<T as PropertyGet>::Value) -> R,

source§

impl<T> StaticTypeExt for T
where T: StaticType,

source§

fn ensure_type()

Ensures that the type has been registered with the type system.
source§

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

§

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> ToSendValue for T
where T: Send + ToValue + ?Sized,

source§

fn to_send_value(&self) -> SendValue

Returns a SendValue clone of self.
source§

impl<T> TransparentType for T

source§

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

§

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> TryFromClosureReturnValue for T
where T: for<'a> FromValue<'a> + StaticType + 'static,

source§

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

§

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<'a, T, C, E> FromValueOptional<'a> for T
where T: FromValue<'a, Checker = C>, C: ValueTypeChecker<Error = ValueTypeMismatchOrNoneError<E>>, E: Error + Send + 'static,