1f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#ifndef UTIL_BOX_INLINES_H
2f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define UTIL_BOX_INLINES_H
3f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
4f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#include "pipe/p_state.h"
5f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
6f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgstatic INLINE
7f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgvoid u_box_1d( unsigned x,
8f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org	       unsigned w,
9f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org	       struct pipe_box *box )
10f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org{
11f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->x = x;
12f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->y = 0;
13f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->z = 0;
14f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->width = w;
15f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->height = 1;
16f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->depth = 1;
17f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org}
18f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
19f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgstatic INLINE
20f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgvoid u_box_2d( unsigned x,
21f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org	       unsigned y,
22f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org	       unsigned w,
23f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org	       unsigned h,
24f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org	       struct pipe_box *box )
25f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org{
26f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->x = x;
27f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->y = y;
28f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->z = 0;
29f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->width = w;
30f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->height = h;
31f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->depth = 1;
32f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org}
33f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
34f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgstatic INLINE
35f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgvoid u_box_origin_2d( unsigned w,
36f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org		      unsigned h,
37f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org		      struct pipe_box *box )
38f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org{
39f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->x = 0;
40f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->y = 0;
41f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->z = 0;
42f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->width = w;
43f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->height = h;
44f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->depth = 1;
45f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org}
46f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
47f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgstatic INLINE
48f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgvoid u_box_2d_zslice( unsigned x,
49f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org		      unsigned y,
50f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org		      unsigned z,
51f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org		      unsigned w,
52f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org		      unsigned h,
53f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org		      struct pipe_box *box )
54f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org{
55f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->x = x;
56f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->y = y;
57f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->z = z;
58f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->width = w;
59f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->height = h;
60f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->depth = 1;
61f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org}
62f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
63f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgstatic INLINE
64f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgvoid u_box_3d( unsigned x,
65f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org	       unsigned y,
66f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org	       unsigned z,
67f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org	       unsigned w,
68f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org	       unsigned h,
69f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org	       unsigned d,
70f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org	       struct pipe_box *box )
71f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org{
72f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->x = x;
73f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->y = y;
74f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->z = z;
75f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->width = w;
76f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->height = h;
77f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org   box->depth = d;
78f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org}
79f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
80f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#endif
81