跳到主要内容

AVClass

搜索

结构体 AVClass 

源代码
#[repr(C)]
pub struct AVClass { pub class_name: *const c_char, pub item_name: Option<unsafe extern "C" fn(ctx: *mut c_void) -> *const c_char>, pub option: *const AVOption, pub version: c_int, pub log_level_offset_offset: c_int, pub parent_log_context_offset: c_int, pub category: AVClassCategory, pub get_category: Option<unsafe extern "C" fn(ctx: *mut c_void) -> AVClassCategory>, pub query_ranges: Option<unsafe extern "C" fn(arg1: *mut *mut AVOptionRanges, obj: *mut c_void, key: *const c_char, flags: c_int) -> c_int>, pub child_next: Option<unsafe extern "C" fn(obj: *mut c_void, prev: *mut c_void) -> *mut c_void>, pub child_class_iterate: Option<unsafe extern "C" fn(iter: *mut *mut c_void) -> *const AVClass>, pub state_flags_offset: c_int, }
展开描述

Describe the class of an AVClass context structure. That is an arbitrary struct of which the first field is a pointer to an AVClass struct (e.g. AVCodecContext, AVFormatContext etc.).

Fields§

§class_name: *const c_char

The name of the class; usually it is the same name as the context structure type to which the AVClass is associated.

§item_name: Option<unsafe extern "C" fn(ctx: *mut c_void) -> *const c_char>

A pointer to a function which returns the name of a context instance ctx associated with the class.

§option: *const AVOption

An array of options for the structure or NULL. When non-NULL, the array must be terminated by an option with a NULL name.

@see av_set_default_options()

§version: c_int

LIBAVUTIL_VERSION with which this structure was created. This is used to allow fields to be added to AVClass without requiring major version bumps everywhere.

§log_level_offset_offset: c_int

Offset in the structure where the log level offset is stored. The log level offset is an int added to the log level for logging with this object as the context.

0 means there is no such variable.

§parent_log_context_offset: c_int

Offset in the structure where a pointer to the parent context for logging is stored. For example a decoder could pass its AVCodecContext to eval as such a parent context, which an ::av_log() implementation could then leverage to display the parent context.

When the pointer is NULL, or this offset is zero, the object is assumed to have no parent.

§category: AVClassCategory

Category used for visualization (like color).

Only used when ::get_category() is NULL. Use this field when all instances of this class have the same category, use ::get_category() otherwise.

§get_category: Option<unsafe extern "C" fn(ctx: *mut c_void) -> AVClassCategory>

Callback to return the instance category. Use this callback when different instances of this class may have different categories, ::category otherwise.

§query_ranges: Option<unsafe extern "C" fn(arg1: *mut *mut AVOptionRanges, obj: *mut c_void, key: *const c_char, flags: c_int) -> c_int>

Callback to return the supported/allowed ranges.

§child_next: Option<unsafe extern "C" fn(obj: *mut c_void, prev: *mut c_void) -> *mut c_void>

Return next AVOptions-enabled child or NULL

§child_class_iterate: Option<unsafe extern "C" fn(iter: *mut *mut c_void) -> *const AVClass>

Iterate over the AVClasses corresponding to potential AVOptions-enabled children.

@param iter pointer to opaque iteration state. The caller must initialize *iter to NULL before the first call. @return AVClass for the next AVOptions-enabled child or NULL if there are no more such children.

@note The difference between ::child_next() and ::child_class_iterate() is that ::child_next() iterates over actual children of an existing object instance, while ::child_class_iterate() iterates over the classes of all potential children of any possible instance of this class.

§state_flags_offset: c_int

When non-zero, offset in the object to an unsigned int holding object state flags, a combination of AVClassStateFlags values. The flags are updated by the object to signal its state to the generic code.

Added in version 59.41.100.

trait 实现§

源代码§

impl Clone for AVClass

源代码§

fn clone(&self) -> AVClass

Returns a duplicate of the value. 阅读更多
1.0.0 · 源代码§

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

source 执行拷贝赋值。 阅读更多
源代码§

impl Debug for AVClass

源代码§

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

使用给定的格式化器格式化该值。 阅读更多
源代码§

impl PartialEq for AVClass

源代码§

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

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

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

测试 !=。默认实现几乎总是足够的,没有充分理由不应被重写。
源代码§

impl Copy for AVClass

源代码§

impl Eq for AVClass

源代码§

impl StructuralPartialEq for AVClass

自动 trait 实现§

blanket 实现§

源代码§

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

源代码§

fn type_id(&self) -> TypeId

获取 selfTypeId阅读更多
源代码§

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

源代码§

fn borrow(&self) -> &T

从拥有的值不可变地借用。 阅读更多
源代码§

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

源代码§

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

从拥有的值可变地借用。 阅读更多
源代码§

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

源代码§

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

🔬This is a nightly-only experimental API. (clone_to_uninit)
self 执行拷贝赋值到 dest阅读更多
源代码§

impl<T> From<T> for T

源代码§

fn from(t: T) -> T

原样返回参数。

源代码§

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

源代码§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U 实现选择执行的操作。

源代码§

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

源代码§

type Owned = T

获取所有权后得到的类型。
源代码§

fn to_owned(&self) -> T

通常通过克隆,从借用数据创建拥有的数据。 阅读更多
源代码§

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

通常通过克隆,使用借用数据替换拥有的数据。 阅读更多
源代码§

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

源代码§

type Error = Infallible

转换出错时返回的类型。
源代码§

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

执行该转换。
源代码§

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

源代码§

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

转换出错时返回的类型。
源代码§

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

执行该转换。