Lines Matching defs:indirect

131                         const struct pipe_draw_indirect_info *indirect,
139 assert(indirect);
140 assert(!indirect->count_from_stream_output);
142 uint32_t draw_count = indirect->draw_count;
143 if (indirect->indirect_draw_count) {
146 indirect->indirect_draw_count,
147 indirect->indirect_draw_count_offset,
150 debug_printf("%s: failed to map indirect draw count buffer\n", __FUNCTION__);
164 unsigned map_size = (draw_count - 1) * indirect->stride + (num_params * sizeof(uint32_t));
166 indirect->buffer,
167 indirect->offset,
172 debug_printf("%s: failed to map indirect buffer\n", __FUNCTION__);
184 params += indirect->stride / 4;
191 /* This extracts the draw arguments from the indirect resource,
197 const struct pipe_draw_indirect_info *indirect)
204 assert(indirect);
205 assert(!indirect->count_from_stream_output);
209 uint32_t draw_count = indirect->draw_count;
211 if (indirect->indirect_draw_count) {
214 indirect->indirect_draw_count,
215 indirect->indirect_draw_count_offset,
218 debug_printf("%s: failed to map indirect draw count buffer\n", __FUNCTION__);
226 if (indirect->stride)
227 num_params = MIN2(indirect->stride / 4, num_params);
230 indirect->buffer,
231 indirect->offset,
232 (num_params * indirect->draw_count) * sizeof(uint32_t),
236 debug_printf("%s: failed to map indirect buffer\n", __FUNCTION__);
251 params += indirect->stride / 4;
259 const struct pipe_draw_indirect_info *indirect,
272 if (indirect || (draws[i].count && info->instance_count))
273 pctx->draw_vbo(pctx, &tmp_info, drawid, indirect, &draws[i], 1);