core | glapi | vbo | math | shader | swrast | swrast_setup | tnl | tnl_dd

attrib.c File Reference

#include "glheader.h"
#include "imports.h"
#include "accum.h"
#include "arrayobj.h"
#include "attrib.h"
#include "blend.h"
#include "buffers.h"
#include "bufferobj.h"
#include "clear.h"
#include "colormac.h"
#include "colortab.h"
#include "context.h"
#include "depth.h"
#include "enable.h"
#include "enums.h"
#include "fog.h"
#include "hint.h"
#include "light.h"
#include "lines.h"
#include "matrix.h"
#include "multisample.h"
#include "points.h"
#include "polygon.h"
#include "scissor.h"
#include "simple_list.h"
#include "stencil.h"
#include "texenv.h"
#include "texgen.h"
#include "texobj.h"
#include "texparam.h"
#include "texstate.h"
#include "varray.h"
#include "viewport.h"
#include "mtypes.h"

Data Structures

struct  gl_enable_attrib
 glEnable()/glDisable() attribute group (GL_ENABLE_BIT). More...
struct  gl_attrib_node
 Node for the attribute stack. More...
struct  texture_state
 Special struct for saving/restoring texture state (GL_TEXTURE_BIT). More...

Defines

#define TEST_AND_UPDATE(VALUE, NEWVALUE, ENUM)
#define GL_CLIENT_PACK_BIT   (1<<20)
#define GL_CLIENT_UNPACK_BIT   (1<<21)

Functions

static void save_attrib_data (struct gl_attrib_node **head, GLbitfield kind, void *payload)
 Allocate new attribute node of given type/kind.
void GLAPIENTRY _mesa_PushAttrib (GLbitfield mask)
static void pop_enable_group (GLcontext *ctx, const struct gl_enable_attrib *enable)
static void pop_texture_group (GLcontext *ctx, struct texture_state *texstate)
 Pop/restore texture attribute/group state.
void GLAPIENTRY _mesa_PopAttrib (void)
static void adjust_buffer_object_ref_counts (struct gl_array_object *arrayObj, GLint step)
 Helper for incrementing/decrementing vertex buffer object reference counts when pushing/popping the GL_CLIENT_VERTEX_ARRAY_BIT attribute group.
static void copy_pixelstore (GLcontext *ctx, struct gl_pixelstore_attrib *dst, const struct gl_pixelstore_attrib *src)
 Copy gl_pixelstore_attrib from src to dst, updating buffer object refcounts.
void GLAPIENTRY _mesa_PushClientAttrib (GLbitfield mask)
void GLAPIENTRY _mesa_PopClientAttrib (void)
void _mesa_free_attrib_data (GLcontext *ctx)
 Free any attribute state data that might be attached to the context.
void _mesa_init_attrib (GLcontext *ctx)


Define Documentation

#define GL_CLIENT_PACK_BIT   (1<<20)

#define GL_CLIENT_UNPACK_BIT   (1<<21)

#define TEST_AND_UPDATE ( VALUE,
NEWVALUE,
ENUM   ) 

Value:

if ((VALUE) != (NEWVALUE)) {                    \
           _mesa_set_enable( ctx, ENUM, (NEWVALUE) );   \
        }


Function Documentation

void _mesa_free_attrib_data ( GLcontext ctx  ) 

Free any attribute state data that might be attached to the context.

void _mesa_init_attrib ( GLcontext ctx  ) 

void GLAPIENTRY _mesa_PopAttrib ( void   ) 

void GLAPIENTRY _mesa_PopClientAttrib ( void   ) 

void GLAPIENTRY _mesa_PushAttrib ( GLbitfield  mask  ) 

void GLAPIENTRY _mesa_PushClientAttrib ( GLbitfield  mask  ) 

static void adjust_buffer_object_ref_counts ( struct gl_array_object arrayObj,
GLint  step 
) [static]

Helper for incrementing/decrementing vertex buffer object reference counts when pushing/popping the GL_CLIENT_VERTEX_ARRAY_BIT attribute group.

static void copy_pixelstore ( GLcontext ctx,
struct gl_pixelstore_attrib dst,
const struct gl_pixelstore_attrib src 
) [static]

Copy gl_pixelstore_attrib from src to dst, updating buffer object refcounts.

static void pop_enable_group ( GLcontext ctx,
const struct gl_enable_attrib enable 
) [static]

static void pop_texture_group ( GLcontext ctx,
struct texture_state texstate 
) [static]

Pop/restore texture attribute/group state.

static void save_attrib_data ( struct gl_attrib_node **  head,
GLbitfield  kind,
void *  payload 
) [static]

Allocate new attribute node of given type/kind.

Attach payload data. Insert it into the linked list named by 'head'.


Generated on Sun Sep 27 06:47:45 2009 for Mesa Main by  doxygen 1.5.4