PipeWire: spa_handle_factory Struct Reference

PipeWire 0.3.37

Data Fields
spa_handle_factory Struct Reference
SPA Plugin Handles

`#include <plugin.h>`

Collaboration diagram for spa_handle_factory:
[legend]

## Data Fields
uint32_t | version
const char * | name
| The name of the factory contains a logical name that describes the function of the handle. More...
const struct spa_dict * | info
| Extra information about the handles of this factory. More...
size_t(* | get_size )(const struct spa_handle_factory *factory, const struct spa_dict *params)
| Get the size of handles from this factory. More...
int(* | init )(const struct spa_handle_factory *factory, struct spa_handle *handle, const struct spa_dict *info, const struct spa_support *support, uint32_t n_support)
| Initialize an instance of this factory. More...
int(* | enum_interface_info )(const struct spa_handle_factory *factory, const struct spa_interface_info **info, uint32_t *index)
| spa_handle_factory::enum_interface_info: More...

## Field Documentation

## ◆ enum_interface_info

int(* spa_handle_factory::enum_interface_info) (const struct spa_handle_factory *factory, const struct spa_interface_info **info, uint32_t *index)

spa_handle_factory::enum_interface_info:

Parameters

  factory | a spa_handle_factory
  info | result to hold spa_interface_info.
  index | index to keep track of the enumeration, 0 for first item

Enumerate the interface information for factory.

Returns
  1 when an item is available 0 when no more items are available < 0 errno type error

## ◆ get_size

size_t(* spa_handle_factory::get_size) (const struct spa_handle_factory *factory, const struct spa_dict *params)

Get the size of handles from this factory.

Parameters

  factory | a spa_handle_factory
  params | extra parameters that determine the size of the handle.

## ◆ info

const struct spa_dict* spa_handle_factory::info

Extra information about the handles of this factory.

## ◆ init

int(* spa_handle_factory::init) (const struct spa_handle_factory *factory, struct spa_handle *handle, const struct spa_dict *info, const struct spa_support *support, uint32_t n_support)

Initialize an instance of this factory.

The caller should allocate memory at least size bytes and pass this as handle.

support can optionally contain extra interfaces or data items that the plugin can use such as a logger.

Parameters

  factory | a spa_handle_factory
  handle | a pointer to memory
  info | extra handle specific information, usually obtained from a spa_device. This can be used to configure the handle.
  support | support items
  n_support | number of elements in support

Returns
  0 on success < 0 errno type error

## ◆ name

const char* spa_handle_factory::name

The name of the factory contains a logical name that describes the function of the handle.

Other plugins might contain an alternative implementation with the same name.

See utils/names.h for the list of standard names.

Examples include:

api.alsa.pcm.sink: an object to write PCM samples to an alsa PLAYBACK device api.v4l2.source: an object to read from a v4l2 source.

## ◆ version

uint32_t spa_handle_factory::version

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

- plugin.h