summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/i915/intel_rotate.h
blob: 0da45d20ce5a1d3f4df76fafb660059cf720acdc (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
#ifndef INTEL_ROTATE_H
#define INTEL_ROTATE_H 1

struct matrix23
{
   int m00, m01, m02;
   int m10, m11, m12;
};



extern void
matrix23Set(struct matrix23 *m,
            int m00, int m01, int m02,
            int m10, int m11, int m12);

extern void
matrix23TransformCoordi(const struct matrix23 *m, int *x, int *y);

extern void
matrix23TransformCoordf(const struct matrix23 *m, float *x, float *y);

extern void
matrix23TransformDistance(const struct matrix23 *m, int *xDist, int *yDist);

extern void
matrix23TransformRect(const struct matrix23 *m,
                      int *x, int *y, int *w, int *h);

extern void
matrix23Rotate(struct matrix23 *m, int width, int height, int angle);

extern void
matrix23Flip(struct matrix23 *m, int width, int height, int xflip, int yflip);

extern void
matrix23Multiply(struct matrix23 *result,
                 const struct matrix23 *a, const struct matrix23 *b);


#endif /* INTEL_ROTATE_H */