~mmach/netext73/mesa-haswell

« back to all changes in this revision

Viewing changes to src/mesa/main/pack.h

  • Committer: mmach
  • Date: 2022-09-22 19:56:13 UTC
  • Revision ID: netbit73@gmail.com-20220922195613-wtik9mmy20tmor0i
2022-09-22 21:17:09

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 * Mesa 3-D graphics library
3
 
 *
4
 
 * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
5
 
 * Copyright (C) 1999-2010  VMware, Inc.  All Rights Reserved.
6
 
 *
7
 
 * Permission is hereby granted, free of charge, to any person obtaining a
8
 
 * copy of this software and associated documentation files (the "Software"),
9
 
 * to deal in the Software without restriction, including without limitation
10
 
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11
 
 * and/or sell copies of the Software, and to permit persons to whom the
12
 
 * Software is furnished to do so, subject to the following conditions:
13
 
 *
14
 
 * The above copyright notice and this permission notice shall be included
15
 
 * in all copies or substantial portions 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 MERCHANTABILITY,
19
 
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
20
 
 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
21
 
 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
22
 
 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
23
 
 * OTHER DEALINGS IN THE SOFTWARE.
24
 
 */
25
 
 
26
 
 
27
 
#ifndef PACK_H
28
 
#define PACK_H
29
 
 
30
 
 
31
 
#include "glheader.h"
32
 
 
33
 
struct gl_context;
34
 
struct gl_pixelstore_attrib;
35
 
 
36
 
extern void
37
 
_mesa_unpack_polygon_stipple(const GLubyte *pattern, GLuint dest[32],
38
 
                             const struct gl_pixelstore_attrib *unpacking);
39
 
 
40
 
 
41
 
extern void
42
 
_mesa_pack_polygon_stipple(const GLuint pattern[32], GLubyte *dest,
43
 
                           const struct gl_pixelstore_attrib *packing);
44
 
 
45
 
 
46
 
extern void
47
 
_mesa_pack_bitmap(GLint width, GLint height, const GLubyte *source,
48
 
                  GLubyte *dest, const struct gl_pixelstore_attrib *packing);
49
 
 
50
 
 
51
 
extern void
52
 
_mesa_unpack_stencil_span(struct gl_context *ctx, GLuint n,
53
 
                          GLenum dstType, GLvoid *dest,
54
 
                          GLenum srcType, const GLvoid *source,
55
 
                          const struct gl_pixelstore_attrib *srcPacking,
56
 
                          GLbitfield transferOps);
57
 
 
58
 
extern void
59
 
_mesa_pack_stencil_span(struct gl_context *ctx, GLuint n,
60
 
                        GLenum dstType, GLvoid *dest, const GLubyte *source,
61
 
                        const struct gl_pixelstore_attrib *dstPacking);
62
 
 
63
 
 
64
 
extern void
65
 
_mesa_unpack_depth_span(struct gl_context *ctx, GLuint n,
66
 
                        GLenum dstType, GLvoid *dest, GLuint depthMax,
67
 
                        GLenum srcType, const GLvoid *source,
68
 
                        const struct gl_pixelstore_attrib *srcPacking);
69
 
 
70
 
extern void
71
 
_mesa_pack_depth_span(struct gl_context *ctx, GLuint n, GLvoid *dest,
72
 
                      GLenum dstType, const GLfloat *depthSpan,
73
 
                      const struct gl_pixelstore_attrib *dstPacking);
74
 
 
75
 
 
76
 
extern void
77
 
_mesa_pack_depth_stencil_span(struct gl_context *ctx,GLuint n,
78
 
                              GLenum dstType, GLuint *dest,
79
 
                              const GLfloat *depthVals,
80
 
                              const GLubyte *stencilVals,
81
 
                              const struct gl_pixelstore_attrib *dstPacking);
82
 
 
83
 
 
84
 
extern void *
85
 
_mesa_unpack_image(GLuint dimensions,
86
 
                   GLsizei width, GLsizei height, GLsizei depth,
87
 
                   GLenum format, GLenum type, const GLvoid *pixels,
88
 
                   const struct gl_pixelstore_attrib *unpack);
89
 
 
90
 
extern void
91
 
_mesa_pack_luminance_from_rgba_float(GLuint n, GLfloat rgba[][4],
92
 
                                     GLvoid *dstAddr, GLenum dst_format,
93
 
                                     GLbitfield transferOps);
94
 
 
95
 
extern void
96
 
_mesa_pack_luminance_from_rgba_integer(GLuint n, GLuint rgba[][4], bool rgba_is_signed,
97
 
                                       GLvoid *dstAddr, GLenum dst_format,
98
 
                                       GLenum dst_type);
99
 
 
100
 
extern GLfloat *
101
 
_mesa_unpack_color_index_to_rgba_float(struct gl_context *ctx, GLuint dims,
102
 
                                       const void *src, GLenum srcFormat, GLenum srcType,
103
 
                                       int srcWidth, int srcHeight, int srcDepth,
104
 
                                       const struct gl_pixelstore_attrib *srcPacking,
105
 
                                       GLbitfield transferOps);
106
 
 
107
 
extern GLubyte *
108
 
_mesa_unpack_color_index_to_rgba_ubyte(struct gl_context *ctx, GLuint dims,
109
 
                                       const void *src, GLenum srcFormat, GLenum srcType,
110
 
                                       int srcWidth, int srcHeight, int srcDepth,
111
 
                                       const struct gl_pixelstore_attrib *srcPacking,
112
 
                                       GLbitfield transferOps);
113
 
 
114
 
#endif