include: Add some defines for mshtml service IDs.
[wine/multimedia.git] / include / gdiplusimaging.h
blob28fe28bca88d5af284b24199fede6eb683d5e9bb
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 #else /* end of c++ typedefs */
59 typedef enum ImageLockMode ImageLockMode;
61 typedef struct EncoderParameter
63 GUID Guid;
64 ULONG NumberOfValues;
65 ULONG Type;
66 VOID* Value;
67 } EncoderParameter;
69 typedef struct EncoderParameters
71 UINT Count;
72 EncoderParameter Parameter[1];
73 } EncoderParameters;
75 typedef struct BitmapData
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;
85 #endif /* end of c typedefs */
87 #endif /* _GDIPLUSIMAGING_H */