#include "glheader.h"
#include "api_loopback.h"
#include "context.h"
#include "imports.h"
#include "mtypes.h"
#include "state.h"
#include "vtxfmt.h"
#include "vtxfmt_tmp.h"
Defines | |
| #define | PRE_LOOPBACK(FUNC) |
| #define | TAG(x) neutral_##x |
Functions | |
| static void | install_vtxfmt (struct _glapi_table *tab, const GLvertexformat *vfmt) |
| Use the per-vertex functions found in <vfmt> to initialze the given API dispatch table. | |
| void | _mesa_init_exec_vtxfmt (GLcontext *ctx) |
| void | _mesa_install_exec_vtxfmt (GLcontext *ctx, const GLvertexformat *vfmt) |
| void | _mesa_install_save_vtxfmt (GLcontext *ctx, const GLvertexformat *vfmt) |
| void | _mesa_restore_exec_vtxfmt (GLcontext *ctx) |
| #define PRE_LOOPBACK | ( | FUNC | ) |
Value:
{ \
GET_CURRENT_CONTEXT(ctx); \
struct gl_tnl_module * const tnl = &(ctx->TnlModule); \
const int tmp_offset = _gloffset_ ## FUNC ; \
\
ASSERT( tnl->Current ); \
ASSERT( tnl->SwapCount < NUM_VERTEX_FORMAT_ENTRIES ); \
ASSERT( tmp_offset >= 0 ); \
\
if (tnl->SwapCount == 0) \
ctx->Driver.BeginVertices( ctx ); \
\
/* Save the swapped function's dispatch entry so it can be */ \
/* restored later. */ \
tnl->Swapped[tnl->SwapCount].location = & (((_glapi_proc *)ctx->Exec)[tmp_offset]); \
tnl->Swapped[tnl->SwapCount].function = (_glapi_proc)TAG(FUNC); \
tnl->SwapCount++; \
\
if ( 0 ) \
_mesa_debug(ctx, " swapping gl" #FUNC"...\n" ); \
\
/* Install the tnl function pointer. */ \
SET_ ## FUNC(ctx->Exec, tnl->Current->FUNC); \
}
| #define TAG | ( | x | ) | neutral_##x |
| void _mesa_init_exec_vtxfmt | ( | GLcontext * | ctx | ) |
| void _mesa_install_exec_vtxfmt | ( | GLcontext * | ctx, | |
| const GLvertexformat * | vfmt | |||
| ) |
| void _mesa_install_save_vtxfmt | ( | GLcontext * | ctx, | |
| const GLvertexformat * | vfmt | |||
| ) |
| void _mesa_restore_exec_vtxfmt | ( | GLcontext * | ctx | ) |
| static void install_vtxfmt | ( | struct _glapi_table * | tab, | |
| const GLvertexformat * | vfmt | |||
| ) | [static] |
Use the per-vertex functions found in <vfmt> to initialze the given API dispatch table.
1.5.4