PipeWire  0.3.27
impl-device.c File Reference

Data Structures

struct  impl
 
struct  result_device_params_data
 
struct  resource_data
 
struct  object_data
 

Macros

#define NAME   "device"
 
#define pw_device_resource(r, m, v, ...)   pw_resource_call(r,struct pw_device_events,m,v,__VA_ARGS__)
 
#define pw_device_resource_info(r, ...)   pw_device_resource(r,info,0,__VA_ARGS__)
 
#define pw_device_resource_param(r, ...)   pw_device_resource(r,param,0,__VA_ARGS__)
 
#define OBJECT_NODE   0
 
#define OBJECT_DEVICE   1
 

Functions

SPA_EXPORT struct pw_impl_devicepw_context_create_device (struct pw_context *context, struct pw_properties *properties, size_t user_data_size)
 
SPA_EXPORT void pw_impl_device_destroy (struct pw_impl_device *device)
 
SPA_EXPORT int pw_impl_device_for_each_param (struct pw_impl_device *device, int seq, uint32_t param_id, uint32_t index, uint32_t max, const struct spa_pod *filter, int(*callback)(void *data, int seq, uint32_t id, uint32_t index, uint32_t next, struct spa_pod *param), void *data)
 
SPA_EXPORT int pw_impl_device_register (struct pw_impl_device *device, struct pw_properties *properties)
 
SPA_EXPORT int pw_impl_device_set_implementation (struct pw_impl_device *device, struct spa_device *spa_device)
 Set the device implementation. More...
 
SPA_EXPORT struct spa_device * pw_impl_device_get_implementation (struct pw_impl_device *device)
 Get the device implementation. More...
 
SPA_EXPORT const struct pw_propertiespw_impl_device_get_properties (struct pw_impl_device *device)
 
SPA_EXPORT int pw_impl_device_update_properties (struct pw_impl_device *device, const struct spa_dict *dict)
 
SPA_EXPORT void * pw_impl_device_get_user_data (struct pw_impl_device *device)
 
SPA_EXPORT struct pw_globalpw_impl_device_get_global (struct pw_impl_device *device)
 Get the global of this device. More...
 
SPA_EXPORT void pw_impl_device_add_listener (struct pw_impl_device *device, struct spa_hook *listener, const struct pw_impl_device_events *events, void *data)
 Add an event listener. More...
 

Macro Definition Documentation

◆ NAME

#define NAME   "device"

◆ OBJECT_DEVICE

#define OBJECT_DEVICE   1

◆ OBJECT_NODE

#define OBJECT_NODE   0

◆ pw_device_resource

#define pw_device_resource (   r,
  m,
  v,
  ... 
)    pw_resource_call(r,struct pw_device_events,m,v,__VA_ARGS__)

◆ pw_device_resource_info

#define pw_device_resource_info (   r,
  ... 
)    pw_device_resource(r,info,0,__VA_ARGS__)

◆ pw_device_resource_param

#define pw_device_resource_param (   r,
  ... 
)    pw_device_resource(r,param,0,__VA_ARGS__)

Function Documentation

◆ pw_context_create_device()

SPA_EXPORT struct pw_impl_device* pw_context_create_device ( struct pw_context context,
struct pw_properties properties,
size_t  user_data_size 
)

◆ pw_impl_device_add_listener()

SPA_EXPORT void pw_impl_device_add_listener ( struct pw_impl_device device,
struct spa_hook *  listener,
const struct pw_impl_device_events events,
void *  data 
)

Add an event listener.

◆ pw_impl_device_destroy()

SPA_EXPORT void pw_impl_device_destroy ( struct pw_impl_device device)

◆ pw_impl_device_for_each_param()

SPA_EXPORT int pw_impl_device_for_each_param ( struct pw_impl_device device,
int  seq,
uint32_t  param_id,
uint32_t  index,
uint32_t  max,
const struct spa_pod *  filter,
int(*)(void *data, int seq, uint32_t id, uint32_t index, uint32_t next, struct spa_pod *param callback,
void *  data 
)

◆ pw_impl_device_get_global()

SPA_EXPORT struct pw_global* pw_impl_device_get_global ( struct pw_impl_device device)

Get the global of this device.

◆ pw_impl_device_get_implementation()

SPA_EXPORT struct spa_device* pw_impl_device_get_implementation ( struct pw_impl_device device)

Get the device implementation.

◆ pw_impl_device_get_properties()

SPA_EXPORT const struct pw_properties* pw_impl_device_get_properties ( struct pw_impl_device device)

◆ pw_impl_device_get_user_data()

SPA_EXPORT void* pw_impl_device_get_user_data ( struct pw_impl_device device)

◆ pw_impl_device_register()

◆ pw_impl_device_set_implementation()

SPA_EXPORT int pw_impl_device_set_implementation ( struct pw_impl_device device,
struct spa_device *  spa_device 
)

Set the device implementation.

References NAME, pw_log::pw_log_debug, and pw_log::pw_log_error.

◆ pw_impl_device_update_properties()

SPA_EXPORT int pw_impl_device_update_properties ( struct pw_impl_device device,
const struct spa_dict dict 
)