diff options
author | Keith Whitwell <keithw@vmware.com> | 2009-11-26 11:17:06 +0000 |
---|---|---|
committer | Keith Whitwell <keithw@vmware.com> | 2009-11-26 11:23:37 +0000 |
commit | 8544c309d0a296449d11cf2cf52ca306662dc41d (patch) | |
tree | dccb3bed08351ef4e7e04231fe667b6be271f9a3 /src/gallium/state_trackers/xorg/xorg_renderer.h | |
parent | 91a5131e6b4b9d55c7123d3a8334826a443abcf6 (diff) |
st/xorg: split copy operation into prepare/copy/done phases
Any high-overhead one-off tasks are moved into the prepare hook.
Diffstat (limited to 'src/gallium/state_trackers/xorg/xorg_renderer.h')
-rw-r--r-- | src/gallium/state_trackers/xorg/xorg_renderer.h | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/src/gallium/state_trackers/xorg/xorg_renderer.h b/src/gallium/state_trackers/xorg/xorg_renderer.h index 249bb719b6..ba844bf06e 100644 --- a/src/gallium/state_trackers/xorg/xorg_renderer.h +++ b/src/gallium/state_trackers/xorg/xorg_renderer.h @@ -48,10 +48,6 @@ void renderer_set_constants(struct xorg_renderer *r, int shader_type, const float *buffer, int size); -void renderer_copy_pixmap(struct xorg_renderer *r, - struct exa_pixmap_priv *dst_priv, int dx, int dy, - struct exa_pixmap_priv *src_priv, int sx, int sy, - int width, int height); void renderer_draw_yuv(struct xorg_renderer *r, @@ -78,5 +74,20 @@ void renderer_texture(struct xorg_renderer *r, void renderer_draw_flush(struct xorg_renderer *r); +struct pipe_texture * +renderer_clone_texture(struct xorg_renderer *r, + struct pipe_texture *src); + +void renderer_copy_prepare(struct xorg_renderer *r, + struct pipe_surface *dst_surface, + struct pipe_texture *src_texture); + +void renderer_copy_pixmap(struct xorg_renderer *r, + int dx, int dy, + int sx, int sy, + int width, int height, + float src_width, + float src_height); + #endif |