PulseAudio  6.0
introspect.h
Go to the documentation of this file.
1 #ifndef foointrospecthfoo
2 #define foointrospecthfoo
3 
4 /***
5  This file is part of PulseAudio.
6 
7  Copyright 2004-2006 Lennart Poettering
8  Copyright 2006 Pierre Ossman <ossman@cendio.se> for Cendio AB
9 
10  PulseAudio is free software; you can redistribute it and/or modify
11  it under the terms of the GNU Lesser General Public License as published
12  by the Free Software Foundation; either version 2.1 of the License,
13  or (at your option) any later version.
14 
15  PulseAudio is distributed in the hope that it will be useful, but
16  WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18  General Public License for more details.
19 
20  You should have received a copy of the GNU Lesser General Public License
21  along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
22 ***/
23 
24 #include <inttypes.h>
25 
26 #include <pulse/operation.h>
27 #include <pulse/context.h>
28 #include <pulse/cdecl.h>
29 #include <pulse/gccmacro.h>
30 #include <pulse/channelmap.h>
31 #include <pulse/volume.h>
32 #include <pulse/proplist.h>
33 #include <pulse/format.h>
34 #include <pulse/version.h>
35 
220 PA_C_DECL_BEGIN
221 
227 typedef struct pa_sink_port_info {
228  const char *name;
229  const char *description;
230  uint32_t priority;
231  int available;
233 
237 typedef struct pa_sink_info {
238  const char *name;
239  uint32_t index;
240  const char *description;
243  uint32_t owner_module;
245  int mute;
246  uint32_t monitor_source;
247  const char *monitor_source_name;
249  const char *driver;
255  uint32_t n_volume_steps;
256  uint32_t card;
257  uint32_t n_ports;
260  uint8_t n_formats;
262 } pa_sink_info;
263 
265 typedef void (*pa_sink_info_cb_t)(pa_context *c, const pa_sink_info *i, int eol, void *userdata);
266 
268 pa_operation* pa_context_get_sink_info_by_name(pa_context *c, const char *name, pa_sink_info_cb_t cb, void *userdata);
269 
271 pa_operation* pa_context_get_sink_info_by_index(pa_context *c, uint32_t idx, pa_sink_info_cb_t cb, void *userdata);
272 
275 
277 pa_operation* pa_context_set_sink_volume_by_index(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata);
278 
280 pa_operation* pa_context_set_sink_volume_by_name(pa_context *c, const char *name, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata);
281 
283 pa_operation* pa_context_set_sink_mute_by_index(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
284 
286 pa_operation* pa_context_set_sink_mute_by_name(pa_context *c, const char *name, int mute, pa_context_success_cb_t cb, void *userdata);
287 
289 pa_operation* pa_context_suspend_sink_by_name(pa_context *c, const char *sink_name, int suspend, pa_context_success_cb_t cb, void* userdata);
290 
292 pa_operation* pa_context_suspend_sink_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void* userdata);
293 
295 pa_operation* pa_context_set_sink_port_by_index(pa_context *c, uint32_t idx, const char*port, pa_context_success_cb_t cb, void *userdata);
296 
298 pa_operation* pa_context_set_sink_port_by_name(pa_context *c, const char*name, const char*port, pa_context_success_cb_t cb, void *userdata);
299 
307 typedef struct pa_source_port_info {
308  const char *name;
309  const char *description;
310  uint32_t priority;
311  int available;
313 
317 typedef struct pa_source_info {
318  const char *name;
319  uint32_t index;
320  const char *description;
323  uint32_t owner_module;
325  int mute;
326  uint32_t monitor_of_sink;
327  const char *monitor_of_sink_name;
329  const char *driver;
335  uint32_t n_volume_steps;
336  uint32_t card;
337  uint32_t n_ports;
340  uint8_t n_formats;
343 
345 typedef void (*pa_source_info_cb_t)(pa_context *c, const pa_source_info *i, int eol, void *userdata);
346 
348 pa_operation* pa_context_get_source_info_by_name(pa_context *c, const char *name, pa_source_info_cb_t cb, void *userdata);
349 
352 
355 
357 pa_operation* pa_context_set_source_volume_by_index(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata);
358 
360 pa_operation* pa_context_set_source_volume_by_name(pa_context *c, const char *name, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata);
361 
363 pa_operation* pa_context_set_source_mute_by_index(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
364 
366 pa_operation* pa_context_set_source_mute_by_name(pa_context *c, const char *name, int mute, pa_context_success_cb_t cb, void *userdata);
367 
369 pa_operation* pa_context_suspend_source_by_name(pa_context *c, const char *source_name, int suspend, pa_context_success_cb_t cb, void* userdata);
370 
372 pa_operation* pa_context_suspend_source_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void* userdata);
373 
375 pa_operation* pa_context_set_source_port_by_index(pa_context *c, uint32_t idx, const char*port, pa_context_success_cb_t cb, void *userdata);
376 
378 pa_operation* pa_context_set_source_port_by_name(pa_context *c, const char*name, const char*port, pa_context_success_cb_t cb, void *userdata);
379 
387 typedef struct pa_server_info {
388  const char *user_name;
389  const char *host_name;
390  const char *server_version;
391  const char *server_name;
393  const char *default_sink_name;
394  const char *default_source_name;
395  uint32_t cookie;
398 
400 typedef void (*pa_server_info_cb_t) (pa_context *c, const pa_server_info*i, void *userdata);
401 
404 
412 typedef struct pa_module_info {
413  uint32_t index;
414  const char*name,
415  *argument;
416  uint32_t n_used;
418  int auto_unload;
422 
424 typedef void (*pa_module_info_cb_t) (pa_context *c, const pa_module_info*i, int eol, void *userdata);
425 
427 pa_operation* pa_context_get_module_info(pa_context *c, uint32_t idx, pa_module_info_cb_t cb, void *userdata);
428 
431 
433 typedef void (*pa_context_index_cb_t)(pa_context *c, uint32_t idx, void *userdata);
434 
436 pa_operation* pa_context_load_module(pa_context *c, const char*name, const char *argument, pa_context_index_cb_t cb, void *userdata);
437 
439 pa_operation* pa_context_unload_module(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
440 
448 typedef struct pa_client_info {
449  uint32_t index;
450  const char *name;
451  uint32_t owner_module;
452  const char *driver;
455 
457 typedef void (*pa_client_info_cb_t) (pa_context *c, const pa_client_info*i, int eol, void *userdata);
458 
460 pa_operation* pa_context_get_client_info(pa_context *c, uint32_t idx, pa_client_info_cb_t cb, void *userdata);
461 
464 
466 pa_operation* pa_context_kill_client(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
467 
473 typedef struct pa_card_profile_info {
474  const char *name;
475  const char *description;
476  uint32_t n_sinks;
477  uint32_t n_sources;
478  uint32_t priority;
480 
484 typedef struct pa_card_profile_info2 {
485  const char *name;
486  const char *description;
487  uint32_t n_sinks;
488  uint32_t n_sources;
489  uint32_t priority;
497 
501 typedef struct pa_card_port_info {
502  const char *name;
503  const char *description;
504  uint32_t priority;
505  int available;
506  int direction;
507  uint32_t n_profiles;
510  int64_t latency_offset;
513 
517 typedef struct pa_card_info {
518  uint32_t index;
519  const char *name;
520  uint32_t owner_module;
521  const char *driver;
522  uint32_t n_profiles;
526  uint32_t n_ports;
530 } pa_card_info;
531 
533 typedef void (*pa_card_info_cb_t) (pa_context *c, const pa_card_info*i, int eol, void *userdata);
534 
536 pa_operation* pa_context_get_card_info_by_index(pa_context *c, uint32_t idx, pa_card_info_cb_t cb, void *userdata);
537 
539 pa_operation* pa_context_get_card_info_by_name(pa_context *c, const char *name, pa_card_info_cb_t cb, void *userdata);
540 
543 
545 pa_operation* pa_context_set_card_profile_by_index(pa_context *c, uint32_t idx, const char*profile, pa_context_success_cb_t cb, void *userdata);
546 
548 pa_operation* pa_context_set_card_profile_by_name(pa_context *c, const char*name, const char*profile, pa_context_success_cb_t cb, void *userdata);
549 
551 pa_operation* pa_context_set_port_latency_offset(pa_context *c, const char *card_name, const char *port_name, int64_t offset, pa_context_success_cb_t cb, void *userdata);
552 
560 typedef struct pa_sink_input_info {
561  uint32_t index;
562  const char *name;
563  uint32_t owner_module;
564  uint32_t client;
565  uint32_t sink;
571  const char *resample_method;
572  const char *driver;
573  int mute;
575  int corked;
580 
582 typedef void (*pa_sink_input_info_cb_t) (pa_context *c, const pa_sink_input_info *i, int eol, void *userdata);
583 
586 
589 
591 pa_operation* pa_context_move_sink_input_by_name(pa_context *c, uint32_t idx, const char *sink_name, pa_context_success_cb_t cb, void* userdata);
592 
594 pa_operation* pa_context_move_sink_input_by_index(pa_context *c, uint32_t idx, uint32_t sink_idx, pa_context_success_cb_t cb, void* userdata);
595 
597 pa_operation* pa_context_set_sink_input_volume(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata);
598 
600 pa_operation* pa_context_set_sink_input_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
601 
603 pa_operation* pa_context_kill_sink_input(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
604 
612 typedef struct pa_source_output_info {
613  uint32_t index;
614  const char *name;
615  uint32_t owner_module;
616  uint32_t client;
617  uint32_t source;
622  const char *resample_method;
623  const char *driver;
625  int corked;
627  int mute;
632 
634 typedef void (*pa_source_output_info_cb_t) (pa_context *c, const pa_source_output_info *i, int eol, void *userdata);
635 
638 
641 
643 pa_operation* pa_context_move_source_output_by_name(pa_context *c, uint32_t idx, const char *source_name, pa_context_success_cb_t cb, void* userdata);
644 
646 pa_operation* pa_context_move_source_output_by_index(pa_context *c, uint32_t idx, uint32_t source_idx, pa_context_success_cb_t cb, void* userdata);
647 
649 pa_operation* pa_context_set_source_output_volume(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata);
650 
652 pa_operation* pa_context_set_source_output_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
653 
656 
664 typedef struct pa_stat_info {
665  uint32_t memblock_total;
669  uint32_t scache_size;
670 } pa_stat_info;
671 
673 typedef void (*pa_stat_info_cb_t) (pa_context *c, const pa_stat_info *i, void *userdata);
674 
677 
685 typedef struct pa_sample_info {
686  uint32_t index;
687  const char *name;
692  uint32_t bytes;
693  int lazy;
694  const char *filename;
697 
699 typedef void (*pa_sample_info_cb_t)(pa_context *c, const pa_sample_info *i, int eol, void *userdata);
700 
702 pa_operation* pa_context_get_sample_info_by_name(pa_context *c, const char *name, pa_sample_info_cb_t cb, void *userdata);
703 
706 
709 
717 typedef enum pa_autoload_type {
718  PA_AUTOLOAD_SINK = 0,
719  PA_AUTOLOAD_SOURCE = 1
720 } pa_autoload_type_t;
721 
725 typedef struct pa_autoload_info {
726  uint32_t index;
727  const char *name;
728  pa_autoload_type_t type;
729  const char *module;
730  const char *argument;
731 } pa_autoload_info;
732 
734 typedef void (*pa_autoload_info_cb_t)(pa_context *c, const pa_autoload_info *i, int eol, void *userdata);
735 
737 pa_operation* pa_context_get_autoload_info_by_name(pa_context *c, const char *name, pa_autoload_type_t type, pa_autoload_info_cb_t cb, void *userdata) PA_GCC_DEPRECATED;
738 
740 pa_operation* pa_context_get_autoload_info_by_index(pa_context *c, uint32_t idx, pa_autoload_info_cb_t cb, void *userdata) PA_GCC_DEPRECATED;
741 
743 pa_operation* pa_context_get_autoload_info_list(pa_context *c, pa_autoload_info_cb_t cb, void *userdata) PA_GCC_DEPRECATED;
744 
746 pa_operation* pa_context_add_autoload(pa_context *c, const char *name, pa_autoload_type_t type, const char *module, const char*argument, pa_context_index_cb_t, void* userdata) PA_GCC_DEPRECATED;
747 
749 pa_operation* pa_context_remove_autoload_by_name(pa_context *c, const char *name, pa_autoload_type_t type, pa_context_success_cb_t cb, void* userdata) PA_GCC_DEPRECATED;
750 
752 pa_operation* pa_context_remove_autoload_by_index(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void* userdata) PA_GCC_DEPRECATED;
753 
758 PA_C_DECL_END
759 
760 #endif
pa_operation * pa_context_get_sample_info_by_index(pa_context *c, uint32_t idx, pa_sample_info_cb_t cb, void *userdata)
Get information about a sample by its index.
struct pa_context pa_context
An opaque connection context to a daemon.
Definition: context.h:154
pa_operation * pa_context_get_card_info_by_index(pa_context *c, uint32_t idx, pa_card_info_cb_t cb, void *userdata)
Get information about a card by its index.
pa_sample_spec sample_spec
The sample specification of the source output.
Definition: introspect.h:618
const char * server_version
Version string of the daemon.
Definition: introspect.h:390
pa_operation * pa_context_get_sink_info_by_index(pa_context *c, uint32_t idx, pa_sink_info_cb_t cb, void *userdata)
Get information about a sink by its index.
Stores information about sources.
Definition: introspect.h:317
uint32_t cookie
A random cookie for identifying this instance of PulseAudio.
Definition: introspect.h:395
pa_operation * pa_context_set_source_volume_by_index(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata)
Set the volume of a source device specified by its index.
const char * user_name
User name of the daemon process.
Definition: introspect.h:388
const char * description
Description of this profile.
Definition: introspect.h:486
A sample format and attribute specification.
Definition: sample.h:248
enum pa_sink_state pa_sink_state_t
Sink state.
pa_usec_t configured_latency
The latency this device has been configured to.
Definition: introspect.h:332
uint32_t n_used
Usage counter or PA_INVALID_INDEX.
Definition: introspect.h:416
pa_cvolume volume
Default volume of this entry.
Definition: introspect.h:688
struct pa_card_profile_info pa_card_profile_info
pa_operation * pa_context_set_source_mute_by_index(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata)
Set the mute switch of a source device specified by its index.
const char * name
Name of this card.
Definition: introspect.h:519
Connection contexts for asynchronous communication with a server.
Stores information about source outputs.
Definition: introspect.h:612
pa_sink_port_info * active_port
Pointer to active port in the array, or NULL.
Definition: introspect.h:259
const char * monitor_of_sink_name
Name of the owning sink, or NULL.
Definition: introspect.h:327
int available
A pa_port_available enum, indicating availability status of this port.
Definition: introspect.h:505
const char * name
Name of this profile.
Definition: introspect.h:474
uint32_t sink
Index of the connected sink.
Definition: introspect.h:565
pa_volume_t base_volume
Some kind of "base" volume that refers to unamplified/unattenuated volume in the context of the input...
Definition: introspect.h:333
pa_operation * pa_context_get_source_info_by_name(pa_context *c, const char *name, pa_source_info_cb_t cb, void *userdata)
Get information about a source by its name.
pa_operation * pa_context_set_sink_volume_by_name(pa_context *c, const char *name, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata)
Set the volume of a sink device specified by its name.
pa_operation * pa_context_get_module_info(pa_context *c, uint32_t idx, pa_module_info_cb_t cb, void *userdata)
Get some information about a module by its index.
uint32_t owner_module
Index of the owning module of this sink, or PA_INVALID_INDEX.
Definition: introspect.h:243
Constants and routines for volume handling.
uint32_t n_sources
Number of sources this profile would create.
Definition: introspect.h:477
pa_operation * pa_context_kill_sink_input(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata)
Kill a sink input.
pa_operation * pa_context_set_port_latency_offset(pa_context *c, const char *card_name, const char *port_name, int64_t offset, pa_context_success_cb_t cb, void *userdata)
Set the latency offset of a port.
uint32_t n_ports
Number of entries in port array.
Definition: introspect.h:526
pa_operation * pa_context_set_source_port_by_name(pa_context *c, const char *name, const char *port, pa_context_success_cb_t cb, void *userdata)
Change the profile of a source.
pa_sink_port_info ** ports
Array of available ports, or NULL.
Definition: introspect.h:258
const char * description
Description of this sink.
Definition: introspect.h:240
const char * driver
Driver name.
Definition: introspect.h:521
int volume_writable
The volume can be set.
Definition: introspect.h:629
uint32_t memblock_allocated_size
Total size of all memory blocks allocated during the whole lifetime of the daemon.
Definition: introspect.h:668
pa_operation * pa_context_set_sink_input_volume(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata)
Set the volume of a sink input stream.
Definition: introspect.h:473
pa_operation * pa_context_move_source_output_by_name(pa_context *c, uint32_t idx, const char *source_name, pa_context_success_cb_t cb, void *userdata)
Move the specified source output to a different source.
enum pa_source_flags pa_source_flags_t
Special source flags.
struct pa_card_info pa_card_info
Stores information about cards.
pa_operation * pa_context_set_source_volume_by_name(pa_context *c, const char *name, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata)
Set the volume of a source device specified by its name.
pa_operation * pa_context_kill_client(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata)
Kill a client.
const char * driver
Driver name.
Definition: introspect.h:249
pa_proplist * proplist
Property list.
Definition: introspect.h:420
Stores information about a specific profile of a card.
Definition: introspect.h:484
pa_operation * pa_context_suspend_sink_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void *userdata)
Suspend/Resume a sink.
uint32_t index
Index of the sink.
Definition: introspect.h:239
A structure encapsulating a per-channel volume.
Definition: volume.h:148
pa_channel_map channel_map
Channel map.
Definition: introspect.h:619
const char * resample_method
The resampling method used by this sink input.
Definition: introspect.h:571
uint32_t index
Index of the source output.
Definition: introspect.h:613
enum pa_source_state pa_source_state_t
Source state.
uint32_t index
Index of this card.
Definition: introspect.h:518
struct pa_card_port_info pa_card_port_info
Stores information about a specific port of a card.
pa_operation * pa_context_load_module(pa_context *c, const char *name, const char *argument, pa_context_index_cb_t cb, void *userdata)
Load a module.
pa_operation * pa_context_get_sink_input_info_list(pa_context *c, pa_sink_input_info_cb_t cb, void *userdata)
Get the complete sink input list.
pa_usec_t latency
Length of queued audio in the output buffer.
Definition: introspect.h:248
int volume_writable
The volume can be set.
Definition: introspect.h:577
struct pa_sink_input_info pa_sink_input_info
Stores information about sink inputs.
const char * default_source_name
Name of default source.
Definition: introspect.h:394
void(* pa_server_info_cb_t)(pa_context *c, const pa_server_info *i, void *userdata)
Callback prototype for pa_context_get_server_info()
Definition: introspect.h:400
uint32_t index
Index of this client.
Definition: introspect.h:449
int available
A flags (see pa_port_available), indicating availability status of this port.
Definition: introspect.h:231
struct pa_source_port_info pa_source_port_info
Stores information about a specific port of a source.
struct pa_operation pa_operation
An asynchronous operation object.
Definition: operation.h:33
int mute
Mute switch of the sink.
Definition: introspect.h:245
const char * description
Description of this source.
Definition: introspect.h:320
uint32_t source
Index of the connected source.
Definition: introspect.h:617
Server information.
Definition: introspect.h:387
pa_cvolume volume
Volume of the sink.
Definition: introspect.h:244
uint32_t memblock_allocated
Allocated memory blocks during the whole lifetime of the daemon.
Definition: introspect.h:667
void(* pa_source_info_cb_t)(pa_context *c, const pa_source_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_source_info_by_name() and friends.
Definition: introspect.h:345
const char * name
Name of this entry.
Definition: introspect.h:687
pa_channel_map channel_map
The channel map.
Definition: introspect.h:690
uint32_t priority
The higher this value is, the more useful this profile is as a default.
Definition: introspect.h:489
const char * monitor_source_name
The name of the monitor source.
Definition: introspect.h:247
uint32_t priority
The higher this value is, the more useful this port is as a default.
Definition: introspect.h:504
const char * server_name
Server package name (usually "pulseaudio")
Definition: introspect.h:391
pa_sample_spec sample_spec
The sample specification of the sink input.
Definition: introspect.h:566
pa_channel_map channel_map
Default channel map.
Definition: introspect.h:396
uint32_t n_volume_steps
Number of volume steps for sources which do not support arbitrary volumes.
Definition: introspect.h:335
uint32_t n_profiles
Number of entries in profile array.
Definition: introspect.h:507
uint32_t owner_module
Index of the owning module, or PA_INVALID_INDEX.
Definition: introspect.h:520
uint32_t owner_module
Index of the module this sink input belongs to, or PA_INVALID_INDEX when it does not belong to any mo...
Definition: introspect.h:563
#define PA_GCC_DEPRECATED
This function is deprecated.
Definition: gccmacro.h:91
uint64_t pa_usec_t
Type for usec specifications (unsigned).
Definition: sample.h:260
pa_operation * pa_context_get_client_info(pa_context *c, uint32_t idx, pa_client_info_cb_t cb, void *userdata)
Get information about a client by its index.
pa_operation * pa_context_move_sink_input_by_name(pa_context *c, uint32_t idx, const char *sink_name, pa_context_success_cb_t cb, void *userdata)
Move the specified sink input to a different sink.
Stores information about a specific port of a source.
Definition: introspect.h:307
Utility functions for handling a stream or sink format.
pa_operation * pa_context_get_sink_info_by_name(pa_context *c, const char *name, pa_sink_info_cb_t cb, void *userdata)
Get information about a sink by its name.
int available
Is this profile available? If this is zero, meaning "unavailable", then it makes no sense to try to a...
Definition: introspect.h:490
struct pa_sink_port_info pa_sink_port_info
Stores information about a specific port of a sink.
pa_operation * pa_context_get_client_info_list(pa_context *c, pa_client_info_cb_t cb, void *userdata)
Get the complete client list.
void(* pa_context_success_cb_t)(pa_context *c, int success, void *userdata)
A generic callback for operation completion.
Definition: context.h:160
int has_volume
Stream has volume.
Definition: introspect.h:628
const char * driver
Driver name.
Definition: introspect.h:572
pa_channel_map channel_map
Channel map.
Definition: introspect.h:567
uint32_t scache_size
Total size of all sample cache entries.
Definition: introspect.h:669
int corked
Stream corked.
Definition: introspect.h:625
void(* pa_stat_info_cb_t)(pa_context *c, const pa_stat_info *i, void *userdata)
Callback prototype for pa_context_stat()
Definition: introspect.h:673
pa_operation * pa_context_set_source_mute_by_name(pa_context *c, const char *name, int mute, pa_context_success_cb_t cb, void *userdata)
Set the mute switch of a source device specified by its name.
uint32_t owner_module
Index of the owning module, or PA_INVALID_INDEX.
Definition: introspect.h:451
struct pa_module_info pa_module_info
Stores information about modules.
void(* pa_client_info_cb_t)(pa_context *c, const pa_client_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_client_info() and friends.
Definition: introspect.h:457
Constants and routines for channel mapping handling.
pa_card_port_info ** ports
Array of pointers to ports, or NULL.
Definition: introspect.h:527
uint32_t monitor_source
Index of the monitor source connected to this sink.
Definition: introspect.h:246
uint32_t owner_module
Owning module index, or PA_INVALID_INDEX.
Definition: introspect.h:323
Stores information about sample cache entries.
Definition: introspect.h:685
pa_usec_t duration
Duration of this entry.
Definition: introspect.h:691
const char * host_name
Host name the daemon is running on.
Definition: introspect.h:389
enum pa_sink_flags pa_sink_flags_t
Special sink flags.
const char * description
Description of this port.
Definition: introspect.h:309
uint32_t memblock_total_size
Current total size of allocated memory blocks.
Definition: introspect.h:666
Stores information about sinks.
Definition: introspect.h:237
const char * resample_method
The resampling method used by this source output.
Definition: introspect.h:622
int available
A flags (see pa_port_available), indicating availability status of this port.
Definition: introspect.h:311
const char * name
Name of this port.
Definition: introspect.h:502
pa_operation * pa_context_get_module_info_list(pa_context *c, pa_module_info_cb_t cb, void *userdata)
Get the complete list of currently loaded modules.
uint32_t n_volume_steps
Number of volume steps for sinks which do not support arbitrary volumes.
Definition: introspect.h:255
const char * name
Name of the source output.
Definition: introspect.h:614
void(* pa_sink_info_cb_t)(pa_context *c, const pa_sink_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_sink_info_by_name() and friends.
Definition: introspect.h:265
pa_operation * pa_context_move_sink_input_by_index(pa_context *c, uint32_t idx, uint32_t sink_idx, pa_context_success_cb_t cb, void *userdata)
Move the specified sink input to a different sink.
pa_usec_t buffer_usec
Latency due to buffering in the source output, see pa_timing_info for details.
Definition: introspect.h:620
uint32_t n_profiles
Number of entries in profile array.
Definition: introspect.h:522
Stores information about a specific port of a sink.
Definition: introspect.h:227
pa_source_flags_t flags
Flags.
Definition: introspect.h:330
uint32_t client
Index of the client this sink input belongs to, or PA_INVALID_INDEX when it does not belong to any cl...
Definition: introspect.h:564
struct pa_source_info pa_source_info
Stores information about sources.
int corked
Stream corked.
Definition: introspect.h:575
pa_usec_t buffer_usec
Latency due to buffering in sink input, see pa_timing_info for details.
Definition: introspect.h:569
pa_card_profile_info2 * active_profile2
Pointer to active profile in the array, or NULL.
Definition: introspect.h:529
pa_card_profile_info * active_profile
Definition: introspect.h:524
pa_cvolume volume
The volume of this source output.
Definition: introspect.h:626
GCC attribute macros.
int mute
Stream muted.
Definition: introspect.h:573
struct pa_stat_info pa_stat_info
Memory block statistics.
pa_operation * pa_context_set_card_profile_by_name(pa_context *c, const char *name, const char *profile, pa_context_success_cb_t cb, void *userdata)
Change the profile of a card.
pa_usec_t latency
Length of filled record buffer of this source.
Definition: introspect.h:328
pa_sample_spec sample_spec
Sample spec of this sink.
Definition: introspect.h:241
pa_operation * pa_context_set_sink_input_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata)
Set the mute switch of a sink input stream.
Memory block statistics.
Definition: introspect.h:664
pa_sample_spec sample_spec
Sample spec of this source.
Definition: introspect.h:321
pa_channel_map channel_map
Channel map.
Definition: introspect.h:322
pa_sample_spec sample_spec
Default sample specification.
Definition: introspect.h:392
uint32_t memblock_total
Currently allocated memory blocks.
Definition: introspect.h:665
pa_operation * pa_context_set_sink_mute_by_index(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata)
Set the mute switch of a sink device specified by its index.
pa_proplist * proplist
Property list.
Definition: introspect.h:331
pa_operation * pa_context_set_source_output_volume(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata)
Set the volume of a source output stream.
pa_proplist * proplist
Property list.
Definition: introspect.h:574
const char * description
Description of this port.
Definition: introspect.h:503
struct pa_server_info pa_server_info
Server information.
pa_operation * pa_context_get_source_info_list(pa_context *c, pa_source_info_cb_t cb, void *userdata)
Get the complete source list.
const char * name
Name of this port.
Definition: introspect.h:308
pa_format_info * format
Stream format information.
Definition: introspect.h:578
int lazy
Non-zero when this is a lazy cache entry.
Definition: introspect.h:693
uint8_t n_formats
Number of formats supported by the sink.
Definition: introspect.h:260
pa_usec_t source_usec
Latency of the source device, see pa_timing_info for details.
Definition: introspect.h:621
Stores information about clients.
Definition: introspect.h:448
pa_operation * pa_context_suspend_source_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void *userdata)
Suspend/Resume a source.
uint32_t n_ports
Number of entries in port array.
Definition: introspect.h:337
pa_cvolume volume
Volume of the source.
Definition: introspect.h:324
const char * default_sink_name
Name of default sink.
Definition: introspect.h:393
pa_source_port_info * active_port
Pointer to active port in the array, or NULL.
Definition: introspect.h:339
uint32_t priority
The higher this value is, the more useful this port is as a default.
Definition: introspect.h:310
pa_proplist * proplist
Property list.
Definition: introspect.h:453
const char * driver
Driver name.
Definition: introspect.h:623
uint32_t n_sinks
Number of sinks this profile would create.
Definition: introspect.h:476
pa_operation * pa_context_suspend_sink_by_name(pa_context *c, const char *sink_name, int suspend, pa_context_success_cb_t cb, void *userdata)
Suspend/Resume a sink.
pa_channel_map channel_map
Channel map.
Definition: introspect.h:242
Define header version.
Stores information about cards.
Definition: introspect.h:517
int has_volume
Stream has volume.
Definition: introspect.h:576
void(* pa_source_output_info_cb_t)(pa_context *c, const pa_source_output_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_source_output_info() and friends.
Definition: introspect.h:634
pa_volume_t base_volume
Some kind of "base" volume that refers to unamplified/unattenuated volume in the context of the outpu...
Definition: introspect.h:253
pa_proplist * proplist
Property list.
Definition: introspect.h:251
Asynchronous operations.
pa_operation * pa_context_suspend_source_by_name(pa_context *c, const char *source_name, int suspend, pa_context_success_cb_t cb, void *userdata)
Suspend/Resume a source.
Stores information about sink inputs.
Definition: introspect.h:560
pa_operation * pa_context_get_sample_info_by_name(pa_context *c, const char *name, pa_sample_info_cb_t cb, void *userdata)
Get information about a sample by its name.
const char * description
Description of this profile.
Definition: introspect.h:475
pa_proplist * proplist
Property list.
Definition: introspect.h:509
pa_operation * pa_context_set_source_port_by_index(pa_context *c, uint32_t idx, const char *port, pa_context_success_cb_t cb, void *userdata)
Change the profile of a source.
const char * driver
Driver name.
Definition: introspect.h:329
Stores information about modules.
Definition: introspect.h:412
pa_sink_state_t state
State.
Definition: introspect.h:254
pa_source_state_t state
State.
Definition: introspect.h:334
struct pa_card_profile_info2 pa_card_profile_info2
Stores information about a specific profile of a card.
pa_source_port_info ** ports
Array of available ports, or NULL.
Definition: introspect.h:338
uint32_t index
Index of the sink input.
Definition: introspect.h:561
pa_sink_flags_t flags
Flags.
Definition: introspect.h:250
pa_operation * pa_context_get_source_output_info_list(pa_context *c, pa_source_output_info_cb_t cb, void *userdata)
Get the complete list of source outputs.
pa_operation * pa_context_get_sink_input_info(pa_context *c, uint32_t idx, pa_sink_input_info_cb_t cb, void *userdata)
Get some information about a sink input by its index.
pa_operation * pa_context_set_source_output_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata)
Set the mute switch of a source output stream.
const char * name
Name of this profile.
Definition: introspect.h:485
pa_proplist * proplist
Property list.
Definition: introspect.h:624
uint8_t n_formats
Number of formats supported by the source.
Definition: introspect.h:340
int mute
Mute switch of the sink.
Definition: introspect.h:325
uint32_t card
Card index, or PA_INVALID_INDEX.
Definition: introspect.h:256
const char * name
Name of the sink.
Definition: introspect.h:238
uint32_t n_sinks
Number of sinks this profile would create.
Definition: introspect.h:487
uint32_t n_sources
Number of sources this profile would create.
Definition: introspect.h:488
const char * name
Name of the source.
Definition: introspect.h:318
pa_sample_spec sample_spec
Sample specification of the sample.
Definition: introspect.h:689
const char * filename
In case this is a lazy cache entry, the filename for the sound file to be loaded on demand...
Definition: introspect.h:694
uint32_t card
Card index, or PA_INVALID_INDEX.
Definition: introspect.h:336
uint32_t priority
The higher this value is, the more useful this profile is as a default.
Definition: introspect.h:478
const char * name
Name of the module.
Definition: introspect.h:414
pa_operation * pa_context_kill_source_output(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata)
Kill a source output.
void(* pa_card_info_cb_t)(pa_context *c, const pa_card_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_card_info_...()
Definition: introspect.h:533
int direction
A pa_direction enum, indicating the direction of this port.
Definition: introspect.h:506
pa_operation * pa_context_get_server_info(pa_context *c, pa_server_info_cb_t cb, void *userdata)
Get some information about the server.
pa_operation * pa_context_set_sink_volume_by_index(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata)
Set the volume of a sink device specified by its index.
pa_card_profile_info2 ** profiles2
Array of pointers to available profiles, or NULL.
Definition: introspect.h:528
uint32_t pa_volume_t
Volume specification: PA_VOLUME_MUTED: silence; < PA_VOLUME_NORM: decreased volume; PA_VOLUME_NORM: n...
Definition: volume.h:120
const char * name
Name of this port.
Definition: introspect.h:228
const char * name
Name of the sink input.
Definition: introspect.h:562
uint32_t index
Index of this entry.
Definition: introspect.h:686
const char * argument
Argument string of the module.
Definition: introspect.h:414
Represents the format of data provided in a stream or processed by a sink.
Definition: format.h:85
pa_card_profile_info * profiles
Definition: introspect.h:523
void(* pa_module_info_cb_t)(pa_context *c, const pa_module_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_module_info() and friends.
Definition: introspect.h:424
A channel map which can be used to attach labels to specific channels of a stream.
Definition: channelmap.h:262
uint32_t index
Index of the source.
Definition: introspect.h:319
pa_proplist * proplist
Property list for this sample.
Definition: introspect.h:695
pa_operation * pa_context_get_sample_info_list(pa_context *c, pa_sample_info_cb_t cb, void *userdata)
Get the complete list of samples stored in the daemon.
const char * name
Name of this client.
Definition: introspect.h:450
pa_operation * pa_context_move_source_output_by_index(pa_context *c, uint32_t idx, uint32_t source_idx, pa_context_success_cb_t cb, void *userdata)
Move the specified source output to a different source.
struct pa_proplist pa_proplist
A property list object.
Definition: proplist.h:272
pa_format_info ** formats
Array of formats supported by the sink.
Definition: introspect.h:261
uint32_t bytes
Length of this sample in bytes.
Definition: introspect.h:692
struct pa_sample_info pa_sample_info
Stores information about sample cache entries.
pa_operation * pa_context_get_source_output_info(pa_context *c, uint32_t idx, pa_source_output_info_cb_t cb, void *userdata)
Get information about a source output by its index.
pa_operation * pa_context_set_sink_port_by_index(pa_context *c, uint32_t idx, const char *port, pa_context_success_cb_t cb, void *userdata)
Change the profile of a sink.
int mute
Stream muted.
Definition: introspect.h:627
pa_format_info ** formats
Array of formats supported by the source.
Definition: introspect.h:341
pa_cvolume volume
The volume of this sink input.
Definition: introspect.h:568
pa_operation * pa_context_get_card_info_list(pa_context *c, pa_card_info_cb_t cb, void *userdata)
Get the complete card list.
uint32_t n_ports
Number of entries in port array.
Definition: introspect.h:257
uint32_t client
Index of the client this source output belongs to, or PA_INVALID_INDEX when it does not belong to any...
Definition: introspect.h:616
pa_operation * pa_context_stat(pa_context *c, pa_stat_info_cb_t cb, void *userdata)
Get daemon memory block statistics.
const char * driver
Driver name.
Definition: introspect.h:452
pa_usec_t sink_usec
Latency of the sink device, see pa_timing_info for details.
Definition: introspect.h:570
uint32_t monitor_of_sink
If this is a monitor source, the index of the owning sink, otherwise PA_INVALID_INDEX.
Definition: introspect.h:326
pa_operation * pa_context_set_sink_mute_by_name(pa_context *c, const char *name, int mute, pa_context_success_cb_t cb, void *userdata)
Set the mute switch of a sink device specified by its name.
Property list constants and functions.
void(* pa_sink_input_info_cb_t)(pa_context *c, const pa_sink_input_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_sink_input_info() and friends.
Definition: introspect.h:582
struct pa_source_output_info pa_source_output_info
Stores information about source outputs.
pa_operation * pa_context_set_sink_port_by_name(pa_context *c, const char *name, const char *port, pa_context_success_cb_t cb, void *userdata)
Change the profile of a sink.
void(* pa_context_index_cb_t)(pa_context *c, uint32_t idx, void *userdata)
Callback prototype for pa_context_load_module()
Definition: introspect.h:433
pa_operation * pa_context_get_source_info_by_index(pa_context *c, uint32_t idx, pa_source_info_cb_t cb, void *userdata)
Get information about a source by its index.
struct pa_sink_info pa_sink_info
Stores information about sinks.
pa_card_profile_info ** profiles
Definition: introspect.h:508
uint32_t owner_module
Index of the module this source output belongs to, or PA_INVALID_INDEX when it does not belong to any...
Definition: introspect.h:615
pa_operation * pa_context_set_card_profile_by_index(pa_context *c, uint32_t idx, const char *profile, pa_context_success_cb_t cb, void *userdata)
Change the profile of a card.
struct pa_client_info pa_client_info
Stores information about clients.
void(* pa_sample_info_cb_t)(pa_context *c, const pa_sample_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_sample_info_by_name() and friends.
Definition: introspect.h:699
pa_usec_t configured_latency
The latency this device has been configured to.
Definition: introspect.h:252
Stores information about a specific port of a card.
Definition: introspect.h:501
pa_operation * pa_context_unload_module(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata)
Unload a module.
pa_format_info * format
Stream format information.
Definition: introspect.h:630
pa_card_profile_info2 ** profiles2
Array of pointers to available profiles, or NULL.
Definition: introspect.h:511
pa_operation * pa_context_get_card_info_by_name(pa_context *c, const char *name, pa_card_info_cb_t cb, void *userdata)
Get information about a card by its name.
pa_operation * pa_context_get_sink_info_list(pa_context *c, pa_sink_info_cb_t cb, void *userdata)
Get the complete sink list.
uint32_t index
Index of the module.
Definition: introspect.h:413
uint32_t priority
The higher this value is, the more useful this port is as a default.
Definition: introspect.h:230
int64_t latency_offset
Latency offset of the port that gets added to the sink/source latency when the port is active...
Definition: introspect.h:510
pa_proplist * proplist
Property list.
Definition: introspect.h:525
const char * description
Description of this port.
Definition: introspect.h:229