summaryrefslogtreecommitdiff
path: root/src/gallium/include/state_tracker/sw_winsys.h
diff options
context:
space:
mode:
authorKeith Whitwell <keithw@vmware.com>2010-03-16 09:02:38 +0000
committerKeith Whitwell <keithw@vmware.com>2010-03-16 09:02:38 +0000
commit8cdfd1219a2d13d252a8691ee6dddb0d773bdc77 (patch)
tree087318efba7eb0fb5e1c1d8422eca611abdee3e7 /src/gallium/include/state_tracker/sw_winsys.h
parent6420aca08ba6910dce22ab9f813cc57d611b0aa8 (diff)
parente0ce4a4a0994211ead8e5a77cccdd2a084e8a288 (diff)
Merge commit 'origin/master' into gallium-sampler-view
This branch already seems to have the nv50_tex.c fix. Conflicts: src/gallium/drivers/nv50/nv50_tex.c
Diffstat (limited to 'src/gallium/include/state_tracker/sw_winsys.h')
-rw-r--r--src/gallium/include/state_tracker/sw_winsys.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/gallium/include/state_tracker/sw_winsys.h b/src/gallium/include/state_tracker/sw_winsys.h
index 0de98bbc1c..9d202e48bf 100644
--- a/src/gallium/include/state_tracker/sw_winsys.h
+++ b/src/gallium/include/state_tracker/sw_winsys.h
@@ -44,6 +44,7 @@ extern "C" {
#endif
+struct winsys_handle;
struct pipe_screen;
struct pipe_context;
@@ -68,6 +69,7 @@ struct sw_winsys
boolean
(*is_displaytarget_format_supported)( struct sw_winsys *ws,
+ unsigned tex_usage,
enum pipe_format format );
/**
@@ -83,12 +85,30 @@ struct sw_winsys
*/
struct sw_displaytarget *
(*displaytarget_create)( struct sw_winsys *ws,
+ unsigned tex_usage,
enum pipe_format format,
unsigned width, unsigned height,
unsigned alignment,
unsigned *stride );
/**
+ * Used to implement texture_from_handle.
+ */
+ struct sw_displaytarget *
+ (*displaytarget_from_handle)( struct sw_winsys *ws,
+ const struct pipe_texture *templat,
+ struct winsys_handle *whandle,
+ unsigned *stride );
+
+ /**
+ * Used to implement texture_get_handle.
+ */
+ boolean
+ (*displaytarget_get_handle)( struct sw_winsys *ws,
+ struct sw_displaytarget *dt,
+ struct winsys_handle *whandle );
+
+ /**
* \param flags bitmask of PIPE_BUFFER_USAGE_x flags
*/
void *