• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2003 VMware, Inc.
3  * All Rights Reserved.
4  *
5  * Permission is hereby granted, free of charge, to any person obtaining a
6  * copy of this software and associated documentation files (the
7  * "Software"), to deal in the Software without restriction, including
8  * without limitation the rights to use, copy, modify, merge, publish,
9  * distribute, sublicense, and/or sell copies of the Software, and to
10  * permit persons to whom the Software is furnished to do so, subject to
11  * the following conditions:
12  *
13  * The above copyright notice and this permission notice (including the
14  * next paragraph) shall be included in all copies or substantial portions
15  * of the Software.
16  *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
20  * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR
21  * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
22  * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
23  * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
24  */
25 
26 #ifndef INTELTEX_INC
27 #define INTELTEX_INC
28 
29 #include "main/mtypes.h"
30 #include "main/formats.h"
31 #include "brw_context.h"
32 
33 void intelInitTextureFuncs(struct dd_function_table *functions);
34 
35 void intelInitTextureImageFuncs(struct dd_function_table *functions);
36 
37 void intelInitTextureSubImageFuncs(struct dd_function_table *functions);
38 
39 void intelInitTextureCopyImageFuncs(struct dd_function_table *functions);
40 
41 void intelInitCopyImageFuncs(struct dd_function_table *functions);
42 
43 void intelSetTexBuffer(__DRIcontext *pDRICtx,
44 		       GLint target, __DRIdrawable *pDraw);
45 void intelSetTexBuffer2(__DRIcontext *pDRICtx,
46 			GLint target, GLint format, __DRIdrawable *pDraw);
47 
48 struct intel_mipmap_tree *
49 intel_miptree_create_for_teximage(struct brw_context *brw,
50 				  struct intel_texture_object *intelObj,
51 				  struct intel_texture_image *intelImage,
52                                   uint32_t layout_flags);
53 
54 void intel_finalize_mipmap_tree(struct brw_context *brw, GLuint unit);
55 
56 bool
57 intel_texsubimage_tiled_memcpy(struct gl_context *ctx,
58                                GLuint dims,
59                                struct gl_texture_image *texImage,
60                                GLint xoffset, GLint yoffset, GLint zoffset,
61                                GLsizei width, GLsizei height, GLsizei depth,
62                                GLenum format, GLenum type,
63                                const GLvoid *pixels,
64                                const struct gl_pixelstore_attrib *packing,
65                                bool for_glTexImage);
66 
67 bool
68 intel_gettexsubimage_tiled_memcpy(struct gl_context *ctx,
69                                   struct gl_texture_image *texImage,
70                                   GLint xoffset, GLint yofset,
71                                   GLsizei width, GLsizei height,
72                                   GLenum format, GLenum type,
73                                   GLvoid *pixels,
74                                   const struct gl_pixelstore_attrib *packing);
75 
76 #endif
77