projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge remote branch 'origin/master' into gallium_draw_llvm
[mesa.git]
/
src
/
gallium
/
drivers
/
softpipe
/
sp_texture.h
diff --git
a/src/gallium/drivers/softpipe/sp_texture.h
b/src/gallium/drivers/softpipe/sp_texture.h
index 2ef64e1e7c31bec2a582a30379023cf1f37047a8..c0e6ba8a869ff34c95474934dadc602e4b1dc63e 100644
(file)
--- a/
src/gallium/drivers/softpipe/sp_texture.h
+++ b/
src/gallium/drivers/softpipe/sp_texture.h
@@
-33,6
+33,10
@@
#include "pipe/p_video_state.h"
#include "pipe/p_video_state.h"
+#define SP_MAX_TEXTURE_2D_LEVELS 13 /* 4K x 4K */
+#define SP_MAX_TEXTURE_3D_LEVELS 9 /* 512 x 512 x 512 */
+
+
struct pipe_context;
struct pipe_screen;
struct softpipe_context;
struct pipe_context;
struct pipe_screen;
struct softpipe_context;
@@
-42,12
+46,19
@@
struct softpipe_texture
{
struct pipe_texture base;
{
struct pipe_texture base;
- unsigned long level_offset[
PIPE_MAX_TEXTURE
_LEVELS];
- unsigned stride[
PIPE_MAX_TEXTURE
_LEVELS];
+ unsigned long level_offset[
SP_MAX_TEXTURE_2D
_LEVELS];
+ unsigned stride[
SP_MAX_TEXTURE_2D
_LEVELS];
- /* The data is held here:
+ /**
+ * Display target, for textures with the PIPE_TEXTURE_USAGE_DISPLAY_TARGET
+ * usage.
*/
*/
- struct pipe_buffer *buffer;
+ struct sw_displaytarget *dt;
+
+ /**
+ * Malloc'ed data for regular textures, or a mapping to dt above.
+ */
+ void *data;
/* True if texture images are power-of-two in all dimensions:
*/
/* True if texture images are power-of-two in all dimensions:
*/
@@
-96,5
+107,8
@@
softpipe_video_surface(struct pipe_video_surface *pvs)
extern void
softpipe_init_screen_texture_funcs(struct pipe_screen *screen);
extern void
softpipe_init_screen_texture_funcs(struct pipe_screen *screen);
+void
+softpipe_init_texture_funcs(struct pipe_context *pipe);
+
#endif /* SP_TEXTURE */
#endif /* SP_TEXTURE */