diff options
| author | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-06-01 14:52:57 -0600 |
|---|---|---|
| committer | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-06-18 10:18:19 -0600 |
| commit | 8d4869ee12e901b8ec7d47251b1ad8da118968a8 (patch) | |
| tree | 8afb198c1d549e6c3dfe6ceff3067a84bdf07c4b | |
| parent | 4f6f994aa14f7994952cfe19435032f0578abfd2 (diff) | |
| download | usermoji-8d4869ee12e901b8ec7d47251b1ad8da118968a8.tar.xz | |
layers: Update generator for DEBUG_REPORT
Generated layers that support DEBUG_REPORT
now need to intercept CreateInstance and call the
appropriate DEBUG_REPORT layer helper functions.
| -rwxr-xr-x | vk-layer-generate.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/vk-layer-generate.py b/vk-layer-generate.py index d3488f66..c438c65c 100755 --- a/vk-layer-generate.py +++ b/vk-layer-generate.py @@ -453,9 +453,12 @@ class Subcommand(object): if 0 != len(instance_extensions): for ext_name in instance_extensions: - func_body.append(' else if (!strcmp("%s", funcName))\n' - ' return %s;' % (ext_name, ext_name)) - func_body.append(" else {\n" + func_body.append(" {\n" + " void *fptr;\n" + " fptr = %s(funcName);\n" + " if (fptr) return fptr;\n" + " }\n" % ext_name) + func_body.append(" {\n" " VkLayerInstanceDispatchTable **ppDisp = (VkLayerInstanceDispatchTable **) instance;\n" " VkLayerInstanceDispatchTable* pTable = tableInstanceMap[*ppDisp];\n" " if (pTable->GetInstanceProcAddr == NULL)\n" @@ -1490,7 +1493,8 @@ class ObjectTrackerSubcommand(Subcommand): body = [self._generate_layer_initialization(True, lockname='obj'), self._generate_dispatch_entrypoints("VK_LAYER_EXPORT"), self._generate_extensions(), - self._generate_layer_gpa_function(extensions=['objTrackGetObjectsCount', 'objTrackGetObjects', 'objTrackGetObjectsOfTypeCount', 'objTrackGetObjectsOfType'])] + self._generate_layer_gpa_function(extensions=['objTrackGetObjectsCount', 'objTrackGetObjects', 'objTrackGetObjectsOfTypeCount', 'objTrackGetObjectsOfType'], + instance_extensions=['msg_callback_get_proc_addr'])] return "\n\n".join(body) class ThreadingSubcommand(Subcommand): @@ -1678,7 +1682,10 @@ class ThreadingSubcommand(Subcommand): self.layer_name = "Threading" body = [self._generate_layer_initialization(True, lockname='threading', condname='threading'), self._generate_dispatch_entrypoints("VK_LAYER_EXPORT"), - self._generate_layer_gpa_function()] + self._generate_layer_gpa_function(extensions=[], + instance_extensions=['msg_callback_get_proc_addr']), + self._gen_create_msg_callback(), + self._gen_destroy_msg_callback()] return "\n\n".join(body) def main(): |
