Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenteximage.h
Go to the documentation of this file.
00001 00006 /* 00007 * Mesa 3-D graphics library 00008 * Version: 6.5 00009 * 00010 * Copyright (C) 1999-2005 Brian Paul All Rights Reserved. 00011 * 00012 * Permission is hereby granted, free of charge, to any person obtaining a 00013 * copy of this software and associated documentation files (the "Software"), 00014 * to deal in the Software without restriction, including without limitation 00015 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 00016 * and/or sell copies of the Software, and to permit persons to whom the 00017 * Software is furnished to do so, subject to the following conditions: 00018 * 00019 * The above copyright notice and this permission notice shall be included 00020 * in all copies or substantial portions of the Software. 00021 * 00022 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 00023 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00024 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 00025 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 00026 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 00027 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 00028 */ 00029 00030 00031 #ifndef TEXIMAGE_H 00032 #define TEXIMAGE_H 00033 00034 00035 #include "mtypes.h" 00036 00037 00038 extern void * 00039 _mesa_alloc_texmemory(GLsizei bytes); 00040 00041 extern void 00042 _mesa_free_texmemory(void *m); 00043 00044 00047 00048 extern GLint 00049 _mesa_base_tex_format( GLcontext *ctx, GLint internalFormat ); 00050 00051 00052 extern GLboolean 00053 _mesa_is_proxy_texture(GLenum target); 00054 00055 00056 extern struct gl_texture_image * 00057 _mesa_new_texture_image( GLcontext *ctx ); 00058 00059 00060 extern void 00061 _mesa_delete_texture_image( GLcontext *ctx, struct gl_texture_image *teximage ); 00062 00063 extern void 00064 _mesa_free_texture_image_data( GLcontext *ctx, 00065 struct gl_texture_image *texImage ); 00066 00067 00068 extern void 00069 _mesa_init_teximage_fields(GLcontext *ctx, GLenum target, 00070 struct gl_texture_image *img, 00071 GLsizei width, GLsizei height, GLsizei depth, 00072 GLint border, GLenum internalFormat); 00073 00074 00075 extern void 00076 _mesa_set_tex_image(struct gl_texture_object *tObj, 00077 GLenum target, GLint level, 00078 struct gl_texture_image *texImage); 00079 00080 00081 extern struct gl_texture_object * 00082 _mesa_select_tex_object(GLcontext *ctx, const struct gl_texture_unit *texUnit, 00083 GLenum target); 00084 00085 00086 extern struct gl_texture_image * 00087 _mesa_select_tex_image(GLcontext *ctx, const struct gl_texture_object *texObj, 00088 GLenum target, GLint level); 00089 00090 00091 extern struct gl_texture_image * 00092 _mesa_get_tex_image(GLcontext *ctx, struct gl_texture_object *texObj, 00093 GLenum target, GLint level); 00094 00095 00096 extern struct gl_texture_image * 00097 _mesa_get_proxy_tex_image(GLcontext *ctx, GLenum target, GLint level); 00098 00099 00100 extern GLint 00101 _mesa_max_texture_levels(GLcontext *ctx, GLenum target); 00102 00103 00104 extern GLboolean 00105 _mesa_test_proxy_teximage(GLcontext *ctx, GLenum target, GLint level, 00106 GLint internalFormat, GLenum format, GLenum type, 00107 GLint width, GLint height, GLint depth, GLint border); 00108 00109 00110 extern GLuint 00111 _mesa_tex_target_to_face(GLenum target); 00112 00113 00114 extern GLboolean 00115 _mesa_is_color_format(GLenum format); 00116 00117 00121 static INLINE void 00122 _mesa_lock_texture(GLcontext *ctx, struct gl_texture_object *texObj) 00123 { 00124 _glthread_LOCK_MUTEX(ctx->Shared->TexMutex); 00125 ctx->Shared->TextureStateStamp++; 00126 (void) texObj; 00127 } 00128 00129 static INLINE void 00130 _mesa_unlock_texture(GLcontext *ctx, struct gl_texture_object *texObj) 00131 { 00132 _glthread_UNLOCK_MUTEX(ctx->Shared->TexMutex); 00133 } 00134 00140 00141 extern void GLAPIENTRY 00142 _mesa_TexImage1D( GLenum target, GLint level, GLint internalformat, 00143 GLsizei width, GLint border, 00144 GLenum format, GLenum type, const GLvoid *pixels ); 00145 00146 00147 extern void GLAPIENTRY 00148 _mesa_TexImage2D( GLenum target, GLint level, GLint internalformat, 00149 GLsizei width, GLsizei height, GLint border, 00150 GLenum format, GLenum type, const GLvoid *pixels ); 00151 00152 00153 extern void GLAPIENTRY 00154 _mesa_TexImage3D( GLenum target, GLint level, GLint internalformat, 00155 GLsizei width, GLsizei height, GLsizei depth, GLint border, 00156 GLenum format, GLenum type, const GLvoid *pixels ); 00157 00158 00159 extern void GLAPIENTRY 00160 _mesa_TexImage3DEXT( GLenum target, GLint level, GLenum internalformat, 00161 GLsizei width, GLsizei height, GLsizei depth, 00162 GLint border, GLenum format, GLenum type, 00163 const GLvoid *pixels ); 00164 00165 00166 extern void GLAPIENTRY 00167 _mesa_GetTexImage( GLenum target, GLint level, 00168 GLenum format, GLenum type, GLvoid *pixels ); 00169 00170 00171 extern void GLAPIENTRY 00172 _mesa_TexSubImage1D( GLenum target, GLint level, GLint xoffset, 00173 GLsizei width, 00174 GLenum format, GLenum type, 00175 const GLvoid *pixels ); 00176 00177 00178 extern void GLAPIENTRY 00179 _mesa_TexSubImage2D( GLenum target, GLint level, 00180 GLint xoffset, GLint yoffset, 00181 GLsizei width, GLsizei height, 00182 GLenum format, GLenum type, 00183 const GLvoid *pixels ); 00184 00185 00186 extern void GLAPIENTRY 00187 _mesa_TexSubImage3D( GLenum target, GLint level, 00188 GLint xoffset, GLint yoffset, GLint zoffset, 00189 GLsizei width, GLsizei height, GLsizei depth, 00190 GLenum format, GLenum type, 00191 const GLvoid *pixels ); 00192 00193 00194 extern void GLAPIENTRY 00195 _mesa_CopyTexImage1D( GLenum target, GLint level, GLenum internalformat, 00196 GLint x, GLint y, GLsizei width, GLint border ); 00197 00198 00199 extern void GLAPIENTRY 00200 _mesa_CopyTexImage2D( GLenum target, GLint level, 00201 GLenum internalformat, GLint x, GLint y, 00202 GLsizei width, GLsizei height, GLint border ); 00203 00204 00205 extern void GLAPIENTRY 00206 _mesa_CopyTexSubImage1D( GLenum target, GLint level, GLint xoffset, 00207 GLint x, GLint y, GLsizei width ); 00208 00209 00210 extern void GLAPIENTRY 00211 _mesa_CopyTexSubImage2D( GLenum target, GLint level, 00212 GLint xoffset, GLint yoffset, 00213 GLint x, GLint y, GLsizei width, GLsizei height ); 00214 00215 00216 extern void GLAPIENTRY 00217 _mesa_CopyTexSubImage3D( GLenum target, GLint level, 00218 GLint xoffset, GLint yoffset, GLint zoffset, 00219 GLint x, GLint y, GLsizei width, GLsizei height ); 00220 00221 00222 00223 extern void GLAPIENTRY 00224 _mesa_CompressedTexImage1DARB(GLenum target, GLint level, 00225 GLenum internalformat, GLsizei width, 00226 GLint border, GLsizei imageSize, 00227 const GLvoid *data); 00228 00229 extern void GLAPIENTRY 00230 _mesa_CompressedTexImage2DARB(GLenum target, GLint level, 00231 GLenum internalformat, GLsizei width, 00232 GLsizei height, GLint border, GLsizei imageSize, 00233 const GLvoid *data); 00234 00235 extern void GLAPIENTRY 00236 _mesa_CompressedTexImage3DARB(GLenum target, GLint level, 00237 GLenum internalformat, GLsizei width, 00238 GLsizei height, GLsizei depth, GLint border, 00239 GLsizei imageSize, const GLvoid *data); 00240 00241 #ifdef VMS 00242 #define _mesa_CompressedTexSubImage1DARB _mesa_CompressedTexSubImage1DAR 00243 #define _mesa_CompressedTexSubImage2DARB _mesa_CompressedTexSubImage2DAR 00244 #define _mesa_CompressedTexSubImage3DARB _mesa_CompressedTexSubImage3DAR 00245 #endif 00246 extern void GLAPIENTRY 00247 _mesa_CompressedTexSubImage1DARB(GLenum target, GLint level, GLint xoffset, 00248 GLsizei width, GLenum format, 00249 GLsizei imageSize, const GLvoid *data); 00250 00251 extern void GLAPIENTRY 00252 _mesa_CompressedTexSubImage2DARB(GLenum target, GLint level, GLint xoffset, 00253 GLint yoffset, GLsizei width, GLsizei height, 00254 GLenum format, GLsizei imageSize, 00255 const GLvoid *data); 00256 00257 extern void GLAPIENTRY 00258 _mesa_CompressedTexSubImage3DARB(GLenum target, GLint level, GLint xoffset, 00259 GLint yoffset, GLint zoffset, GLsizei width, 00260 GLsizei height, GLsizei depth, GLenum format, 00261 GLsizei imageSize, const GLvoid *data); 00262 00263 extern void GLAPIENTRY 00264 _mesa_GetCompressedTexImageARB(GLenum target, GLint lod, GLvoid *img); 00265 00268 #endif Generated on Mon May 28 2012 04:20:11 for ReactOS by
1.7.6.1
|