Lines Matching defs:transfer
86 /* Copy from a full GPU texture to a transfer's staging one. */
89 struct pipe_transfer *transfer = (struct pipe_transfer *)stransfer;
91 struct pipe_resource *src = transfer->resource;
93 unsigned src_level = src->nr_samples > 1 ? 0 : transfer->level;
96 si_copy_region_with_blit(ctx, dst, 0, 0, 0, 0, 0, src, src_level, &transfer->box);
100 si_resource_copy_region(ctx, dst, 0, 0, 0, 0, src, src_level, &transfer->box);
103 /* Copy from a transfer's staging texture to a full GPU one. */
106 struct pipe_transfer *transfer = (struct pipe_transfer *)stransfer;
107 struct pipe_resource *dst = transfer->resource;
111 u_box_3d(0, 0, 0, transfer->box.width, transfer->box.height, transfer->box.depth, &sbox);
114 unsigned dst_level = dst->nr_samples > 1 ? 0 : transfer->level;
115 unsigned dst_sample = dst->nr_samples > 1 ? transfer->level : 0;
117 si_copy_region_with_blit(ctx, dst, dst_level, dst_sample, transfer->box.x, transfer->box.y,
118 transfer->box.z, src, 0, &sbox);
127 si_resource_copy_region(ctx, dst, transfer->level, transfer->box.x, transfer->box.y,
128 transfer->box.z, src, 0, &sbox);
1958 static void si_texture_transfer_unmap(struct pipe_context *ctx, struct pipe_transfer *transfer)
1961 struct si_transfer *stransfer = (struct si_transfer *)transfer;
1962 struct pipe_resource *texture = transfer->resource;
1974 if ((transfer->usage & PIPE_MAP_WRITE) && stransfer->staging)
2000 pipe_resource_reference(&transfer->resource, NULL);
2001 FREE(transfer);