OSDN Git Service

swrast: Always use MapTextureImage for mapping textures for swrast.
[android-x86/external-mesa.git] / src / mesa / drivers / dri / intel / intel_tex.h
index 471aa2a..e038115 100644 (file)
 #define INTELTEX_INC
 
 #include "main/mtypes.h"
+#include "main/formats.h"
 #include "intel_context.h"
-#include "texmem.h"
 
+struct intel_renderbuffer;
 
 void intelInitTextureFuncs(struct dd_function_table *functions);
 
@@ -41,37 +42,48 @@ void intelInitTextureSubImageFuncs(struct dd_function_table *functions);
 
 void intelInitTextureCopyImageFuncs(struct dd_function_table *functions);
 
-const struct gl_texture_format *intelChooseTextureFormat(GLcontext * ctx,
-                                                         GLint internalFormat,
-                                                         GLenum format,
-                                                         GLenum type);
-
-void intelSetTexOffset(__DRIcontext *pDRICtx, GLint texname,
-                      unsigned long long offset, GLint depth, GLuint pitch);
 void intelSetTexBuffer(__DRIcontext *pDRICtx,
                       GLint target, __DRIdrawable *pDraw);
 void intelSetTexBuffer2(__DRIcontext *pDRICtx,
                        GLint target, GLint format, __DRIdrawable *pDraw);
 
+struct intel_mipmap_tree *
+intel_miptree_create_for_teximage(struct intel_context *intel,
+                                 struct intel_texture_object *intelObj,
+                                 struct intel_texture_image *intelImage,
+                                 bool expect_accelerated_upload);
+
 GLuint intel_finalize_mipmap_tree(struct intel_context *intel, GLuint unit);
 
 void intel_tex_map_level_images(struct intel_context *intel,
                                struct intel_texture_object *intelObj,
-                               int level);
+                               int level,
+                               GLbitfield mode);
 
 void intel_tex_unmap_level_images(struct intel_context *intel,
                                  struct intel_texture_object *intelObj,
                                  int level);
 
-void intel_tex_map_images(struct intel_context *intel,
-                          struct intel_texture_object *intelObj);
-
-void intel_tex_unmap_images(struct intel_context *intel,
-                            struct intel_texture_object *intelObj);
-
-int intel_compressed_num_bytes(GLuint mesaFormat);
-
-void intel_generate_mipmap(GLcontext *ctx, GLenum target,
-                          struct gl_texture_object *texObj);
+bool
+intel_tex_image_s8z24_create_renderbuffers(struct intel_context *intel,
+                                          struct intel_texture_image *image);
+
+bool intel_copy_texsubimage(struct intel_context *intel,
+                            struct intel_texture_image *intelImage,
+                            GLint dstx, GLint dsty,
+                            struct intel_renderbuffer *irb,
+                            GLint x, GLint y,
+                            GLsizei width, GLsizei height);
+
+bool
+intel_texsubimage_tiled_memcpy(struct gl_context *ctx,
+                               GLuint dims,
+                               struct gl_texture_image *texImage,
+                               GLint xoffset, GLint yoffset, GLint zoffset,
+                               GLsizei width, GLsizei height, GLsizei depth,
+                               GLenum format, GLenum type,
+                               const GLvoid *pixels,
+                               const struct gl_pixelstore_attrib *packing,
+                               bool for_glTexImage);
 
 #endif