1 /* 2 * Mesa 3-D graphics library 3 * 4 * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. 5 * 6 * Permission is hereby granted, free of charge, to any person obtaining a 7 * copy of this software and associated documentation files (the "Software"), 8 * to deal in the Software without restriction, including without limitation 9 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 10 * and/or sell copies of the Software, and to permit persons to whom the 11 * Software is furnished to do so, subject to the following conditions: 12 * 13 * The above copyright notice and this permission notice shall be included 14 * in all copies or substantial portions of the Software. 15 * 16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 17 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 19 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR 20 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 21 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 22 * OTHER DEALINGS IN THE SOFTWARE. 23 */ 24 25 26 #ifndef TEXPARAM_H 27 #define TEXPARAM_H 28 29 30 #include "main/glheader.h" 31 32 /** 33 * \name Internal functions 34 */ 35 /*@{*/ 36 37 extern void 38 _mesa_texture_parameterf(struct gl_context *ctx, 39 struct gl_texture_object *texObj, 40 GLenum pname, GLfloat param, bool dsa); 41 42 extern void 43 _mesa_texture_parameterfv(struct gl_context *ctx, 44 struct gl_texture_object *texObj, 45 GLenum pname, const GLfloat *params, bool dsa); 46 47 48 extern void 49 _mesa_texture_parameteri(struct gl_context *ctx, 50 struct gl_texture_object *texObj, 51 GLenum pname, GLint param, bool dsa); 52 53 extern void 54 _mesa_texture_parameteriv(struct gl_context *ctx, 55 struct gl_texture_object *texObj, 56 GLenum pname, const GLint *params, bool dsa); 57 58 extern void 59 _mesa_texture_parameterIiv(struct gl_context *ctx, 60 struct gl_texture_object *texObj, 61 GLenum pname, const GLint *params, bool dsa); 62 63 extern void 64 _mesa_texture_parameterIuiv(struct gl_context *ctx, 65 struct gl_texture_object *texObj, 66 GLenum pname, const GLuint *params, bool dsa); 67 68 GLboolean 69 _mesa_legal_get_tex_level_parameter_target(struct gl_context *ctx, GLenum target, 70 bool dsa); 71 72 GLboolean 73 _mesa_target_allows_setting_sampler_parameters(GLenum target); 74 75 /*@}*/ 76 77 /** 78 * \name API functions 79 */ 80 /*@{*/ 81 82 83 extern void GLAPIENTRY 84 _mesa_GetTexLevelParameterfv( GLenum target, GLint level, 85 GLenum pname, GLfloat *params ); 86 87 extern void GLAPIENTRY 88 _mesa_GetTexLevelParameteriv( GLenum target, GLint level, 89 GLenum pname, GLint *params ); 90 91 extern void GLAPIENTRY 92 _mesa_GetTextureLevelParameterfv(GLuint texture, GLint level, 93 GLenum pname, GLfloat *params); 94 95 extern void GLAPIENTRY 96 _mesa_GetTextureLevelParameteriv(GLuint texture, GLint level, 97 GLenum pname, GLint *params); 98 99 100 extern void GLAPIENTRY 101 _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params ); 102 103 extern void GLAPIENTRY 104 _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ); 105 106 extern void GLAPIENTRY 107 _mesa_GetTexParameterIiv(GLenum target, GLenum pname, GLint *params); 108 109 extern void GLAPIENTRY 110 _mesa_GetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params); 111 112 113 extern void GLAPIENTRY 114 _mesa_GetTextureParameterfv(GLuint texture, GLenum pname, GLfloat *params); 115 116 extern void GLAPIENTRY 117 _mesa_GetTextureParameteriv(GLuint texture, GLenum pname, GLint *params); 118 119 extern void GLAPIENTRY 120 _mesa_GetTextureParameterIiv(GLuint texture, GLenum pname, GLint *params); 121 122 extern void GLAPIENTRY 123 _mesa_GetTextureParameterIuiv(GLuint texture, GLenum pname, GLuint *params); 124 125 126 extern void GLAPIENTRY 127 _mesa_TexParameterfv( GLenum target, GLenum pname, const GLfloat *params ); 128 129 extern void GLAPIENTRY 130 _mesa_TexParameterf( GLenum target, GLenum pname, GLfloat param ); 131 132 extern void GLAPIENTRY 133 _mesa_TexParameteri( GLenum target, GLenum pname, GLint param ); 134 135 extern void GLAPIENTRY 136 _mesa_TexParameteriv( GLenum target, GLenum pname, const GLint *params ); 137 138 extern void GLAPIENTRY 139 _mesa_TexParameterIiv(GLenum target, GLenum pname, const GLint *params); 140 141 extern void GLAPIENTRY 142 _mesa_TexParameterIuiv(GLenum target, GLenum pname, const GLuint *params); 143 144 extern void GLAPIENTRY 145 _mesa_TextureParameterfv(GLuint texture, GLenum pname, const GLfloat *params); 146 147 extern void GLAPIENTRY 148 _mesa_TextureParameterf(GLuint texture, GLenum pname, GLfloat param); 149 150 extern void GLAPIENTRY 151 _mesa_TextureParameteri(GLuint texture, GLenum pname, GLint param); 152 153 extern void GLAPIENTRY 154 _mesa_TextureParameteriv(GLuint texture, GLenum pname, const GLint *params); 155 156 extern void GLAPIENTRY 157 _mesa_TextureParameterIiv(GLuint texture, GLenum pname, const GLint *params); 158 159 extern void GLAPIENTRY 160 _mesa_TextureParameterIuiv(GLuint texture, GLenum pname, const GLuint *params); 161 162 #endif /* TEXPARAM_H */ 163