Fixed memory access outside of the range for source bits in 24-bit bitmaps.
[wine] / include / wine / obj_enumidlist.h
1 /*
2  * Defines the COM interfaces and APIs related to EnumIDList
3  *
4  * Depends on 'obj_base.h'.
5  */
6
7 #ifndef __WINE_WINE_OBJ_ENUMIDLIST_H
8 #define __WINE_WINE_OBJ_ENUMIDLIST_H
9
10 #include "wine/obj_base.h"
11 #include "shell.h"
12 #include "winbase.h"
13
14 #ifdef __cplusplus
15 extern "C" {
16 #endif /* defined(__cplusplus) */
17
18 /*****************************************************************************
19  * Predeclare the interfaces
20  */
21 DEFINE_SHLGUID(IID_IEnumIDList,         0x000214F2L, 0, 0);
22 typedef struct IEnumIDList IEnumIDList, *LPENUMIDLIST;
23
24 #define ICOM_INTERFACE IEnumIDList
25 #define IEnumIDList_METHODS \
26     ICOM_METHOD3(HRESULT, Next, ULONG, celt, LPITEMIDLIST*, rgelt, ULONG*, pceltFetched) \
27     ICOM_METHOD1(HRESULT, Skip, ULONG, celt) \
28     ICOM_METHOD (HRESULT, Reset) \
29     ICOM_METHOD1(HRESULT, Clone, IEnumIDList**, ppenum)
30 #define IEnumIDList_IMETHODS \
31     IUnknown_IMETHODS \
32     IEnumIDList_METHODS
33 ICOM_DEFINE(IEnumIDList,IUnknown)
34 #undef ICOM_INTERFACE
35
36 /*** IUnknown methods ***/
37 #define IEnumIDList_QueryInterface(p,a,b)       ICOM_CALL2(QueryInterface,p,a,b)
38 #define IEnumIDList_AddRef(p)                   ICOM_CALL (AddRef,p)
39 #define IEnumIDList_Release(p)                  ICOM_CALL (Release,p)
40 /*** IEnumIDList methods ***/
41 #define IEnumIDList_Next(p,a,b,c)               ICOM_CALL3(Next,p,a,b,c)
42 #define IEnumIDList_Skip(p,a)                   ICOM_CALL1(Skip,p,a)
43 #define IEnumIDList_Reset(p)                    ICOM_CALL(Reset,p)
44 #define IEnumIDList_Clone(p,a)                  ICOM_CALL1(Clone,p,a)
45
46 #ifdef __cplusplus
47 } /* extern "C" */
48 #endif /* defined(__cplusplus) */
49
50 #endif /* __WINE_WINE_OBJ_ENUMIDLIST_H */