1 /* $Id: texstate.h,v 1.1 1999/08/19 00:55:41 jtg Exp $ */
4 * Mesa 3-D graphics library
7 * Copyright (C) 1999 Brian Paul All Rights Reserved.
9 * Permission is hereby granted, free of charge, to any person obtaining a
10 * copy of this software and associated documentation files (the "Software"),
11 * to deal in the Software without restriction, including without limitation
12 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
13 * and/or sell copies of the Software, and to permit persons to whom the
14 * Software is furnished to do so, subject to the following conditions:
16 * The above copyright notice and this permission notice shall be included
17 * in all copies or substantial portions of the Software.
19 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
20 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
22 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
23 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
24 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
38 /*** Called from API ***/
40 extern void gl_GetTexEnvfv( GLcontext
*ctx
,
41 GLenum target
, GLenum pname
, GLfloat
*params
);
43 extern void gl_GetTexEnviv( GLcontext
*ctx
,
44 GLenum target
, GLenum pname
, GLint
*params
);
46 extern void gl_GetTexGendv( GLcontext
*ctx
,
47 GLenum coord
, GLenum pname
, GLdouble
*params
);
49 extern void gl_GetTexGenfv( GLcontext
*ctx
,
50 GLenum coord
, GLenum pname
, GLfloat
*params
);
52 extern void gl_GetTexGeniv( GLcontext
*ctx
,
53 GLenum coord
, GLenum pname
, GLint
*params
);
55 extern void gl_GetTexLevelParameterfv( GLcontext
*ctx
,
56 GLenum target
, GLint level
,
57 GLenum pname
, GLfloat
*params
);
59 extern void gl_GetTexLevelParameteriv( GLcontext
*ctx
,
60 GLenum target
, GLint level
,
61 GLenum pname
, GLint
*params
);
63 extern void gl_GetTexParameterfv( GLcontext
*ctx
, GLenum target
,
64 GLenum pname
, GLfloat
*params
);
66 extern void gl_GetTexParameteriv( GLcontext
*ctx
,
67 GLenum target
, GLenum pname
, GLint
*params
);
70 extern void gl_TexEnvfv( GLcontext
*ctx
,
71 GLenum target
, GLenum pname
, const GLfloat
*param
);
74 extern void gl_TexParameterfv( GLcontext
*ctx
, GLenum target
, GLenum pname
,
75 const GLfloat
*params
);
78 extern void gl_TexGenfv( GLcontext
*ctx
,
79 GLenum coord
, GLenum pname
, const GLfloat
*params
);
83 extern void gl_SelectTextureTransform( GLcontext
*ctx
, GLenum target
);
89 extern void gl_ActiveTexture( GLcontext
*ctx
, GLenum target
);
91 extern void gl_ClientActiveTexture( GLcontext
*ctx
, GLenum target
);
95 /*** Internal functions ***/
98 gl_put_texobj_on_dirty_list( GLcontext
*ctx
, struct gl_texture_object
*t
);
101 #define gl_remove_texobj_from_dirty_list gl_remove_texobj_from_dirty_lis
104 gl_remove_texobj_from_dirty_list( struct gl_shared_state
*shared
,
105 struct gl_texture_object
*tObj
);
108 gl_update_dirty_texobjs( GLcontext
*ctx
);