PulseAudio  2.1
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, write to the Free Software
22  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
23  USA.
24 ***/
25 
26 #include <inttypes.h>
27 
28 #include <pulse/operation.h>
29 #include <pulse/context.h>
30 #include <pulse/cdecl.h>
31 #include <pulse/gccmacro.h>
32 #include <pulse/channelmap.h>
33 #include <pulse/volume.h>
34 #include <pulse/proplist.h>
35 #include <pulse/format.h>
36 #include <pulse/version.h>
37 
194 PA_C_DECL_BEGIN
195 
201 typedef struct pa_sink_port_info {
202  const char *name;
203  const char *description;
204  uint32_t priority;
205  int available;
207 
211 typedef struct pa_sink_info {
212  const char *name;
213  uint32_t index;
214  const char *description;
217  uint32_t owner_module;
219  int mute;
220  uint32_t monitor_source;
221  const char *monitor_source_name;
223  const char *driver;
229  uint32_t n_volume_steps;
230  uint32_t card;
231  uint32_t n_ports;
234  uint8_t n_formats;
236 } pa_sink_info;
237 
239 typedef void (*pa_sink_info_cb_t)(pa_context *c, const pa_sink_info *i, int eol, void *userdata);
240 
242 pa_operation* pa_context_get_sink_info_by_name(pa_context *c, const char *name, pa_sink_info_cb_t cb, void *userdata);
243 
245 pa_operation* pa_context_get_sink_info_by_index(pa_context *c, uint32_t idx, pa_sink_info_cb_t cb, void *userdata);
246 
249 
251 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);
252 
254 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);
255 
257 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);
258 
260 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);
261 
263 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);
264 
266 pa_operation* pa_context_suspend_sink_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void* userdata);
267 
269 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);
270 
272 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);
273 
281 typedef struct pa_source_port_info {
282  const char *name;
283  const char *description;
284  uint32_t priority;
285  int available;
287 
291 typedef struct pa_source_info {
292  const char *name;
293  uint32_t index;
294  const char *description;
297  uint32_t owner_module;
299  int mute;
300  uint32_t monitor_of_sink;
301  const char *monitor_of_sink_name;
303  const char *driver;
309  uint32_t n_volume_steps;
310  uint32_t card;
311  uint32_t n_ports;
314  uint8_t n_formats;
317 
319 typedef void (*pa_source_info_cb_t)(pa_context *c, const pa_source_info *i, int eol, void *userdata);
320 
322 pa_operation* pa_context_get_source_info_by_name(pa_context *c, const char *name, pa_source_info_cb_t cb, void *userdata);
323 
326 
329 
331 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);
332 
334 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);
335 
337 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);
338 
340 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);
341 
343 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);
344 
346 pa_operation* pa_context_suspend_source_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void* userdata);
347 
349 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);
350 
352 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);
353 
361 typedef struct pa_server_info {
362  const char *user_name;
363  const char *host_name;
364  const char *server_version;
365  const char *server_name;
367  const char *default_sink_name;
368  const char *default_source_name;
369  uint32_t cookie;
372 
374 typedef void (*pa_server_info_cb_t) (pa_context *c, const pa_server_info*i, void *userdata);
375 
378 
386 typedef struct pa_module_info {
387  uint32_t index;
388  const char*name,
389  *argument;
390  uint32_t n_used;
392  int auto_unload;
396 
398 typedef void (*pa_module_info_cb_t) (pa_context *c, const pa_module_info*i, int eol, void *userdata);
399 
401 pa_operation* pa_context_get_module_info(pa_context *c, uint32_t idx, pa_module_info_cb_t cb, void *userdata);
402 
405 
407 typedef void (*pa_context_index_cb_t)(pa_context *c, uint32_t idx, void *userdata);
408 
410 pa_operation* pa_context_load_module(pa_context *c, const char*name, const char *argument, pa_context_index_cb_t cb, void *userdata);
411 
413 pa_operation* pa_context_unload_module(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
414 
422 typedef struct pa_client_info {
423  uint32_t index;
424  const char *name;
425  uint32_t owner_module;
426  const char *driver;
429 
431 typedef void (*pa_client_info_cb_t) (pa_context *c, const pa_client_info*i, int eol, void *userdata);
432 
434 pa_operation* pa_context_get_client_info(pa_context *c, uint32_t idx, pa_client_info_cb_t cb, void *userdata);
435 
438 
440 pa_operation* pa_context_kill_client(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
441 
449 typedef struct pa_card_profile_info {
450  const char *name;
451  const char *description;
452  uint32_t n_sinks;
453  uint32_t n_sources;
454  uint32_t priority;
456 
460 typedef struct pa_card_port_info {
461  const char *name;
462  const char *description;
463  uint32_t priority;
464  int available;
465  int direction;
466  uint32_t n_profiles;
470 
474 typedef struct pa_card_info {
475  uint32_t index;
476  const char *name;
477  uint32_t owner_module;
478  const char *driver;
479  uint32_t n_profiles;
483  uint32_t n_ports;
485 } pa_card_info;
486 
488 typedef void (*pa_card_info_cb_t) (pa_context *c, const pa_card_info*i, int eol, void *userdata);
489 
491 pa_operation* pa_context_get_card_info_by_index(pa_context *c, uint32_t idx, pa_card_info_cb_t cb, void *userdata);
492 
494 pa_operation* pa_context_get_card_info_by_name(pa_context *c, const char *name, pa_card_info_cb_t cb, void *userdata);
495 
498 
500 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);
501 
503 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);
504 
512 typedef struct pa_sink_input_info {
513  uint32_t index;
514  const char *name;
515  uint32_t owner_module;
516  uint32_t client;
517  uint32_t sink;
523  const char *resample_method;
524  const char *driver;
525  int mute;
527  int corked;
532 
534 typedef void (*pa_sink_input_info_cb_t) (pa_context *c, const pa_sink_input_info *i, int eol, void *userdata);
535 
538 
541 
543 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);
544 
546 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);
547 
549 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);
550 
552 pa_operation* pa_context_set_sink_input_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
553 
555 pa_operation* pa_context_kill_sink_input(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
556 
564 typedef struct pa_source_output_info {
565  uint32_t index;
566  const char *name;
567  uint32_t owner_module;
568  uint32_t client;
569  uint32_t source;
574  const char *resample_method;
575  const char *driver;
577  int corked;
579  int mute;
584 
586 typedef void (*pa_source_output_info_cb_t) (pa_context *c, const pa_source_output_info *i, int eol, void *userdata);
587 
590 
593 
595 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);
596 
598 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);
599 
601 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);
602 
604 pa_operation* pa_context_set_source_output_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
605 
608 
616 typedef struct pa_stat_info {
617  uint32_t memblock_total;
621  uint32_t scache_size;
622 } pa_stat_info;
623 
625 typedef void (*pa_stat_info_cb_t) (pa_context *c, const pa_stat_info *i, void *userdata);
626 
629 
637 typedef struct pa_sample_info {
638  uint32_t index;
639  const char *name;
644  uint32_t bytes;
645  int lazy;
646  const char *filename;
649 
651 typedef void (*pa_sample_info_cb_t)(pa_context *c, const pa_sample_info *i, int eol, void *userdata);
652 
654 pa_operation* pa_context_get_sample_info_by_name(pa_context *c, const char *name, pa_sample_info_cb_t cb, void *userdata);
655 
658 
661 
669 typedef enum pa_autoload_type {
670  PA_AUTOLOAD_SINK = 0,
671  PA_AUTOLOAD_SOURCE = 1
672 } pa_autoload_type_t;
673 
677 typedef struct pa_autoload_info {
678  uint32_t index;
679  const char *name;
680  pa_autoload_type_t type;
681  const char *module;
682  const char *argument;
683 } pa_autoload_info;
684 
686 typedef void (*pa_autoload_info_cb_t)(pa_context *c, const pa_autoload_info *i, int eol, void *userdata);
687 
689 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;
690 
692 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;
693 
695 pa_operation* pa_context_get_autoload_info_list(pa_context *c, pa_autoload_info_cb_t cb, void *userdata) PA_GCC_DEPRECATED;
696 
698 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;
699 
701 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;
702 
704 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;
705 
710 PA_C_DECL_END
711 
712 #endif