Lines Matching defs:src

134 /* Copy state marked changed in @mask from @src to @dst.
141 struct nine_state *src,
142 struct nine_state *mask, /* aliases either src or dst */
160 dst->viewport = src->viewport;
162 dst->scissor = src->scissor;
165 nine_bind(&dst->vs, src->vs);
167 nine_bind(&dst->ps, src->ps);
184 &src->vs_const_f[r->bgn * 4],
189 &src->vs_const_i[r->bgn * 4],
194 &src->vs_const_b[r->bgn],
204 &src->ps_const_f[r->bgn * 4],
211 memcpy(dst->ps_const_i[i], src->ps_const_i[i], 4 * sizeof(int));
217 dst->ps_const_b[i] = src->ps_const_b[i];
231 DBG("State %d %s = %d\n", i * 32 + r, nine_d3drs_to_string(i * 32 + r), (int)src->rs_advertised[i * 32 + r]);
232 dst->rs_advertised[i * 32 + r] = src->rs_advertised[i * 32 + r];
243 src->clip.ucp[i], sizeof(src->clip.ucp[0]));
252 memcpy(&dst->samp_advertised[s], &src->samp_advertised[s], sizeof(dst->samp_advertised[s]));
259 dst->samp_advertised[s][i] = src->samp_advertised[s][i];
272 (struct NineBuffer9 *)src->idxbuf);
283 (struct NineBuffer9 *)src->stream[i]);
284 if (src->stream[i]) {
285 dst->vtxbuf[i].buffer_offset = src->vtxbuf[i].buffer_offset;
286 dst->vtxbuf[i].stride = src->vtxbuf[i].stride;
290 dst->stream_freq[i] = src->stream_freq[i];
304 NineStateBlock9_BindTexture(device, apply, &dst->texture[s], src->texture[s]);
314 dst->ff.material = src->ff.material;
320 dst->ff.tex_stage[s][i] = src->ff.tex_stage[s][i];
332 unsigned num_lights = MAX2(dst->ff.num_lights, src->ff.num_lights);
343 * "dst->ff.light[i] = src->ff.light[i];" later,
355 if (src->ff.num_lights < num_lights) {
356 src->ff.light = REALLOC(src->ff.light,
357 src->ff.num_lights * sizeof(D3DLIGHT9),
359 memset(&src->ff.light[src->ff.num_lights], 0, (num_lights - src->ff.num_lights) * sizeof(D3DLIGHT9));
360 for (i = src->ff.num_lights; i < num_lights; ++i)
361 src->ff.light[i].Type = (D3DLIGHTTYPE)NINED3DLIGHT_INVALID;
362 src->ff.num_lights = num_lights;
364 /* Note: mask is either src or dst, so at this point src, dst and mask
368 dst->ff.light[i] = src->ff.light[i];
370 memcpy(dst->ff.active_light, src->ff.active_light, sizeof(src->ff.active_light) );
371 dst->ff.num_lights_active = src->ff.num_lights_active;
381 *nine_state_access_transform(&src->ff, s, FALSE);
392 struct nine_state *src,
401 * dst->changed.group |= src->changed.group;
404 dst->viewport = src->viewport;
405 dst->scissor = src->scissor;
407 nine_bind(&dst->vs, src->vs);
408 nine_bind(&dst->ps, src->ps);
418 &src->vs_const_f[0], VS_CONST_F_SIZE(device));
420 memcpy(dst->vs_const_i, src->vs_const_i, VS_CONST_I_SIZE(device));
421 memcpy(dst->vs_const_b, src->vs_const_b, VS_CONST_B_SIZE(device));
428 &src->ps_const_f[0], (r->end - r->bgn) * 4 * sizeof(float));
430 memcpy(dst->ps_const_i, src->ps_const_i, sizeof(dst->ps_const_i));
431 memcpy(dst->ps_const_b, src->ps_const_b, sizeof(dst->ps_const_b));
435 memcpy(dst->rs_advertised, src->rs_advertised, sizeof(dst->rs_advertised));
437 * memcpy(dst->changed.rs, src->changed.rs, sizeof(dst->changed.rs));*/
441 memcpy(&dst->clip, &src->clip, sizeof(dst->clip));
443 * dst->changed.ucp = src->changed.ucp;*/
446 memcpy(dst->samp_advertised, src->samp_advertised, sizeof(dst->samp_advertised));
449 * src->changed.sampler, sizeof(dst->changed.sampler));*/
455 (struct NineBuffer9 *)src->idxbuf);
463 (struct NineBuffer9 *)src->stream[i]);
464 if (src->stream[i]) {
465 dst->vtxbuf[i].buffer_offset = src->vtxbuf[i].buffer_offset;
466 dst->vtxbuf[i].stride = src->vtxbuf[i].stride;
468 dst->stream_freq[i] = src->stream_freq[i];
479 NineStateBlock9_BindTexture(device, apply, &dst->texture[i], src->texture[i]);
488 dst->ff.material = src->ff.material;
490 memcpy(dst->ff.tex_stage, src->ff.tex_stage, sizeof(dst->ff.tex_stage));
493 * src->ff.changed.tex_stage, sizeof(dst->ff.changed.tex_stage));*/
497 if (dst->ff.num_lights < src->ff.num_lights) {
500 src->ff.num_lights * sizeof(D3DLIGHT9));
501 dst->ff.num_lights = src->ff.num_lights;
504 src->ff.light, src->ff.num_lights * sizeof(dst->ff.light[0]));
506 memcpy(dst->ff.active_light, src->ff.active_light, sizeof(src->ff.active_light) );
507 dst->ff.num_lights_active = src->ff.num_lights_active;
513 * Increase src size if required (to initialize missing transforms).
515 if (dst->ff.num_transforms != src->ff.num_transforms) {
516 int num_transforms = MAX2(src->ff.num_transforms, dst->ff.num_transforms);
517 nine_state_resize_transform(&src->ff, num_transforms);
521 src->ff.transform, dst->ff.num_transforms * sizeof(D3DMATRIX));
523 * src is then the D3DSBT_ALL stateblock which
528 * src->ff.changed.transform, sizeof(dst->ff.changed.transform));*/
540 struct nine_state *src = &device->state;
546 nine_state_copy_common_all(device, dst, src, dst, FALSE, NULL, MaxStreams);
548 nine_state_copy_common(device, dst, src, dst, FALSE, NULL);
551 nine_bind(&dst->vdecl, src->vdecl);
562 struct nine_state *src = &This->state;
569 nine_state_copy_common_all(device, dst, src, src, TRUE, pool, MaxStreams);
571 nine_state_copy_common(device, dst, src, src, TRUE, pool);
573 nine_context_apply_stateblock(device, src);
575 if ((src->changed.group & NINE_STATE_VDECL) && src->vdecl)
576 nine_bind(&dst->vdecl, src->vdecl);