1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
| #ifndef GLES_TEXTURE_UTILS_H
| #define GLES_TEXTURE_UTILS_H
|
| #include <GLES3/gl31.h>
|
| namespace GLESTextureUtils {
|
| void computeTextureStartEnd(
| GLsizei width, GLsizei height, GLsizei depth,
| GLenum format, GLenum type,
| int unpackAlignment,
| int unpackRowLength,
| int unpackImageHeight,
| int unpackSkipPixels,
| int unpackSkipRows,
| int unpackSkipImages,
| int* start,
| int* end);
|
| int computeTotalImageSize(
| GLsizei width, GLsizei height, GLsizei depth,
| GLenum format, GLenum type,
| int unpackAlignment,
| int unpackRowLength,
| int unpackImageHeight,
| int unpackSkipPixels,
| int unpackSkipRows,
| int unpackSkipImages);
|
| int computeNeededBufferSize(
| GLsizei width, GLsizei height, GLsizei depth,
| GLenum format, GLenum type,
| int unpackAlignment,
| int unpackRowLength,
| int unpackImageHeight,
| int unpackSkipPixels,
| int unpackSkipRows,
| int unpackSkipImages);
|
| // Writes out |height| offsets for glReadPixels to read back
| // data in separate rows of pixels. Returns:
| // 1. |startOffset|: offset in bytes to apply at the beginning
| // 2. |packingPixelRowSize|: the buffer size in bytes that has the actual pixels per row.
| // 2. |packingTotalRowSize|: the length in bytes of each row including the padding from row length.
| void computePackingOffsets2D(
| GLsizei width, GLsizei height,
| GLenum format, GLenum type,
| int packAlignment,
| int packRowLength,
| int packSkipPixels,
| int packSkipRows,
| int* startOffset,
| int* packingPixelRowSize,
| int* packingTotalRowSize);
|
| } // namespace GLESTextureUtils
| #endif
|
|