Loading...
Searching...
No Matches
AVClass Struct Reference

Describe the class of an AVClass context structure. More...

`#include <libavutil/log.h>`

## Data Fields

const char * | class_name
| The name of the class; usually it is the same name as the context structure type to which the AVClass is associated.
const char *(* | item_name )(void *ctx)
| A pointer to a function which returns the name of a context instance ctx associated with the class.
const struct AVOption * | option
| An array of options for the structure or NULL.
int | version
| LIBAVUTIL_VERSION with which this structure was created.
int | log_level_offset_offset
| Offset in the structure where the log level offset is stored.
int | parent_log_context_offset
| Offset in the structure where a pointer to the parent context for logging is stored.
AVClassCategory | category
| Category used for visualization (like color).
AVClassCategory(* | get_category )(void *ctx)
| Callback to return the instance category.
int(* | query_ranges )(struct AVOptionRanges **, void *obj, const char *key, int flags)
| Callback to return the supported/allowed ranges.
void *(* | child_next )(void *obj, void *prev)
| Return next AVOptions-enabled child or NULL.
const struct AVClass *(* | child_class_iterate )(void **iter)
| Iterate over the AVClasses corresponding to potential AVOptions-enabled children.
int | state_flags_offset
| When non-zero, offset in the object to an unsigned int holding object state flags, a combination of AVClassStateFlags values.

## Detailed Description

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.).

Definition at line 76 of file log.h.

## Field Documentation

## class_name

const char* AVClass::class_name

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

Definition at line 81 of file log.h.

## item_name

const char *(* AVClass::item_name) (void *ctx)

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

Definition at line 87 of file log.h.

## option

const struct AVOption* AVClass::option

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 also
  av_set_default_options()

Definition at line 96 of file log.h.

## version

int AVClass::version

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.

Definition at line 104 of file log.h.

## log_level_offset_offset

int AVClass::log_level_offset_offset

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.

Definition at line 113 of file log.h.

## parent_log_context_offset

int AVClass::parent_log_context_offset

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.

Definition at line 124 of file log.h.

## category

AVClassCategory AVClass::category

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.

Definition at line 133 of file log.h.

## get_category

AVClassCategory(* AVClass::get_category) (void *ctx)

Callback to return the instance category.

Use this callback when different instances of this class may have different categories, ::category otherwise.

Definition at line 140 of file log.h.

## query_ranges

int(* AVClass::query_ranges) (struct AVOptionRanges **, void *obj, const char *key, int flags)

Callback to return the supported/allowed ranges.

Definition at line 145 of file log.h.

## child_next

void *(* AVClass::child_next) (void *obj, void *prev)

Return next AVOptions-enabled child or NULL.

Definition at line 150 of file log.h.

## child_class_iterate

const struct AVClass *(* AVClass::child_class_iterate) (void **iter)

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

Parameters

  iter | pointer to opaque iteration state. The caller must initialize *iter to NULL before the first call.

Returns
  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.

Definition at line 150 of file log.h.

## state_flags_offset

int AVClass::state_flags_offset

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.

Definition at line 176 of file log.h.

The documentation for this struct was generated from the following file:

- libavutil/log.h