#include "formats.h"
-/** Pack a GLubyte rgba[4] color to dest address */
-typedef void (*mesa_pack_ubyte_rgba_func)(const GLubyte src[4], void *dst);
+/** Pack a uint8_t rgba[4] color to dest address */
+typedef void (*mesa_pack_ubyte_rgba_func)(const uint8_t src[4], void *dst);
-/** Pack a GLfloat rgba[4] color to dest address */
-typedef void (*mesa_pack_float_rgba_func)(const GLfloat src[4], void *dst);
+/** Pack a float rgba[4] color to dest address */
+typedef void (*mesa_pack_float_rgba_func)(const float src[4], void *dst);
-/** Pack a GLfloat Z value to dest address */
-typedef void (*mesa_pack_float_z_func)(const GLfloat *src, void *dst);
+/** Pack a float Z value to dest address */
+typedef void (*mesa_pack_float_z_func)(const float *src, void *dst);
-/** Pack a GLuint Z value to dest address */
-typedef void (*mesa_pack_uint_z_func)(const GLuint *src, void *dst);
+/** Pack a uint32_t Z value to dest address */
+typedef void (*mesa_pack_uint_z_func)(const uint32_t *src, void *dst);
-/** Pack a GLubyte stencil value to dest address */
-typedef void (*mesa_pack_ubyte_stencil_func)(const GLubyte *src, void *dst);
+/** Pack a uint8_t stencil value to dest address */
+typedef void (*mesa_pack_ubyte_stencil_func)(const uint8_t *src, void *dst);
extern void
-_mesa_pack_float_rgba_row(mesa_format format, GLuint n,
- const GLfloat src[][4], void *dst);
+_mesa_pack_float_rgba_row(mesa_format format, uint32_t n,
+ const float src[][4], void *dst);
extern void
-_mesa_pack_ubyte_rgba_row(mesa_format format, GLuint n,
- const GLubyte src[][4], void *dst);
+_mesa_pack_ubyte_rgba_row(mesa_format format, uint32_t n,
+ const uint8_t src[][4], void *dst);
extern void
-_mesa_pack_uint_rgba_row(mesa_format format, GLuint n,
- const GLuint src[][4], void *dst);
+_mesa_pack_uint_rgba_row(mesa_format format, uint32_t n,
+ const uint32_t src[][4], void *dst);
extern void
-_mesa_pack_ubyte_rgba_rect(mesa_format format, GLuint width, GLuint height,
- const GLubyte *src, GLint srcRowStride,
- void *dst, GLint dstRowStride);
+_mesa_pack_ubyte_rgba_rect(mesa_format format, uint32_t width, uint32_t height,
+ const uint8_t *src, int32_t srcRowStride,
+ void *dst, int32_t dstRowStride);
extern void
-_mesa_pack_float_z_row(mesa_format format, GLuint n,
- const GLfloat *src, void *dst);
+_mesa_pack_float_z_row(mesa_format format, uint32_t n,
+ const float *src, void *dst);
extern void
-_mesa_pack_uint_z_row(mesa_format format, GLuint n,
- const GLuint *src, void *dst);
+_mesa_pack_uint_z_row(mesa_format format, uint32_t n,
+ const uint32_t *src, void *dst);
extern void
-_mesa_pack_ubyte_stencil_row(mesa_format format, GLuint n,
- const GLubyte *src, void *dst);
+_mesa_pack_ubyte_stencil_row(mesa_format format, uint32_t n,
+ const uint8_t *src, void *dst);
extern void
-_mesa_pack_uint_24_8_depth_stencil_row(mesa_format format, GLuint n,
- const GLuint *src, void *dst);
+_mesa_pack_uint_24_8_depth_stencil_row(mesa_format format, uint32_t n,
+ const uint32_t *src, void *dst);
extern void
-_mesa_pack_colormask(mesa_format format, const GLubyte colorMask[4], void *dst);
+_mesa_pack_colormask(mesa_format format, const uint8_t colorMask[4], void *dst);
#endif
#include <stdint.h>
-#include "config.h"
#include "format_pack.h"
#include "format_utils.h"
#include "macros.h"
%endif
static inline void
-pack_ubyte_${f.short_name()}(const GLubyte src[4], void *dst)
+pack_ubyte_${f.short_name()}(const uint8_t src[4], void *dst)
{
%for (i, c) in enumerate(f.channels):
<% i = f.swizzle.inverse()[i] %>
%endfor
static inline void
-pack_ubyte_r9g9b9e5_float(const GLubyte src[4], void *dst)
+pack_ubyte_r9g9b9e5_float(const uint8_t src[4], void *dst)
{
- GLuint *d = (GLuint *) dst;
- GLfloat rgb[3];
- rgb[0] = _mesa_unorm_to_float(src[RCOMP], 8);
- rgb[1] = _mesa_unorm_to_float(src[GCOMP], 8);
- rgb[2] = _mesa_unorm_to_float(src[BCOMP], 8);
+ uint32_t *d = (uint32_t *) dst;
+ float rgb[3];
+ rgb[0] = _mesa_unorm_to_float(src[0], 8);
+ rgb[1] = _mesa_unorm_to_float(src[1], 8);
+ rgb[2] = _mesa_unorm_to_float(src[2], 8);
*d = float3_to_rgb9e5(rgb);
}
static inline void
-pack_ubyte_r11g11b10_float(const GLubyte src[4], void *dst)
+pack_ubyte_r11g11b10_float(const uint8_t src[4], void *dst)
{
- GLuint *d = (GLuint *) dst;
- GLfloat rgb[3];
- rgb[0] = _mesa_unorm_to_float(src[RCOMP], 8);
- rgb[1] = _mesa_unorm_to_float(src[GCOMP], 8);
- rgb[2] = _mesa_unorm_to_float(src[BCOMP], 8);
+ uint32_t *d = (uint32_t *) dst;
+ float rgb[3];
+ rgb[0] = _mesa_unorm_to_float(src[0], 8);
+ rgb[1] = _mesa_unorm_to_float(src[1], 8);
+ rgb[2] = _mesa_unorm_to_float(src[2], 8);
*d = float3_to_r11g11b10f(rgb);
}
%endif
static inline void
-pack_uint_${f.short_name()}(const GLuint src[4], void *dst)
+pack_uint_${f.short_name()}(const uint32_t src[4], void *dst)
{
%for (i, c) in enumerate(f.channels):
<% i = f.swizzle.inverse()[i] %>
%endif
static inline void
-pack_float_${f.short_name()}(const GLfloat src[4], void *dst)
+pack_float_${f.short_name()}(const float src[4], void *dst)
{
%for (i, c) in enumerate(f.channels):
<% i = f.swizzle.inverse()[i] %>
%endfor
static inline void
-pack_float_r9g9b9e5_float(const GLfloat src[4], void *dst)
+pack_float_r9g9b9e5_float(const float src[4], void *dst)
{
- GLuint *d = (GLuint *) dst;
+ uint32_t *d = (uint32_t *) dst;
*d = float3_to_rgb9e5(src);
}
static inline void
-pack_float_r11g11b10_float(const GLfloat src[4], void *dst)
+pack_float_r11g11b10_float(const float src[4], void *dst)
{
- GLuint *d = (GLuint *) dst;
+ uint32_t *d = (uint32_t *) dst;
*d = float3_to_r11g11b10f(src);
}
/**
- * Return a function that can pack a GLubyte rgba[4] color.
+ * Return a function that can pack a uint8_t rgba[4] color.
*/
mesa_pack_ubyte_rgba_func
_mesa_get_pack_ubyte_rgba_function(mesa_format format)
}
/**
- * Return a function that can pack a GLfloat rgba[4] color.
+ * Return a function that can pack a float rgba[4] color.
*/
mesa_pack_float_rgba_func
_mesa_get_pack_float_rgba_function(mesa_format format)
}
/**
- * Pack a row of GLubyte rgba[4] values to the destination.
+ * Pack a row of uint8_t rgba[4] values to the destination.
*/
void
-_mesa_pack_ubyte_rgba_row(mesa_format format, GLuint n,
- const GLubyte src[][4], void *dst)
+_mesa_pack_ubyte_rgba_row(mesa_format format, uint32_t n,
+ const uint8_t src[][4], void *dst)
{
- GLuint i;
- GLubyte *d = dst;
+ uint32_t i;
+ uint8_t *d = dst;
switch (format) {
%for f in rgb_formats:
}
/**
- * Pack a row of GLuint rgba[4] values to the destination.
+ * Pack a row of uint32_t rgba[4] values to the destination.
*/
void
-_mesa_pack_uint_rgba_row(mesa_format format, GLuint n,
- const GLuint src[][4], void *dst)
+_mesa_pack_uint_rgba_row(mesa_format format, uint32_t n,
+ const uint32_t src[][4], void *dst)
{
- GLuint i;
- GLubyte *d = dst;
+ uint32_t i;
+ uint8_t *d = dst;
switch (format) {
%for f in rgb_formats:
}
/**
- * Pack a row of GLfloat rgba[4] values to the destination.
+ * Pack a row of float rgba[4] values to the destination.
*/
void
-_mesa_pack_float_rgba_row(mesa_format format, GLuint n,
- const GLfloat src[][4], void *dst)
+_mesa_pack_float_rgba_row(mesa_format format, uint32_t n,
+ const float src[][4], void *dst)
{
- GLuint i;
- GLubyte *d = dst;
+ uint32_t i;
+ uint8_t *d = dst;
switch (format) {
%for f in rgb_formats:
* \param dstRowStride destination image row stride in bytes
*/
void
-_mesa_pack_ubyte_rgba_rect(mesa_format format, GLuint width, GLuint height,
- const GLubyte *src, GLint srcRowStride,
- void *dst, GLint dstRowStride)
+_mesa_pack_ubyte_rgba_rect(mesa_format format, uint32_t width, uint32_t height,
+ const uint8_t *src, int32_t srcRowStride,
+ void *dst, int32_t dstRowStride)
{
- GLubyte *dstUB = dst;
- GLuint i;
+ uint8_t *dstUB = dst;
+ uint32_t i;
- if (srcRowStride == width * 4 * sizeof(GLubyte) &&
+ if (srcRowStride == width * 4 * sizeof(uint8_t) &&
dstRowStride == _mesa_format_row_stride(format, width)) {
/* do whole image at once */
_mesa_pack_ubyte_rgba_row(format, width * height,
- (const GLubyte (*)[4]) src, dst);
+ (const uint8_t (*)[4]) src, dst);
}
else {
/* row by row */
for (i = 0; i < height; i++) {
_mesa_pack_ubyte_rgba_row(format, width,
- (const GLubyte (*)[4]) src, dstUB);
+ (const uint8_t (*)[4]) src, dstUB);
src += srcRowStride;
dstUB += dstRowStride;
}
**/
static void
-pack_float_S8_UINT_Z24_UNORM(const GLfloat *src, void *dst)
+pack_float_S8_UINT_Z24_UNORM(const float *src, void *dst)
{
/* don't disturb the stencil values */
- GLuint *d = ((GLuint *) dst);
- const GLdouble scale = (GLdouble) 0xffffff;
- GLuint s = *d & 0xff;
- GLuint z = (GLuint) (*src * scale);
+ uint32_t *d = ((uint32_t *) dst);
+ const double scale = (double) 0xffffff;
+ uint32_t s = *d & 0xff;
+ uint32_t z = (uint32_t) (*src * scale);
assert(z <= 0xffffff);
*d = (z << 8) | s;
}
static void
-pack_float_Z24_UNORM_S8_UINT(const GLfloat *src, void *dst)
+pack_float_Z24_UNORM_S8_UINT(const float *src, void *dst)
{
/* don't disturb the stencil values */
- GLuint *d = ((GLuint *) dst);
- const GLdouble scale = (GLdouble) 0xffffff;
- GLuint s = *d & 0xff000000;
- GLuint z = (GLuint) (*src * scale);
+ uint32_t *d = ((uint32_t *) dst);
+ const double scale = (double) 0xffffff;
+ uint32_t s = *d & 0xff000000;
+ uint32_t z = (uint32_t) (*src * scale);
assert(z <= 0xffffff);
*d = s | z;
}
static void
-pack_float_Z_UNORM16(const GLfloat *src, void *dst)
+pack_float_Z_UNORM16(const float *src, void *dst)
{
- GLushort *d = ((GLushort *) dst);
- const GLfloat scale = (GLfloat) 0xffff;
- *d = (GLushort) (*src * scale);
+ uint16_t *d = ((uint16_t *) dst);
+ const float scale = (float) 0xffff;
+ *d = (uint16_t) (*src * scale);
}
static void
-pack_float_Z_UNORM32(const GLfloat *src, void *dst)
+pack_float_Z_UNORM32(const float *src, void *dst)
{
- GLuint *d = ((GLuint *) dst);
- const GLdouble scale = (GLdouble) 0xffffffff;
- *d = (GLuint) (*src * scale);
+ uint32_t *d = ((uint32_t *) dst);
+ const double scale = (double) 0xffffffff;
+ *d = (uint32_t) (*src * scale);
}
/**
**/
static void
-pack_float_Z_FLOAT32(const GLfloat *src, void *dst)
+pack_float_Z_FLOAT32(const float *src, void *dst)
{
- GLfloat *d = (GLfloat *) dst;
+ float *d = (float *) dst;
*d = *src;
}
**/
static void
-pack_uint_S8_UINT_Z24_UNORM(const GLuint *src, void *dst)
+pack_uint_S8_UINT_Z24_UNORM(const uint32_t *src, void *dst)
{
/* don't disturb the stencil values */
- GLuint *d = ((GLuint *) dst);
- GLuint s = *d & 0xff;
- GLuint z = *src & 0xffffff00;
+ uint32_t *d = ((uint32_t *) dst);
+ uint32_t s = *d & 0xff;
+ uint32_t z = *src & 0xffffff00;
*d = z | s;
}
static void
-pack_uint_Z24_UNORM_S8_UINT(const GLuint *src, void *dst)
+pack_uint_Z24_UNORM_S8_UINT(const uint32_t *src, void *dst)
{
/* don't disturb the stencil values */
- GLuint *d = ((GLuint *) dst);
- GLuint s = *d & 0xff000000;
- GLuint z = *src >> 8;
+ uint32_t *d = ((uint32_t *) dst);
+ uint32_t s = *d & 0xff000000;
+ uint32_t z = *src >> 8;
*d = s | z;
}
static void
-pack_uint_Z_UNORM16(const GLuint *src, void *dst)
+pack_uint_Z_UNORM16(const uint32_t *src, void *dst)
{
- GLushort *d = ((GLushort *) dst);
+ uint16_t *d = ((uint16_t *) dst);
*d = *src >> 16;
}
static void
-pack_uint_Z_UNORM32(const GLuint *src, void *dst)
+pack_uint_Z_UNORM32(const uint32_t *src, void *dst)
{
- GLuint *d = ((GLuint *) dst);
+ uint32_t *d = ((uint32_t *) dst);
*d = *src;
}
**/
static void
-pack_uint_Z_FLOAT32(const GLuint *src, void *dst)
+pack_uint_Z_FLOAT32(const uint32_t *src, void *dst)
{
- GLfloat *d = ((GLfloat *) dst);
- const GLdouble scale = 1.0 / (GLdouble) 0xffffffff;
- *d = (GLfloat) (*src * scale);
+ float *d = ((float *) dst);
+ const double scale = 1.0 / (double) 0xffffffff;
+ *d = (float) (*src * scale);
assert(*d >= 0.0f);
assert(*d <= 1.0f);
}
**/
static void
-pack_ubyte_stencil_Z24_S8(const GLubyte *src, void *dst)
+pack_ubyte_stencil_Z24_S8(const uint8_t *src, void *dst)
{
/* don't disturb the Z values */
- GLuint *d = ((GLuint *) dst);
- GLuint s = *src;
- GLuint z = *d & 0xffffff00;
+ uint32_t *d = ((uint32_t *) dst);
+ uint32_t s = *src;
+ uint32_t z = *d & 0xffffff00;
*d = z | s;
}
static void
-pack_ubyte_stencil_S8_Z24(const GLubyte *src, void *dst)
+pack_ubyte_stencil_S8_Z24(const uint8_t *src, void *dst)
{
/* don't disturb the Z values */
- GLuint *d = ((GLuint *) dst);
- GLuint s = *src << 24;
- GLuint z = *d & 0xffffff;
+ uint32_t *d = ((uint32_t *) dst);
+ uint32_t s = *src << 24;
+ uint32_t z = *d & 0xffffff;
*d = s | z;
}
static void
-pack_ubyte_stencil_S8(const GLubyte *src, void *dst)
+pack_ubyte_stencil_S8(const uint8_t *src, void *dst)
{
- GLubyte *d = (GLubyte *) dst;
+ uint8_t *d = (uint8_t *) dst;
*d = *src;
}
static void
-pack_ubyte_stencil_Z32_FLOAT_X24S8(const GLubyte *src, void *dst)
+pack_ubyte_stencil_Z32_FLOAT_X24S8(const uint8_t *src, void *dst)
{
- GLfloat *d = ((GLfloat *) dst);
+ float *d = ((float *) dst);
d[1] = *src;
}
void
-_mesa_pack_float_z_row(mesa_format format, GLuint n,
- const GLfloat *src, void *dst)
+_mesa_pack_float_z_row(mesa_format format, uint32_t n,
+ const float *src, void *dst)
{
switch (format) {
case MESA_FORMAT_S8_UINT_Z24_UNORM:
case MESA_FORMAT_X8_UINT_Z24_UNORM:
{
/* don't disturb the stencil values */
- GLuint *d = ((GLuint *) dst);
- const GLdouble scale = (GLdouble) 0xffffff;
- GLuint i;
+ uint32_t *d = ((uint32_t *) dst);
+ const double scale = (double) 0xffffff;
+ uint32_t i;
for (i = 0; i < n; i++) {
- GLuint s = d[i] & 0xff;
- GLuint z = (GLuint) (src[i] * scale);
+ uint32_t s = d[i] & 0xff;
+ uint32_t z = (uint32_t) (src[i] * scale);
assert(z <= 0xffffff);
d[i] = (z << 8) | s;
}
case MESA_FORMAT_Z24_UNORM_X8_UINT:
{
/* don't disturb the stencil values */
- GLuint *d = ((GLuint *) dst);
- const GLdouble scale = (GLdouble) 0xffffff;
- GLuint i;
+ uint32_t *d = ((uint32_t *) dst);
+ const double scale = (double) 0xffffff;
+ uint32_t i;
for (i = 0; i < n; i++) {
- GLuint s = d[i] & 0xff000000;
- GLuint z = (GLuint) (src[i] * scale);
+ uint32_t s = d[i] & 0xff000000;
+ uint32_t z = (uint32_t) (src[i] * scale);
assert(z <= 0xffffff);
d[i] = s | z;
}
break;
case MESA_FORMAT_Z_UNORM16:
{
- GLushort *d = ((GLushort *) dst);
- const GLfloat scale = (GLfloat) 0xffff;
- GLuint i;
+ uint16_t *d = ((uint16_t *) dst);
+ const float scale = (float) 0xffff;
+ uint32_t i;
for (i = 0; i < n; i++) {
- d[i] = (GLushort) (src[i] * scale);
+ d[i] = (uint16_t) (src[i] * scale);
}
}
break;
case MESA_FORMAT_Z_UNORM32:
{
- GLuint *d = ((GLuint *) dst);
- const GLdouble scale = (GLdouble) 0xffffffff;
- GLuint i;
+ uint32_t *d = ((uint32_t *) dst);
+ const double scale = (double) 0xffffffff;
+ uint32_t i;
for (i = 0; i < n; i++) {
- d[i] = (GLuint) (src[i] * scale);
+ d[i] = (uint32_t) (src[i] * scale);
}
}
break;
case MESA_FORMAT_Z_FLOAT32:
- memcpy(dst, src, n * sizeof(GLfloat));
+ memcpy(dst, src, n * sizeof(float));
break;
case MESA_FORMAT_Z32_FLOAT_S8X24_UINT:
{
struct z32f_x24s8 *d = (struct z32f_x24s8 *) dst;
- GLuint i;
+ uint32_t i;
for (i = 0; i < n; i++) {
d[i].z = src[i];
}
* The incoming Z values are always in the range [0, 0xffffffff].
*/
void
-_mesa_pack_uint_z_row(mesa_format format, GLuint n,
- const GLuint *src, void *dst)
+_mesa_pack_uint_z_row(mesa_format format, uint32_t n,
+ const uint32_t *src, void *dst)
{
switch (format) {
case MESA_FORMAT_S8_UINT_Z24_UNORM:
case MESA_FORMAT_X8_UINT_Z24_UNORM:
{
/* don't disturb the stencil values */
- GLuint *d = ((GLuint *) dst);
- GLuint i;
+ uint32_t *d = ((uint32_t *) dst);
+ uint32_t i;
for (i = 0; i < n; i++) {
- GLuint s = d[i] & 0xff;
- GLuint z = src[i] & 0xffffff00;
+ uint32_t s = d[i] & 0xff;
+ uint32_t z = src[i] & 0xffffff00;
d[i] = z | s;
}
}
case MESA_FORMAT_Z24_UNORM_X8_UINT:
{
/* don't disturb the stencil values */
- GLuint *d = ((GLuint *) dst);
- GLuint i;
+ uint32_t *d = ((uint32_t *) dst);
+ uint32_t i;
for (i = 0; i < n; i++) {
- GLuint s = d[i] & 0xff000000;
- GLuint z = src[i] >> 8;
+ uint32_t s = d[i] & 0xff000000;
+ uint32_t z = src[i] >> 8;
d[i] = s | z;
}
}
break;
case MESA_FORMAT_Z_UNORM16:
{
- GLushort *d = ((GLushort *) dst);
- GLuint i;
+ uint16_t *d = ((uint16_t *) dst);
+ uint32_t i;
for (i = 0; i < n; i++) {
d[i] = src[i] >> 16;
}
}
break;
case MESA_FORMAT_Z_UNORM32:
- memcpy(dst, src, n * sizeof(GLfloat));
+ memcpy(dst, src, n * sizeof(float));
break;
case MESA_FORMAT_Z_FLOAT32:
{
- GLuint *d = ((GLuint *) dst);
- const GLdouble scale = 1.0 / (GLdouble) 0xffffffff;
- GLuint i;
+ uint32_t *d = ((uint32_t *) dst);
+ const double scale = 1.0 / (double) 0xffffffff;
+ uint32_t i;
for (i = 0; i < n; i++) {
- d[i] = (GLuint) (src[i] * scale);
+ d[i] = (uint32_t) (src[i] * scale);
assert(d[i] >= 0.0f);
assert(d[i] <= 1.0f);
}
case MESA_FORMAT_Z32_FLOAT_S8X24_UINT:
{
struct z32f_x24s8 *d = (struct z32f_x24s8 *) dst;
- const GLdouble scale = 1.0 / (GLdouble) 0xffffffff;
- GLuint i;
+ const double scale = 1.0 / (double) 0xffffffff;
+ uint32_t i;
for (i = 0; i < n; i++) {
- d[i].z = (GLfloat) (src[i] * scale);
+ d[i].z = (float) (src[i] * scale);
assert(d[i].z >= 0.0f);
assert(d[i].z <= 1.0f);
}
void
-_mesa_pack_ubyte_stencil_row(mesa_format format, GLuint n,
- const GLubyte *src, void *dst)
+_mesa_pack_ubyte_stencil_row(mesa_format format, uint32_t n,
+ const uint8_t *src, void *dst)
{
switch (format) {
case MESA_FORMAT_S8_UINT_Z24_UNORM:
{
/* don't disturb the Z values */
- GLuint *d = ((GLuint *) dst);
- GLuint i;
+ uint32_t *d = ((uint32_t *) dst);
+ uint32_t i;
for (i = 0; i < n; i++) {
- GLuint s = src[i];
- GLuint z = d[i] & 0xffffff00;
+ uint32_t s = src[i];
+ uint32_t z = d[i] & 0xffffff00;
d[i] = z | s;
}
}
case MESA_FORMAT_Z24_UNORM_S8_UINT:
{
/* don't disturb the Z values */
- GLuint *d = ((GLuint *) dst);
- GLuint i;
+ uint32_t *d = ((uint32_t *) dst);
+ uint32_t i;
for (i = 0; i < n; i++) {
- GLuint s = src[i] << 24;
- GLuint z = d[i] & 0xffffff;
+ uint32_t s = src[i] << 24;
+ uint32_t z = d[i] & 0xffffff;
d[i] = s | z;
}
}
break;
case MESA_FORMAT_S_UINT8:
- memcpy(dst, src, n * sizeof(GLubyte));
+ memcpy(dst, src, n * sizeof(uint8_t));
break;
case MESA_FORMAT_Z32_FLOAT_S8X24_UINT:
{
struct z32f_x24s8 *d = (struct z32f_x24s8 *) dst;
- GLuint i;
+ uint32_t i;
for (i = 0; i < n; i++) {
d[i].x24s8 = src[i];
}
* Incoming Z/stencil values are always in uint_24_8 format.
*/
void
-_mesa_pack_uint_24_8_depth_stencil_row(mesa_format format, GLuint n,
- const GLuint *src, void *dst)
+_mesa_pack_uint_24_8_depth_stencil_row(mesa_format format, uint32_t n,
+ const uint32_t *src, void *dst)
{
switch (format) {
case MESA_FORMAT_S8_UINT_Z24_UNORM:
- memcpy(dst, src, n * sizeof(GLuint));
+ memcpy(dst, src, n * sizeof(uint32_t));
break;
case MESA_FORMAT_Z24_UNORM_S8_UINT:
{
- GLuint *d = ((GLuint *) dst);
- GLuint i;
+ uint32_t *d = ((uint32_t *) dst);
+ uint32_t i;
for (i = 0; i < n; i++) {
- GLuint s = src[i] << 24;
- GLuint z = src[i] >> 8;
+ uint32_t s = src[i] << 24;
+ uint32_t z = src[i] >> 8;
d[i] = s | z;
}
}
break;
case MESA_FORMAT_Z32_FLOAT_S8X24_UINT:
{
- const GLdouble scale = 1.0 / (GLdouble) 0xffffff;
+ const double scale = 1.0 / (double) 0xffffff;
struct z32f_x24s8 *d = (struct z32f_x24s8 *) dst;
- GLuint i;
+ uint32_t i;
for (i = 0; i < n; i++) {
- GLfloat z = (GLfloat) ((src[i] >> 8) * scale);
+ float z = (float) ((src[i] >> 8) * scale);
d[i].z = z;
d[i].x24s8 = src[i];
}
* the packed value at dst will be 0 or ~0 depending on the colorMask.
*/
void
-_mesa_pack_colormask(mesa_format format, const GLubyte colorMask[4], void *dst)
+_mesa_pack_colormask(mesa_format format, const uint8_t colorMask[4], void *dst)
{
- GLfloat maskColor[4];
+ float maskColor[4];
switch (_mesa_get_format_datatype(format)) {
case GL_UNSIGNED_NORMALIZED:
maskColor[2] = colorMask[2] ? 1.0f : 0.0f;
maskColor[3] = colorMask[3] ? 1.0f : 0.0f;
_mesa_pack_float_rgba_row(format, 1,
- (const GLfloat (*)[4]) maskColor, dst);
+ (const float (*)[4]) maskColor, dst);
break;
case GL_SIGNED_NORMALIZED:
case GL_FLOAT:
* We issue a warning below for channel sizes other than 8,16,32.
*/
{
- GLuint bits = _mesa_get_format_max_bits(format); /* bits per chan */
- GLuint bytes = _mesa_get_format_bytes(format);
- GLuint i;
+ uint32_t bits = _mesa_get_format_max_bits(format); /* bits per chan */
+ uint32_t bytes = _mesa_get_format_bytes(format);
+ uint32_t i;
/* this should put non-zero values into the channels of dst */
maskColor[0] = colorMask[0] ? -1.0f : 0.0f;
maskColor[2] = colorMask[2] ? -1.0f : 0.0f;
maskColor[3] = colorMask[3] ? -1.0f : 0.0f;
_mesa_pack_float_rgba_row(format, 1,
- (const GLfloat (*)[4]) maskColor, dst);
+ (const float (*)[4]) maskColor, dst);
/* fix-up the dst channels by converting non-zero values to ~0 */
if (bits == 8) {
- GLubyte *d = (GLubyte *) dst;
+ uint8_t *d = (uint8_t *) dst;
for (i = 0; i < bytes; i++) {
d[i] = d[i] ? 0xff : 0x0;
}
}
else if (bits == 16) {
- GLushort *d = (GLushort *) dst;
+ uint16_t *d = (uint16_t *) dst;
for (i = 0; i < bytes / 2; i++) {
d[i] = d[i] ? 0xffff : 0x0;
}
}
else if (bits == 32) {
- GLuint *d = (GLuint *) dst;
+ uint32_t *d = (uint32_t *) dst;
for (i = 0; i < bytes / 4; i++) {
d[i] = d[i] ? 0xffffffffU : 0x0;
}
#include "formats.h"
extern void
-_mesa_unpack_rgba_row(mesa_format format, GLuint n,
- const void *src, GLfloat dst[][4]);
+_mesa_unpack_rgba_row(mesa_format format, uint32_t n,
+ const void *src, float dst[][4]);
extern void
-_mesa_unpack_ubyte_rgba_row(mesa_format format, GLuint n,
- const void *src, GLubyte dst[][4]);
+_mesa_unpack_ubyte_rgba_row(mesa_format format, uint32_t n,
+ const void *src, uint8_t dst[][4]);
void
-_mesa_unpack_uint_rgba_row(mesa_format format, GLuint n,
- const void *src, GLuint dst[][4]);
+_mesa_unpack_uint_rgba_row(mesa_format format, uint32_t n,
+ const void *src, uint32_t dst[][4]);
extern void
_mesa_unpack_rgba_block(mesa_format format,
- const void *src, GLint srcRowStride,
- GLfloat dst[][4], GLint dstRowStride,
- GLuint x, GLuint y, GLuint width, GLuint height);
+ const void *src, int32_t srcRowStride,
+ float dst[][4], int32_t dstRowStride,
+ uint32_t x, uint32_t y, uint32_t width, uint32_t height);
extern void
-_mesa_unpack_float_z_row(mesa_format format, GLuint n,
- const void *src, GLfloat *dst);
+_mesa_unpack_float_z_row(mesa_format format, uint32_t n,
+ const void *src, float *dst);
void
-_mesa_unpack_uint_z_row(mesa_format format, GLuint n,
- const void *src, GLuint *dst);
+_mesa_unpack_uint_z_row(mesa_format format, uint32_t n,
+ const void *src, uint32_t *dst);
void
-_mesa_unpack_ubyte_stencil_row(mesa_format format, GLuint n,
- const void *src, GLubyte *dst);
+_mesa_unpack_ubyte_stencil_row(mesa_format format, uint32_t n,
+ const void *src, uint8_t *dst);
void
-_mesa_unpack_uint_24_8_depth_stencil_row(mesa_format format, GLuint n,
- const void *src, GLuint *dst);
+_mesa_unpack_uint_24_8_depth_stencil_row(mesa_format format, uint32_t n,
+ const void *src, uint32_t *dst);
void
_mesa_unpack_float_32_uint_24_8_depth_stencil_row(mesa_format format,
- GLuint n,
+ uint32_t n,
const void *src,
- GLuint *dst);
+ uint32_t *dst);
void
-_mesa_unpack_depth_stencil_row(mesa_format format, GLuint n,
+_mesa_unpack_depth_stencil_row(mesa_format format, uint32_t n,
const void *src, GLenum type,
- GLuint *dst);
+ uint32_t *dst);
#endif /* FORMAT_UNPACK_H */
%endif
static inline void
-unpack_float_${f.short_name()}(const void *void_src, GLfloat dst[4])
+unpack_float_${f.short_name()}(const void *void_src, float dst[4])
{
${f.datatype()} *src = (${f.datatype()} *)void_src;
%if f.layout == parser.PACKED:
%endfor
static void
-unpack_float_r9g9b9e5_float(const void *src, GLfloat dst[4])
+unpack_float_r9g9b9e5_float(const void *src, float dst[4])
{
- rgb9e5_to_float3(*(const GLuint *)src, dst);
+ rgb9e5_to_float3(*(const uint32_t *)src, dst);
dst[3] = 1.0f;
}
static void
-unpack_float_r11g11b10_float(const void *src, GLfloat dst[4])
+unpack_float_r11g11b10_float(const void *src, float dst[4])
{
- r11g11b10f_to_float3(*(const GLuint *)src, dst);
+ r11g11b10f_to_float3(*(const uint32_t *)src, dst);
dst[3] = 1.0f;
}
static void
-unpack_float_ycbcr(const void *src, GLfloat dst[][4], GLuint n)
+unpack_float_ycbcr(const void *src, float dst[][4], uint32_t n)
{
- GLuint i;
+ uint32_t i;
for (i = 0; i < n; i++) {
- const GLushort *src0 = ((const GLushort *) src) + i * 2; /* even */
- const GLushort *src1 = src0 + 1; /* odd */
- const GLubyte y0 = (*src0 >> 8) & 0xff; /* luminance */
- const GLubyte cb = *src0 & 0xff; /* chroma U */
- const GLubyte y1 = (*src1 >> 8) & 0xff; /* luminance */
- const GLubyte cr = *src1 & 0xff; /* chroma V */
- const GLubyte y = (i & 1) ? y1 : y0; /* choose even/odd luminance */
- GLfloat r = 1.164F * (y - 16) + 1.596F * (cr - 128);
- GLfloat g = 1.164F * (y - 16) - 0.813F * (cr - 128) - 0.391F * (cb - 128);
- GLfloat b = 1.164F * (y - 16) + 2.018F * (cb - 128);
+ const uint16_t *src0 = ((const uint16_t *) src) + i * 2; /* even */
+ const uint16_t *src1 = src0 + 1; /* odd */
+ const uint8_t y0 = (*src0 >> 8) & 0xff; /* luminance */
+ const uint8_t cb = *src0 & 0xff; /* chroma U */
+ const uint8_t y1 = (*src1 >> 8) & 0xff; /* luminance */
+ const uint8_t cr = *src1 & 0xff; /* chroma V */
+ const uint8_t y = (i & 1) ? y1 : y0; /* choose even/odd luminance */
+ float r = 1.164F * (y - 16) + 1.596F * (cr - 128);
+ float g = 1.164F * (y - 16) - 0.813F * (cr - 128) - 0.391F * (cb - 128);
+ float b = 1.164F * (y - 16) + 2.018F * (cb - 128);
r *= (1.0F / 255.0F);
g *= (1.0F / 255.0F);
b *= (1.0F / 255.0F);
}
static void
-unpack_float_ycbcr_rev(const void *src, GLfloat dst[][4], GLuint n)
+unpack_float_ycbcr_rev(const void *src, float dst[][4], uint32_t n)
{
- GLuint i;
+ uint32_t i;
for (i = 0; i < n; i++) {
- const GLushort *src0 = ((const GLushort *) src) + i * 2; /* even */
- const GLushort *src1 = src0 + 1; /* odd */
- const GLubyte y0 = *src0 & 0xff; /* luminance */
- const GLubyte cr = (*src0 >> 8) & 0xff; /* chroma V */
- const GLubyte y1 = *src1 & 0xff; /* luminance */
- const GLubyte cb = (*src1 >> 8) & 0xff; /* chroma U */
- const GLubyte y = (i & 1) ? y1 : y0; /* choose even/odd luminance */
- GLfloat r = 1.164F * (y - 16) + 1.596F * (cr - 128);
- GLfloat g = 1.164F * (y - 16) - 0.813F * (cr - 128) - 0.391F * (cb - 128);
- GLfloat b = 1.164F * (y - 16) + 2.018F * (cb - 128);
+ const uint16_t *src0 = ((const uint16_t *) src) + i * 2; /* even */
+ const uint16_t *src1 = src0 + 1; /* odd */
+ const uint8_t y0 = *src0 & 0xff; /* luminance */
+ const uint8_t cr = (*src0 >> 8) & 0xff; /* chroma V */
+ const uint8_t y1 = *src1 & 0xff; /* luminance */
+ const uint8_t cb = (*src1 >> 8) & 0xff; /* chroma U */
+ const uint8_t y = (i & 1) ? y1 : y0; /* choose even/odd luminance */
+ float r = 1.164F * (y - 16) + 1.596F * (cr - 128);
+ float g = 1.164F * (y - 16) - 0.813F * (cr - 128) - 0.391F * (cb - 128);
+ float b = 1.164F * (y - 16) + 2.018F * (cb - 128);
r *= (1.0F / 255.0F);
g *= (1.0F / 255.0F);
b *= (1.0F / 255.0F);
%endif
static inline void
-unpack_ubyte_${f.short_name()}(const void *void_src, GLubyte dst[4])
+unpack_ubyte_${f.short_name()}(const void *void_src, uint8_t dst[4])
{
${f.datatype()} *src = (${f.datatype()} *)void_src;
%if f.layout == parser.PACKED:
%endif
static inline void
-unpack_int_${f.short_name()}(const void *void_src, GLuint dst[4])
+unpack_int_${f.short_name()}(const void *void_src, uint32_t dst[4])
{
${f.datatype()} *src = (${f.datatype()} *)void_src;
%if f.layout == parser.PACKED:
void
-_mesa_unpack_rgba_row(mesa_format format, GLuint n,
- const void *src, GLfloat dst[][4])
+_mesa_unpack_rgba_row(mesa_format format, uint32_t n,
+ const void *src, float dst[][4])
{
- GLubyte *s = (GLubyte *)src;
- GLuint i;
+ uint8_t *s = (uint8_t *)src;
+ uint32_t i;
switch (format) {
%for f in rgb_formats:
}
void
-_mesa_unpack_ubyte_rgba_row(mesa_format format, GLuint n,
- const void *src, GLubyte dst[][4])
+_mesa_unpack_ubyte_rgba_row(mesa_format format, uint32_t n,
+ const void *src, uint8_t dst[][4])
{
- GLubyte *s = (GLubyte *)src;
- GLuint i;
+ uint8_t *s = (uint8_t *)src;
+ uint32_t i;
switch (format) {
%for f in rgb_formats:
default:
/* get float values, convert to ubyte */
{
- GLfloat *tmp = malloc(n * 4 * sizeof(GLfloat));
+ float *tmp = malloc(n * 4 * sizeof(float));
if (tmp) {
- GLuint i;
- _mesa_unpack_rgba_row(format, n, src, (GLfloat (*)[4]) tmp);
+ uint32_t i;
+ _mesa_unpack_rgba_row(format, n, src, (float (*)[4]) tmp);
for (i = 0; i < n; i++) {
dst[i][0] = _mesa_float_to_unorm(tmp[i*4+0], 8);
dst[i][1] = _mesa_float_to_unorm(tmp[i*4+1], 8);
}
void
-_mesa_unpack_uint_rgba_row(mesa_format format, GLuint n,
- const void *src, GLuint dst[][4])
+_mesa_unpack_uint_rgba_row(mesa_format format, uint32_t n,
+ const void *src, uint32_t dst[][4])
{
- GLubyte *s = (GLubyte *)src;
- GLuint i;
+ uint8_t *s = (uint8_t *)src;
+ uint32_t i;
switch (format) {
%for f in rgb_formats:
*/
void
_mesa_unpack_rgba_block(mesa_format format,
- const void *src, GLint srcRowStride,
- GLfloat dst[][4], GLint dstRowStride,
- GLuint x, GLuint y, GLuint width, GLuint height)
+ const void *src, int32_t srcRowStride,
+ float dst[][4], int32_t dstRowStride,
+ uint32_t x, uint32_t y, uint32_t width, uint32_t height)
{
- const GLuint srcPixStride = _mesa_get_format_bytes(format);
- const GLuint dstPixStride = 4 * sizeof(GLfloat);
- const GLubyte *srcRow;
- GLubyte *dstRow;
- GLuint i;
+ const uint32_t srcPixStride = _mesa_get_format_bytes(format);
+ const uint32_t dstPixStride = 4 * sizeof(float);
+ const uint8_t *srcRow;
+ uint8_t *dstRow;
+ uint32_t i;
/* XXX needs to be fixed for compressed formats */
- srcRow = ((const GLubyte *) src) + srcRowStride * y + srcPixStride * x;
- dstRow = ((GLubyte *) dst) + dstRowStride * y + dstPixStride * x;
+ srcRow = ((const uint8_t *) src) + srcRowStride * y + srcPixStride * x;
+ dstRow = ((uint8_t *) dst) + dstRowStride * y + dstPixStride * x;
for (i = 0; i < height; i++) {
- _mesa_unpack_rgba_row(format, width, srcRow, (GLfloat (*)[4]) dstRow);
+ _mesa_unpack_rgba_row(format, width, srcRow, (float (*)[4]) dstRow);
dstRow += dstRowStride;
srcRow += srcRowStride;
uint32_t x24s8;
};
-typedef void (*unpack_float_z_func)(GLuint n, const void *src, GLfloat *dst);
+typedef void (*unpack_float_z_func)(uint32_t n, const void *src, float *dst);
static void
-unpack_float_z_X8_UINT_Z24_UNORM(GLuint n, const void *src, GLfloat *dst)
+unpack_float_z_X8_UINT_Z24_UNORM(uint32_t n, const void *src, float *dst)
{
/* only return Z, not stencil data */
- const GLuint *s = ((const GLuint *) src);
- const GLdouble scale = 1.0 / (GLdouble) 0xffffff;
- GLuint i;
+ const uint32_t *s = ((const uint32_t *) src);
+ const double scale = 1.0 / (double) 0xffffff;
+ uint32_t i;
for (i = 0; i < n; i++) {
- dst[i] = (GLfloat) ((s[i] >> 8) * scale);
+ dst[i] = (float) ((s[i] >> 8) * scale);
assert(dst[i] >= 0.0F);
assert(dst[i] <= 1.0F);
}
}
static void
-unpack_float_z_Z24_UNORM_X8_UINT(GLuint n, const void *src, GLfloat *dst)
+unpack_float_z_Z24_UNORM_X8_UINT(uint32_t n, const void *src, float *dst)
{
/* only return Z, not stencil data */
- const GLuint *s = ((const GLuint *) src);
- const GLdouble scale = 1.0 / (GLdouble) 0xffffff;
- GLuint i;
+ const uint32_t *s = ((const uint32_t *) src);
+ const double scale = 1.0 / (double) 0xffffff;
+ uint32_t i;
for (i = 0; i < n; i++) {
- dst[i] = (GLfloat) ((s[i] & 0x00ffffff) * scale);
+ dst[i] = (float) ((s[i] & 0x00ffffff) * scale);
assert(dst[i] >= 0.0F);
assert(dst[i] <= 1.0F);
}
}
static void
-unpack_float_Z_UNORM16(GLuint n, const void *src, GLfloat *dst)
+unpack_float_Z_UNORM16(uint32_t n, const void *src, float *dst)
{
- const GLushort *s = ((const GLushort *) src);
- GLuint i;
+ const uint16_t *s = ((const uint16_t *) src);
+ uint32_t i;
for (i = 0; i < n; i++) {
dst[i] = s[i] * (1.0F / 65535.0F);
}
}
static void
-unpack_float_Z_UNORM32(GLuint n, const void *src, GLfloat *dst)
+unpack_float_Z_UNORM32(uint32_t n, const void *src, float *dst)
{
- const GLuint *s = ((const GLuint *) src);
- GLuint i;
+ const uint32_t *s = ((const uint32_t *) src);
+ uint32_t i;
for (i = 0; i < n; i++) {
dst[i] = s[i] * (1.0F / 0xffffffff);
}
}
static void
-unpack_float_Z_FLOAT32(GLuint n, const void *src, GLfloat *dst)
+unpack_float_Z_FLOAT32(uint32_t n, const void *src, float *dst)
{
memcpy(dst, src, n * sizeof(float));
}
static void
-unpack_float_z_Z32X24S8(GLuint n, const void *src, GLfloat *dst)
+unpack_float_z_Z32X24S8(uint32_t n, const void *src, float *dst)
{
const struct z32f_x24s8 *s = (const struct z32f_x24s8 *) src;
- GLuint i;
+ uint32_t i;
for (i = 0; i < n; i++) {
dst[i] = s[i].z;
}
* The returned values will always be in the range [0.0, 1.0].
*/
void
-_mesa_unpack_float_z_row(mesa_format format, GLuint n,
- const void *src, GLfloat *dst)
+_mesa_unpack_float_z_row(mesa_format format, uint32_t n,
+ const void *src, float *dst)
{
unpack_float_z_func unpack;
-typedef void (*unpack_uint_z_func)(const void *src, GLuint *dst, GLuint n);
+typedef void (*unpack_uint_z_func)(const void *src, uint32_t *dst, uint32_t n);
static void
-unpack_uint_z_X8_UINT_Z24_UNORM(const void *src, GLuint *dst, GLuint n)
+unpack_uint_z_X8_UINT_Z24_UNORM(const void *src, uint32_t *dst, uint32_t n)
{
/* only return Z, not stencil data */
- const GLuint *s = ((const GLuint *) src);
- GLuint i;
+ const uint32_t *s = ((const uint32_t *) src);
+ uint32_t i;
for (i = 0; i < n; i++) {
dst[i] = (s[i] & 0xffffff00) | (s[i] >> 24);
}
}
static void
-unpack_uint_z_Z24_UNORM_X8_UINT(const void *src, GLuint *dst, GLuint n)
+unpack_uint_z_Z24_UNORM_X8_UINT(const void *src, uint32_t *dst, uint32_t n)
{
/* only return Z, not stencil data */
- const GLuint *s = ((const GLuint *) src);
- GLuint i;
+ const uint32_t *s = ((const uint32_t *) src);
+ uint32_t i;
for (i = 0; i < n; i++) {
dst[i] = (s[i] << 8) | ((s[i] >> 16) & 0xff);
}
}
static void
-unpack_uint_Z_UNORM16(const void *src, GLuint *dst, GLuint n)
+unpack_uint_Z_UNORM16(const void *src, uint32_t *dst, uint32_t n)
{
- const GLushort *s = ((const GLushort *)src);
- GLuint i;
+ const uint16_t *s = ((const uint16_t *)src);
+ uint32_t i;
for (i = 0; i < n; i++) {
dst[i] = (s[i] << 16) | s[i];
}
}
static void
-unpack_uint_Z_UNORM32(const void *src, GLuint *dst, GLuint n)
+unpack_uint_Z_UNORM32(const void *src, uint32_t *dst, uint32_t n)
{
- memcpy(dst, src, n * sizeof(GLuint));
+ memcpy(dst, src, n * sizeof(uint32_t));
}
static void
-unpack_uint_Z_FLOAT32(const void *src, GLuint *dst, GLuint n)
+unpack_uint_Z_FLOAT32(const void *src, uint32_t *dst, uint32_t n)
{
const float *s = (const float *)src;
- GLuint i;
+ uint32_t i;
for (i = 0; i < n; i++) {
dst[i] = FLOAT_TO_UINT(CLAMP(s[i], 0.0F, 1.0F));
}
}
static void
-unpack_uint_Z_FLOAT32_X24S8(const void *src, GLuint *dst, GLuint n)
+unpack_uint_Z_FLOAT32_X24S8(const void *src, uint32_t *dst, uint32_t n)
{
const struct z32f_x24s8 *s = (const struct z32f_x24s8 *) src;
- GLuint i;
+ uint32_t i;
for (i = 0; i < n; i++) {
dst[i] = FLOAT_TO_UINT(CLAMP(s[i].z, 0.0F, 1.0F));
* The returned values will always be in the range [0, 0xffffffff].
*/
void
-_mesa_unpack_uint_z_row(mesa_format format, GLuint n,
- const void *src, GLuint *dst)
+_mesa_unpack_uint_z_row(mesa_format format, uint32_t n,
+ const void *src, uint32_t *dst)
{
unpack_uint_z_func unpack;
- const GLubyte *srcPtr = (GLubyte *) src;
+ const uint8_t *srcPtr = (uint8_t *) src;
switch (format) {
case MESA_FORMAT_S8_UINT_Z24_UNORM:
static void
-unpack_ubyte_s_S_UINT8(const void *src, GLubyte *dst, GLuint n)
+unpack_ubyte_s_S_UINT8(const void *src, uint8_t *dst, uint32_t n)
{
memcpy(dst, src, n);
}
static void
-unpack_ubyte_s_S8_UINT_Z24_UNORM(const void *src, GLubyte *dst, GLuint n)
+unpack_ubyte_s_S8_UINT_Z24_UNORM(const void *src, uint8_t *dst, uint32_t n)
{
- GLuint i;
- const GLuint *src32 = src;
+ uint32_t i;
+ const uint32_t *src32 = src;
for (i = 0; i < n; i++)
dst[i] = src32[i] & 0xff;
}
static void
-unpack_ubyte_s_Z24_UNORM_S8_UINT(const void *src, GLubyte *dst, GLuint n)
+unpack_ubyte_s_Z24_UNORM_S8_UINT(const void *src, uint8_t *dst, uint32_t n)
{
- GLuint i;
- const GLuint *src32 = src;
+ uint32_t i;
+ const uint32_t *src32 = src;
for (i = 0; i < n; i++)
dst[i] = src32[i] >> 24;
}
static void
-unpack_ubyte_s_Z32_FLOAT_S8X24_UINT(const void *src, GLubyte *dst, GLuint n)
+unpack_ubyte_s_Z32_FLOAT_S8X24_UINT(const void *src, uint8_t *dst, uint32_t n)
{
- GLuint i;
+ uint32_t i;
const struct z32f_x24s8 *s = (const struct z32f_x24s8 *) src;
for (i = 0; i < n; i++)
}
void
-_mesa_unpack_ubyte_stencil_row(mesa_format format, GLuint n,
- const void *src, GLubyte *dst)
+_mesa_unpack_ubyte_stencil_row(mesa_format format, uint32_t n,
+ const void *src, uint8_t *dst)
{
switch (format) {
case MESA_FORMAT_S_UINT8:
}
static void
-unpack_uint_24_8_depth_stencil_Z24_UNORM_S8_UINT(const GLuint *src, GLuint *dst, GLuint n)
+unpack_uint_24_8_depth_stencil_Z24_UNORM_S8_UINT(const uint32_t *src, uint32_t *dst, uint32_t n)
{
- GLuint i;
+ uint32_t i;
for (i = 0; i < n; i++) {
- GLuint val = src[i];
+ uint32_t val = src[i];
dst[i] = val >> 24 | val << 8;
}
}
static void
-unpack_uint_24_8_depth_stencil_Z32_S8X24(const GLuint *src,
- GLuint *dst, GLuint n)
+unpack_uint_24_8_depth_stencil_Z32_S8X24(const uint32_t *src,
+ uint32_t *dst, uint32_t n)
{
- GLuint i;
+ uint32_t i;
for (i = 0; i < n; i++) {
/* 8 bytes per pixel (float + uint32) */
- GLfloat zf = ((GLfloat *) src)[i * 2 + 0];
- GLuint z24 = (GLuint) (zf * (GLfloat) 0xffffff);
- GLuint s = src[i * 2 + 1] & 0xff;
+ float zf = ((float *) src)[i * 2 + 0];
+ uint32_t z24 = (uint32_t) (zf * (float) 0xffffff);
+ uint32_t s = src[i * 2 + 1] & 0xff;
dst[i] = (z24 << 8) | s;
}
}
static void
-unpack_uint_24_8_depth_stencil_S8_UINT_Z24_UNORM(const GLuint *src, GLuint *dst, GLuint n)
+unpack_uint_24_8_depth_stencil_S8_UINT_Z24_UNORM(const uint32_t *src, uint32_t *dst, uint32_t n)
{
memcpy(dst, src, n * 4);
}
* \param format the source data format
*/
void
-_mesa_unpack_uint_24_8_depth_stencil_row(mesa_format format, GLuint n,
- const void *src, GLuint *dst)
+_mesa_unpack_uint_24_8_depth_stencil_row(mesa_format format, uint32_t n,
+ const void *src, uint32_t *dst)
{
switch (format) {
case MESA_FORMAT_S8_UINT_Z24_UNORM:
}
static void
-unpack_float_32_uint_24_8_Z24_UNORM_S8_UINT(const GLuint *src,
- GLuint *dst, GLuint n)
+unpack_float_32_uint_24_8_Z24_UNORM_S8_UINT(const uint32_t *src,
+ uint32_t *dst, uint32_t n)
{
- GLuint i;
+ uint32_t i;
struct z32f_x24s8 *d = (struct z32f_x24s8 *) dst;
- const GLdouble scale = 1.0 / (GLdouble) 0xffffff;
+ const double scale = 1.0 / (double) 0xffffff;
for (i = 0; i < n; i++) {
- const GLuint z24 = src[i] & 0xffffff;
+ const uint32_t z24 = src[i] & 0xffffff;
d[i].z = z24 * scale;
d[i].x24s8 = src[i] >> 24;
assert(d[i].z >= 0.0f);
}
static void
-unpack_float_32_uint_24_8_Z32_FLOAT_S8X24_UINT(const GLuint *src,
- GLuint *dst, GLuint n)
+unpack_float_32_uint_24_8_Z32_FLOAT_S8X24_UINT(const uint32_t *src,
+ uint32_t *dst, uint32_t n)
{
memcpy(dst, src, n * sizeof(struct z32f_x24s8));
}
static void
-unpack_float_32_uint_24_8_S8_UINT_Z24_UNORM(const GLuint *src,
- GLuint *dst, GLuint n)
+unpack_float_32_uint_24_8_S8_UINT_Z24_UNORM(const uint32_t *src,
+ uint32_t *dst, uint32_t n)
{
- GLuint i;
+ uint32_t i;
struct z32f_x24s8 *d = (struct z32f_x24s8 *) dst;
- const GLdouble scale = 1.0 / (GLdouble) 0xffffff;
+ const double scale = 1.0 / (double) 0xffffff;
for (i = 0; i < n; i++) {
- const GLuint z24 = src[i] >> 8;
+ const uint32_t z24 = src[i] >> 8;
d[i].z = z24 * scale;
d[i].x24s8 = src[i] & 0xff;
assert(d[i].z >= 0.0f);
* lower 4 bytes higher 4 bytes
*/
void
-_mesa_unpack_float_32_uint_24_8_depth_stencil_row(mesa_format format, GLuint n,
- const void *src, GLuint *dst)
+_mesa_unpack_float_32_uint_24_8_depth_stencil_row(mesa_format format, uint32_t n,
+ const void *src, uint32_t *dst)
{
switch (format) {
case MESA_FORMAT_S8_UINT_Z24_UNORM:
* \param type the destination data type
*/
void
-_mesa_unpack_depth_stencil_row(mesa_format format, GLuint n,
+_mesa_unpack_depth_stencil_row(mesa_format format, uint32_t n,
const void *src, GLenum type,
- GLuint *dst)
+ uint32_t *dst)
{
assert(type == GL_UNSIGNED_INT_24_8 ||
type == GL_FLOAT_32_UNSIGNED_INT_24_8_REV);