aboutsummaryrefslogtreecommitdiff
path: root/x86_64-w64-mingw32/include/d2dbasetypes.h
blob: 60dc45fee145a4d953ea4c73b805cca92699d1aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
/**
 * This file has no copyright assigned and is placed in the Public Domain.
 * This file is part of the mingw-w64 runtime package.
 * No warranty is given; refer to the file DISCLAIMER.PD within this package.

 * d2dbasetypes.h - Header file for the Direct2D API
 * No original Microsoft headers were used in the creation of this
 * file.
 *API docs available at: http://msdn.microsoft.com/en-us/library/dd372349%28v=VS.85%29.aspx
 */

#ifndef _D2DBASETYPES_H
#define _D2DBASETYPES_H

#include <d3d9types.h>

typedef D3DCOLORVALUE D2D_COLOR_F;

struct D2D_MATRIX_3X2_F {
  FLOAT _11;
  FLOAT _12;
  FLOAT _21;
  FLOAT _22;
  FLOAT _31;
  FLOAT _32;
};

typedef struct D2D_MATRIX_4X3_F {
    __C89_NAMELESS union {
        __C89_NAMELESS struct {
            FLOAT _11, _12, _13;
            FLOAT _21, _22, _23;
            FLOAT _31, _32, _33;
            FLOAT _41, _42, _43;
        };
        FLOAT m[4][3];
    };
} D2D_MATRIX_4X3_F;

typedef struct D2D_MATRIX_4X4_F {
    __C89_NAMELESS union {
        __C89_NAMELESS struct {
            FLOAT _11, _12, _13, _14;
            FLOAT _21, _22, _23, _24;
            FLOAT _31, _32, _33, _34;
            FLOAT _41, _42, _43, _44;
        };
        FLOAT m[4][4];
    };
} D2D_MATRIX_4X4_F;

typedef struct D2D_MATRIX_5X4_F {
    __C89_NAMELESS union {
        __C89_NAMELESS struct {
            FLOAT _11, _12, _13, _14;
            FLOAT _21, _22, _23, _24;
            FLOAT _31, _32, _33, _34;
            FLOAT _41, _42, _43, _44;
            FLOAT _51, _52, _53, _54;
        };
        FLOAT m[5][4];
    };
} D2D_MATRIX_5X4_F;

struct D2D_POINT_2F {
  FLOAT x;
  FLOAT y;
};

typedef POINT D2D_POINT_2L;

struct D2D_POINT_2U {
  UINT32 x;
  UINT32 y;
};

struct D2D_RECT_F {
  FLOAT left;
  FLOAT top;
  FLOAT right;
  FLOAT bottom;
};

struct D2D_RECT_U {
  UINT32 left;
  UINT32 top;
  UINT32 right;
  UINT32 bottom;
};

typedef RECT D2D_RECT_L;

struct D2D_SIZE_F {
  FLOAT width;
  FLOAT height;
};

struct D2D_SIZE_U {
  UINT32 width;
  UINT32 height;
};

typedef D2D_COLOR_F D2D1_COLOR_F;

typedef struct D2D_POINT_2F D2D1_POINT_2F;

typedef struct D2D_POINT_2U D2D1_POINT_2U;

typedef struct D2D_RECT_F D2D1_RECT_F;

typedef struct D2D_RECT_U D2D1_RECT_U;

typedef struct D2D_SIZE_F D2D1_SIZE_F;

typedef struct D2D_SIZE_U D2D1_SIZE_U;

typedef struct D2D_VECTOR_2F {
    FLOAT x;
    FLOAT y;
} D2D_VECTOR_2F;

typedef struct D2D_VECTOR_3F {
    FLOAT x;
    FLOAT y;
    FLOAT z;
} D2D_VECTOR_3F;

typedef struct D2D_VECTOR_4F {
    FLOAT x;
    FLOAT y;
    FLOAT z;
    FLOAT w;
} D2D_VECTOR_4F;

#endif /* _D2DBASETYPES_H */