[Mesa-dev] [PATCH v2 3/6] vulkan/util: Make all the vk_format descriptions available in a table
alexandros.frantzis at collabora.com
alexandros.frantzis at collabora.com
Wed Jul 12 10:16:03 UTC 2017
From: Alexandros Frantzis <alexandros.frantzis at collabora.com>
The table allows iterating over all available format descriptions.
---
src/vulkan/util/vk_format.h | 3 ++-
src/vulkan/util/vk_format_table.py | 6 ++++++
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/src/vulkan/util/vk_format.h b/src/vulkan/util/vk_format.h
index 96dac8cfad..182acdeffa 100644
--- a/src/vulkan/util/vk_format.h
+++ b/src/vulkan/util/vk_format.h
@@ -136,7 +136,8 @@ struct vk_format_description
enum vk_format_colorspace colorspace;
};
-extern const struct vk_format_description vk_format_description_table[];
+/* NULL-terminated array with pointers to all format descriptions */
+extern const struct vk_format_description *vk_format_description_table[];
const struct vk_format_description *vk_format_description(VkFormat format);
diff --git a/src/vulkan/util/vk_format_table.py b/src/vulkan/util/vk_format_table.py
index 36352b108d..936666b23b 100644
--- a/src/vulkan/util/vk_format_table.py
+++ b/src/vulkan/util/vk_format_table.py
@@ -142,6 +142,12 @@ def write_format_table(formats):
print "};"
print
+ print "const struct vk_format_description *vk_format_description_table[] = {"
+ for format in formats:
+ print " &vk_format_%s_description," % (format.short_name(),)
+ print " NULL};"
+ print
+
print "const struct vk_format_description *"
print "vk_format_description(VkFormat format)"
print "{"
--
2.13.2
More information about the mesa-dev
mailing list