unpack_texture.c revision ea230ec5b9bf57b741bbb8743ec37b436a9c1245
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding/* Copyright (c) 2001, Stanford University
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * All rights reserved
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding *
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * See the file LICENSE.txt for information on redistributing this software.
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding */
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#include "unpacker.h"
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#include "cr_error.h"
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#include "cr_protocol.h"
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#include "cr_mem.h"
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#include "cr_version.h"
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#if defined( GL_EXT_texture3D )
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexImage3DEXT( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint level = READ_DATA( sizeof( int ) + 4, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum internalformat = READ_DATA( sizeof( int ) + 8, GLint );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLsizei width = READ_DATA( sizeof( int ) + 12, GLsizei );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLsizei height = READ_DATA( sizeof( int ) + 16, GLsizei );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLsizei depth = READ_DATA( sizeof( int ) + 20, GLsizei );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLint border = READ_DATA( sizeof( int ) + 24, GLint );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLenum format = READ_DATA( sizeof( int ) + 28, GLenum );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLenum type = READ_DATA( sizeof( int ) + 32, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding int is_null = READ_DATA( sizeof( int ) + 36, int );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLvoid *pixels;
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding if ( is_null )
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding pixels = NULL;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding else
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding pixels = DATA_POINTER( sizeof( int ) + 40, GLvoid );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding
64185f9824e42f21ca7b9ae6c004484215c031a7rbb cr_unpackDispatch.TexImage3DEXT(target, level, internalformat, width,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding height, depth, border, format, type,
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding pixels);
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding INCR_VAR_PTR();
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding}
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#endif /* GL_EXT_texture3D */
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#if defined( CR_OPENGL_VERSION_1_2 )
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fieldingvoid crUnpackTexImage3D( void )
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding{
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLint level = READ_DATA( sizeof( int ) + 4, GLint );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLint internalformat = READ_DATA( sizeof( int ) + 8, GLint );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLsizei width = READ_DATA( sizeof( int ) + 12, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei height = READ_DATA( sizeof( int ) + 16, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei depth = READ_DATA( sizeof( int ) + 20, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint border = READ_DATA( sizeof( int ) + 24, GLint );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLenum format = READ_DATA( sizeof( int ) + 28, GLenum );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding GLenum type = READ_DATA( sizeof( int ) + 32, GLenum );
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding int is_null = READ_DATA( sizeof( int ) + 36, int );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLvoid *pixels;
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding if ( is_null )
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding pixels = NULL;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding else
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels = DATA_POINTER( sizeof( int ) + 40, GLvoid );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexImage3D( target, level, internalformat, width, height,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding depth, border, format, type, pixels );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#endif /* CR_OPENGL_VERSION_1_2 */
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexImage2D( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint level = READ_DATA( sizeof( int ) + 4, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint internalformat = READ_DATA( sizeof( int ) + 8, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei width = READ_DATA( sizeof( int ) + 12, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei height = READ_DATA( sizeof( int ) + 16, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint border = READ_DATA( sizeof( int ) + 20, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum format = READ_DATA( sizeof( int ) + 24, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum type = READ_DATA( sizeof( int ) + 28, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding int is_null = READ_DATA( sizeof( int ) + 32, int );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLvoid *pixels;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding if ( is_null )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels = NULL;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding else
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels = DATA_POINTER( sizeof( int ) + 36, GLvoid );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexImage2D( target, level, internalformat, width, height,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding border, format, type, pixels );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexImage1D( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint level = READ_DATA( sizeof( int ) + 4, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint internalformat = READ_DATA( sizeof( int ) + 8, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei width = READ_DATA( sizeof( int ) + 12, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint border = READ_DATA( sizeof( int ) + 16, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum format = READ_DATA( sizeof( int ) + 20, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum type = READ_DATA( sizeof( int ) + 24, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding int is_null = READ_DATA( sizeof( int ) + 28, int );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLvoid *pixels;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding if ( is_null )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels = NULL;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding else
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels = DATA_POINTER( sizeof( int ) + 32, GLvoid );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexImage1D( target, level, internalformat, width, border,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding format, type, pixels );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackDeleteTextures( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei n = READ_DATA( sizeof( int ) + 0, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLuint *textures = DATA_POINTER( sizeof( int ) + 4, GLuint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.DeleteTextures( n, textures );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackPrioritizeTextures( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei n = READ_DATA( sizeof( int ) + 0, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLuint *textures = DATA_POINTER( sizeof( int ) + 4, GLuint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLclampf *priorities = DATA_POINTER( sizeof( int ) + 4 + n*sizeof( GLuint ),
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLclampf );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.PrioritizeTextures( n, textures, priorities );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexParameterfv( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum pname = READ_DATA( sizeof( int ) + 4, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLfloat *params = DATA_POINTER( sizeof( int ) + 8, GLfloat );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexParameterfv( target, pname, params );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexParameteriv( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum pname = READ_DATA( sizeof( int ) + 4, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint *params = DATA_POINTER( sizeof( int ) + 8, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexParameteriv( target, pname, params );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexParameterf( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum pname = READ_DATA( sizeof( int ) + 4, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLfloat param = READ_DATA( sizeof( int ) + 8, GLfloat );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexParameterf( target, pname, param );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexParameteri( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum pname = READ_DATA( sizeof( int ) + 4, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint param = READ_DATA( sizeof( int ) + 8, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexParameteri( target, pname, param );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#if defined(CR_OPENGL_VERSION_1_2)
b6055b7832a0e4d0818416252fff5925aaebae4brbbvoid crUnpackTexSubImage3D( void )
9625528fcf4fa27288f3be080a1979c8ef60d7dfrbb{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint level = READ_DATA( sizeof( int ) + 4, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint xoffset = READ_DATA( sizeof( int ) + 8, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint yoffset = READ_DATA( sizeof( int ) + 12, GLint );
fd0edaa8e3d4dd67d0604ccef2e96b071db96643fielding GLint zoffset = READ_DATA( sizeof( int ) + 16, GLint );
48d7c43629323c8d5ee9f7bd0d194de0a376b391rbb GLsizei width = READ_DATA( sizeof( int ) + 20, GLsizei );
d4f1d9c1ff112a8ab9bee31f196973761329b236rbb GLsizei height = READ_DATA( sizeof( int ) + 24, GLsizei );
48d7c43629323c8d5ee9f7bd0d194de0a376b391rbb GLsizei depth = READ_DATA( sizeof( int ) + 28, GLsizei );
9625528fcf4fa27288f3be080a1979c8ef60d7dfrbb GLenum format = READ_DATA( sizeof( int ) + 32, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum type = READ_DATA( sizeof( int ) + 36, GLenum );
9625528fcf4fa27288f3be080a1979c8ef60d7dfrbb GLvoid *pixels = DATA_POINTER( sizeof( int ) + 40, GLvoid );
d41217398f0e1031adbb6f5bd37f45737c805deftrawick
d41217398f0e1031adbb6f5bd37f45737c805deftrawick cr_unpackDispatch.PixelStorei( GL_UNPACK_ROW_LENGTH, 0 );
d41217398f0e1031adbb6f5bd37f45737c805deftrawick cr_unpackDispatch.PixelStorei( GL_UNPACK_SKIP_PIXELS, 0 );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.PixelStorei( GL_UNPACK_SKIP_ROWS, 0 );
e68becff3c3ddc18723c9799b8cc2e6e9c3dbd66wrowe cr_unpackDispatch.PixelStorei( GL_UNPACK_ALIGNMENT, 1 );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
ab5581cc78e9d865b0a6ab1404c53347b3276968rbb cr_unpackDispatch.TexSubImage3D(target, level, xoffset, yoffset, zoffset,
f37cf269cda610129791a0f3f9e1c96c2da719e7trawick width, height, depth, format, type, pixels);
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#endif /* CR_OPENGL_VERSION_1_2 */
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexSubImage2D( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint level = READ_DATA( sizeof( int ) + 4, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint xoffset = READ_DATA( sizeof( int ) + 8, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint yoffset = READ_DATA( sizeof( int ) + 12, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei width = READ_DATA( sizeof( int ) + 16, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei height = READ_DATA( sizeof( int ) + 20, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum format = READ_DATA( sizeof( int ) + 24, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum type = READ_DATA( sizeof( int ) + 28, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLvoid *pixels = DATA_POINTER( sizeof( int ) + 32, GLvoid );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.PixelStorei( GL_UNPACK_ROW_LENGTH, 0 );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.PixelStorei( GL_UNPACK_SKIP_PIXELS, 0 );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.PixelStorei( GL_UNPACK_SKIP_ROWS, 0 );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.PixelStorei( GL_UNPACK_ALIGNMENT, 1 );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexSubImage2D( target, level, xoffset, yoffset, width,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding height, format, type, pixels );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexSubImage1D( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint level = READ_DATA( sizeof( int ) + 4, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint xoffset = READ_DATA( sizeof( int ) + 8, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei width = READ_DATA( sizeof( int ) + 12, GLsizei );
c951046af1e8d72440dcd54a92466b031f99d5fbben GLenum format = READ_DATA( sizeof( int ) + 16, GLenum );
b4c8a80f7dbfc9b56dbe03bdc28f0b5eb5f23697rbb GLenum type = READ_DATA( sizeof( int ) + 20, GLenum );
b4c8a80f7dbfc9b56dbe03bdc28f0b5eb5f23697rbb GLvoid *pixels = DATA_POINTER( sizeof( int ) + 24, GLvoid );
b4c8a80f7dbfc9b56dbe03bdc28f0b5eb5f23697rbb
b4c8a80f7dbfc9b56dbe03bdc28f0b5eb5f23697rbb cr_unpackDispatch.PixelStorei( GL_UNPACK_ROW_LENGTH, 0 );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.PixelStorei( GL_UNPACK_SKIP_PIXELS, 0 );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.PixelStorei( GL_UNPACK_SKIP_ROWS, 0 );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.PixelStorei( GL_UNPACK_ALIGNMENT, 1 );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexSubImage1D( target, level, xoffset, width, format,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding type, pixels );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
ab5581cc78e9d865b0a6ab1404c53347b3276968rbb}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexEnvfv( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
c951046af1e8d72440dcd54a92466b031f99d5fbben GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
c951046af1e8d72440dcd54a92466b031f99d5fbben GLenum pname = READ_DATA( sizeof( int ) + 4, GLenum );
b4c8a80f7dbfc9b56dbe03bdc28f0b5eb5f23697rbb GLfloat *params = DATA_POINTER( sizeof( int ) + 8, GLfloat );
ab5581cc78e9d865b0a6ab1404c53347b3276968rbb
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexEnvfv( target, pname, params );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexEnviv( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum pname = READ_DATA( sizeof( int ) + 4, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint *params = DATA_POINTER( sizeof( int ) + 8, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexEnviv( target, pname, params );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#define DATA_POINTER_DOUBLE( offset )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexGendv( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum coord = READ_DATA( sizeof( int ) + 0, GLenum );
b4c8a80f7dbfc9b56dbe03bdc28f0b5eb5f23697rbb GLenum pname = READ_DATA( sizeof( int ) + 4, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLdouble params[4];
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding unsigned int n_param = READ_DATA( 0, int ) - ( sizeof(int) + 8 );
404e2e1f8ad30c2d996f5fb6b3a9a4a4a14a004brbb
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding if ( n_param > sizeof(params) )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding crError( "crUnpackTexGendv: n_param=%d, expected <= %d\n", n_param,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding (unsigned int)sizeof(params) );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding crMemcpy( params, DATA_POINTER( sizeof( int ) + 8, GLdouble ), n_param );
404e2e1f8ad30c2d996f5fb6b3a9a4a4a14a004brbb
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexGendv( coord, pname, params );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexGenfv( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum coord = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum pname = READ_DATA( sizeof( int ) + 4, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLfloat *params = DATA_POINTER( sizeof( int ) + 8, GLfloat );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexGenfv( coord, pname, params );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackTexGeniv( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum coord = READ_DATA( sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum pname = READ_DATA( sizeof( int ) + 4, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint *params = DATA_POINTER( sizeof( int ) + 8, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.TexGeniv( coord, pname, params );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding INCR_VAR_PTR();
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackExtendAreTexturesResident( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei n = READ_DATA( 8, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding const GLuint *textures = DATA_POINTER( 12, const GLuint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding SET_RETURN_PTR(12 + n * sizeof(GLuint));
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding SET_WRITEBACK_PTR(20 + n * sizeof(GLuint));
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding (void) cr_unpackDispatch.AreTexturesResident( n, textures, NULL );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackExtendCompressedTexImage3DARB( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( 4 + sizeof(int) + 0, GLenum );
17db3022778ec47c890504b9378961c428bfddc8fielding GLint level = READ_DATA( 4 + sizeof(int) + 4, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum internalformat = READ_DATA( 4 + sizeof(int) + 8, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei width = READ_DATA( 4 + sizeof(int) + 12, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei height = READ_DATA( 4 + sizeof(int) + 16, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei depth = READ_DATA( 4 + sizeof(int) + 20, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint border = READ_DATA( 4 + sizeof(int) + 24, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei imagesize = READ_DATA( 4 + sizeof(int) + 28, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding int is_null = READ_DATA( 4 + sizeof(int) + 32, int );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLvoid *pixels;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding if( is_null )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels = NULL;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding else
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels = DATA_POINTER( 4 + sizeof(int) + 36, GLvoid );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.CompressedTexImage3DARB(target, level, internalformat,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding width, height, depth, border,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding imagesize, pixels);
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackExtendCompressedTexImage2DARB( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( 4 + sizeof( int ) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint level = READ_DATA( 4 + sizeof( int ) + 4, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum internalformat = READ_DATA( 4 + sizeof( int ) + 8, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei width = READ_DATA( 4 + sizeof( int ) + 12, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei height = READ_DATA( 4 + sizeof( int ) + 16, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint border = READ_DATA( 4 + sizeof( int ) + 20, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei imagesize = READ_DATA( 4 + sizeof( int ) + 24, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding int is_null = READ_DATA( 4 + sizeof( int ) + 28, int );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLvoid *pixels;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding if ( is_null )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels = NULL;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding else
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels = DATA_POINTER( 4 + sizeof( int ) + 32, GLvoid );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.CompressedTexImage2DARB( target, level, internalformat,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding width, height, border, imagesize,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackExtendCompressedTexImage1DARB( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( 4 + sizeof(int) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint level = READ_DATA( 4 + sizeof(int) + 4, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum internalformat = READ_DATA( 4 + sizeof(int) + 8, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei width = READ_DATA( 4 + sizeof(int) + 12, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint border = READ_DATA( 4 + sizeof(int) + 16, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei imagesize = READ_DATA( 4 + sizeof(int) + 20, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding int is_null = READ_DATA( 4 + sizeof(int) + 24, int );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLvoid *pixels;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding if( is_null )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels = NULL;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding else
3a9bc6532fbe8439fc748d8ffedb87415904d16ajim pixels = DATA_POINTER( 4 + sizeof(int) + 28, GLvoid );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.CompressedTexImage1DARB(target, level, internalformat,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding width, border, imagesize, pixels);
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingvoid crUnpackExtendCompressedTexSubImage3DARB( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( 4 + sizeof(int) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint level = READ_DATA( 4 + sizeof(int) + 4, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint xoffset = READ_DATA( 4 + sizeof(int) + 8, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint yoffset = READ_DATA( 4 + sizeof(int) + 12, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint zoffset = READ_DATA( 4 + sizeof(int) + 16, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei width = READ_DATA( 4 + sizeof(int) + 20, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei height = READ_DATA( 4 + sizeof(int) + 24, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei depth = READ_DATA( 4 + sizeof(int) + 28, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum format = READ_DATA( 4 + sizeof(int) + 32, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei imagesize = READ_DATA( 4 + sizeof(int) + 36, GLsizei );
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet int is_null = READ_DATA( 4 + sizeof(int) + 40, int );
5f9993274cae4d5d566e02718170d430d1a19a71dreid GLvoid *pixels;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding if( is_null )
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet pixels = NULL;
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet else
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet pixels = DATA_POINTER( 4 + sizeof(int) + 44, GLvoid );
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet cr_unpackDispatch.CompressedTexSubImage3DARB(target, level, xoffset,
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet yoffset, zoffset, width,
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet height, depth, format,
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet imagesize, pixels);
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet}
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudetvoid crUnpackExtendCompressedTexSubImage2DARB( void )
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet{
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet GLenum target = READ_DATA( 4 + sizeof(int) + 0, GLenum );
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet GLint level = READ_DATA( 4 + sizeof(int) + 4, GLint );
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet GLint xoffset = READ_DATA( 4 + sizeof(int) + 8, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint yoffset = READ_DATA( 4 + sizeof(int) + 12, GLint );
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet GLsizei width = READ_DATA( 4 + sizeof(int) + 16, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei height = READ_DATA( 4 + sizeof(int) + 20, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum format = READ_DATA( 4 + sizeof(int) + 24, GLenum );
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet GLsizei imagesize = READ_DATA( 4 + sizeof(int) + 28, GLsizei );
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet int is_null = READ_DATA( 4 + sizeof(int) + 32, int );
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet GLvoid *pixels;
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet if( is_null )
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet pixels = NULL;
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet else
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet pixels = DATA_POINTER( 4 + sizeof(int) + 36, GLvoid );
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet cr_unpackDispatch.CompressedTexSubImage2DARB(target, level, xoffset,
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet yoffset, width, height,
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet format, imagesize, pixels);
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudet
6db54801798f6021bb464de7b3fdcc9dc3150f7bdgaudetvoid crUnpackExtendCompressedTexSubImage1DARB( void )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding{
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum target = READ_DATA( 4 + sizeof(int) + 0, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint level = READ_DATA( 4 + sizeof(int) + 4, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLint xoffset = READ_DATA( 4 + sizeof(int) + 8, GLint );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei width = READ_DATA( 4 + sizeof(int) + 12, GLsizei );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLenum format = READ_DATA( 4 + sizeof(int) + 16, GLenum );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLsizei imagesize = READ_DATA( 4 + sizeof(int) + 20, GLsizei );
f8ca0364eab4d6ffb5026e91d1f0425159bee0darbb int is_null = READ_DATA( 4 + sizeof(int) + 24, int );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding GLvoid *pixels;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding if( is_null )
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels = NULL;
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding else
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding pixels = DATA_POINTER( 4 + sizeof(int) + 28, GLvoid );
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding cr_unpackDispatch.CompressedTexSubImage1DARB(target, level, xoffset, width,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding format, imagesize, pixels);
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding}
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding