1 #ifndef GLES_TEXTURE_UTILS_H
2 #define GLES_TEXTURE_UTILS_H
3 
4 #include <GLES3/gl31.h>
5 
6 namespace GLESTextureUtils {
7 
8 void computeTextureStartEnd(
9         GLsizei width, GLsizei height, GLsizei depth,
10         GLenum format, GLenum type,
11         int unpackAlignment,
12         int unpackRowLength,
13         int unpackImageHeight,
14         int unpackSkipPixels,
15         int unpackSkipRows,
16         int unpackSkipImages,
17         int* start,
18         int* end);
19 
20 int computeTotalImageSize(
21         GLsizei width, GLsizei height, GLsizei depth,
22         GLenum format, GLenum type,
23         int unpackAlignment,
24         int unpackRowLength,
25         int unpackImageHeight,
26         int unpackSkipPixels,
27         int unpackSkipRows,
28         int unpackSkipImages);
29 
30 int computeNeededBufferSize(
31         GLsizei width, GLsizei height, GLsizei depth,
32         GLenum format, GLenum type,
33         int unpackAlignment,
34         int unpackRowLength,
35         int unpackImageHeight,
36         int unpackSkipPixels,
37         int unpackSkipRows,
38         int unpackSkipImages);
39 
40 
41 } // namespace GLESTextureUtils
42 #endif
43