1 /*
2  * Mesa 3-D graphics library
3  * Version:  7.1
4  *
5  * Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.
6  *
7  * Permission is hereby granted, free of charge, to any person obtaining a
8  * copy of this software and associated documentation files (the "Software"),
9  * to deal in the Software without restriction, including without limitation
10  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11  * and/or sell copies of the Software, and to permit persons to whom the
12  * Software is furnished to do so, subject to the following conditions:
13  *
14  * The above copyright notice and this permission notice shall be included
15  * in all copies or substantial portions of the Software.
16  *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
20  * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
21  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
22  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23  */
24 
25 
26 #include "glheader.h"
27 #include "bufferobj.h"
28 #include "colortab.h"
29 #include "context.h"
30 #include "image.h"
31 #include "macros.h"
32 #include "mfeatures.h"
33 #include "mtypes.h"
34 #include "pack.h"
35 #include "pbo.h"
36 #include "state.h"
37 #include "teximage.h"
38 #include "texstate.h"
39 #include "main/dispatch.h"
40 
41 
42 #if FEATURE_colortable
43 
44 void GLAPIENTRY
_mesa_ColorTable(GLenum target,GLenum internalFormat,GLsizei width,GLenum format,GLenum type,const GLvoid * data)45 _mesa_ColorTable( GLenum target, GLenum internalFormat,
46                   GLsizei width, GLenum format, GLenum type,
47                   const GLvoid *data )
48 {
49    GET_CURRENT_CONTEXT(ctx);
50    ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
51    _mesa_error(ctx, GL_INVALID_ENUM, "glColorTable(target)");
52 }
53 
54 
55 
56 void GLAPIENTRY
_mesa_ColorSubTable(GLenum target,GLsizei start,GLsizei count,GLenum format,GLenum type,const GLvoid * data)57 _mesa_ColorSubTable( GLenum target, GLsizei start,
58                      GLsizei count, GLenum format, GLenum type,
59                      const GLvoid *data )
60 {
61    GET_CURRENT_CONTEXT(ctx);
62    ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
63    _mesa_error(ctx, GL_INVALID_ENUM, "glColorSubTable(target)");
64 }
65 
66 
67 
68 static void GLAPIENTRY
_mesa_CopyColorTable(GLenum target,GLenum internalformat,GLint x,GLint y,GLsizei width)69 _mesa_CopyColorTable(GLenum target, GLenum internalformat,
70                      GLint x, GLint y, GLsizei width)
71 {
72    GET_CURRENT_CONTEXT(ctx);
73    ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
74    _mesa_error(ctx, GL_INVALID_ENUM, "glCopyColorTable(target)");
75 }
76 
77 
78 
79 static void GLAPIENTRY
_mesa_CopyColorSubTable(GLenum target,GLsizei start,GLint x,GLint y,GLsizei width)80 _mesa_CopyColorSubTable(GLenum target, GLsizei start,
81                         GLint x, GLint y, GLsizei width)
82 {
83    GET_CURRENT_CONTEXT(ctx);
84    ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
85    _mesa_error(ctx, GL_INVALID_ENUM, "glCopyColorSubTable(target)");
86 }
87 
88 
89 
90 static void GLAPIENTRY
_mesa_GetnColorTableARB(GLenum target,GLenum format,GLenum type,GLsizei bufSize,GLvoid * data)91 _mesa_GetnColorTableARB( GLenum target, GLenum format, GLenum type,
92                          GLsizei bufSize, GLvoid *data )
93 {
94    GET_CURRENT_CONTEXT(ctx);
95    ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
96    _mesa_error(ctx, GL_INVALID_ENUM, "glGetnColorTableARB(target)");
97 }
98 
99 
100 static void GLAPIENTRY
_mesa_GetColorTable(GLenum target,GLenum format,GLenum type,GLvoid * data)101 _mesa_GetColorTable( GLenum target, GLenum format,
102                      GLenum type, GLvoid *data )
103 {
104    GET_CURRENT_CONTEXT(ctx);
105    ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
106    _mesa_error(ctx, GL_INVALID_ENUM, "glGetColorTable(target)");
107 }
108 
109 
110 static void GLAPIENTRY
_mesa_ColorTableParameterfv(GLenum target,GLenum pname,const GLfloat * params)111 _mesa_ColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params)
112 {
113    /* no extensions use this function */
114    GET_CURRENT_CONTEXT(ctx);
115    ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
116    _mesa_error(ctx, GL_INVALID_ENUM, "glColorTableParameterfv(target)");
117 }
118 
119 
120 
121 static void GLAPIENTRY
_mesa_ColorTableParameteriv(GLenum target,GLenum pname,const GLint * params)122 _mesa_ColorTableParameteriv(GLenum target, GLenum pname, const GLint *params)
123 {
124    /* no extensions use this function */
125    GET_CURRENT_CONTEXT(ctx);
126    ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
127    _mesa_error(ctx, GL_INVALID_ENUM, "glColorTableParameteriv(target)");
128 }
129 
130 
131 
132 static void GLAPIENTRY
_mesa_GetColorTableParameterfv(GLenum target,GLenum pname,GLfloat * params)133 _mesa_GetColorTableParameterfv( GLenum target, GLenum pname, GLfloat *params )
134 {
135    GET_CURRENT_CONTEXT(ctx);
136    ASSERT_OUTSIDE_BEGIN_END(ctx);
137    _mesa_error(ctx, GL_INVALID_ENUM, "glGetColorTableParameterfv(target)");
138 }
139 
140 
141 
142 static void GLAPIENTRY
_mesa_GetColorTableParameteriv(GLenum target,GLenum pname,GLint * params)143 _mesa_GetColorTableParameteriv( GLenum target, GLenum pname, GLint *params )
144 {
145    GET_CURRENT_CONTEXT(ctx);
146    ASSERT_OUTSIDE_BEGIN_END(ctx);
147    _mesa_error(ctx, GL_INVALID_ENUM, "glGetColorTableParameteriv(target)");
148 }
149 
150 
151 void
_mesa_init_colortable_dispatch(struct _glapi_table * disp)152 _mesa_init_colortable_dispatch(struct _glapi_table *disp)
153 {
154    SET_ColorSubTable(disp, _mesa_ColorSubTable);
155    SET_ColorTable(disp, _mesa_ColorTable);
156    SET_ColorTableParameterfv(disp, _mesa_ColorTableParameterfv);
157    SET_ColorTableParameteriv(disp, _mesa_ColorTableParameteriv);
158    SET_CopyColorSubTable(disp, _mesa_CopyColorSubTable);
159    SET_CopyColorTable(disp, _mesa_CopyColorTable);
160    SET_GetColorTable(disp, _mesa_GetColorTable);
161    SET_GetColorTableParameterfv(disp, _mesa_GetColorTableParameterfv);
162    SET_GetColorTableParameteriv(disp, _mesa_GetColorTableParameteriv);
163 
164    /* GL_ARB_robustness */
165    SET_GetnColorTableARB(disp, _mesa_GetnColorTableARB);
166 }
167 
168 
169 #endif /* FEATURE_colortable */
170