#include "main/glheader.h"
#include "main/context.h"
#include "main/state.h"
#include "main/api_validate.h"
#include "main/api_noop.h"
#include "main/varray.h"
#include "main/bufferobj.h"
#include "main/macros.h"
#include "glapi/dispatch.h"
#include "vbo_context.h"
Functions | |
void | vbo_get_minmax_index (GLcontext *ctx, const struct _mesa_prim *prim, const struct _mesa_index_buffer *ib, GLuint *min_index, GLuint *max_index) |
Compute min and max elements for glDraw[Range]Elements() calls. | |
static void | check_array_data (GLcontext *ctx, struct gl_client_array *array, GLuint attrib, GLuint j) |
Check that element 'j' of the array has reasonable data. | |
static void | unmap_array_buffer (GLcontext *ctx, struct gl_client_array *array) |
Unmap the buffer object referenced by given array, if mapped. | |
static void | check_draw_elements_data (GLcontext *ctx, GLsizei count, GLenum elemType, const void *elements, GLint basevertex) |
Examine the array's data for NaNs, etc. | |
static void | check_draw_arrays_data (GLcontext *ctx, GLint start, GLsizei count) |
Check array data, looking for NaNs, etc. | |
static void | print_draw_arrays (GLcontext *ctx, struct vbo_exec_context *exec, GLenum mode, GLint start, GLsizei count) |
Print info/data for glDrawArrays(). | |
static void | bind_array_obj (GLcontext *ctx) |
Just translate the arrayobj into a sane layout. | |
static void | recalculate_input_bindings (GLcontext *ctx) |
static void | bind_arrays (GLcontext *ctx) |
static void GLAPIENTRY | vbo_exec_DrawArrays (GLenum mode, GLint start, GLsizei count) |
static void | dump_element_buffer (GLcontext *ctx, GLenum type) |
Map GL_ELEMENT_ARRAY_BUFFER and print contents. | |
static void | vbo_validated_drawrangeelements (GLcontext *ctx, GLenum mode, GLboolean index_bounds_valid, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex) |
static void GLAPIENTRY | vbo_exec_DrawRangeElementsBaseVertex (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex) |
static void GLAPIENTRY | vbo_exec_DrawRangeElements (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices) |
static void GLAPIENTRY | vbo_exec_DrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices) |
static void GLAPIENTRY | vbo_exec_DrawElementsBaseVertex (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex) |
static void | vbo_validated_multidrawelements (GLcontext *ctx, GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex) |
static void GLAPIENTRY | vbo_exec_MultiDrawElements (GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount) |
static void GLAPIENTRY | vbo_exec_MultiDrawElementsBaseVertex (GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLsizei *basevertex) |
void | vbo_exec_array_init (struct vbo_exec_context *exec) |
void | vbo_exec_array_destroy (struct vbo_exec_context *exec) |
void GLAPIENTRY | _mesa_DrawArrays (GLenum mode, GLint first, GLsizei count) |
void GLAPIENTRY | _mesa_DrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices) |
void GLAPIENTRY | _mesa_DrawElementsBaseVertex (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex) |
void GLAPIENTRY | _mesa_DrawRangeElements (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices) |
void GLAPIENTRY | _mesa_DrawRangeElementsBaseVertex (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex) |
void GLAPIENTRY | _mesa_MultiDrawElementsEXT (GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount) |
void GLAPIENTRY | _mesa_MultiDrawElementsBaseVertex (GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex) |
void GLAPIENTRY _mesa_DrawArrays | ( | GLenum | mode, | |
GLint | first, | |||
GLsizei | count | |||
) |
void GLAPIENTRY _mesa_DrawElements | ( | GLenum | mode, | |
GLsizei | count, | |||
GLenum | type, | |||
const GLvoid * | indices | |||
) |
void GLAPIENTRY _mesa_DrawElementsBaseVertex | ( | GLenum | mode, | |
GLsizei | count, | |||
GLenum | type, | |||
const GLvoid * | indices, | |||
GLint | basevertex | |||
) |
void GLAPIENTRY _mesa_DrawRangeElements | ( | GLenum | mode, | |
GLuint | start, | |||
GLuint | end, | |||
GLsizei | count, | |||
GLenum | type, | |||
const GLvoid * | indices | |||
) |
void GLAPIENTRY _mesa_DrawRangeElementsBaseVertex | ( | GLenum | mode, | |
GLuint | start, | |||
GLuint | end, | |||
GLsizei | count, | |||
GLenum | type, | |||
const GLvoid * | indices, | |||
GLint | basevertex | |||
) |
void GLAPIENTRY _mesa_MultiDrawElementsBaseVertex | ( | GLenum | mode, | |
const GLsizei * | count, | |||
GLenum | type, | |||
const GLvoid ** | indices, | |||
GLsizei | primcount, | |||
const GLint * | basevertex | |||
) |
void GLAPIENTRY _mesa_MultiDrawElementsEXT | ( | GLenum | mode, | |
const GLsizei * | count, | |||
GLenum | type, | |||
const GLvoid ** | indices, | |||
GLsizei | primcount | |||
) |
static void bind_array_obj | ( | GLcontext * | ctx | ) | [static] |
Just translate the arrayobj into a sane layout.
static void bind_arrays | ( | GLcontext * | ctx | ) | [static] |
static void check_array_data | ( | GLcontext * | ctx, | |
struct gl_client_array * | array, | |||
GLuint | attrib, | |||
GLuint | j | |||
) | [static] |
Check that element 'j' of the array has reasonable data.
Map VBO if needed.
static void check_draw_arrays_data | ( | GLcontext * | ctx, | |
GLint | start, | |||
GLsizei | count | |||
) | [static] |
Check array data, looking for NaNs, etc.
static void check_draw_elements_data | ( | GLcontext * | ctx, | |
GLsizei | count, | |||
GLenum | elemType, | |||
const void * | elements, | |||
GLint | basevertex | |||
) | [static] |
Examine the array's data for NaNs, etc.
static void dump_element_buffer | ( | GLcontext * | ctx, | |
GLenum | type | |||
) | [static] |
Map GL_ELEMENT_ARRAY_BUFFER and print contents.
static void print_draw_arrays | ( | GLcontext * | ctx, | |
struct vbo_exec_context * | exec, | |||
GLenum | mode, | |||
GLint | start, | |||
GLsizei | count | |||
) | [static] |
Print info/data for glDrawArrays().
static void recalculate_input_bindings | ( | GLcontext * | ctx | ) | [static] |
static void unmap_array_buffer | ( | GLcontext * | ctx, | |
struct gl_client_array * | array | |||
) | [static] |
Unmap the buffer object referenced by given array, if mapped.
void vbo_exec_array_destroy | ( | struct vbo_exec_context * | exec | ) |
void vbo_exec_array_init | ( | struct vbo_exec_context * | exec | ) |
static void GLAPIENTRY vbo_exec_DrawArrays | ( | GLenum | mode, | |
GLint | start, | |||
GLsizei | count | |||
) | [static] |
static void GLAPIENTRY vbo_exec_DrawElements | ( | GLenum | mode, | |
GLsizei | count, | |||
GLenum | type, | |||
const GLvoid * | indices | |||
) | [static] |
static void GLAPIENTRY vbo_exec_DrawElementsBaseVertex | ( | GLenum | mode, | |
GLsizei | count, | |||
GLenum | type, | |||
const GLvoid * | indices, | |||
GLint | basevertex | |||
) | [static] |
static void GLAPIENTRY vbo_exec_DrawRangeElements | ( | GLenum | mode, | |
GLuint | start, | |||
GLuint | end, | |||
GLsizei | count, | |||
GLenum | type, | |||
const GLvoid * | indices | |||
) | [static] |
static void GLAPIENTRY vbo_exec_DrawRangeElementsBaseVertex | ( | GLenum | mode, | |
GLuint | start, | |||
GLuint | end, | |||
GLsizei | count, | |||
GLenum | type, | |||
const GLvoid * | indices, | |||
GLint | basevertex | |||
) | [static] |
static void GLAPIENTRY vbo_exec_MultiDrawElements | ( | GLenum | mode, | |
const GLsizei * | count, | |||
GLenum | type, | |||
const GLvoid ** | indices, | |||
GLsizei | primcount | |||
) | [static] |
static void GLAPIENTRY vbo_exec_MultiDrawElementsBaseVertex | ( | GLenum | mode, | |
const GLsizei * | count, | |||
GLenum | type, | |||
const GLvoid ** | indices, | |||
GLsizei | primcount, | |||
const GLsizei * | basevertex | |||
) | [static] |
void vbo_get_minmax_index | ( | GLcontext * | ctx, | |
const struct _mesa_prim * | prim, | |||
const struct _mesa_index_buffer * | ib, | |||
GLuint * | min_index, | |||
GLuint * | max_index | |||
) |
Compute min and max elements for glDraw[Range]Elements() calls.
static void vbo_validated_drawrangeelements | ( | GLcontext * | ctx, | |
GLenum | mode, | |||
GLboolean | index_bounds_valid, | |||
GLuint | start, | |||
GLuint | end, | |||
GLsizei | count, | |||
GLenum | type, | |||
const GLvoid * | indices, | |||
GLint | basevertex | |||
) | [static] |
static void vbo_validated_multidrawelements | ( | GLcontext * | ctx, | |
GLenum | mode, | |||
const GLsizei * | count, | |||
GLenum | type, | |||
const GLvoid ** | indices, | |||
GLsizei | primcount, | |||
const GLint * | basevertex | |||
) | [static] |