Re: [Mesa-dev] [PATCH v3 1/6] gallium: add pipe_screen::resource_changed

2016-12-06 Thread Roland Scheidegger
Thanks for fixing docs.

Reviewed-by: Roland Scheidegger 

Am 06.12.2016 um 14:57 schrieb Philipp Zabel:
> Add a hook to tell drivers that an imported resource may have changed
> and they need to update their internal derived resources.
> 
> Signed-off-by: Philipp Zabel 
> ---
> Changes since v2:
>  - Added resource_changed paragraph to screen.rst
> ---
>  src/gallium/docs/source/screen.rst  | 14 ++
>  src/gallium/include/pipe/p_screen.h |  8 
>  2 files changed, 22 insertions(+)
> 
> diff --git a/src/gallium/docs/source/screen.rst 
> b/src/gallium/docs/source/screen.rst
> index 33f233a..209b97c 100644
> --- a/src/gallium/docs/source/screen.rst
> +++ b/src/gallium/docs/source/screen.rst
> @@ -700,6 +700,20 @@ which isn't multisampled.
>  
>  
>  
> +resource_changed
> +
> +
> +Mark a resource as changed so derived internal resources will be recreated
> +on next use.
> +
> +When importing external images that can't be directly used as texture sampler
> +source, internal copies may have to be created that the hardware can sample
> +from. When those resources are reimported, the image data may have changed, 
> and
> +the previously derived internal resources must be invalidated to avoid 
> sampling
> +from old copies.
> +
> +
> +
>  resource_destroy
>  
>  
> diff --git a/src/gallium/include/pipe/p_screen.h 
> b/src/gallium/include/pipe/p_screen.h
> index 255647e..0d3e4b6 100644
> --- a/src/gallium/include/pipe/p_screen.h
> +++ b/src/gallium/include/pipe/p_screen.h
> @@ -224,6 +224,14 @@ struct pipe_screen {
> struct winsys_handle *handle,
> unsigned usage);
>  
> +   /**
> +* Mark the resource as changed so derived internal resources will be
> +* recreated on next use.
> +*
> +* This is necessary when reimporting external images that can't be 
> directly
> +* used as texture sampler source, to avoid sampling from old copies.
> +*/
> +   void (*resource_changed)(struct pipe_screen *, struct pipe_resource *pt);
>  
> void (*resource_destroy)(struct pipe_screen *,
>   struct pipe_resource *pt);
> 

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


[Mesa-dev] [PATCH v3 1/6] gallium: add pipe_screen::resource_changed

2016-12-06 Thread Philipp Zabel
Add a hook to tell drivers that an imported resource may have changed
and they need to update their internal derived resources.

Signed-off-by: Philipp Zabel 
---
Changes since v2:
 - Added resource_changed paragraph to screen.rst
---
 src/gallium/docs/source/screen.rst  | 14 ++
 src/gallium/include/pipe/p_screen.h |  8 
 2 files changed, 22 insertions(+)

diff --git a/src/gallium/docs/source/screen.rst 
b/src/gallium/docs/source/screen.rst
index 33f233a..209b97c 100644
--- a/src/gallium/docs/source/screen.rst
+++ b/src/gallium/docs/source/screen.rst
@@ -700,6 +700,20 @@ which isn't multisampled.
 
 
 
+resource_changed
+
+
+Mark a resource as changed so derived internal resources will be recreated
+on next use.
+
+When importing external images that can't be directly used as texture sampler
+source, internal copies may have to be created that the hardware can sample
+from. When those resources are reimported, the image data may have changed, and
+the previously derived internal resources must be invalidated to avoid sampling
+from old copies.
+
+
+
 resource_destroy
 
 
diff --git a/src/gallium/include/pipe/p_screen.h 
b/src/gallium/include/pipe/p_screen.h
index 255647e..0d3e4b6 100644
--- a/src/gallium/include/pipe/p_screen.h
+++ b/src/gallium/include/pipe/p_screen.h
@@ -224,6 +224,14 @@ struct pipe_screen {
  struct winsys_handle *handle,
  unsigned usage);
 
+   /**
+* Mark the resource as changed so derived internal resources will be
+* recreated on next use.
+*
+* This is necessary when reimporting external images that can't be directly
+* used as texture sampler source, to avoid sampling from old copies.
+*/
+   void (*resource_changed)(struct pipe_screen *, struct pipe_resource *pt);
 
void (*resource_destroy)(struct pipe_screen *,
struct pipe_resource *pt);
-- 
2.10.2

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev