PulseAudio  13.99.3-rebootstrapped
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;
232  const char *availability_group;
256  uint32_t type;
258 
262 typedef struct pa_sink_info {
263  const char *name;
264  uint32_t index;
265  const char *description;
268  uint32_t owner_module;
270  int mute;
271  uint32_t monitor_source;
272  const char *monitor_source_name;
274  const char *driver;
280  uint32_t n_volume_steps;
281  uint32_t card;
282  uint32_t n_ports;
285  uint8_t n_formats;
287 } pa_sink_info;
288 
290 typedef void (*pa_sink_info_cb_t)(pa_context *c, const pa_sink_info *i, int eol, void *userdata);
291 
293 pa_operation* pa_context_get_sink_info_by_name(pa_context *c, const char *name, pa_sink_info_cb_t cb, void *userdata);
294 
296 pa_operation* pa_context_get_sink_info_by_index(pa_context *c, uint32_t idx, pa_sink_info_cb_t cb, void *userdata);
297 
300 
302 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);
303 
305 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);
306 
308 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);
309 
311 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);
312 
314 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);
315 
317 pa_operation* pa_context_suspend_sink_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void* userdata);
318 
320 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);
321 
323 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);
324 
332 typedef struct pa_source_port_info {
333  const char *name;
334  const char *description;
335  uint32_t priority;
336  int available;
337  const char *availability_group;
361  uint32_t type;
363 
367 typedef struct pa_source_info {
368  const char *name;
369  uint32_t index;
370  const char *description;
373  uint32_t owner_module;
375  int mute;
376  uint32_t monitor_of_sink;
377  const char *monitor_of_sink_name;
379  const char *driver;
385  uint32_t n_volume_steps;
386  uint32_t card;
387  uint32_t n_ports;
390  uint8_t n_formats;
393 
395 typedef void (*pa_source_info_cb_t)(pa_context *c, const pa_source_info *i, int eol, void *userdata);
396 
398 pa_operation* pa_context_get_source_info_by_name(pa_context *c, const char *name, pa_source_info_cb_t cb, void *userdata);
399 
402 
405 
407 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);
408 
410 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);
411 
413 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);
414 
416 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);
417 
419 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);
420 
422 pa_operation* pa_context_suspend_source_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void* userdata);
423 
425 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);
426 
428 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);
429 
437 typedef struct pa_server_info {
438  const char *user_name;
439  const char *host_name;
440  const char *server_version;
441  const char *server_name;
443  const char *default_sink_name;
444  const char *default_source_name;
445  uint32_t cookie;
448 
450 typedef void (*pa_server_info_cb_t) (pa_context *c, const pa_server_info*i, void *userdata);
451 
454 
462 typedef struct pa_module_info {
463  uint32_t index;
464  const char*name,
465  *argument;
466  uint32_t n_used;
468  int auto_unload;
472 
474 typedef void (*pa_module_info_cb_t) (pa_context *c, const pa_module_info*i, int eol, void *userdata);
475 
477 pa_operation* pa_context_get_module_info(pa_context *c, uint32_t idx, pa_module_info_cb_t cb, void *userdata);
478 
481 
483 typedef void (*pa_context_index_cb_t)(pa_context *c, uint32_t idx, void *userdata);
484 
486 pa_operation* pa_context_load_module(pa_context *c, const char*name, const char *argument, pa_context_index_cb_t cb, void *userdata);
487 
489 pa_operation* pa_context_unload_module(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
490 
498 typedef struct pa_client_info {
499  uint32_t index;
500  const char *name;
501  uint32_t owner_module;
502  const char *driver;
505 
507 typedef void (*pa_client_info_cb_t) (pa_context *c, const pa_client_info*i, int eol, void *userdata);
508 
510 pa_operation* pa_context_get_client_info(pa_context *c, uint32_t idx, pa_client_info_cb_t cb, void *userdata);
511 
514 
516 pa_operation* pa_context_kill_client(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
517 
523 typedef struct pa_card_profile_info {
524  const char *name;
525  const char *description;
526  uint32_t n_sinks;
527  uint32_t n_sources;
528  uint32_t priority;
530 
534 typedef struct pa_card_profile_info2 {
535  const char *name;
536  const char *description;
537  uint32_t n_sinks;
538  uint32_t n_sources;
539  uint32_t priority;
547 
551 typedef struct pa_card_port_info {
552  const char *name;
553  const char *description;
554  uint32_t priority;
555  int available;
556  int direction;
557  uint32_t n_profiles;
560  int64_t latency_offset;
562  const char *availability_group;
581  uint32_t type;
583 
587 typedef struct pa_card_info {
588  uint32_t index;
589  const char *name;
590  uint32_t owner_module;
591  const char *driver;
592  uint32_t n_profiles;
596  uint32_t n_ports;
600 } pa_card_info;
601 
603 typedef void (*pa_card_info_cb_t) (pa_context *c, const pa_card_info*i, int eol, void *userdata);
604 
606 pa_operation* pa_context_get_card_info_by_index(pa_context *c, uint32_t idx, pa_card_info_cb_t cb, void *userdata);
607 
609 pa_operation* pa_context_get_card_info_by_name(pa_context *c, const char *name, pa_card_info_cb_t cb, void *userdata);
610 
613 
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);
616 
618 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);
619 
621 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);
622 
630 typedef struct pa_sink_input_info {
631  uint32_t index;
632  const char *name;
633  uint32_t owner_module;
634  uint32_t client;
635  uint32_t sink;
641  const char *resample_method;
642  const char *driver;
643  int mute;
645  int corked;
650 
652 typedef void (*pa_sink_input_info_cb_t) (pa_context *c, const pa_sink_input_info *i, int eol, void *userdata);
653 
656 
659 
661 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);
662 
664 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);
665 
667 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);
668 
670 pa_operation* pa_context_set_sink_input_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
671 
673 pa_operation* pa_context_kill_sink_input(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
674 
682 typedef struct pa_source_output_info {
683  uint32_t index;
684  const char *name;
685  uint32_t owner_module;
686  uint32_t client;
687  uint32_t source;
692  const char *resample_method;
693  const char *driver;
695  int corked;
697  int mute;
702 
704 typedef void (*pa_source_output_info_cb_t) (pa_context *c, const pa_source_output_info *i, int eol, void *userdata);
705 
708 
711 
713 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);
714 
716 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);
717 
719 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);
720 
722 pa_operation* pa_context_set_source_output_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
723 
726 
734 typedef struct pa_stat_info {
735  uint32_t memblock_total;
739  uint32_t scache_size;
740 } pa_stat_info;
741 
743 typedef void (*pa_stat_info_cb_t) (pa_context *c, const pa_stat_info *i, void *userdata);
744 
747 
755 typedef struct pa_sample_info {
756  uint32_t index;
757  const char *name;
762  uint32_t bytes;
763  int lazy;
764  const char *filename;
767 
769 typedef void (*pa_sample_info_cb_t)(pa_context *c, const pa_sample_info *i, int eol, void *userdata);
770 
772 pa_operation* pa_context_get_sample_info_by_name(pa_context *c, const char *name, pa_sample_info_cb_t cb, void *userdata);
773 
776 
779 
787 typedef enum pa_autoload_type {
788  PA_AUTOLOAD_SINK = 0,
789  PA_AUTOLOAD_SOURCE = 1
790 } pa_autoload_type_t;
791 
795 typedef struct pa_autoload_info {
796  uint32_t index;
797  const char *name;
798  pa_autoload_type_t type;
799  const char *module;
800  const char *argument;
801 } pa_autoload_info;
802 
804 typedef void (*pa_autoload_info_cb_t)(pa_context *c, const pa_autoload_info *i, int eol, void *userdata);
805 
807 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;
808 
810 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;
811 
813 pa_operation* pa_context_get_autoload_info_list(pa_context *c, pa_autoload_info_cb_t cb, void *userdata) PA_GCC_DEPRECATED;
814 
816 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;
817 
819 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;
820 
822 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;
823 
828 PA_C_DECL_END
829 
830 #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
const char * availability_group
An indentifier for the group of ports that share their availability status with each other...
Definition: introspect.h:562
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:688
const char * server_version
Version string of the daemon.
Definition: introspect.h:440
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:367
uint32_t cookie
A random cookie for identifying this instance of PulseAudio.
Definition: introspect.h:445
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:438
const char * description
Description of this profile.
Definition: introspect.h:536
A sample format and attribute specification.
Definition: sample.h:252
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:382
uint32_t n_used
Usage counter or PA_INVALID_INDEX.
Definition: introspect.h:466
pa_cvolume volume
Default volume of this entry.
Definition: introspect.h:758
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:589
uint32_t type
Port type, see pa_device_port_type.
Definition: introspect.h:256
Connection contexts for asynchronous communication with a server.
Stores information about source outputs.
Definition: introspect.h:682
pa_sink_port_info * active_port
Pointer to active port in the array, or NULL.
Definition: introspect.h:284
const char * monitor_of_sink_name
Name of the owning sink, or NULL.
Definition: introspect.h:377
int available
A pa_port_available enum, indicating availability status of this port.
Definition: introspect.h:555
const char * name
Name of this profile.
Definition: introspect.h:524
uint32_t sink
Index of the connected sink.
Definition: introspect.h:635
pa_volume_t base_volume
Some kind of &quot;base&quot; volume that refers to unamplified/unattenuated volume in the context of the input...
Definition: introspect.h:383
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:268
Constants and routines for volume handling.
uint32_t n_sources
Number of sources this profile would create.
Definition: introspect.h:527
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:596
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:283
const char * description
Description of this sink.
Definition: introspect.h:265
const char * driver
Driver name.
Definition: introspect.h:591
int volume_writable
The volume can be set.
Definition: introspect.h:699
uint32_t memblock_allocated_size
Total size of all memory blocks allocated during the whole lifetime of the daemon.
Definition: introspect.h:738
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:523
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.
const char * availability_group
An indentifier for the group of ports that share their availability status with each other...
Definition: introspect.h:232
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:274
pa_proplist * proplist
Property list.
Definition: introspect.h:470
Stores information about a specific profile of a card.
Definition: introspect.h:534
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:264
A structure encapsulating a per-channel volume.
Definition: volume.h:145
pa_channel_map channel_map
Channel map.
Definition: introspect.h:689
const char * resample_method
The resampling method used by this sink input.
Definition: introspect.h:641
uint32_t index
Index of the source output.
Definition: introspect.h:683
enum pa_source_state pa_source_state_t
Source state.
uint32_t index
Index of this card.
Definition: introspect.h:588
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:273
int volume_writable
The volume can be set.
Definition: introspect.h:647
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:444
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:450
uint32_t index
Index of this client.
Definition: introspect.h:499
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:270
const char * description
Description of this source.
Definition: introspect.h:370
uint32_t source
Index of the connected source.
Definition: introspect.h:687
Server information.
Definition: introspect.h:437
pa_cvolume volume
Volume of the sink.
Definition: introspect.h:269
uint32_t memblock_allocated
Allocated memory blocks during the whole lifetime of the daemon.
Definition: introspect.h:737
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:395
const char * name
Name of this entry.
Definition: introspect.h:757
pa_channel_map channel_map
The channel map.
Definition: introspect.h:760
uint32_t priority
The higher this value is, the more useful this profile is as a default.
Definition: introspect.h:539
const char * monitor_source_name
The name of the monitor source.
Definition: introspect.h:272
uint32_t priority
The higher this value is, the more useful this port is as a default.
Definition: introspect.h:554
const char * server_name
Server package name (usually &quot;pulseaudio&quot;)
Definition: introspect.h:441
pa_sample_spec sample_spec
The sample specification of the sink input.
Definition: introspect.h:636
pa_channel_map channel_map
Default channel map.
Definition: introspect.h:446
uint32_t n_volume_steps
Number of volume steps for sources which do not support arbitrary volumes.
Definition: introspect.h:385
uint32_t n_profiles
Number of entries in profile array.
Definition: introspect.h:557
uint32_t owner_module
Index of the owning module, or PA_INVALID_INDEX.
Definition: introspect.h:590
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:633
#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:264
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:332
uint32_t type
Port type, see pa_device_port_type.
Definition: introspect.h:581
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 &quot;unavailable&quot;, then it makes no sense to try to a...
Definition: introspect.h:540
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:698
const char * driver
Driver name.
Definition: introspect.h:642
pa_channel_map channel_map
Channel map.
Definition: introspect.h:637
uint32_t scache_size
Total size of all sample cache entries.
Definition: introspect.h:739
int corked
Stream corked.
Definition: introspect.h:695
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:743
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:501
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:507
Constants and routines for channel mapping handling.
pa_card_port_info ** ports
Array of pointers to ports, or NULL.
Definition: introspect.h:597
uint32_t monitor_source
Index of the monitor source connected to this sink.
Definition: introspect.h:271
uint32_t owner_module
Owning module index, or PA_INVALID_INDEX.
Definition: introspect.h:373
Stores information about sample cache entries.
Definition: introspect.h:755
pa_usec_t duration
Duration of this entry.
Definition: introspect.h:761
const char * host_name
Host name the daemon is running on.
Definition: introspect.h:439
enum pa_sink_flags pa_sink_flags_t
Special sink flags.
const char * availability_group
An indentifier for the group of ports that share their availability status with each other...
Definition: introspect.h:337
const char * description
Description of this port.
Definition: introspect.h:334
uint32_t memblock_total_size
Current total size of allocated memory blocks.
Definition: introspect.h:736
Stores information about sinks.
Definition: introspect.h:262
const char * resample_method
The resampling method used by this source output.
Definition: introspect.h:692
int available
A flags (see pa_port_available), indicating availability status of this port.
Definition: introspect.h:336
const char * name
Name of this port.
Definition: introspect.h:552
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:280
const char * name
Name of the source output.
Definition: introspect.h:684
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:290
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:690
uint32_t n_profiles
Number of entries in profile array.
Definition: introspect.h:592
Stores information about a specific port of a sink.
Definition: introspect.h:227
pa_source_flags_t flags
Flags.
Definition: introspect.h:380
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:634
struct pa_source_info pa_source_info
Stores information about sources.
int corked
Stream corked.
Definition: introspect.h:645
pa_usec_t buffer_usec
Latency due to buffering in sink input, see pa_timing_info for details.
Definition: introspect.h:639
pa_card_profile_info2 * active_profile2
Pointer to active profile in the array, or NULL.
Definition: introspect.h:599
pa_card_profile_info * active_profile
Definition: introspect.h:594
pa_cvolume volume
The volume of this source output.
Definition: introspect.h:696
GCC attribute macros.
int mute
Stream muted.
Definition: introspect.h:643
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:378
pa_sample_spec sample_spec
Sample spec of this sink.
Definition: introspect.h:266
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:734
pa_sample_spec sample_spec
Sample spec of this source.
Definition: introspect.h:371
pa_channel_map channel_map
Channel map.
Definition: introspect.h:372
pa_sample_spec sample_spec
Default sample specification.
Definition: introspect.h:442
uint32_t memblock_total
Currently allocated memory blocks.
Definition: introspect.h:735
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:381
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:644
const char * description
Description of this port.
Definition: introspect.h:553
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:333
pa_format_info * format
Stream format information.
Definition: introspect.h:648
int lazy
Non-zero when this is a lazy cache entry.
Definition: introspect.h:763
uint8_t n_formats
Number of formats supported by the sink.
Definition: introspect.h:285
pa_usec_t source_usec
Latency of the source device, see pa_timing_info for details.
Definition: introspect.h:691
Stores information about clients.
Definition: introspect.h:498
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:387
pa_cvolume volume
Volume of the source.
Definition: introspect.h:374
const char * default_sink_name
Name of default sink.
Definition: introspect.h:443
pa_source_port_info * active_port
Pointer to active port in the array, or NULL.
Definition: introspect.h:389
uint32_t priority
The higher this value is, the more useful this port is as a default.
Definition: introspect.h:335
pa_proplist * proplist
Property list.
Definition: introspect.h:503
const char * driver
Driver name.
Definition: introspect.h:693
uint32_t n_sinks
Number of sinks this profile would create.
Definition: introspect.h:526
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:267
Define header version.
Stores information about cards.
Definition: introspect.h:587
int has_volume
Stream has volume.
Definition: introspect.h:646
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:704
pa_volume_t base_volume
Some kind of &quot;base&quot; volume that refers to unamplified/unattenuated volume in the context of the outpu...
Definition: introspect.h:278
pa_proplist * proplist
Property list.
Definition: introspect.h:276
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:630
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:525
pa_proplist * proplist
Property list.
Definition: introspect.h:559
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:379
Stores information about modules.
Definition: introspect.h:462
pa_sink_state_t state
State.
Definition: introspect.h:279
pa_source_state_t state
State.
Definition: introspect.h:384
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:388
uint32_t index
Index of the sink input.
Definition: introspect.h:631
pa_sink_flags_t flags
Flags.
Definition: introspect.h:275
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:535
pa_proplist * proplist
Property list.
Definition: introspect.h:694
uint8_t n_formats
Number of formats supported by the source.
Definition: introspect.h:390
int mute
Mute switch of the sink.
Definition: introspect.h:375
uint32_t card
Card index, or PA_INVALID_INDEX.
Definition: introspect.h:281
const char * name
Name of the sink.
Definition: introspect.h:263
uint32_t n_sinks
Number of sinks this profile would create.
Definition: introspect.h:537
uint32_t n_sources
Number of sources this profile would create.
Definition: introspect.h:538
const char * name
Name of the source.
Definition: introspect.h:368
pa_sample_spec sample_spec
Sample specification of the sample.
Definition: introspect.h:759
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:764
uint32_t card
Card index, or PA_INVALID_INDEX.
Definition: introspect.h:386
uint32_t priority
The higher this value is, the more useful this profile is as a default.
Definition: introspect.h:528
const char * name
Name of the module.
Definition: introspect.h:464
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:603
int direction
A pa_direction enum, indicating the direction of this port.
Definition: introspect.h:556
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:598
uint32_t type
Port type, see pa_device_port_type.
Definition: introspect.h:361
uint32_t pa_volume_t
Volume specification: PA_VOLUME_MUTED: silence; &lt; PA_VOLUME_NORM: decreased volume; PA_VOLUME_NORM: n...
Definition: volume.h:117
const char * name
Name of this port.
Definition: introspect.h:228
const char * name
Name of the sink input.
Definition: introspect.h:632
uint32_t index
Index of this entry.
Definition: introspect.h:756
const char * argument
Argument string of the module.
Definition: introspect.h:464
Represents the format of data provided in a stream or processed by a sink.
Definition: format.h:98
pa_card_profile_info * profiles
Definition: introspect.h:593
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:474
A channel map which can be used to attach labels to specific channels of a stream.
Definition: channelmap.h:264
uint32_t index
Index of the source.
Definition: introspect.h:369
pa_proplist * proplist
Property list for this sample.
Definition: introspect.h:765
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:500
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:286
uint32_t bytes
Length of this sample in bytes.
Definition: introspect.h:762
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:697
pa_format_info ** formats
Array of formats supported by the source.
Definition: introspect.h:391
pa_cvolume volume
The volume of this sink input.
Definition: introspect.h:638
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:282
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:686
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:502
pa_usec_t sink_usec
Latency of the sink device, see pa_timing_info for details.
Definition: introspect.h:640
uint32_t monitor_of_sink
If this is a monitor source, the index of the owning sink, otherwise PA_INVALID_INDEX.
Definition: introspect.h:376
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:652
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:483
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:558
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:685
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:769
pa_usec_t configured_latency
The latency this device has been configured to.
Definition: introspect.h:277
Stores information about a specific port of a card.
Definition: introspect.h:551
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:700
pa_card_profile_info2 ** profiles2
Array of pointers to available profiles, or NULL.
Definition: introspect.h:561
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:463
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:560
pa_proplist * proplist
Property list.
Definition: introspect.h:595
const char * description
Description of this port.
Definition: introspect.h:229