Lines Matching refs:exec

37 static void clear_active_eval1( struct vbo_exec_context *exec, GLuint attr ) 
39 assert(attr < ARRAY_SIZE(exec->eval.map1));
40 exec->eval.map1[attr].map = NULL;
43 static void clear_active_eval2( struct vbo_exec_context *exec, GLuint attr )
45 assert(attr < ARRAY_SIZE(exec->eval.map2));
46 exec->eval.map2[attr].map = NULL;
49 static void set_active_eval1( struct vbo_exec_context *exec, GLuint attr, GLuint dim,
52 assert(attr < ARRAY_SIZE(exec->eval.map1));
53 if (!exec->eval.map1[attr].map) {
54 exec->eval.map1[attr].map = map;
55 exec->eval.map1[attr].sz = dim;
59 static void set_active_eval2( struct vbo_exec_context *exec, GLuint attr, GLuint dim,
62 assert(attr < ARRAY_SIZE(exec->eval.map2));
63 if (!exec->eval.map2[attr].map) {
64 exec->eval.map2[attr].map = map;
65 exec->eval.map2[attr].sz = dim;
69 void vbo_exec_eval_update( struct vbo_exec_context *exec )
71 struct gl_context *ctx = gl_context_from_vbo_exec(exec);
77 clear_active_eval1( exec, attr );
78 clear_active_eval2( exec, attr );
82 set_active_eval1( exec, VBO_ATTRIB_COLOR0, 4, &ctx->EvalMap.Map1Color4 );
85 set_active_eval2( exec, VBO_ATTRIB_COLOR0, 4, &ctx->EvalMap.Map2Color4 );
88 set_active_eval1( exec, VBO_ATTRIB_TEX0, 4, &ctx->EvalMap.Map1Texture4 );
90 set_active_eval1( exec, VBO_ATTRIB_TEX0, 3, &ctx->EvalMap.Map1Texture3 );
92 set_active_eval1( exec, VBO_ATTRIB_TEX0, 2, &ctx->EvalMap.Map1Texture2 );
94 set_active_eval1( exec, VBO_ATTRIB_TEX0, 1, &ctx->EvalMap.Map1Texture1 );
97 set_active_eval2( exec, VBO_ATTRIB_TEX0, 4, &ctx->EvalMap.Map2Texture4 );
99 set_active_eval2( exec, VBO_ATTRIB_TEX0, 3, &ctx->EvalMap.Map2Texture3 );
101 set_active_eval2( exec, VBO_ATTRIB_TEX0, 2, &ctx->EvalMap.Map2Texture2 );
103 set_active_eval2( exec, VBO_ATTRIB_TEX0, 1, &ctx->EvalMap.Map2Texture1 );
106 set_active_eval1( exec, VBO_ATTRIB_NORMAL, 3, &ctx->EvalMap.Map1Normal );
109 set_active_eval2( exec, VBO_ATTRIB_NORMAL, 3, &ctx->EvalMap.Map2Normal );
112 set_active_eval1( exec, VBO_ATTRIB_POS, 4, &ctx->EvalMap.Map1Vertex4 );
114 set_active_eval1( exec, VBO_ATTRIB_POS, 3, &ctx->EvalMap.Map1Vertex3 );
117 set_active_eval2( exec, VBO_ATTRIB_POS, 4, &ctx->EvalMap.Map2Vertex4 );
119 set_active_eval2( exec, VBO_ATTRIB_POS, 3, &ctx->EvalMap.Map2Vertex3 );
121 exec->eval.recalculate_maps = GL_FALSE;
126 void vbo_exec_do_EvalCoord1f(struct vbo_exec_context *exec, GLfloat u)
128 struct gl_context *ctx = gl_context_from_vbo_exec(exec);
132 struct gl_1d_map *map = exec->eval.map1[attr].map;
141 exec->eval.map1[attr].sz,
144 COPY_SZ_4V( exec->vtx.attrptr[attr],
145 exec->vtx.attr[attr].size,
152 if (exec->eval.map1[0].map) {
153 struct gl_1d_map *map = exec->eval.map1[0].map;
160 exec->eval.map1[0].sz,
163 if (exec->eval.map1[0].sz == 4)
172 void vbo_exec_do_EvalCoord2f( struct vbo_exec_context *exec,
175 struct gl_context *ctx = gl_context_from_vbo_exec(exec);
179 struct gl_2d_map *map = exec->eval.map2[attr].map;
191 exec->eval.map2[attr].sz,
194 COPY_SZ_4V( exec->vtx.attrptr[attr],
195 exec->vtx.attr[attr].size,
202 if (exec->eval.map2[0].map) {
203 struct gl_2d_map *map = exec->eval.map2[0].map;
215 exec->eval.map2[0].sz,
218 if (exec->eval.map2[0].sz == 4) {
233 COPY_SZ_4V( exec->vtx.attrptr[VBO_ATTRIB_NORMAL],
234 exec->vtx.attr[VBO_ATTRIB_NORMAL].size,
240 exec->eval.map2[0].sz,
244 if (exec->vtx.attr[VBO_ATTRIB_POS].size == 4)