- Add another way to create a 3d listener interface.
[wine] / dlls / msacm32 / wineacm.h
1 /* -*- tab-width: 8; c-basic-offset: 4 -*- */
2
3 /***********************************************************************
4  * Wine specific - Win32
5  */
6 typedef struct _WINE_ACMDRIVERID *PWINE_ACMDRIVERID;
7 typedef struct _WINE_ACMDRIVER   *PWINE_ACMDRIVER;
8
9 typedef struct _WINE_ACMOBJ
10 {
11   PWINE_ACMDRIVERID     pACMDriverID;
12 } WINE_ACMOBJ, *PWINE_ACMOBJ;
13
14 typedef struct _WINE_ACMDRIVER
15 {
16     WINE_ACMOBJ         obj;
17     HDRVR               hDrvr;
18     DRIVERPROC          pfnDriverProc;
19     PWINE_ACMDRIVER     pNextACMDriver;
20 } WINE_ACMDRIVER;
21
22 typedef struct _WINE_ACMSTREAM
23 {
24     WINE_ACMOBJ         obj;
25     PWINE_ACMDRIVER     pDrv;
26     ACMDRVSTREAMINSTANCE drvInst;
27     HACMDRIVER          hAcmDriver;
28 } WINE_ACMSTREAM, *PWINE_ACMSTREAM;
29
30 typedef struct _WINE_ACMDRIVERID
31 {
32     LPSTR               pszDriverAlias;
33     LPSTR               pszFileName;
34     HINSTANCE           hInstModule;          /* NULL if global */
35     DWORD               dwProcessID;          /* ID of process which installed a local driver */
36     BOOL                bEnabled;
37     PWINE_ACMDRIVER     pACMDriverList;
38     PWINE_ACMDRIVERID   pNextACMDriverID;
39     PWINE_ACMDRIVERID   pPrevACMDriverID;
40 } WINE_ACMDRIVERID;
41
42 /* From internal.c */
43 extern HANDLE MSACM_hHeap;
44 extern PWINE_ACMDRIVERID MSACM_pFirstACMDriverID;
45 extern PWINE_ACMDRIVERID MSACM_pLastACMDriverID;
46 PWINE_ACMDRIVERID MSACM_RegisterDriver(
47   LPSTR pszDriverAlias, LPSTR pszFileName,
48   HINSTANCE hinstModule);
49 void MSACM_RegisterAllDrivers(void);
50 PWINE_ACMDRIVERID MSACM_UnregisterDriver(PWINE_ACMDRIVERID p);
51 void MSACM_UnregisterAllDrivers(void);
52 PWINE_ACMDRIVERID MSACM_GetDriverID(HACMDRIVERID hDriverID);
53 PWINE_ACMDRIVER MSACM_GetDriver(HACMDRIVER hDriver);
54 PWINE_ACMOBJ MSACM_GetObj(HACMOBJ hObj);
55