aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorLenny Komow <lenny@lunarg.com>2017-12-19 16:38:37 -0700
committerLenny Komow <lenny@lunarg.com>2018-01-09 14:11:20 -0700
commitdd2c1dd9385616e97b719e28accab712c5d419c4 (patch)
tree368f35f1af129303ba5e4ce423a0009f866c92b7 /scripts
parent10b16b2689a5284edb5baeb08490f894eb923a42 (diff)
downloadusermoji-dd2c1dd9385616e97b719e28accab712c5d419c4.tar.xz
loader: Add pre-instance functions for layers
Allow implicit layers (not explicit) to intercept calls before an instance has been created. Change-Id: I41f5bb0f5a6314fbab8003ebe71059dd04afc860
Diffstat (limited to 'scripts')
-rw-r--r--scripts/loader_extension_generator.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/scripts/loader_extension_generator.py b/scripts/loader_extension_generator.py
index 84cc4ca4..370112d3 100644
--- a/scripts/loader_extension_generator.py
+++ b/scripts/loader_extension_generator.py
@@ -44,6 +44,9 @@ DEVICE_CMDS_NEED_TERM = ['vkGetDeviceProcAddr',
'vkDebugMarkerSetObjectTagEXT',
'vkDebugMarkerSetObjectNameEXT']
+PRE_INSTANCE_FUNCTIONS = ['vkEnumerateInstanceExtensionProperties',
+ 'vkEnumerateInstanceLayerProperties']
+
#
# LoaderExtensionGeneratorOptions - subclass of GeneratorOptions.
class LoaderExtensionGeneratorOptions(GeneratorOptions):
@@ -655,6 +658,9 @@ class LoaderExtensionOutputGenerator(OutputGenerator):
new_terminator = cur_cmd.cdecl
mod_string = new_terminator.replace("VKAPI_CALL vk", "VKAPI_CALL terminator_")
+ if cur_cmd.name in PRE_INSTANCE_FUNCTIONS:
+ mod_string = mod_string.replace(cur_cmd.name[2:] + '(\n', cur_cmd.name[2:] + '(\n const Vk' + cur_cmd.name[2:] + 'Chain* chain,\n')
+
if (cur_cmd.protect != None):
terminators += '#ifdef %s\n' % cur_cmd.protect