mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-01 05:20:09 +01:00
st/nine: Decompose nine_context_set_stream_source
Part of the refactor to move all gallium calls to nine_state.c, and have all internal states required for those calls in nine_context. Signed-off-by: Axel Davy <axel.davy@ens.fr>
This commit is contained in:
parent
7ebdbb573b
commit
08b717dfd3
1 changed files with 25 additions and 9 deletions
|
|
@ -1190,6 +1190,23 @@ nine_context_set_sampler_state(struct NineDevice9 *device,
|
|||
context->changed.sampler[Sampler] |= 1 << Type;
|
||||
}
|
||||
|
||||
static void
|
||||
nine_context_set_stream_source_apply(struct NineDevice9 *device,
|
||||
UINT StreamNumber,
|
||||
struct pipe_resource *res,
|
||||
UINT OffsetInBytes,
|
||||
UINT Stride)
|
||||
{
|
||||
struct nine_context *context = &device->context;
|
||||
const unsigned i = StreamNumber;
|
||||
|
||||
context->vtxbuf[i].stride = Stride;
|
||||
context->vtxbuf[i].buffer_offset = OffsetInBytes;
|
||||
pipe_resource_reference(&context->vtxbuf[i].buffer, res);
|
||||
|
||||
context->changed.vtxbuf |= 1 << StreamNumber;
|
||||
}
|
||||
|
||||
void
|
||||
nine_context_set_stream_source(struct NineDevice9 *device,
|
||||
UINT StreamNumber,
|
||||
|
|
@ -1197,17 +1214,16 @@ nine_context_set_stream_source(struct NineDevice9 *device,
|
|||
UINT OffsetInBytes,
|
||||
UINT Stride)
|
||||
{
|
||||
struct nine_context *context = &device->context;
|
||||
const unsigned i = StreamNumber;
|
||||
struct pipe_resource *res = NULL;
|
||||
|
||||
context->changed.vtxbuf |= 1 << StreamNumber;
|
||||
if (pVBuf9)
|
||||
res = NineVertexBuffer9_GetResource(pVBuf9);
|
||||
/* in the future when there is internal offset, add it
|
||||
* to OffsetInBytes */
|
||||
|
||||
if (pVBuf9) {
|
||||
context->vtxbuf[i].stride = Stride;
|
||||
context->vtxbuf[i].buffer_offset = OffsetInBytes;
|
||||
}
|
||||
pipe_resource_reference(&context->vtxbuf[i].buffer,
|
||||
pVBuf9 ? NineVertexBuffer9_GetResource(pVBuf9) : NULL);
|
||||
nine_context_set_stream_source_apply(device, StreamNumber,
|
||||
res, OffsetInBytes,
|
||||
Stride);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue