summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/nine/surface9.h
diff options
context:
space:
mode:
authorAxel Davy <[email protected]>2014-11-25 00:38:03 +0100
committerEmil Velikov <[email protected]>2014-11-26 20:09:10 +0000
commit6aeae7442d1d5a8b1ff77b6f50f4ac7333cd22b0 (patch)
treed39b6e4e69407b1b93d25a0b3aa79bd30ad0e7e1 /src/gallium/state_trackers/nine/surface9.h
parent133b2087c5ba9942527bc1b218a32205fb7a10a6 (diff)
st/nine: rework the way D3DPOOL_SYSTEMMEM is handled
This patch moves the data field from Resource9 to Surface9 and cleans D3DPOOL_SYSTEMMEM handling in Texture9. This fixes HL2 lost coast. It also removes in Texture9 some code written to support importing and exporting non D3DPOOL_SYSTEMMEM shared buffers. This code hadn't the design required to support the feature and wasn't used. Cc: "10.4" <[email protected]> Tested-by: David Heidelberg <[email protected]> Signed-off-by: Axel Davy <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers/nine/surface9.h')
-rw-r--r--src/gallium/state_trackers/nine/surface9.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/gallium/state_trackers/nine/surface9.h b/src/gallium/state_trackers/nine/surface9.h
index 4a9db25237c..32e17222f10 100644
--- a/src/gallium/state_trackers/nine/surface9.h
+++ b/src/gallium/state_trackers/nine/surface9.h
@@ -47,6 +47,8 @@ struct NineSurface9
unsigned layer;
D3DSURFACE_DESC desc;
+ uint8_t *data; /* system memory backing */
+ boolean manage_data;
unsigned stride; /* for system memory backing */
/* wine doesn't even use these, 2 will be enough */
@@ -62,6 +64,7 @@ HRESULT
NineSurface9_new( struct NineDevice9 *pDevice,
struct NineUnknown *pContainer,
struct pipe_resource *pResource,
+ void *user_buffer,
uint8_t TextureType, /* 0 if pContainer isn't BaseTexure9 */
unsigned Level,
unsigned Layer,
@@ -73,6 +76,7 @@ NineSurface9_ctor( struct NineSurface9 *This,
struct NineUnknownParams *pParams,
struct NineUnknown *pContainer,
struct pipe_resource *pResource,
+ void *user_buffer,
uint8_t TextureType,
unsigned Level,
unsigned Layer,
@@ -125,9 +129,6 @@ NineSurface9_ClearDirtyRects( struct NineSurface9 *This )
}
HRESULT
-NineSurface9_AllocateData( struct NineSurface9 *This );
-
-HRESULT
NineSurface9_UploadSelf( struct NineSurface9 *This );
HRESULT