gdiplus: Added GdipFillRectangleI.
[wine] / include / gdiplusimaging.h
1 /*
2  * Copyright (C) 2007 Google (Evan Stade)
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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17  */
18
19 #ifndef _GDIPLUSIMAGING_H
20 #define _GDIPLUSIMAGING_H
21
22 enum ImageLockMode
23 {
24     ImageLockModeRead           = 1,
25     ImageLockModeWrite          = 2,
26     ImageLockModeUserInputBuf   = 4
27 };
28
29 #ifdef __cplusplus
30 class EncoderParameter
31 {
32 public:
33     GUID    Guid;
34     ULONG   NumberOfValues;
35     ULONG   Type;
36     VOID*   Value;
37 };
38
39 class EncoderParameters
40 {
41 public:
42     UINT Count;
43     EncoderParameter Parameter[1];
44 };
45
46 class BitmapData
47 {
48 public:
49     UINT Width;
50     UINT Height;
51     INT Stride;
52     PixelFormat PixelFormat;
53     VOID* Scan0;
54     UINT_PTR Reserved;
55 };
56
57 #else /* end of c++ typedefs */
58
59 typedef enum ImageLockMode ImageLockMode;
60
61 typedef struct EncoderParameter
62 {
63     GUID Guid;
64     ULONG NumberOfValues;
65     ULONG Type;
66     VOID* Value;
67 } EncoderParameter;
68
69 typedef struct EncoderParameters
70 {
71     UINT Count;
72     EncoderParameter Parameter[1];
73 } EncoderParameters;
74
75 typedef struct BitmapData
76 {
77     UINT Width;
78     UINT Height;
79     INT Stride;
80     PixelFormat PixelFormat;
81     VOID* Scan0;
82     UINT_PTR Reserved; /* undocumented: stores the lock mode */
83 }BitmapData;
84
85 #endif /* end of c typedefs */
86
87 #endif /* _GDIPLUSIMAGING_H */