i915_winsys Struct Reference

Additional winsys interface for i915simple. More...

Collaboration diagram for i915_winsys:

Collaboration graph
[legend]

Data Fields

void(* destroy )(struct i915_winsys *sws)
struct i915_batchbuffer *(* batch_get )(struct i915_winsys *sws)
 Get the current batch buffer from the winsys.
void(* batch_reloc )(struct i915_winsys *sws, struct pipe_buffer *buf, unsigned access_flags, unsigned delta)
 Emit a relocation to a buffer.
void(* batch_flush )(struct i915_winsys *sws, struct pipe_fence_handle **fence)
 Flush the batch.

Detailed Description

Additional winsys interface for i915simple.

It is an over-simple batchbuffer mechanism. Will want to improve the performance of this, perhaps based on the cmdstream stuff. It would be pretty impossible to implement swz on top of this interface.

Will also need additions/changes to implement static/dynamic indirect state.

Definition at line 76 of file i915_winsys.h.


Field Documentation

void(* i915_winsys::destroy)(struct i915_winsys *sws)

struct i915_batchbuffer*(* i915_winsys::batch_get)(struct i915_winsys *sws) [read]

Get the current batch buffer from the winsys.

void(* i915_winsys::batch_reloc)(struct i915_winsys *sws, struct pipe_buffer *buf, unsigned access_flags, unsigned delta)

Emit a relocation to a buffer.

Used not only when the buffer addresses are not pinned, but also to ensure refered buffers will not be destroyed until the current batch buffer execution is finished.

The access flags is a combination of I915_BUFFER_ACCESS_WRITE and I915_BUFFER_ACCESS_READ macros.

void(* i915_winsys::batch_flush)(struct i915_winsys *sws, struct pipe_fence_handle **fence)

Flush the batch.


The documentation for this struct was generated from the following file:
Generated on Tue Sep 29 06:26:02 2009 for Gallium3D by  doxygen 1.5.4