PulseAudio  1.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;
206 
210 typedef struct pa_sink_info {
211  const char *name;
212  uint32_t index;
213  const char *description;
216  uint32_t owner_module;
218  int mute;
219  uint32_t monitor_source;
220  const char *monitor_source_name;
222  const char *driver;
228  uint32_t n_volume_steps;
229  uint32_t card;
230  uint32_t n_ports;
233  uint8_t n_formats;
235 } pa_sink_info;
236 
238 typedef void (*pa_sink_info_cb_t)(pa_context *c, const pa_sink_info *i, int eol, void *userdata);
239 
241 pa_operation* pa_context_get_sink_info_by_name(pa_context *c, const char *name, pa_sink_info_cb_t cb, void *userdata);
242 
244 pa_operation* pa_context_get_sink_info_by_index(pa_context *c, uint32_t idx, pa_sink_info_cb_t cb, void *userdata);
245 
248 
250 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);
251 
253 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);
254 
256 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);
257 
259 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);
260 
262 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);
263 
265 pa_operation* pa_context_suspend_sink_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void* userdata);
266 
268 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);
269 
271 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);
272 
280 typedef struct pa_source_port_info {
281  const char *name;
282  const char *description;
283  uint32_t priority;
285 
289 typedef struct pa_source_info {
290  const char *name;
291  uint32_t index;
292  const char *description;
295  uint32_t owner_module;
297  int mute;
298  uint32_t monitor_of_sink;
299  const char *monitor_of_sink_name;
301  const char *driver;
307  uint32_t n_volume_steps;
308  uint32_t card;
309  uint32_t n_ports;
312  uint8_t n_formats;
315 
317 typedef void (*pa_source_info_cb_t)(pa_context *c, const pa_source_info *i, int eol, void *userdata);
318 
320 pa_operation* pa_context_get_source_info_by_name(pa_context *c, const char *name, pa_source_info_cb_t cb, void *userdata);
321 
324 
327 
329 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);
330 
332 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);
333 
335 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);
336 
338 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);
339 
341 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);
342 
344 pa_operation* pa_context_suspend_source_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void* userdata);
345 
347 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);
348 
350 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);
351 
359 typedef struct pa_server_info {
360  const char *user_name;
361  const char *host_name;
362  const char *server_version;
363  const char *server_name;
365  const char *default_sink_name;
366  const char *default_source_name;
367  uint32_t cookie;
370 
372 typedef void (*pa_server_info_cb_t) (pa_context *c, const pa_server_info*i, void *userdata);
373 
376 
384 typedef struct pa_module_info {
385  uint32_t index;
386  const char*name,
387  *argument;
388  uint32_t n_used;
390  int auto_unload;
394 
396 typedef void (*pa_module_info_cb_t) (pa_context *c, const pa_module_info*i, int eol, void *userdata);
397 
399 pa_operation* pa_context_get_module_info(pa_context *c, uint32_t idx, pa_module_info_cb_t cb, void *userdata);
400 
403 
405 typedef void (*pa_context_index_cb_t)(pa_context *c, uint32_t idx, void *userdata);
406 
408 pa_operation* pa_context_load_module(pa_context *c, const char*name, const char *argument, pa_context_index_cb_t cb, void *userdata);
409 
411 pa_operation* pa_context_unload_module(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
412 
420 typedef struct pa_client_info {
421  uint32_t index;
422  const char *name;
423  uint32_t owner_module;
424  const char *driver;
427 
429 typedef void (*pa_client_info_cb_t) (pa_context *c, const pa_client_info*i, int eol, void *userdata);
430 
432 pa_operation* pa_context_get_client_info(pa_context *c, uint32_t idx, pa_client_info_cb_t cb, void *userdata);
433 
436 
438 pa_operation* pa_context_kill_client(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
439 
447 typedef struct pa_card_profile_info {
448  const char *name;
449  const char *description;
450  uint32_t n_sinks;
451  uint32_t n_sources;
452  uint32_t priority;
454 
458 typedef struct pa_card_info {
459  uint32_t index;
460  const char *name;
461  uint32_t owner_module;
462  const char *driver;
463  uint32_t n_profiles;
467 } pa_card_info;
468 
470 typedef void (*pa_card_info_cb_t) (pa_context *c, const pa_card_info*i, int eol, void *userdata);
471 
473 pa_operation* pa_context_get_card_info_by_index(pa_context *c, uint32_t idx, pa_card_info_cb_t cb, void *userdata);
474 
476 pa_operation* pa_context_get_card_info_by_name(pa_context *c, const char *name, pa_card_info_cb_t cb, void *userdata);
477 
480 
482 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);
483 
485 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);
486 
494 typedef struct pa_sink_input_info {
495  uint32_t index;
496  const char *name;
497  uint32_t owner_module;
498  uint32_t client;
499  uint32_t sink;
505  const char *resample_method;
506  const char *driver;
507  int mute;
509  int corked;
514 
516 typedef void (*pa_sink_input_info_cb_t) (pa_context *c, const pa_sink_input_info *i, int eol, void *userdata);
517 
520 
523 
525 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);
526 
528 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);
529 
531 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);
532 
534 pa_operation* pa_context_set_sink_input_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
535 
537 pa_operation* pa_context_kill_sink_input(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
538 
546 typedef struct pa_source_output_info {
547  uint32_t index;
548  const char *name;
549  uint32_t owner_module;
550  uint32_t client;
551  uint32_t source;
556  const char *resample_method;
557  const char *driver;
559  int corked;
561  int mute;
566 
568 typedef void (*pa_source_output_info_cb_t) (pa_context *c, const pa_source_output_info *i, int eol, void *userdata);
569 
572 
575 
577 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);
578 
580 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);
581 
583 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);
584 
586 pa_operation* pa_context_set_source_output_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
587 
590 
598 typedef struct pa_stat_info {
599  uint32_t memblock_total;
603  uint32_t scache_size;
604 } pa_stat_info;
605 
607 typedef void (*pa_stat_info_cb_t) (pa_context *c, const pa_stat_info *i, void *userdata);
608 
611 
619 typedef struct pa_sample_info {
620  uint32_t index;
621  const char *name;
626  uint32_t bytes;
627  int lazy;
628  const char *filename;
631 
633 typedef void (*pa_sample_info_cb_t)(pa_context *c, const pa_sample_info *i, int eol, void *userdata);
634 
636 pa_operation* pa_context_get_sample_info_by_name(pa_context *c, const char *name, pa_sample_info_cb_t cb, void *userdata);
637 
640 
643 
651 typedef enum pa_autoload_type {
652  PA_AUTOLOAD_SINK = 0,
653  PA_AUTOLOAD_SOURCE = 1
654 } pa_autoload_type_t;
655 
659 typedef struct pa_autoload_info {
660  uint32_t index;
661  const char *name;
662  pa_autoload_type_t type;
663  const char *module;
664  const char *argument;
665 } pa_autoload_info;
666 
668 typedef void (*pa_autoload_info_cb_t)(pa_context *c, const pa_autoload_info *i, int eol, void *userdata);
669 
671 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;
672 
674 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;
675 
677 pa_operation* pa_context_get_autoload_info_list(pa_context *c, pa_autoload_info_cb_t cb, void *userdata) PA_GCC_DEPRECATED;
678 
680 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;
681 
683 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;
684 
686 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;
687 
692 PA_C_DECL_END
693 
694 #endif