#ifndef _VBO_CONTEXT_H
#define _VBO_CONTEXT_H
+#include "vbo.h"
#include "vbo_attrib.h"
-#include "vbo_save.h"
#include "vbo_exec.h"
+#if FEATURE_dlist
+#include "vbo_save.h"
+#endif
struct vbo_context {
struct vbo_exec_context exec;
+#if FEATURE_dlist
struct vbo_save_context save;
+#endif
/* Callback into the driver. This must always succeed, the driver
* is responsible for initiating any fallback actions required:
*/
- void (*draw_prims)( GLcontext *ctx,
- const struct gl_client_array *arrays[],
- const struct _mesa_prim *prims,
- GLuint nr_prims,
- const struct _mesa_index_buffer *ib,
- GLuint min_index,
- GLuint max_index );
+ vbo_draw_func draw_prims;
};
static INLINE GLuint get_program_mode( GLcontext *ctx )
{
- if (!ctx->VertexProgram._Enabled)
+ if (!ctx->VertexProgram._Current)
return VP_NONE;
- else if (ctx->VertexProgram.Current->IsNVProgram)
+ else if (ctx->VertexProgram._Current->IsNVProgram)
return VP_NV;
else
return VP_ARB;