File: libossmix_impl.h

package info (click to toggle)
oss4 4.2-build2010-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 14,000 kB
  • ctags: 24,671
  • sloc: ansic: 222,209; sh: 4,864; pascal: 2,334; asm: 1,189; makefile: 393; php: 53; xml: 46
file content (36 lines) | stat: -rw-r--r-- 1,311 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/*
 *
 * This file is part of Open Sound System.
 *
 * Copyright (C) 4Front Technologies 1996-2008.
 *
 * This this source file is released under GPL v2 license (no other versions).
 * See the COPYING file included in the main directory of this source
 * distribution for the license terms and conditions.
 *
 */

extern int mixlib_trace;

typedef struct
{
  int (*connect) (const char *hostname, int port);
  int (*get_fd) (ossmix_select_poll_t * cb);
  void (*disconnect) (void);
  void (*enable_events) (void);
  int (*get_nmixers) (void);
  int (*get_mixerinfo) (int mixernum, oss_mixerinfo * mi);
  int (*open_mixer) (int mixernum);
  void (*close_mixer) (int mixernum);
  int (*get_nrext) (int mixernum);
  int (*get_nodeinfo) (int mixernum, int node, oss_mixext * ext);
  int (*get_enuminfo) (int mixernum, int node, oss_mixer_enuminfo * ei);
  int (*get_description) (int mixernum, int node, oss_mixer_enuminfo * desc);
  int (*get_value) (int mixernum, int ctl, int timestamp);
  void (*set_value) (int mixernum, int ctl, int timestamp, int value);
  void (*timertick)(void);
} ossmix_driver_t;

extern ossmix_driver_t ossmix_local_driver, ossmix_tcp_driver;
extern void _client_event (int cmd, int p1, int p2, int p3, int p4, int p5);
extern int _ossmix_refresh_mixer(int mixernum, int prev_nmixers);