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