Lines Matching defs:dst

134 /* Copy state marked changed in @mask from @src to @dst.
135 * If @apply is false, updating dst->changed can be omitted.
140 struct nine_state *dst,
142 struct nine_state *mask, /* aliases either src or dst */
156 * dst->changed.group |= mask->changed.group;
160 dst->viewport = src->viewport;
162 dst->scissor = src->scissor;
165 nine_bind(&dst->vs, src->vs);
167 nine_bind(&dst->ps, src->ps);
183 memcpy(&dst->vs_const_f[r->bgn * 4],
188 memcpy(&dst->vs_const_i[r->bgn * 4],
193 memcpy(&dst->vs_const_b[r->bgn],
203 memcpy(&dst->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];
227 * dst->changed.rs[i] |= m; */
232 dst->rs_advertised[i * 32 + r] = src->rs_advertised[i * 32 + r];
242 memcpy(dst->clip.ucp[i],
245 * dst->changed.ucp |= mask->changed.ucp;*/
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];
263 * dst->changed.sampler[s] |= mask->changed.sampler[s];*/
271 (struct NineBuffer9 **)&dst->idxbuf,
282 (struct NineBuffer9 **)&dst->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];
294 * dst->changed.vtxbuf |= mask->changed.vtxbuf;
295 * dst->changed.stream_freq |= mask->changed.stream_freq;
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];
324 * dst->ff.changed.tex_stage[s][0] |=
326 * dst->ff.changed.tex_stage[s][1] |=
332 unsigned num_lights = MAX2(dst->ff.num_lights, src->ff.num_lights);
337 if (dst->ff.num_lights < num_lights) {
338 dst->ff.light = REALLOC(dst->ff.light,
339 dst->ff.num_lights * sizeof(D3DLIGHT9),
341 memset(&dst->ff.light[dst->ff.num_lights], 0, (num_lights - dst->ff.num_lights) * sizeof(D3DLIGHT9));
342 /* if mask == dst, a Type of 0 will trigger
343 * "dst->ff.light[i] = src->ff.light[i];" later,
345 if (mask != dst) {
346 for (i = dst->ff.num_lights; i < num_lights; ++i)
347 dst->ff.light[i].Type = (D3DLIGHTTYPE)NINED3DLIGHT_INVALID;
349 dst->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;
380 *nine_state_access_transform(&dst->ff, s, TRUE) =
384 * dst->ff.changed.transform[i] |= mask->ff.changed.transform[i];*/
391 struct nine_state *dst,
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);
417 memcpy(&dst->vs_const_f[0],
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));
427 memcpy(&dst->ps_const_f[0],
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));
448 * memcpy(dst->changed.sampler,
449 * src->changed.sampler, sizeof(dst->changed.sampler));*/
454 (struct NineBuffer9 **)&dst->idxbuf,
459 for (i = 0; i < ARRAY_SIZE(dst->stream); ++i) {
462 (struct NineBuffer9 **)&dst->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];
471 * dst->changed.vtxbuf = (1ULL << MaxStreams) - 1;
472 * dst->changed.stream_freq = (1ULL << MaxStreams) - 1;
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));
492 * memcpy(dst->ff.changed.tex_stage,
493 * src->ff.changed.tex_stage, sizeof(dst->ff.changed.tex_stage));*/
497 if (dst->ff.num_lights < src->ff.num_lights) {
498 dst->ff.light = REALLOC(dst->ff.light,
499 dst->ff.num_lights * sizeof(D3DLIGHT9),
501 dst->ff.num_lights = src->ff.num_lights;
503 memcpy(dst->ff.light,
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;
512 /* Increase dst size if required (to copy the new states).
515 if (dst->ff.num_transforms != src->ff.num_transforms) {
516 int num_transforms = MAX2(src->ff.num_transforms, dst->ff.num_transforms);
518 nine_state_resize_transform(&dst->ff, num_transforms);
520 memcpy(dst->ff.transform,
521 src->ff.transform, dst->ff.num_transforms * sizeof(D3DMATRIX));
527 * memcpy(dst->ff.changed.transform,
528 * src->ff.changed.transform, sizeof(dst->ff.changed.transform));*/
539 struct nine_state *dst = &This->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);
550 if (dst->changed.group & NINE_STATE_VDECL)
551 nine_bind(&dst->vdecl, src->vdecl);
561 struct nine_state *dst = &device->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);
576 nine_bind(&dst->vdecl, src->vdecl);