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#ifndef CR_PIXELDATA_H
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#define CR_PIXELDATA_H
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#include "chromium.h"
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#include "state/cr_client.h"
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#include <iprt/cdefs.h>
0249851e92e86d5a3594ddd7dc3de9fc04229646vboxsync#include <stdarg.h>
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#ifdef __cplusplus
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncextern "C" {
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#endif
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncDECLEXPORT(int) crPixelSize( GLenum format, GLenum type );
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncDECLEXPORT(unsigned int) crImageSize( GLenum format, GLenum type,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync GLsizei width, GLsizei height );
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncDECLEXPORT(unsigned int) crTextureSize( GLenum format, GLenum type, GLsizei width, GLsizei height, GLsizei depth );
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncDECLEXPORT(void) crPixelCopy1D( GLvoid *dstPtr, GLenum dstFormat, GLenum dstType,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync const GLvoid *srcPtr, GLenum srcFormat, GLenum srcType,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync GLsizei width, const CRPixelPackState *srcPacking );
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncDECLEXPORT(void) crPixelCopy2D( GLsizei width, GLsizei height,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync GLvoid *dstPtr, GLenum dstFormat, GLenum dstType,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync const CRPixelPackState *dstPacking,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync const GLvoid *srcPtr, GLenum srcFormat, GLenum srcType,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync const CRPixelPackState *srcPacking );
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncDECLEXPORT(void) crPixelCopy3D( GLsizei width, GLsizei height, GLsizei depth,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync GLvoid *dstPtr, GLenum dstFormat, GLenum dstType,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync const CRPixelPackState *dstPacking, const GLvoid *srcPtr,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync GLenum srcFormat, GLenum srcType,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync const CRPixelPackState *srcPacking );
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncDECLEXPORT(void) crBitmapCopy( GLsizei width, GLsizei height, GLubyte *dstPtr,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync const GLubyte *srcPtr, const CRPixelPackState *srcPacking );
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
d7b582240fd84655df03ad70cf59ac764bf7cce7vboxsyncDECLEXPORT(void) crDumpNamedTGA(const char *fname, GLint w, GLint h, GLvoid *data);
ed7f0e67f6a2eded1e54d86ac337b2c69bffe3f5vboxsyncDECLEXPORT(void) crDumpNamedTGAV(GLint w, GLint h, GLvoid *data, const char* fname, va_list va);
ed7f0e67f6a2eded1e54d86ac337b2c69bffe3f5vboxsyncDECLEXPORT(void) crDumpNamedTGAF(GLint w, GLint h, GLvoid *data, const char* fname, ...);
88c504b1c053e580e42d5fc90ef2ccedc50c65bdvboxsyncDECLEXPORT(void) crDumpTGA(GLint w, GLint h, GLvoid *data);
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#ifdef __cplusplus
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync}
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#endif
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync#endif /* CR_PIXELDATA_H */