make directory name inline with other tests
[AROS.git] / workbench / libs / mesa / src / gallium / state_trackers / arosmesa / glagetconfig.c
blob5c25823da92ef2887bcd38d45a604d44fff7a178
1 /*
2 Copyright 2011-2014, The AROS Development Team. All rights reserved.
3 $Id$
4 */
6 #include "arosmesa_funcs.h"
7 #include <proto/exec.h>
9 /*****************************************************************************
11 NAME */
13 void glAGetConfig(
15 /* SYNOPSIS */
16 GLAContext ctx,
17 GLenum pname,
18 GLint * params)
20 /* FUNCTION
22 Gets value of selected parameter
24 INPUTS
26 pname - enum value of parameter
28 params - pointer to integer where the value is to be put
30 RESULT
32 None
34 BUGS
36 INTERNALS
38 HISTORY
40 *****************************************************************************/
42 LONG depthbits, stencilbits, accumbits, rbbits, gbits, abits;
43 struct arosmesa_context * amesa = (struct arosmesa_context *)ctx;
45 switch(amesa->stvis.depth_stencil_format)
47 case(PIPE_FORMAT_S8_USCALED_Z24_UNORM): depthbits = 24; stencilbits = 8; break;
48 case(PIPE_FORMAT_X8Z24_UNORM): depthbits = 24; stencilbits = 0; break;
49 case(PIPE_FORMAT_Z24X8_UNORM): depthbits = 24; stencilbits = 0; break;
50 case(PIPE_FORMAT_Z16_UNORM): depthbits = 16; stencilbits = 0; break;
51 default: depthbits = -1; stencilbits = -1;
54 switch(amesa->stvis.accum_format)
56 case(PIPE_FORMAT_R16G16B16A16_SNORM): accumbits = 16; break;
57 default: accumbits = -1;
60 switch(amesa->stvis.color_format)
62 case(PIPE_FORMAT_B5G6R5_UNORM): rbbits = 5; gbits = 6; abits = 0; break;
63 case(PIPE_FORMAT_B8G8R8A8_UNORM): rbbits = 8; gbits = 8; abits = 8; break;
64 default: rbbits = -1; gbits = -1; abits = 1;
67 if (amesa)
69 switch(pname)
71 case GL_RED_BITS:
72 *params = rbbits;
73 break;
74 case GL_GREEN_BITS:
75 *params = gbits;
76 break;
77 case GL_BLUE_BITS:
78 *params = rbbits;
79 break;
80 case GL_ALPHA_BITS:
81 *params = abits;
82 break;
83 case GL_DOUBLEBUFFER:
84 *params = 1;
85 break;
86 case GL_DEPTH_BITS:
87 *params = depthbits;
88 break;
89 case GL_STENCIL_BITS:
90 *params = stencilbits;
91 break;
92 case GL_ACCUM_RED_BITS:
93 *params = accumbits;
94 break;
95 case GL_ACCUM_GREEN_BITS:
96 *params = accumbits;
97 break;
98 case GL_ACCUM_BLUE_BITS:
99 *params = accumbits;
100 break;
101 case GL_ACCUM_ALPHA_BITS:
102 *params = accumbits;
103 break;
104 case GL_STEREO:
105 *params = 0;
106 break;
107 default:
108 *params = -1;