PipeWire 1.6.8

Loading...
Searching...
No Matches
Module Impl
Implementation API

A dynamically loadable module. More...

## Files
file | impl-module.h
| pipewire/impl-module.h

## Data Structures
struct | pw_impl_module_events
| Module events added with pw_impl_module_add_listener. More...
struct | pw_impl_module

## Typedefs
typedef int(* | pw_impl_module_init_func_t) (struct pw_impl_module *module, const char *args)
| Module init function signature.

## Macros
#define | PW_VERSION_IMPL_MODULE_EVENTS 0

## Functions
struct pw_impl_module * | pw_context_load_module (struct pw_context *context, const char *name, const char *args, struct pw_properties *properties)
| Load a module.
struct pw_context * | pw_impl_module_get_context (struct pw_impl_module *module)
| Get the context of a module.
struct pw_global * | pw_impl_module_get_global (struct pw_impl_module *module)
| Get the global of a module.
const struct pw_properties * | pw_impl_module_get_properties (struct pw_impl_module *module)
| Get the module properties.
int | pw_impl_module_update_properties (struct pw_impl_module *module, const struct spa_dict *dict)
| Update the module properties.
const struct pw_module_info * | pw_impl_module_get_info (struct pw_impl_module *module)
| Get the module info.
void | pw_impl_module_add_listener (struct pw_impl_module *module, struct spa_hook *listener, const struct pw_impl_module_events *events, void *data)
| Add an event listener to a module.
void | pw_impl_module_destroy (struct pw_impl_module *module)
| Destroy a module.
void | pw_impl_module_schedule_destroy (struct pw_impl_module *module)
| Schedule a destroy later on the main thread.

## Detailed Description

A dynamically loadable module.

## Typedef Documentation

## ◆ pw_impl_module_init_func_t

typedef int(* pw_impl_module_init_func_t) (struct pw_impl_module *module, const char *args)

Module init function signature.

Parameters

  module | A Module Impl
  args | Arguments to the module

Returns
  0 on success, < 0 otherwise with an errno style error

A module should provide an init function with this signature. This function will be called when a module is loaded.

## Macro Definition Documentation

## ◆ PW_VERSION_IMPL_MODULE_EVENTS

#define PW_VERSION_IMPL_MODULE_EVENTS 0

## Function Documentation

## ◆ pw_context_load_module()

struct pw_impl_module * pw_context_load_module | ( | struct pw_context * | context,
|  | const char * | name,
|  | const char * | args,
|  | struct pw_properties * | properties )

Load a module.

Parameters

  context | a Context
  name | name of the module to load
  args | A string with arguments for the module
  properties | extra global properties

Returns
  A Module Impl if the module could be loaded, or NULL on failure.

Examples
  export-spa-device.c, export-spa.c, and internal.c.

## ◆ pw_impl_module_get_context()

struct pw_context * pw_impl_module_get_context | ( | struct pw_impl_module * | module | ) |

Get the context of a module.

## ◆ pw_impl_module_get_global()

struct pw_global * pw_impl_module_get_global | ( | struct pw_impl_module * | module | ) |

Get the global of a module.

## ◆ pw_impl_module_get_properties()

const struct pw_properties * pw_impl_module_get_properties | ( | struct pw_impl_module * | module | ) |

Get the module properties.

## ◆ pw_impl_module_update_properties()

int pw_impl_module_update_properties | ( | struct pw_impl_module * | module,
|  | const struct spa_dict * | dict )

Update the module properties.

## ◆ pw_impl_module_get_info()

const struct pw_module_info * pw_impl_module_get_info | ( | struct pw_impl_module * | module | ) |

Get the module info.

## ◆ pw_impl_module_add_listener()

void pw_impl_module_add_listener | ( | struct pw_impl_module * | module,
|  | struct spa_hook * | listener,
|  | const struct pw_impl_module_events * | events,
|  | void * | data )

Add an event listener to a module.

## ◆ pw_impl_module_destroy()

void pw_impl_module_destroy | ( | struct pw_impl_module * | module | ) |

Destroy a module.

Parameters

  module | the module to destroy

## ◆ pw_impl_module_schedule_destroy()

void pw_impl_module_schedule_destroy | ( | struct pw_impl_module * | module | ) |

Schedule a destroy later on the main thread.