Added support for DirectDraw overlays using the XVideo extension.
[wine] / dlls / msacm / 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 #define WINE_ACMOBJ_DONTCARE    0x5EED0000
10 #define WINE_ACMOBJ_DRIVERID    0x5EED0001
11 #define WINE_ACMOBJ_DRIVER      0x5EED0002
12 #define WINE_ACMOBJ_STREAM      0x5EED0003
13
14 typedef struct _WINE_ACMOBJ
15 {
16     DWORD               dwType;
17     PWINE_ACMDRIVERID   pACMDriverID;
18 } WINE_ACMOBJ, *PWINE_ACMOBJ;
19
20 typedef struct _WINE_ACMDRIVER
21 {
22     WINE_ACMOBJ         obj;
23     HDRVR               hDrvr;
24     DRIVERPROC          pfnDriverProc;
25     PWINE_ACMDRIVER     pNextACMDriver;
26 } WINE_ACMDRIVER;
27
28 typedef struct _WINE_ACMSTREAM
29 {
30     WINE_ACMOBJ         obj;
31     PWINE_ACMDRIVER     pDrv;
32     ACMDRVSTREAMINSTANCE drvInst;
33     HACMDRIVER          hAcmDriver;
34 } WINE_ACMSTREAM, *PWINE_ACMSTREAM;
35
36 typedef struct _WINE_ACMDRIVERID
37 {
38     WINE_ACMOBJ         obj;
39     LPSTR               pszDriverAlias;
40     LPSTR               pszFileName;
41     HINSTANCE           hInstModule;          /* NULL if global */
42     DWORD               dwProcessID;          /* ID of process which installed a local driver */
43     BOOL                bEnabled;
44     PWINE_ACMDRIVER     pACMDriverList;
45     PWINE_ACMDRIVERID   pNextACMDriverID;
46     PWINE_ACMDRIVERID   pPrevACMDriverID;
47 } WINE_ACMDRIVERID;
48
49 /* From internal.c */
50 extern HANDLE MSACM_hHeap;
51 extern PWINE_ACMDRIVERID MSACM_pFirstACMDriverID;
52 extern PWINE_ACMDRIVERID MSACM_pLastACMDriverID;
53 extern PWINE_ACMDRIVERID MSACM_RegisterDriver(LPSTR pszDriverAlias, LPSTR pszFileName,
54                                               HINSTANCE hinstModule);
55 extern void MSACM_RegisterAllDrivers(void);
56 extern PWINE_ACMDRIVERID MSACM_UnregisterDriver(PWINE_ACMDRIVERID p);
57 extern void MSACM_UnregisterAllDrivers(void);
58 extern PWINE_ACMDRIVERID MSACM_GetDriverID(HACMDRIVERID hDriverID);
59 extern PWINE_ACMDRIVER MSACM_GetDriver(HACMDRIVER hDriver);
60 extern PWINE_ACMOBJ MSACM_GetObj(HACMOBJ hObj, DWORD type);
61
62 extern MMRESULT MSACM_Message(HACMDRIVER, UINT, LPARAM, LPARAM);
63
64 /* From msacm32.c */
65 extern HINSTANCE MSACM_hInstance32;
66
67 /* Dialog box templates */
68 #define DLG_ACMFORMATCHOOSE_ID              70
69 #define IDD_ACMFORMATCHOOSE_BTN_HELP        9
70 #define IDD_ACMFORMATCHOOSE_CMB_CUSTOM      100
71 #define IDD_ACMFORMATCHOOSE_CMB_FORMATTAG   101
72 #define IDD_ACMFORMATCHOOSE_CMB_FORMAT      102
73 #define IDD_ACMFORMATCHOOSE_BTN_SETNAME     103
74 #define IDD_ACMFORMATCHOOSE_BTN_DELNAME     104
75
76 #define DLG_ACMFILTERCHOOSE_ID              71
77 #define IDD_ACMFILTERCHOOSE_BTN_HELP        9
78 #define IDD_ACMFILTERCHOOSE_CMB_CUSTOM      100
79 #define IDD_ACMFILTERCHOOSE_CMB_FILTERTAG   101
80 #define IDD_ACMFILTERCHOOSE_CMB_FILTER      102
81 #define IDD_ACMFILTERCHOOSE_BTN_SETNAME     103
82 #define IDD_ACMFILTERCHOOSE_BTN_DELNAME     104