Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenimage.h
Go to the documentation of this file.
00001 /* 00002 * Mesa 3-D graphics library 00003 * Version: 7.1 00004 * 00005 * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. 00006 * 00007 * Permission is hereby granted, free of charge, to any person obtaining a 00008 * copy of this software and associated documentation files (the "Software"), 00009 * to deal in the Software without restriction, including without limitation 00010 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 00011 * and/or sell copies of the Software, and to permit persons to whom the 00012 * Software is furnished to do so, subject to the following conditions: 00013 * 00014 * The above copyright notice and this permission notice shall be included 00015 * in all copies or substantial portions of the Software. 00016 * 00017 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 00018 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00019 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 00020 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 00021 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 00022 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 00023 */ 00024 00025 00026 #ifndef IMAGE_H 00027 #define IMAGE_H 00028 00029 00030 #include "mtypes.h" 00031 00032 00033 extern void 00034 _mesa_swap2( GLushort *p, GLuint n ); 00035 00036 extern void 00037 _mesa_swap4( GLuint *p, GLuint n ); 00038 00039 extern GLboolean 00040 _mesa_type_is_packed(GLenum type); 00041 00042 extern GLint 00043 _mesa_sizeof_type( GLenum type ); 00044 00045 extern GLint 00046 _mesa_sizeof_packed_type( GLenum type ); 00047 00048 extern GLint 00049 _mesa_components_in_format( GLenum format ); 00050 00051 extern GLint 00052 _mesa_bytes_per_pixel( GLenum format, GLenum type ); 00053 00054 extern GLboolean 00055 _mesa_is_legal_format_and_type( GLcontext *ctx, GLenum format, GLenum type ); 00056 00057 00058 extern GLvoid * 00059 _mesa_image_address( GLuint dimensions, 00060 const struct gl_pixelstore_attrib *packing, 00061 const GLvoid *image, 00062 GLsizei width, GLsizei height, 00063 GLenum format, GLenum type, 00064 GLint img, GLint row, GLint column ); 00065 00066 extern GLvoid * 00067 _mesa_image_address1d( const struct gl_pixelstore_attrib *packing, 00068 const GLvoid *image, 00069 GLsizei width, 00070 GLenum format, GLenum type, 00071 GLint column ); 00072 00073 extern GLvoid * 00074 _mesa_image_address2d( const struct gl_pixelstore_attrib *packing, 00075 const GLvoid *image, 00076 GLsizei width, GLsizei height, 00077 GLenum format, GLenum type, 00078 GLint row, GLint column ); 00079 00080 extern GLvoid * 00081 _mesa_image_address3d( const struct gl_pixelstore_attrib *packing, 00082 const GLvoid *image, 00083 GLsizei width, GLsizei height, 00084 GLenum format, GLenum type, 00085 GLint img, GLint row, GLint column ); 00086 00087 00088 extern GLint 00089 _mesa_image_row_stride( const struct gl_pixelstore_attrib *packing, 00090 GLint width, GLenum format, GLenum type ); 00091 00092 00093 extern GLint 00094 _mesa_image_image_stride( const struct gl_pixelstore_attrib *packing, 00095 GLint width, GLint height, 00096 GLenum format, GLenum type ); 00097 00098 extern void 00099 _mesa_unpack_polygon_stipple( const GLubyte *pattern, GLuint dest[32], 00100 const struct gl_pixelstore_attrib *unpacking ); 00101 00102 00103 extern void 00104 _mesa_pack_polygon_stipple( const GLuint pattern[32], GLubyte *dest, 00105 const struct gl_pixelstore_attrib *packing ); 00106 00107 00108 extern GLvoid * 00109 _mesa_unpack_bitmap( GLint width, GLint height, const GLubyte *pixels, 00110 const struct gl_pixelstore_attrib *packing ); 00111 00112 extern void 00113 _mesa_pack_bitmap( GLint width, GLint height, const GLubyte *source, 00114 GLubyte *dest, const struct gl_pixelstore_attrib *packing ); 00115 00116 00119 00120 extern void 00121 _mesa_scale_and_bias_rgba(GLuint n, GLfloat rgba[][4], 00122 GLfloat rScale, GLfloat gScale, 00123 GLfloat bScale, GLfloat aScale, 00124 GLfloat rBias, GLfloat gBias, 00125 GLfloat bBias, GLfloat aBias); 00126 00127 extern void 00128 _mesa_map_rgba(const GLcontext *ctx, GLuint n, GLfloat rgba[][4]); 00129 00130 00131 extern void 00132 _mesa_transform_rgba(const GLcontext *ctx, GLuint n, GLfloat rgba[][4]); 00133 00134 00135 extern void 00136 _mesa_lookup_rgba_float(const struct gl_color_table *table, 00137 GLuint n, GLfloat rgba[][4]); 00138 00139 extern void 00140 _mesa_lookup_rgba_ubyte(const struct gl_color_table *table, 00141 GLuint n, GLubyte rgba[][4]); 00142 00143 00144 extern void 00145 _mesa_map_ci_to_rgba(const GLcontext *ctx, 00146 GLuint n, const GLuint index[], GLfloat rgba[][4]); 00147 00148 00149 extern void 00150 _mesa_map_ci8_to_rgba8(const GLcontext *ctx, GLuint n, const GLubyte index[], 00151 GLubyte rgba[][4]); 00152 00153 00154 extern void 00155 _mesa_scale_and_bias_depth(const GLcontext *ctx, GLuint n, 00156 GLfloat depthValues[]); 00157 00158 extern void 00159 _mesa_scale_and_bias_depth_uint(const GLcontext *ctx, GLuint n, 00160 GLuint depthValues[]); 00161 00162 extern void 00163 _mesa_apply_rgba_transfer_ops(GLcontext *ctx, GLbitfield transferOps, 00164 GLuint n, GLfloat rgba[][4]); 00165 00166 00167 extern void 00168 _mesa_apply_ci_transfer_ops(const GLcontext *ctx, GLbitfield transferOps, 00169 GLuint n, GLuint indexes[]); 00170 00171 00172 extern void 00173 _mesa_apply_stencil_transfer_ops(const GLcontext *ctx, GLuint n, 00174 GLstencil stencil[]); 00175 00176 00177 extern void 00178 _mesa_pack_rgba_span_float( GLcontext *ctx, GLuint n, GLfloat rgba[][4], 00179 GLenum dstFormat, GLenum dstType, GLvoid *dstAddr, 00180 const struct gl_pixelstore_attrib *dstPacking, 00181 GLbitfield transferOps ); 00182 00183 00184 extern void 00185 _mesa_unpack_color_span_chan( GLcontext *ctx, 00186 GLuint n, GLenum dstFormat, GLchan dest[], 00187 GLenum srcFormat, GLenum srcType, 00188 const GLvoid *source, 00189 const struct gl_pixelstore_attrib *srcPacking, 00190 GLbitfield transferOps ); 00191 00192 00193 extern void 00194 _mesa_unpack_color_span_float( GLcontext *ctx, 00195 GLuint n, GLenum dstFormat, GLfloat dest[], 00196 GLenum srcFormat, GLenum srcType, 00197 const GLvoid *source, 00198 const struct gl_pixelstore_attrib *srcPacking, 00199 GLbitfield transferOps ); 00200 00201 00202 extern void 00203 _mesa_unpack_index_span( const GLcontext *ctx, GLuint n, 00204 GLenum dstType, GLvoid *dest, 00205 GLenum srcType, const GLvoid *source, 00206 const struct gl_pixelstore_attrib *srcPacking, 00207 GLbitfield transferOps ); 00208 00209 00210 extern void 00211 _mesa_pack_index_span( const GLcontext *ctx, GLuint n, 00212 GLenum dstType, GLvoid *dest, const GLuint *source, 00213 const struct gl_pixelstore_attrib *dstPacking, 00214 GLbitfield transferOps ); 00215 00216 00217 extern void 00218 _mesa_unpack_stencil_span( const GLcontext *ctx, GLuint n, 00219 GLenum dstType, GLvoid *dest, 00220 GLenum srcType, const GLvoid *source, 00221 const struct gl_pixelstore_attrib *srcPacking, 00222 GLbitfield transferOps ); 00223 00224 extern void 00225 _mesa_pack_stencil_span( const GLcontext *ctx, GLuint n, 00226 GLenum dstType, GLvoid *dest, const GLstencil *source, 00227 const struct gl_pixelstore_attrib *dstPacking ); 00228 00229 00230 extern void 00231 _mesa_unpack_depth_span( const GLcontext *ctx, GLuint n, 00232 GLenum dstType, GLvoid *dest, GLuint depthMax, 00233 GLenum srcType, const GLvoid *source, 00234 const struct gl_pixelstore_attrib *srcPacking ); 00235 00236 extern void 00237 _mesa_pack_depth_span( const GLcontext *ctx, GLuint n, GLvoid *dest, 00238 GLenum dstType, const GLfloat *depthSpan, 00239 const struct gl_pixelstore_attrib *dstPacking ); 00240 00241 00242 extern void 00243 _mesa_pack_depth_stencil_span(const GLcontext *ctx, GLuint n, GLuint *dest, 00244 const GLfloat *depthVals, 00245 const GLstencil *stencilVals, 00246 const struct gl_pixelstore_attrib *dstPacking); 00247 00248 00249 extern void * 00250 _mesa_unpack_image( GLuint dimensions, 00251 GLsizei width, GLsizei height, GLsizei depth, 00252 GLenum format, GLenum type, const GLvoid *pixels, 00253 const struct gl_pixelstore_attrib *unpack ); 00254 00255 00256 extern void 00257 _mesa_convert_colors(GLenum srcType, const GLvoid *src, 00258 GLenum dstType, GLvoid *dst, 00259 GLuint count, const GLubyte mask[]); 00260 00261 00262 extern GLboolean 00263 _mesa_clip_drawpixels(const GLcontext *ctx, 00264 GLint *destX, GLint *destY, 00265 GLsizei *width, GLsizei *height, 00266 struct gl_pixelstore_attrib *unpack); 00267 00268 00269 extern GLboolean 00270 _mesa_clip_readpixels(const GLcontext *ctx, 00271 GLint *destX, GLint *destY, 00272 GLsizei *width, GLsizei *height, 00273 struct gl_pixelstore_attrib *pack); 00274 00275 extern GLboolean 00276 _mesa_clip_copytexsubimage(const GLcontext *ctx, 00277 GLint *destX, GLint *destY, 00278 GLint *srcX, GLint *srcY, 00279 GLsizei *width, GLsizei *height); 00280 00281 extern GLboolean 00282 _mesa_clip_to_region(GLint xmin, GLint ymin, 00283 GLint xmax, GLint ymax, 00284 GLint *x, GLint *y, 00285 GLsizei *width, GLsizei *height ); 00286 00287 #endif Generated on Sun May 27 2012 04:20:20 for ReactOS by
1.7.6.1
|