summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/util/u_format.h
diff options
context:
space:
mode:
authorJosé Fonseca <jfonseca@vmware.com>2010-03-31 21:16:16 +0100
committerJosé Fonseca <jfonseca@vmware.com>2010-03-31 21:27:47 +0100
commit018aae950df449a18d7d69de54d51af587be94c6 (patch)
tree6100c28b900120bdf2401cec854796e3a79efb6c /src/gallium/auxiliary/util/u_format.h
parentb8012643e1f5f6e49593ec8f04d3721df53e6afb (diff)
util: Make the accessors bidimensional again.
Otherwise there's no way to unpack blocks with height >1
Diffstat (limited to 'src/gallium/auxiliary/util/u_format.h')
-rw-r--r--src/gallium/auxiliary/util/u_format.h28
1 files changed, 19 insertions, 9 deletions
diff --git a/src/gallium/auxiliary/util/u_format.h b/src/gallium/auxiliary/util/u_format.h
index 0fad81fe40..93818a3161 100644
--- a/src/gallium/auxiliary/util/u_format.h
+++ b/src/gallium/auxiliary/util/u_format.h
@@ -191,34 +191,44 @@ struct util_format_description
enum util_format_colorspace colorspace;
/**
- * Unpack a span of pixel blocks to R8G8B8A8_UNORM.
+ * Unpack pixel blocks to R8G8B8A8_UNORM.
*/
void
- (*unpack_8unorm)(uint8_t *dst, const uint8_t *src, unsigned nr_blocks);
+ (*unpack_8unorm)(uint8_t *dst, unsigned dst_stride,
+ const uint8_t *src, unsigned src_stride,
+ unsigned width, unsigned height);
/**
- * Pack a span of pixel blocks from R8G8B8A8_UNORM.
+ * Pack pixel blocks from R8G8B8A8_UNORM.
*/
void
- (*pack_8unorm)(uint8_t *dst, const uint8_t *src, unsigned nr_blocks);
+ (*pack_8unorm)(uint8_t *dst, unsigned dst_stride,
+ const uint8_t *src, unsigned src_stride,
+ unsigned width, unsigned height);
/**
- * Unpack a span of pixel blocks to R32G32B32A32_FLOAT.
+ * Unpack pixel blocks to R32G32B32A32_FLOAT.
*/
void
- (*unpack_float)(float *dst, const uint8_t *src, unsigned nr_blocks);
+ (*unpack_float)(float *dst, unsigned dst_stride,
+ const uint8_t *src, unsigned src_stride,
+ unsigned width, unsigned height);
/**
- * Pack a span of pixel blocks from R32G32B32A32_FLOAT.
+ * Pack pixel blocks from R32G32B32A32_FLOAT.
*/
void
- (*pack_float)(uint8_t *dst, const float *src, unsigned nr_blocks);
+ (*pack_float)(uint8_t *dst, unsigned dst_stride,
+ const float *src, unsigned src_stride,
+ unsigned width, unsigned height);
/**
* Fetch a single pixel (i, j) from a block.
*/
void
- (*fetch_float)(float *dst, const uint8_t *src, unsigned i, unsigned j);
+ (*fetch_float)(float *dst,
+ const uint8_t *src,
+ unsigned i, unsigned j);
};