PulseAudio  3.0.0-7.mga3
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;
469  int64_t latency_offset;
471 
475 typedef struct pa_card_info {
476  uint32_t index;
477  const char *name;
478  uint32_t owner_module;
479  const char *driver;
480  uint32_t n_profiles;
484  uint32_t n_ports;
486 } pa_card_info;
487 
489 typedef void (*pa_card_info_cb_t) (pa_context *c, const pa_card_info*i, int eol, void *userdata);
490 
492 pa_operation* pa_context_get_card_info_by_index(pa_context *c, uint32_t idx, pa_card_info_cb_t cb, void *userdata);
493 
495 pa_operation* pa_context_get_card_info_by_name(pa_context *c, const char *name, pa_card_info_cb_t cb, void *userdata);
496 
499 
501 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);
502 
504 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);
505 
507 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);
508 
516 typedef struct pa_sink_input_info {
517  uint32_t index;
518  const char *name;
519  uint32_t owner_module;
520  uint32_t client;
521  uint32_t sink;
527  const char *resample_method;
528  const char *driver;
529  int mute;
531  int corked;
536 
538 typedef void (*pa_sink_input_info_cb_t) (pa_context *c, const pa_sink_input_info *i, int eol, void *userdata);
539 
542 
545 
547 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);
548 
550 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);
551 
553 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);
554 
556 pa_operation* pa_context_set_sink_input_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
557 
559 pa_operation* pa_context_kill_sink_input(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
560 
568 typedef struct pa_source_output_info {
569  uint32_t index;
570  const char *name;
571  uint32_t owner_module;
572  uint32_t client;
573  uint32_t source;
578  const char *resample_method;
579  const char *driver;
581  int corked;
583  int mute;
588 
590 typedef void (*pa_source_output_info_cb_t) (pa_context *c, const pa_source_output_info *i, int eol, void *userdata);
591 
594 
597 
599 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);
600 
602 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);
603 
605 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);
606 
608 pa_operation* pa_context_set_source_output_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
609 
612 
620 typedef struct pa_stat_info {
621  uint32_t memblock_total;
625  uint32_t scache_size;
626 } pa_stat_info;
627 
629 typedef void (*pa_stat_info_cb_t) (pa_context *c, const pa_stat_info *i, void *userdata);
630 
633 
641 typedef struct pa_sample_info {
642  uint32_t index;
643  const char *name;
648  uint32_t bytes;
649  int lazy;
650  const char *filename;
653 
655 typedef void (*pa_sample_info_cb_t)(pa_context *c, const pa_sample_info *i, int eol, void *userdata);
656 
658 pa_operation* pa_context_get_sample_info_by_name(pa_context *c, const char *name, pa_sample_info_cb_t cb, void *userdata);
659 
662 
665 
673 typedef enum pa_autoload_type {
674  PA_AUTOLOAD_SINK = 0,
675  PA_AUTOLOAD_SOURCE = 1
676 } pa_autoload_type_t;
677 
681 typedef struct pa_autoload_info {
682  uint32_t index;
683  const char *name;
684  pa_autoload_type_t type;
685  const char *module;
686  const char *argument;
687 } pa_autoload_info;
688 
690 typedef void (*pa_autoload_info_cb_t)(pa_context *c, const pa_autoload_info *i, int eol, void *userdata);
691 
693 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;
694 
696 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;
697 
699 pa_operation* pa_context_get_autoload_info_list(pa_context *c, pa_autoload_info_cb_t cb, void *userdata) PA_GCC_DEPRECATED;
700 
702 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;
703 
705 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;
706 
708 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;
709 
714 PA_C_DECL_END
715 
716 #endif