dibdrv: Store image size
[wine/dibdrv.git] / include / gdiplusimaging.h
blobc78e1b16eb1fd5a1f838591800fc85a8b7a71421
1 /*
2 * Copyright (C) 2007 Google (Evan Stade)
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.
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.
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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #ifndef _GDIPLUSIMAGING_H
20 #define _GDIPLUSIMAGING_H
22 enum ImageLockMode
24 ImageLockModeRead = 1,
25 ImageLockModeWrite = 2,
26 ImageLockModeUserInputBuf = 4
29 #ifdef __cplusplus
30 class EncoderParameter
32 public:
33 GUID Guid;
34 ULONG NumberOfValues;
35 ULONG Type;
36 VOID* Value;
39 class EncoderParameters
41 public:
42 UINT Count;
43 EncoderParameter Parameter[1];
46 class BitmapData
48 public:
49 UINT Width;
50 UINT Height;
51 INT Stride;
52 PixelFormat PixelFormat;
53 VOID* Scan0;
54 UINT_PTR Reserved;
57 class ImageItemData
59 public:
60 UINT Size;
61 UINT Position;
62 VOID* Desc;
63 UINT DescSize;
64 VOID* Data;
65 UINT DataSize;
66 UINT Cookie;
69 #else /* end of c++ typedefs */
71 typedef enum ImageLockMode ImageLockMode;
73 typedef struct EncoderParameter
75 GUID Guid;
76 ULONG NumberOfValues;
77 ULONG Type;
78 VOID* Value;
79 } EncoderParameter;
81 typedef struct EncoderParameters
83 UINT Count;
84 EncoderParameter Parameter[1];
85 } EncoderParameters;
87 typedef struct BitmapData
89 UINT Width;
90 UINT Height;
91 INT Stride;
92 PixelFormat PixelFormat;
93 VOID* Scan0;
94 UINT_PTR Reserved; /* undocumented: stores the lock mode */
95 } BitmapData;
97 typedef struct ImageItemData
99 UINT Size;
100 UINT Position;
101 VOID* Desc;
102 UINT DescSize;
103 VOID* Data;
104 UINT DataSize;
105 UINT Cookie;
106 } ImageItemData;
108 #endif /* end of c typedefs */
110 #endif /* _GDIPLUSIMAGING_H */