1 module aurora.directx.d2d1.d2d1effects_0;
2 
3 version(Windows):
4 
5 public import aurora.directx.com;
6 
7 public:
8 
9 const IID CLSID_D2D12DAffineTransform = {0x6AA97485, 0x6354, 0x4cfc, [0x90, 0x8C, 0xE4, 0xA7, 0x4F, 0x62, 0xC9, 0x6C]};
10 const IID CLSID_D2D13DPerspectiveTransform = {0xC2844D0B, 0x3D86, 0x46e7, [0x85, 0xBA, 0x52, 0x6C, 0x92, 0x40, 0xF3, 0xFB]};
11 const IID CLSID_D2D13DTransform = {0xe8467b04, 0xec61, 0x4b8a, [0xb5, 0xde, 0xd4, 0xd7, 0x3d, 0xeb, 0xea, 0x5a]};
12 const IID CLSID_D2D1ArithmeticComposite = {0xfc151437, 0x049a, 0x4784, [0xa2, 0x4a, 0xf1, 0xc4, 0xda, 0xf2, 0x09, 0x87]};
13 const IID CLSID_D2D1Atlas = {0x913e2be4, 0xfdcf, 0x4fe2, [0xa5, 0xf0, 0x24, 0x54, 0xf1, 0x4f, 0xf4, 0x08]};
14 const IID CLSID_D2D1BitmapSource = {0x5fb6c24d, 0xc6dd, 0x4231, [0x94, 0x4,  0x50, 0xf4, 0xd5, 0xc3, 0x25, 0x2d]};
15 const IID CLSID_D2D1Blend = {0x81c5b77b, 0x13f8, 0x4cdd, [0xad, 0x20, 0xc8, 0x90, 0x54, 0x7a, 0xc6, 0x5d]};
16 const IID CLSID_D2D1Border = {0x2A2D49C0, 0x4ACF, 0x43c7, [0x8C, 0x6A, 0x7C, 0x4A, 0x27, 0x87, 0x4D, 0x27]};
17 const IID CLSID_D2D1Brightness = {0x8cea8d1e, 0x77b0, 0x4986, [0xb3, 0xb9, 0x2f, 0x0c, 0x0e, 0xae, 0x78, 0x87]};
18 const IID CLSID_D2D1ColorManagement = {0x1A28524C, 0xFDD6, 0x4AA4, [0xAE, 0x8F, 0x83, 0x7E, 0xB8, 0x26, 0x7B, 0x37]};
19 const IID CLSID_D2D1ColorMatrix = {0x921F03D6, 0x641C, 0x47DF, [0x85, 0x2D, 0xB4, 0xBB, 0x61, 0x53, 0xAE, 0x11]};
20 const IID CLSID_D2D1Composite = {0x48fc9f51, 0xf6ac, 0x48f1, [0x8b, 0x58, 0x3b, 0x28, 0xac, 0x46, 0xf7, 0x6d]};
21 const IID CLSID_D2D1ConvolveMatrix = {0x407f8c08, 0x5533, 0x4331, [0xa3, 0x41, 0x23, 0xcc, 0x38, 0x77, 0x84, 0x3e]};
22 const IID CLSID_D2D1Crop = {0xE23F7110, 0x0E9A, 0x4324, [0xAF, 0x47, 0x6A, 0x2C, 0x0C, 0x46, 0xF3, 0x5B]};
23 const IID CLSID_D2D1DirectionalBlur = {0x174319a6, 0x58e9, 0x49b2, [0xbb, 0x63, 0xca, 0xf2, 0xc8, 0x11, 0xa3, 0xdb]};
24 const IID CLSID_D2D1DiscreteTransfer = {0x90866fcd, 0x488e, 0x454b, [0xaf, 0x06, 0xe5, 0x04, 0x1b, 0x66, 0xc3, 0x6c]};
25 const IID CLSID_D2D1DisplacementMap = {0xedc48364, 0x417,  0x4111, [0x94, 0x50, 0x43, 0x84, 0x5f, 0xa9, 0xf8, 0x90]};
26 const IID CLSID_D2D1DistantDiffuse = {0x3e7efd62, 0xa32d, 0x46d4, [0xa8, 0x3c, 0x52, 0x78, 0x88, 0x9a, 0xc9, 0x54]};
27 const IID CLSID_D2D1DistantSpecular = {0x428c1ee5, 0x77b8, 0x4450, [0x8a, 0xb5, 0x72, 0x21, 0x9c, 0x21, 0xab, 0xda]};
28 const IID CLSID_D2D1DpiCompensation = {0x6c26c5c7, 0x34e0, 0x46fc, [0x9c, 0xfd, 0xe5, 0x82, 0x37, 0x6,  0xe2, 0x28]};
29 const IID CLSID_D2D1Flood = {0x61c23c20, 0xae69, 0x4d8e, [0x94, 0xcf, 0x50, 0x07, 0x8d, 0xf6, 0x38, 0xf2]};
30 const IID CLSID_D2D1GammaTransfer = {0x409444c4, 0xc419, 0x41a0, [0xb0, 0xc1, 0x8c, 0xd0, 0xc0, 0xa1, 0x8e, 0x42]};
31 const IID CLSID_D2D1GaussianBlur = {0x1feb6d69, 0x2fe6, 0x4ac9, [0x8c, 0x58, 0x1d, 0x7f, 0x93, 0xe7, 0xa6, 0xa5]};
32 const IID CLSID_D2D1Scale = {0x9daf9369, 0x3846, 0x4d0e, [0xa4, 0x4e, 0xc,  0x60, 0x79, 0x34, 0xa5, 0xd7]};
33 const IID CLSID_D2D1Histogram = {0x881db7d0, 0xf7ee, 0x4d4d, [0xa6, 0xd2, 0x46, 0x97, 0xac, 0xc6, 0x6e, 0xe8]};
34 const IID CLSID_D2D1HueRotation = {0x0f4458ec, 0x4b32, 0x491b, [0x9e, 0x85, 0xbd, 0x73, 0xf4, 0x4d, 0x3e, 0xb6]};
35 const IID CLSID_D2D1LinearTransfer = {0xad47c8fd, 0x63ef, 0x4acc, [0x9b, 0x51, 0x67, 0x97, 0x9c, 0x03, 0x6c, 0x06]};
36 const IID CLSID_D2D1LuminanceToAlpha = {0x41251ab7, 0x0beb, 0x46f8, [0x9d, 0xa7, 0x59, 0xe9, 0x3f, 0xcc, 0xe5, 0xde]};
37 const IID CLSID_D2D1Morphology = {0xeae6c40d, 0x626a, 0x4c2d, [0xbf, 0xcb, 0x39, 0x10, 0x01, 0xab, 0xe2, 0x02]};
38 const IID CLSID_D2D1OpacityMetadata = {0x6c53006a, 0x4450, 0x4199, [0xaa, 0x5b, 0xad, 0x16, 0x56, 0xfe, 0xce, 0x5e]};
39 const IID CLSID_D2D1PointDiffuse = {0xb9e303c3, 0xc08c, 0x4f91, [0x8b, 0x7b, 0x38, 0x65, 0x6b, 0xc4, 0x8c, 0x20]};
40 const IID CLSID_D2D1PointSpecular = {0x09c3ca26, 0x3ae2, 0x4f09, [0x9e, 0xbc, 0xed, 0x38, 0x65, 0xd5, 0x3f, 0x22]};
41 const IID CLSID_D2D1Premultiply = {0x06eab419, 0xdeed, 0x4018, [0x80, 0xd2, 0x3e, 0x1d, 0x47, 0x1a, 0xde, 0xb2]};
42 const IID CLSID_D2D1Saturation = {0x5cb2d9cf, 0x327d, 0x459f, [0xa0, 0xce, 0x40, 0xc0, 0xb2, 0x08, 0x6b, 0xf7]};
43 const IID CLSID_D2D1Shadow = {0xC67EA361, 0x1863, 0x4e69, [0x89, 0xDB, 0x69, 0x5D, 0x3E, 0x9A, 0x5B, 0x6B]};
44 const IID CLSID_D2D1SpotDiffuse = {0x818a1105, 0x7932, 0x44f4, [0xaa, 0x86, 0x08, 0xae, 0x7b, 0x2f, 0x2c, 0x93]};
45 const IID CLSID_D2D1SpotSpecular = {0xedae421e, 0x7654, 0x4a37, [0x9d, 0xb8, 0x71, 0xac, 0xc1, 0xbe, 0xb3, 0xc1]};
46 const IID CLSID_D2D1TableTransfer = {0x5bf818c3, 0x5e43, 0x48cb, [0xb6, 0x31, 0x86, 0x83, 0x96, 0xd6, 0xa1, 0xd4]};
47 const IID CLSID_D2D1Tile = {0xB0784138, 0x3B76, 0x4bc5, [0xB1, 0x3B, 0x0F, 0xA2, 0xAD, 0x02, 0x65, 0x9F]};
48 const IID CLSID_D2D1Turbulence = {0xCF2BB6AE, 0x889A, 0x4ad7, [0xBA, 0x29, 0xA2, 0xFD, 0x73, 0x2C, 0x9F, 0xC9]};
49 const IID CLSID_D2D1UnPremultiply = {0xfb9ac489, 0xad8d, 0x41ed, [0x99, 0x99, 0xbb, 0x63, 0x47, 0xd1, 0x10, 0xf7]};
50 
51 enum D2D1_BORDER_MODE
52 {
53     SOFT = 0,
54     HARD = 1,
55     FORCE_DWORD = 0xffffffff
56 }
57 
58 enum D2D1_CHANNEL_SELECTOR
59 {
60     R = 0,
61     G = 1,
62     B = 2,
63     A = 3,
64     FORCE_DWORD = 0xffffffff
65 }
66 
67 enum D2D1_BITMAPSOURCE_ORIENTATION
68 {
69     DEFAULT = 1,
70     FLIP_HORIZONTAL = 2,
71     ROTATE_CLOCKWISE180 = 3,
72     ROTATE_CLOCKWISE180_FLIP_HORIZONTAL = 4,
73     ROTATE_CLOCKWISE270_FLIP_HORIZONTAL = 5,
74     ROTATE_CLOCKWISE90 = 6,
75     ROTATE_CLOCKWISE90_FLIP_HORIZONTAL = 7,
76     ROTATE_CLOCKWISE270 = 8,
77     FORCE_DWORD = 0xffffffff
78 }
79 
80 enum D2D1_GAUSSIANBLUR_PROP
81 {
82     STANDARD_DEVIATION = 0,
83     OPTIMIZATION = 1,
84     BORDER_MODE = 2,
85     FORCE_DWORD = 0xffffffff
86 }
87 
88 enum D2D1_GAUSSIANBLUR_OPTIMIZATION
89 {
90     SPEED = 0,
91     BALANCED = 1,
92     QUALITY = 2,
93     FORCE_DWORD = 0xffffffff
94 }
95 
96 enum D2D1_DIRECTIONALBLUR_PROP
97 {
98     STANDARD_DEVIATION = 0,
99     ANGLE = 1,
100     OPTIMIZATION = 2,
101     BORDER_MODE = 3,
102     FORCE_DWORD = 0xffffffff
103 }
104 
105 enum D2D1_DIRECTIONALBLUR_OPTIMIZATION
106 {
107     SPEED = 0,
108     BALANCED = 1,
109     QUALITY = 2,
110     FORCE_DWORD = 0xffffffff
111 }
112 
113 enum D2D1_SHADOW_PROP
114 {
115     BLUR_STANDARD_DEVIATION = 0,
116     COLOR = 1,
117     OPTIMIZATION = 2,
118     FORCE_DWORD = 0xffffffff
119 }
120 
121 enum D2D1_SHADOW_OPTIMIZATION
122 {
123     SPEED = 0,
124     BALANCED = 1,
125     QUALITY = 2,
126     FORCE_DWORD = 0xffffffff
127 }
128 
129 enum D2D1_BLEND_PROP
130 {
131     MODE = 0,
132     FORCE_DWORD = 0xffffffff
133 }
134 
135 enum D2D1_BLEND_MODE
136 {
137     MULTIPLY = 0,
138     SCREEN = 1,
139     DARKEN = 2,
140     LIGHTEN = 3,
141     DISSOLVE = 4,
142     COLOR_BURN = 5,
143     LINEAR_BURN = 6,
144     DARKER_COLOR = 7,
145     LIGHTER_COLOR = 8,
146     COLOR_DODGE = 9,
147     LINEAR_DODGE = 10,
148     OVERLAY = 11,
149     SOFT_LIGHT = 12,
150     HARD_LIGHT = 13,
151     VIVID_LIGHT = 14,
152     LINEAR_LIGHT = 15,
153     PIN_LIGHT = 16,
154     HARD_MIX = 17,
155     DIFFERENCE = 18,
156     EXCLUSION = 19,
157     HUE = 20,
158     SATURATION = 21,
159     COLOR = 22,
160     LUMINOSITY = 23,
161     SUBTRACT = 24,
162     DIVISION = 25,
163     FORCE_DWORD = 0xffffffff
164 }
165 
166 enum D2D1_SATURATION_PROP
167 {
168     SATURATION = 0,
169     FORCE_DWORD = 0xffffffff
170 }
171 
172 enum D2D1_HUEROTATION_PROP
173 {
174     ANGLE = 0,
175     FORCE_DWORD = 0xffffffff
176 }
177 
178 enum D2D1_COLORMATRIX_PROP
179 {
180     COLOR_MATRIX = 0,
181     ALPHA_MODE = 1,
182     CLAMP_OUTPUT = 2,
183     FORCE_DWORD = 0xffffffff
184 }
185 
186 enum D2D1_COLORMATRIX_ALPHA_MODE
187 {
188     PREMULTIPLIED = 1,
189     STRAIGHT = 2,
190     FORCE_DWORD = 0xffffffff
191 }
192 
193 enum D2D1_BITMAPSOURCE_PROP
194 {
195     WIC_BITMAP_SOURCE = 0,
196     SCALE = 1,
197     INTERPOLATION_MODE = 2,
198     ENABLE_DPI_CORRECTION = 3,
199     ALPHA_MODE = 4,
200     ORIENTATION = 5,
201     FORCE_DWORD = 0xffffffff
202 }
203 
204 enum D2D1_BITMAPSOURCE_INTERPOLATION_MODE
205 {
206     NEAREST_NEIGHBOR = 0,
207     LINEAR = 1,
208     CUBIC = 2,
209     FANT = 6,
210     MIPMAP_LINEAR = 7,
211     FORCE_DWORD = 0xffffffff
212 }
213 
214 enum D2D1_BITMAPSOURCE_ALPHA_MODE
215 {
216     PREMULTIPLIED = 1,
217     STRAIGHT = 2,
218     FORCE_DWORD = 0xffffffff
219 }
220 
221 enum D2D1_COMPOSITE_PROP
222 {
223     MODE = 0,
224     FORCE_DWORD = 0xffffffff
225 }
226 
227 enum D2D1_3DTRANSFORM_PROP
228 {
229     INTERPOLATION_MODE = 0,
230     BORDER_MODE = 1,
231     TRANSFORM_MATRIX = 2,
232     FORCE_DWORD = 0xffffffff
233 }
234 
235 enum D2D1_3DTRANSFORM_INTERPOLATION_MODE
236 {
237     NEAREST_NEIGHBOR = 0,
238     LINEAR = 1,
239     CUBIC = 2,
240     MULTI_SAMPLE_LINEAR = 3,
241     ANISOTROPIC = 4,
242     FORCE_DWORD = 0xffffffff
243 }
244 
245 enum D2D1_3DPERSPECTIVETRANSFORM_PROP
246 {
247     INTERPOLATION_MODE = 0,
248     BORDER_MODE = 1,
249     DEPTH = 2,
250     PERSPECTIVE_ORIGIN = 3,
251     LOCAL_OFFSET = 4,
252     GLOBAL_OFFSET = 5,
253     ROTATION_ORIGIN = 6,
254     ROTATION = 7,
255     FORCE_DWORD = 0xffffffff
256 }
257 
258 enum D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE
259 {
260     NEAREST_NEIGHBOR = 0,
261     LINEAR = 1,
262     CUBIC = 2,
263     MULTI_SAMPLE_LINEAR = 3,
264     ANISOTROPIC = 4,
265     FORCE_DWORD = 0xffffffff
266 }
267 
268 enum D2D1_2DAFFINETRANSFORM_PROP
269 {
270     INTERPOLATION_MODE = 0,
271     BORDER_MODE = 1,
272     TRANSFORM_MATRIX = 2,
273     SHARPNESS = 3,
274     FORCE_DWORD = 0xffffffff
275 }
276 
277 enum D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE
278 {
279     NEAREST_NEIGHBOR = 0,
280     LINEAR = 1,
281     CUBIC = 2,
282     MULTI_SAMPLE_LINEAR = 3,
283     ANISOTROPIC = 4,
284     HIGH_QUALITY_CUBIC = 5,
285     FORCE_DWORD = 0xffffffff
286 }
287 
288 enum D2D1_DPICOMPENSATION_PROP
289 {
290     INTERPOLATION_MODE = 0,
291     BORDER_MODE = 1,
292     INPUT_DPI = 2,
293     FORCE_DWORD = 0xffffffff
294 }
295 
296 enum D2D1_DPICOMPENSATION_INTERPOLATION_MODE
297 {
298     NEAREST_NEIGHBOR = 0,
299     LINEAR = 1,
300     CUBIC = 2,
301     MULTI_SAMPLE_LINEAR = 3,
302     ANISOTROPIC = 4,
303     HIGH_QUALITY_CUBIC = 5,
304     FORCE_DWORD = 0xffffffff
305 }
306 
307 enum D2D1_SCALE_PROP
308 {
309     SCALE = 0,
310     CENTER_POINT = 1,
311     INTERPOLATION_MODE = 2,
312     BORDER_MODE = 3,
313     SHARPNESS = 4,
314     FORCE_DWORD = 0xffffffff
315 }
316 
317 enum D2D1_SCALE_INTERPOLATION_MODE
318 {
319     NEAREST_NEIGHBOR = 0,
320     LINEAR = 1,
321     CUBIC = 2,
322     MULTI_SAMPLE_LINEAR = 3,
323     ANISOTROPIC = 4,
324     HIGH_QUALITY_CUBIC = 5,
325     FORCE_DWORD = 0xffffffff
326 }
327 
328 enum D2D1_TURBULENCE_PROP
329 {
330     OFFSET = 0,
331     SIZE = 1,
332     BASE_FREQUENCY = 2,
333     NUM_OCTAVES = 3,
334     SEED = 4,
335     NOISE = 5,
336     STITCHABLE = 6,
337     FORCE_DWORD = 0xffffffff
338 }
339 
340 enum D2D1_TURBULENCE_NOISE
341 {
342     FRACTAL_SUM = 0,
343     TURBULENCE = 1,
344     FORCE_DWORD = 0xffffffff
345 }
346 
347 enum D2D1_DISPLACEMENTMAP_PROP
348 {
349     SCALE = 0,
350     X_CHANNEL_SELECT = 1,
351     Y_CHANNEL_SELECT = 2,
352     FORCE_DWORD = 0xffffffff
353 }
354 
355 enum D2D1_COLORMANAGEMENT_PROP
356 {
357     SOURCE_COLOR_CONTEXT = 0,
358     SOURCE_RENDERING_INTENT = 1,
359     DESTINATION_COLOR_CONTEXT = 2,
360     DESTINATION_RENDERING_INTENT = 3,
361     ALPHA_MODE = 4,
362     QUALITY = 5,
363     FORCE_DWORD = 0xffffffff
364 }
365 
366 enum D2D1_COLORMANAGEMENT_ALPHA_MODE
367 {
368     PREMULTIPLIED = 1,
369     STRAIGHT = 2,
370     FORCE_DWORD = 0xffffffff
371 }
372 
373 enum D2D1_COLORMANAGEMENT_QUALITY
374 {
375     PROOF = 0,
376     NORMAL = 1,
377     BEST = 2,
378     FORCE_DWORD = 0xffffffff
379 }
380 
381 enum D2D1_COLORMANAGEMENT_RENDERING_INTENT
382 {
383     PERCEPTUAL = 0,
384     RELATIVE_COLORIMETRIC = 1,
385     SATURATION = 2,
386     ABSOLUTE_COLORIMETRIC = 3,
387     FORCE_DWORD = 0xffffffff
388 }
389 
390 enum D2D1_HISTOGRAM_PROP
391 {
392     NUM_BINS = 0,
393     CHANNEL_SELECT = 1,
394     HISTOGRAM_OUTPUT = 2,
395     FORCE_DWORD = 0xffffffff
396 }
397 
398 enum D2D1_POINTSPECULAR_PROP
399 {
400     LIGHT_POSITION = 0,
401     SPECULAR_EXPONENT = 1,
402     SPECULAR_CONSTANT = 2,
403     SURFACE_SCALE = 3,
404     COLOR = 4,
405     KERNEL_UNIT_LENGTH = 5,
406     SCALE_MODE = 6,
407     FORCE_DWORD = 0xffffffff
408 }
409 
410 enum D2D1_POINTSPECULAR_SCALE_MODE
411 {
412     NEAREST_NEIGHBOR = 0,
413     LINEAR = 1,
414     CUBIC = 2,
415     MULTI_SAMPLE_LINEAR = 3,
416     ANISOTROPIC = 4,
417     HIGH_QUALITY_CUBIC = 5,
418     FORCE_DWORD = 0xffffffff
419 }
420 
421 enum D2D1_SPOTSPECULAR_PROP
422 {
423     LIGHT_POSITION = 0,
424     POINTS_AT = 1,
425     FOCUS = 2,
426     LIMITING_CONE_ANGLE = 3,
427     SPECULAR_EXPONENT = 4,
428     SPECULAR_CONSTANT = 5,
429     SURFACE_SCALE = 6,
430     COLOR = 7,
431     KERNEL_UNIT_LENGTH = 8,
432     SCALE_MODE = 9,
433     FORCE_DWORD = 0xffffffff
434 }
435 
436 enum D2D1_SPOTSPECULAR_SCALE_MODE
437 {
438     NEAREST_NEIGHBOR = 0,
439     LINEAR = 1,
440     CUBIC = 2,
441     MULTI_SAMPLE_LINEAR = 3,
442     ANISOTROPIC = 4,
443     HIGH_QUALITY_CUBIC = 5,
444     FORCE_DWORD = 0xffffffff
445 }
446 
447 enum D2D1_DISTANTSPECULAR_PROP
448 {
449     AZIMUTH = 0,
450     ELEVATION = 1,
451     SPECULAR_EXPONENT = 2,
452     SPECULAR_CONSTANT = 3,
453     SURFACE_SCALE = 4,
454     COLOR = 5,
455     KERNEL_UNIT_LENGTH = 6,
456     SCALE_MODE = 7,
457     FORCE_DWORD = 0xffffffff
458 }
459 
460 enum D2D1_DISTANTSPECULAR_SCALE_MODE
461 {
462     NEAREST_NEIGHBOR = 0,
463     LINEAR = 1,
464     CUBIC = 2,
465     MULTI_SAMPLE_LINEAR = 3,
466     ANISOTROPIC = 4,
467     HIGH_QUALITY_CUBIC = 5,
468     FORCE_DWORD = 0xffffffff
469 }
470 
471 enum D2D1_POINTDIFFUSE_PROP
472 {
473     LIGHT_POSITION = 0,
474     DIFFUSE_CONSTANT = 1,
475     SURFACE_SCALE = 2,
476     COLOR = 3,
477     KERNEL_UNIT_LENGTH = 4,
478     SCALE_MODE = 5,
479     FORCE_DWORD = 0xffffffff
480 }
481 
482 enum D2D1_POINTDIFFUSE_SCALE_MODE
483 {
484     NEAREST_NEIGHBOR = 0,
485     LINEAR = 1,
486     CUBIC = 2,
487     MULTI_SAMPLE_LINEAR = 3,
488     ANISOTROPIC = 4,
489     HIGH_QUALITY_CUBIC = 5,
490     FORCE_DWORD = 0xffffffff
491 }
492 
493 enum D2D1_SPOTDIFFUSE_PROP
494 {
495     LIGHT_POSITION = 0,
496     POINTS_AT = 1,
497     FOCUS = 2,
498     LIMITING_CONE_ANGLE = 3,
499     DIFFUSE_CONSTANT = 4,
500     SURFACE_SCALE = 5,
501     COLOR = 6,
502     KERNEL_UNIT_LENGTH = 7,
503     SCALE_MODE = 8,
504     FORCE_DWORD = 0xffffffff
505 }
506 
507 enum D2D1_SPOTDIFFUSE_SCALE_MODE
508 {
509     NEAREST_NEIGHBOR = 0,
510     LINEAR = 1,
511     CUBIC = 2,
512     MULTI_SAMPLE_LINEAR = 3,
513     ANISOTROPIC = 4,
514     HIGH_QUALITY_CUBIC = 5,
515     FORCE_DWORD = 0xffffffff
516 }
517 
518 enum D2D1_DISTANTDIFFUSE_PROP
519 {
520     AZIMUTH = 0,
521     ELEVATION = 1,
522     DIFFUSE_CONSTANT = 2,
523     SURFACE_SCALE = 3,
524     COLOR = 4,
525     KERNEL_UNIT_LENGTH = 5,
526     SCALE_MODE = 6,
527     FORCE_DWORD = 0xffffffff
528 }
529 
530 enum D2D1_DISTANTDIFFUSE_SCALE_MODE
531 {
532     NEAREST_NEIGHBOR = 0,
533     LINEAR = 1,
534     CUBIC = 2,
535     MULTI_SAMPLE_LINEAR = 3,
536     ANISOTROPIC = 4,
537     HIGH_QUALITY_CUBIC = 5,
538     FORCE_DWORD = 0xffffffff
539 }
540 
541 enum D2D1_FLOOD_PROP
542 {
543     COLOR = 0,
544     FORCE_DWORD = 0xffffffff
545 }
546 
547 enum D2D1_LINEARTRANSFER_PROP
548 {
549     RED_Y_INTERCEPT = 0,
550     RED_SLOPE = 1,
551     RED_DISABLE = 2,
552     GREEN_Y_INTERCEPT = 3,
553     GREEN_SLOPE = 4,
554     GREEN_DISABLE = 5,
555     BLUE_Y_INTERCEPT = 6,
556     BLUE_SLOPE = 7,
557     BLUE_DISABLE = 8,
558     ALPHA_Y_INTERCEPT = 9,
559     ALPHA_SLOPE = 10,
560     ALPHA_DISABLE = 11,
561     CLAMP_OUTPUT = 12,
562     FORCE_DWORD = 0xffffffff
563 }
564 
565 enum D2D1_GAMMATRANSFER_PROP
566 {
567     RED_AMPLITUDE = 0,
568     RED_EXPONENT = 1,
569     RED_OFFSET = 2,
570     RED_DISABLE = 3,
571     GREEN_AMPLITUDE = 4,
572     GREEN_EXPONENT = 5,
573     GREEN_OFFSET = 6,
574     GREEN_DISABLE = 7,
575     BLUE_AMPLITUDE = 8,
576     BLUE_EXPONENT = 9,
577     BLUE_OFFSET = 10,
578     BLUE_DISABLE = 11,
579     ALPHA_AMPLITUDE = 12,
580     ALPHA_EXPONENT = 13,
581     ALPHA_OFFSET = 14,
582     ALPHA_DISABLE = 15,
583     CLAMP_OUTPUT = 16,
584     FORCE_DWORD = 0xffffffff
585 }
586 
587 enum D2D1_TABLETRANSFER_PROP
588 {
589     RED_TABLE = 0,
590     RED_DISABLE = 1,
591     GREEN_TABLE = 2,
592     GREEN_DISABLE = 3,
593     BLUE_TABLE = 4,
594     BLUE_DISABLE = 5,
595     ALPHA_TABLE = 6,
596     ALPHA_DISABLE = 7,
597     CLAMP_OUTPUT = 8,
598     FORCE_DWORD = 0xffffffff
599 }
600 
601 enum D2D1_DISCRETETRANSFER_PROP
602 {
603     RED_TABLE = 0,
604     RED_DISABLE = 1,
605     GREEN_TABLE = 2,
606     GREEN_DISABLE = 3,
607     BLUE_TABLE = 4,
608     BLUE_DISABLE = 5,
609     ALPHA_TABLE = 6,
610     ALPHA_DISABLE = 7,
611     CLAMP_OUTPUT = 8,
612     FORCE_DWORD = 0xffffffff
613 }
614 
615 enum D2D1_CONVOLVEMATRIX_PROP
616 {
617     KERNEL_UNIT_LENGTH = 0,
618     SCALE_MODE = 1,
619     KERNEL_SIZE_X = 2,
620     KERNEL_SIZE_Y = 3,
621     KERNEL_MATRIX = 4,
622     DIVISOR = 5,
623     BIAS = 6,
624     KERNEL_OFFSET = 7,
625     PRESERVE_ALPHA = 8,
626     BORDER_MODE = 9,
627     CLAMP_OUTPUT = 10,
628     FORCE_DWORD = 0xffffffff
629 }
630 
631 enum D2D1_CONVOLVEMATRIX_SCALE_MODE
632 {
633     NEAREST_NEIGHBOR = 0,
634     LINEAR = 1,
635     CUBIC = 2,
636     MULTI_SAMPLE_LINEAR = 3,
637     ANISOTROPIC = 4,
638     HIGH_QUALITY_CUBIC = 5,
639     FORCE_DWORD = 0xffffffff
640 }
641 
642 enum D2D1_BRIGHTNESS_PROP
643 {
644     WHITE_POINT = 0,
645     BLACK_POINT = 1,
646     FORCE_DWORD = 0xffffffff
647 }
648 
649 enum D2D1_ARITHMETICCOMPOSITE_PROP
650 {
651     D2D1_ARITHMETICCOMPOSITE_PROP_COEFFICIENTS = 0,
652     D2D1_ARITHMETICCOMPOSITE_PROP_CLAMP_OUTPUT = 1,
653     D2D1_ARITHMETICCOMPOSITE_PROP_FORCE_DWORD = 0xffffffff
654 }
655 
656 enum D2D1_CROP_PROP
657 {
658     RECT = 0,
659     BORDER_MODE = 1,
660     FORCE_DWORD = 0xffffffff
661 }
662 
663 enum D2D1_BORDER_PROP
664 {
665     EDGE_MODE_X = 0,
666     EDGE_MODE_Y = 1,
667     FORCE_DWORD = 0xffffffff
668 }
669 
670 enum D2D1_BORDER_EDGE_MODE
671 {
672     CLAMP = 0,
673     WRAP = 1,
674     MIRROR = 2,
675     FORCE_DWORD = 0xffffffff
676 }
677 
678 enum D2D1_MORPHOLOGY_PROP
679 {
680     MODE = 0,
681     WIDTH = 1,
682     HEIGHT = 2,
683     FORCE_DWORD = 0xffffffff
684 }
685 
686 enum D2D1_MORPHOLOGY_MODE
687 {
688     ERODE = 0,
689     DILATE = 1,
690     FORCE_DWORD = 0xffffffff
691 }
692 
693 enum D2D1_TILE_PROP
694 {
695     RECT = 0,
696     FORCE_DWORD = 0xffffffff
697 }
698 
699 enum D2D1_ATLAS_PROP
700 {
701     INPUT_RECT = 0,
702     INPUT_PADDING_RECT = 1,
703     FORCE_DWORD = 0xffffffff
704 }
705 
706 enum D2D1_OPACITYMETADATA_PROP
707 {
708     INPUT_OPAQUE_RECT = 0,
709     FORCE_DWORD = 0xffffffff
710 }