summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/nine/device9.h
diff options
context:
space:
mode:
authorAxel Davy <[email protected]>2016-02-06 13:39:58 +0100
committerAxel Davy <[email protected]>2016-02-12 23:26:36 +0100
commitcc0114f30b587a10766ec212afb3ad356099ef23 (patch)
tree0a1c7bb8e508d73a04977e85af25c2a6eaa9cd68 /src/gallium/state_trackers/nine/device9.h
parent77d6c11f8fa87ba1070028cb036807dc8a115633 (diff)
st/nine: Implement Managed vertex/index buffers
We were implementing those the same way than the default pool, which is sub-optimal. The buffer is supposed to return pointer to a ram copy when user locks, and automatically update the vram copy when needed. v2: Rename NineBuffer9_Validate to NineBuffer9_Upload Rename validate_buffers to update_managed_buffers Initialize NineBuffer9 managed fields after the resource is allocated. In case of allocation failure, when the dtor is executed, This->base.pool is then rightfully set. Signed-off-by: Axel Davy <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers/nine/device9.h')
-rw-r--r--src/gallium/state_trackers/nine/device9.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/nine/device9.h b/src/gallium/state_trackers/nine/device9.h
index f46908368b9..73a43cf08ff 100644
--- a/src/gallium/state_trackers/nine/device9.h
+++ b/src/gallium/state_trackers/nine/device9.h
@@ -68,7 +68,9 @@ struct NineDevice9
struct nine_state *update; /* state to update (&state / &record->state) */
struct nine_state state; /* device state */
+ struct list_head update_buffers;
struct list_head update_textures;
+ struct list_head managed_buffers;
struct list_head managed_textures;
boolean is_recording;