layers: Add extension Validation so loader will add layers with Validation
Also fix extension supported list in DrawState and ObjectTracker to include
their local extensions in GetGlobalExtensionInfo()
diff --git a/vk-layer-generate.py b/vk-layer-generate.py
index d9a7581..5e9c54a 100755
--- a/vk-layer-generate.py
+++ b/vk-layer-generate.py
@@ -200,11 +200,21 @@
ggei_body.append(' uint32_t version;')
ggei_body.append(' const char * const name;')
ggei_body.append('};')
- ggei_body.append('#define LAYER_EXT_ARRAY_SIZE 1')
- ggei_body.append('static const struct extProps layerExts[LAYER_EXT_ARRAY_SIZE] = {')
- ggei_body.append(' // TODO what is the version?')
- ggei_body.append(' {0x10, "%s"}' % layer)
- ggei_body.append('};')
+ if layer == 'ObjectTracker':
+ ggei_body.append('#define LAYER_EXT_ARRAY_SIZE 4')
+ ggei_body.append('static const struct extProps layerExts[LAYER_EXT_ARRAY_SIZE] = {')
+ ggei_body.append(' // TODO what is the version?')
+ ggei_body.append(' {0x10, "%s"},' % layer)
+ ggei_body.append(' {0x10, "Validation"},')
+ ggei_body.append(' {0x10, "objTrackGetObjectCount"},')
+ ggei_body.append(' {0x10, "objTrackGetObjects"}')
+ ggei_body.append('};')
+ else:
+ ggei_body.append('#define LAYER_EXT_ARRAY_SIZE 1')
+ ggei_body.append('static const struct extProps layerExts[LAYER_EXT_ARRAY_SIZE] = {')
+ ggei_body.append(' // TODO what is the version?')
+ ggei_body.append(' {0x10, "%s"}' % layer)
+ ggei_body.append('};')
ggei_body.append('')
ggei_body.append('VK_LAYER_EXPORT VkResult VKAPI vkGetGlobalExtensionInfo(VkExtensionInfoType infoType, uint32_t extensionIndex, size_t* pDataSize, void* pData)')
ggei_body.append('{')