diff options
| author | Lenny Komow <lenny@lunarg.com> | 2017-12-19 16:38:37 -0700 |
|---|---|---|
| committer | Lenny Komow <lenny@lunarg.com> | 2018-01-09 14:11:20 -0700 |
| commit | dd2c1dd9385616e97b719e28accab712c5d419c4 (patch) | |
| tree | 368f35f1af129303ba5e4ce423a0009f866c92b7 /scripts | |
| parent | 10b16b2689a5284edb5baeb08490f894eb923a42 (diff) | |
| download | usermoji-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.py | 6 |
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 |
