#include "main/glheader.h"
#include "main/bitset.h"
#include "main/mtypes.h"
#include "math/m_matrix.h"
#include "math/m_vector.h"
#include "math/m_xform.h"
#include "vbo/vbo.h"
Data Structures | |
| struct | vertex_buffer |
| Contains the current state of a running pipeline. More... | |
| struct | tnl_pipeline_stage |
| Describes an individual operation on the pipeline. More... | |
| struct | tnl_pipeline |
| Contains the array of all pipeline stages. More... | |
| struct | tnl_clipspace_attr |
| Describes how to convert/move a vertex attribute from a vertex array to a vertex structure. More... | |
| struct | tnl_attr_type |
| struct | tnl_clipspace_fastpath |
| struct | tnl_clipspace |
| Used to describe conversion of vertex arrays to vertex structures. More... | |
| struct | tnl_device_driver |
| struct | TNLcontext |
| Context state for T&L context. More... | |
Defines | |
| #define | MAX_PIPELINE_STAGES 30 |
| #define | _TNL_ATTRIB_TEX(u) (_TNL_ATTRIB_TEX0 + (u)) |
| #define | _TNL_ATTRIB_GENERIC(n) (_TNL_ATTRIB_GENERIC0 + (n)) |
| #define | _TNL_ATTRIB_ERROR (_TNL_ATTRIB_GENERIC15 + 1) |
| #define | _TNL_FIRST_PROG _TNL_ATTRIB_WEIGHT |
| Handy attribute ranges:. | |
| #define | _TNL_LAST_PROG _TNL_ATTRIB_TEX7 |
| #define | _TNL_FIRST_TEX _TNL_ATTRIB_TEX0 |
| #define | _TNL_LAST_TEX _TNL_ATTRIB_TEX7 |
| #define | _TNL_FIRST_GENERIC _TNL_ATTRIB_GENERIC0 |
| #define | _TNL_LAST_GENERIC _TNL_ATTRIB_GENERIC15 |
| #define | _TNL_FIRST_MAT _TNL_ATTRIB_MAT_FRONT_AMBIENT |
| #define | _TNL_LAST_MAT _TNL_ATTRIB_MAT_BACK_INDEXES |
| #define | _TNL_NUM_GENERIC 16 |
| #define | _TNL_NUM_EVAL 16 |
| #define | PRIM_BEGIN 0x10 |
| #define | PRIM_END 0x20 |
| #define | PRIM_MODE_MASK 0x0f |
| #define | DECLARE_RENDERINPUTS(name) BITSET64_DECLARE(name, _TNL_ATTRIB_MAX) |
| #define | RENDERINPUTS_COPY BITSET64_COPY |
| #define | RENDERINPUTS_EQUAL BITSET64_EQUAL |
| #define | RENDERINPUTS_ZERO BITSET64_ZERO |
| #define | RENDERINPUTS_ONES BITSET64_ONES |
| #define | RENDERINPUTS_TEST BITSET64_TEST |
| #define | RENDERINPUTS_SET BITSET64_SET |
| #define | RENDERINPUTS_CLEAR BITSET64_CLEAR |
| #define | RENDERINPUTS_TEST_RANGE BITSET64_TEST_RANGE |
| #define | RENDERINPUTS_SET_RANGE BITSET64_SET_RANGE |
| #define | RENDERINPUTS_CLEAR_RANGE BITSET64_CLEAR_RANGE |
| #define | TNL_CONTEXT(ctx) ((TNLcontext *)((ctx)->swtnl_context)) |
| #define | TYPE_IDX(t) ((t) & 0xf) |
| #define | MAX_TYPES TYPE_IDX(GL_DOUBLE)+1 |
Typedefs | |
| typedef void(* | tnl_extract_func )(const struct tnl_clipspace_attr *a, GLfloat *out, const GLubyte *v) |
| typedef void(* | tnl_insert_func )(const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in) |
| typedef void(* | tnl_emit_func )(GLcontext *ctx, GLuint count, GLubyte *dest) |
| typedef void(* | tnl_points_func )(GLcontext *ctx, GLuint first, GLuint last) |
| typedef void(* | tnl_line_func )(GLcontext *ctx, GLuint v1, GLuint v2) |
| typedef void(* | tnl_triangle_func )(GLcontext *ctx, GLuint v1, GLuint v2, GLuint v3) |
| typedef void(* | tnl_quad_func )(GLcontext *ctx, GLuint v1, GLuint v2, GLuint v3, GLuint v4) |
| typedef void(* | tnl_render_func )(GLcontext *ctx, GLuint start, GLuint count, GLuint flags) |
| typedef void(* | tnl_interp_func )(GLcontext *ctx, GLfloat t, GLuint dst, GLuint out, GLuint in, GLboolean force_boundary) |
| typedef void(* | tnl_copy_pv_func )(GLcontext *ctx, GLuint dst, GLuint src) |
| typedef void(* | tnl_setup_func )(GLcontext *ctx, GLuint start, GLuint end, GLuint new_inputs) |
Enumerations | |
| enum | { _TNL_ATTRIB_POS = 0, _TNL_ATTRIB_WEIGHT = 1, _TNL_ATTRIB_NORMAL = 2, _TNL_ATTRIB_COLOR0 = 3, _TNL_ATTRIB_COLOR1 = 4, _TNL_ATTRIB_FOG = 5, _TNL_ATTRIB_COLOR_INDEX = 6, _TNL_ATTRIB_EDGEFLAG = 7, _TNL_ATTRIB_TEX0 = 8, _TNL_ATTRIB_TEX1 = 9, _TNL_ATTRIB_TEX2 = 10, _TNL_ATTRIB_TEX3 = 11, _TNL_ATTRIB_TEX4 = 12, _TNL_ATTRIB_TEX5 = 13, _TNL_ATTRIB_TEX6 = 14, _TNL_ATTRIB_TEX7 = 15, _TNL_ATTRIB_GENERIC0 = 16, _TNL_ATTRIB_GENERIC1 = 17, _TNL_ATTRIB_GENERIC2 = 18, _TNL_ATTRIB_GENERIC3 = 19, _TNL_ATTRIB_GENERIC4 = 20, _TNL_ATTRIB_GENERIC5 = 21, _TNL_ATTRIB_GENERIC6 = 22, _TNL_ATTRIB_GENERIC7 = 23, _TNL_ATTRIB_GENERIC8 = 24, _TNL_ATTRIB_GENERIC9 = 25, _TNL_ATTRIB_GENERIC10 = 26, _TNL_ATTRIB_GENERIC11 = 27, _TNL_ATTRIB_GENERIC12 = 28, _TNL_ATTRIB_GENERIC13 = 29, _TNL_ATTRIB_GENERIC14 = 30, _TNL_ATTRIB_GENERIC15 = 31, _TNL_ATTRIB_MAT_FRONT_AMBIENT = 16, _TNL_ATTRIB_MAT_BACK_AMBIENT = 17, _TNL_ATTRIB_MAT_FRONT_DIFFUSE = 18, _TNL_ATTRIB_MAT_BACK_DIFFUSE = 19, _TNL_ATTRIB_MAT_FRONT_SPECULAR = 20, _TNL_ATTRIB_MAT_BACK_SPECULAR = 21, _TNL_ATTRIB_MAT_FRONT_EMISSION = 22, _TNL_ATTRIB_MAT_BACK_EMISSION = 23, _TNL_ATTRIB_MAT_FRONT_SHININESS = 24, _TNL_ATTRIB_MAT_BACK_SHININESS = 25, _TNL_ATTRIB_MAT_FRONT_INDEXES = 26, _TNL_ATTRIB_MAT_BACK_INDEXES = 27, _TNL_ATTRIB_POINTSIZE = 16, _TNL_ATTRIB_MAX = 32 } |
Functions | |
| static INLINE GLuint | _tnl_translate_prim (const struct _mesa_prim *prim) |
| void | tnl_clip_prepare (GLcontext *ctx) |
| #define _TNL_ATTRIB_ERROR (_TNL_ATTRIB_GENERIC15 + 1) |
| #define _TNL_ATTRIB_TEX | ( | u | ) | (_TNL_ATTRIB_TEX0 + (u)) |
| #define _TNL_FIRST_GENERIC _TNL_ATTRIB_GENERIC0 |
| #define _TNL_FIRST_MAT _TNL_ATTRIB_MAT_FRONT_AMBIENT |
| #define _TNL_FIRST_PROG _TNL_ATTRIB_WEIGHT |
Handy attribute ranges:.
| #define _TNL_FIRST_TEX _TNL_ATTRIB_TEX0 |
| #define _TNL_LAST_GENERIC _TNL_ATTRIB_GENERIC15 |
| #define _TNL_LAST_MAT _TNL_ATTRIB_MAT_BACK_INDEXES |
| #define _TNL_LAST_PROG _TNL_ATTRIB_TEX7 |
| #define _TNL_LAST_TEX _TNL_ATTRIB_TEX7 |
| #define _TNL_NUM_EVAL 16 |
| #define _TNL_NUM_GENERIC 16 |
| #define DECLARE_RENDERINPUTS | ( | name | ) | BITSET64_DECLARE(name, _TNL_ATTRIB_MAX) |
| #define MAX_PIPELINE_STAGES 30 |
| #define MAX_TYPES TYPE_IDX(GL_DOUBLE)+1 |
| #define PRIM_BEGIN 0x10 |
| #define PRIM_END 0x20 |
| #define PRIM_MODE_MASK 0x0f |
| #define RENDERINPUTS_CLEAR BITSET64_CLEAR |
| #define RENDERINPUTS_CLEAR_RANGE BITSET64_CLEAR_RANGE |
| #define RENDERINPUTS_COPY BITSET64_COPY |
| #define RENDERINPUTS_EQUAL BITSET64_EQUAL |
| #define RENDERINPUTS_ONES BITSET64_ONES |
| #define RENDERINPUTS_SET BITSET64_SET |
| #define RENDERINPUTS_SET_RANGE BITSET64_SET_RANGE |
| #define RENDERINPUTS_TEST BITSET64_TEST |
| #define RENDERINPUTS_TEST_RANGE BITSET64_TEST_RANGE |
| #define RENDERINPUTS_ZERO BITSET64_ZERO |
| #define TNL_CONTEXT | ( | ctx | ) | ((TNLcontext *)((ctx)->swtnl_context)) |
| #define TYPE_IDX | ( | t | ) | ((t) & 0xf) |
| typedef void(* tnl_copy_pv_func)(GLcontext *ctx, GLuint dst, GLuint src) |
| typedef void(* tnl_emit_func)(GLcontext *ctx, GLuint count, GLubyte *dest) |
| typedef void(* tnl_extract_func)(const struct tnl_clipspace_attr *a, GLfloat *out, const GLubyte *v) |
| typedef void(* tnl_insert_func)(const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in) |
| typedef void(* tnl_interp_func)(GLcontext *ctx, GLfloat t, GLuint dst, GLuint out, GLuint in, GLboolean force_boundary) |
| typedef void(* tnl_line_func)(GLcontext *ctx, GLuint v1, GLuint v2) |
| typedef void(* tnl_points_func)(GLcontext *ctx, GLuint first, GLuint last) |
| typedef void(* tnl_quad_func)(GLcontext *ctx, GLuint v1, GLuint v2, GLuint v3, GLuint v4) |
| typedef void(* tnl_render_func)(GLcontext *ctx, GLuint start, GLuint count, GLuint flags) |
| typedef void(* tnl_setup_func)(GLcontext *ctx, GLuint start, GLuint end, GLuint new_inputs) |
| typedef void(* tnl_triangle_func)(GLcontext *ctx, GLuint v1, GLuint v2, GLuint v3) |
| anonymous enum |
| static INLINE GLuint _tnl_translate_prim | ( | const struct _mesa_prim * | prim | ) | [static] |
| void tnl_clip_prepare | ( | GLcontext * | ctx | ) |
1.5.4