st/nine: use get_pipe_acquire/release when possible
[mesa.git] / src / gallium / state_trackers / nine / volume9.h
index fae24310a50302cc3bcab9e9565d1fa312ad0536..5bddf8f4c1987a8e40496af600e6c6cd004d1f74 100644 (file)
@@ -41,21 +41,18 @@ struct NineVolume9
     unsigned level_actual;
 
     uint8_t *data; /* system memory backing */
+    uint8_t *data_conversion; /* for conversions */
 
     D3DVOLUME_DESC desc;
     struct pipe_resource info;
+    enum pipe_format format_conversion;
     unsigned stride;
+    unsigned stride_conversion;
     unsigned layer_stride;
+    unsigned layer_stride_conversion;
 
     struct pipe_transfer *transfer;
     unsigned lock_count;
-
-    struct pipe_box dirty_box[2];
-
-    struct pipe_context *pipe;
-
-    /* for [GS]etPrivateData/FreePrivateData */
-    struct util_hash_table *pdata;
 };
 static inline struct NineVolume9 *
 NineVolume9( void *data )
@@ -85,57 +82,35 @@ void
 NineVolume9_AddDirtyRegion( struct NineVolume9 *This,
                             const struct pipe_box *box );
 
-static inline void
-NineVolume9_ClearDirtyRegion( struct NineVolume9 *This )
-{
-    memset(&This->dirty_box, 0, sizeof(This->dirty_box));
-}
-
-HRESULT
-NineVolume9_CopyVolume( struct NineVolume9 *This,
-                        struct NineVolume9 *From,
-                        unsigned dstx, unsigned dsty, unsigned dstz,
-                        struct pipe_box *pSrcBox );
+void
+NineVolume9_CopyMemToDefault( struct NineVolume9 *This,
+                              struct NineVolume9 *From,
+                              unsigned dstx, unsigned dsty, unsigned dstz,
+                              struct pipe_box *pSrcBox );
 
 HRESULT
-NineVolume9_UploadSelf( struct NineVolume9 *This );
+NineVolume9_UploadSelf( struct NineVolume9 *This,
+                        const struct pipe_box *damaged );
 
 
 /*** Direct3D public ***/
 
-HRESULT WINAPI
-NineVolume9_SetPrivateData( struct NineVolume9 *This,
-                            REFGUID refguid,
-                            const void *pData,
-                            DWORD SizeOfData,
-                            DWORD Flags );
-
-HRESULT WINAPI
-NineVolume9_GetPrivateData( struct NineVolume9 *This,
-                            REFGUID refguid,
-                            void *pData,
-                            DWORD *pSizeOfData );
-
-HRESULT WINAPI
-NineVolume9_FreePrivateData( struct NineVolume9 *This,
-                             REFGUID refguid );
-
-HRESULT WINAPI
+HRESULT NINE_WINAPI
 NineVolume9_GetContainer( struct NineVolume9 *This,
                           REFIID riid,
                           void **ppContainer );
 
-HRESULT WINAPI
+HRESULT NINE_WINAPI
 NineVolume9_GetDesc( struct NineVolume9 *This,
                      D3DVOLUME_DESC *pDesc );
 
-HRESULT WINAPI
+HRESULT NINE_WINAPI
 NineVolume9_LockBox( struct NineVolume9 *This,
                      D3DLOCKED_BOX *pLockedVolume,
                      const D3DBOX *pBox,
                      DWORD Flags );
 
-HRESULT WINAPI
+HRESULT NINE_WINAPI
 NineVolume9_UnlockBox( struct NineVolume9 *This );
 
 #endif /* _NINE_VOLUME9_H_ */