cr_client.h revision 10183353efa12aa94e0f3dc78e0f1c47f7928e8d
/* Copyright (c) 2001, Stanford University
* All rights reserved.
*
* See the file LICENSE.txt for information on redistributing this software.
*/
#ifndef CR_STATE_CLIENT_H
#define CR_STATE_CLIENT_H
#include "state/cr_statetypes.h"
#include "state/cr_limits.h"
#include "state/cr_bufferobject.h"
#include "cr_bits.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct {
/* vertex array */
CRbitvalue *v; /* vertex */
CRbitvalue *n; /* normal */
CRbitvalue *c; /* color */
CRbitvalue *i; /* index */
CRbitvalue *e; /* edgeflag */
CRbitvalue *s; /* secondary color */
CRbitvalue *f; /* fog coord */
#ifdef CR_NV_vertex_program
#endif
} CRClientBits;
/*
* NOTE!!!! If you change this structure, search through the code for
* occurances of 'defaultPacking' and fix the static initializations!!!!
*/
typedef struct {
typedef struct {
unsigned char *p;
int bytesPerIndex;
#ifdef CR_ARB_vertex_buffer_object
#endif
#ifdef CR_EXT_compiled_vertex_array
unsigned char *prevPtr;
#endif
typedef struct {
CRClientPointer v; /* vertex */
CRClientPointer n; /* normal */
CRClientPointer c; /* color */
CRClientPointer i; /* color index */
CRClientPointer e; /* edge flags */
CRClientPointer s; /* secondary color */
CRClientPointer f; /* fog coord */
#ifdef CR_NV_vertex_program
#endif
#ifdef CR_NV_vertex_array_range
void *arrayRangePointer;
#endif
#ifdef CR_EXT_compiled_vertex_array
# ifdef IN_GUEST
# endif
#endif
typedef struct {
/* state stacks (glPush/PopClientState) */
extern const CRPixelPackState crStateNativePixelPacking;
#ifdef __cplusplus
}
#endif
#endif /* CR_CLIENT_H */