e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync/* Copyright (c) 2001, Stanford University
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync * All rights reserved
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync * See the file LICENSE.txt for information on redistributing this software.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync */
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#include "unpacker.h"
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncvoid crUnpackPixelMapfv( void )
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync{
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync GLenum map = READ_DATA( sizeof( int ) + 0, GLenum );
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync GLsizei mapsize = READ_DATA( sizeof( int ) + 4, GLsizei );
af8d59d05d72f134aeea62712f1286b369807d52vboxsync int nodata = READ_DATA( sizeof(int) + 8, int);
af8d59d05d72f134aeea62712f1286b369807d52vboxsync GLfloat *values;
af8d59d05d72f134aeea62712f1286b369807d52vboxsync
af8d59d05d72f134aeea62712f1286b369807d52vboxsync if (nodata)
e761514762c8705557b347266d54ade68888537cvboxsync values = (GLfloat*) (uintptr_t) READ_DATA(sizeof(int) + 12, GLint);
af8d59d05d72f134aeea62712f1286b369807d52vboxsync else
af8d59d05d72f134aeea62712f1286b369807d52vboxsync values = DATA_POINTER( sizeof( int ) + 16, GLfloat );
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync cr_unpackDispatch.PixelMapfv( map, mapsize, values );
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync INCR_VAR_PTR();
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync}
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncvoid crUnpackPixelMapuiv( void )
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync{
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync GLenum map = READ_DATA( sizeof( int ) + 0, GLenum );
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync GLsizei mapsize = READ_DATA( sizeof( int ) + 4, GLsizei );
af8d59d05d72f134aeea62712f1286b369807d52vboxsync int nodata = READ_DATA( sizeof(int) + 8, int);
af8d59d05d72f134aeea62712f1286b369807d52vboxsync GLuint *values;
af8d59d05d72f134aeea62712f1286b369807d52vboxsync
af8d59d05d72f134aeea62712f1286b369807d52vboxsync if (nodata)
e761514762c8705557b347266d54ade68888537cvboxsync values = (GLuint*) (uintptr_t) READ_DATA(sizeof(int) + 12, GLint);
af8d59d05d72f134aeea62712f1286b369807d52vboxsync else
af8d59d05d72f134aeea62712f1286b369807d52vboxsync values = DATA_POINTER( sizeof( int ) + 16, GLuint );
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync cr_unpackDispatch.PixelMapuiv( map, mapsize, values );
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync INCR_VAR_PTR();
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync}
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncvoid crUnpackPixelMapusv( void )
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync{
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync GLenum map = READ_DATA( sizeof( int ) + 0, GLenum );
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync GLsizei mapsize = READ_DATA( sizeof( int ) + 4, GLsizei );
af8d59d05d72f134aeea62712f1286b369807d52vboxsync int nodata = READ_DATA( sizeof(int) + 8, int);
af8d59d05d72f134aeea62712f1286b369807d52vboxsync GLushort *values;
af8d59d05d72f134aeea62712f1286b369807d52vboxsync
af8d59d05d72f134aeea62712f1286b369807d52vboxsync if (nodata)
e761514762c8705557b347266d54ade68888537cvboxsync values = (GLushort*) (uintptr_t) READ_DATA(sizeof(int) + 12, GLint);
af8d59d05d72f134aeea62712f1286b369807d52vboxsync else
af8d59d05d72f134aeea62712f1286b369807d52vboxsync values = DATA_POINTER( sizeof( int ) + 16, GLushort );
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync cr_unpackDispatch.PixelMapusv( map, mapsize, values );
172d42d65dd2830769aa4b55969dcffd80070bdavboxsync INCR_VAR_PTR();
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync}