Fix signature of SHLWAPI_334 as its string parameter really is an
[wine] / dlls / msvideo / msvideo_private.h
1 /*
2  * Copyright 1999 Marcus Meissner
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
17  */
18
19 #ifndef __WINE_MSVIDEO_PRIVATE_H
20 #define __WINE_MSVIDEO_PRIVATE_H
21
22 #include "winbase.h"
23 #include "windef.h"
24 #include "vfw.h"
25
26 /* HIC struct (same layout as Win95 one) */
27 typedef struct tagWINE_HIC {
28     DWORD               magic;          /* 00: 'Smag' */
29     HANDLE              curthread;      /* 04: */
30     DWORD               type;           /* 08: */
31     DWORD               handler;        /* 0C: */
32     HDRVR               hdrv;           /* 10: */
33     DWORD               private;        /* 14:(handled by SendDriverMessage)*/
34     DRIVERPROC          driverproc;     /* 18:(handled by SendDriverMessage)*/
35     DWORD               x1;             /* 1c: name? */
36     WORD                x2;             /* 20: */
37     DWORD               x3;             /* 22: */
38                                         /* 26: */
39     DWORD               driverproc16;   /* Wine specific flags */
40     HIC                 hic;
41     struct tagWINE_HIC* next;
42 } WINE_HIC;
43
44 HIC             MSVIDEO_OpenFunction(DWORD, DWORD, UINT, DRIVERPROC, DWORD);
45 LRESULT         MSVIDEO_SendMessage(HIC, UINT, DWORD, DWORD);
46 WINE_HIC*       MSVIDEO_GetHicPtr(HIC);
47
48 extern LRESULT  (CALLBACK *pFnCallTo16)(HDRVR, HIC, UINT, LPARAM, LPARAM);
49
50 /* handle16 --> handle conversions */
51 #define HDRAWDIB_32(h16)        ((HDRAWDIB)(ULONG_PTR)(h16))
52 #define HIC_32(h16)             ((HIC)(ULONG_PTR)(h16))
53
54 /* handle --> handle16 conversions */
55 #define HDRVR_16(h32)           (LOWORD(h32))
56 #define HDRAWDIB_16(h32)        (LOWORD(h32))
57 #define HIC_16(h32)             (LOWORD(h32))
58
59 #endif  /* __WINE_MSVIDEO_PRIVATE_H */