@@ -146,35 +146,93 @@ std::vector<const char*> cloneExtensionList(
146146 const char * const * extensionList);
147147
148148/* * See Vulkan API for documentation. */
149- PFN_vkVoidFunction vkGetDeviceProcAddr_default (
149+ PFN_vkVoidFunction layer_vkGetDeviceProcAddr_default (
150150 VkDevice device,
151151 const char * pName);
152152
153+ /* Match-all template to use default implementation. */
154+ template <typename T>
155+ VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL layer_vkGetDeviceProcAddr (
156+ VkDevice device,
157+ const char * pName
158+ ) {
159+ return layer_vkGetDeviceProcAddr_default (device, pName);
160+ }
161+
153162/* * See Vulkan API for documentation. */
154- PFN_vkVoidFunction vkGetInstanceProcAddr_default (
163+ PFN_vkVoidFunction layer_vkGetInstanceProcAddr_default (
155164 VkInstance instance,
156165 const char * pName);
157166
167+ /* Match-all template to use default implementation. */
168+ template <typename T>
169+ VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL layer_vkGetInstanceProcAddr (
170+ VkInstance instance,
171+ const char * pName
172+ ) {
173+ return layer_vkGetInstanceProcAddr_default (instance, pName);
174+ }
175+
158176/* * See Vulkan API for documentation. */
159- VkResult vkEnumerateInstanceExtensionProperties_default (
177+ VkResult layer_vkEnumerateInstanceExtensionProperties_default (
160178 const char * pLayerName,
161179 uint32_t * pPropertyCount,
162180 VkExtensionProperties* pProperties);
163181
182+ /* Match-all template to use default implementation. */
183+ template <typename T>
184+ VKAPI_ATTR VkResult VKAPI_CALL layer_vkEnumerateInstanceExtensionProperties (
185+ const char * pLayerName,
186+ uint32_t * pPropertyCount,
187+ VkExtensionProperties* pProperties
188+ ) {
189+ return layer_vkEnumerateInstanceExtensionProperties_default (pLayerName, pPropertyCount, pProperties);
190+ }
191+
164192/* * See Vulkan API for documentation. */
165- VkResult vkEnumerateDeviceExtensionProperties_default (
193+ VkResult layer_vkEnumerateDeviceExtensionProperties_default (
166194 VkPhysicalDevice gpu,
167195 const char * pLayerName,
168196 uint32_t * pPropertyCount,
169197 VkExtensionProperties* pProperties);
170198
199+ /* Match-all template to use default implementation. */
200+ template <typename T>
201+ VKAPI_ATTR VkResult VKAPI_CALL layer_vkEnumerateDeviceExtensionProperties (
202+ VkPhysicalDevice gpu,
203+ const char * pLayerName,
204+ uint32_t * pPropertyCount,
205+ VkExtensionProperties* pProperties
206+ ) {
207+ return layer_vkEnumerateDeviceExtensionProperties_default (gpu, pLayerName, pPropertyCount, pProperties);
208+ }
209+
171210/* * See Vulkan API for documentation. */
172- VkResult vkEnumerateInstanceLayerProperties_default (
211+ VkResult layer_vkEnumerateInstanceLayerProperties_default (
173212 uint32_t * pPropertyCount,
174213 VkLayerProperties* pProperties);
175214
215+ /* Match-all template to use default implementation. */
216+ template <typename T>
217+ VKAPI_ATTR VkResult VKAPI_CALL layer_vkEnumerateInstanceLayerProperties (
218+ uint32_t * pPropertyCount,
219+ VkLayerProperties* pProperties
220+ ) {
221+ return layer_vkEnumerateInstanceLayerProperties_default (pPropertyCount, pProperties);
222+ }
223+
176224/* * See Vulkan API for documentation. */
177- VkResult vkEnumerateDeviceLayerProperties_default (
225+ VkResult layer_vkEnumerateDeviceLayerProperties_default (
178226 VkPhysicalDevice gpu,
179227 uint32_t * pPropertyCount,
180228 VkLayerProperties* pProperties);
229+
230+ /* Match-all template to use default implementation. */
231+ template <typename T>
232+ VKAPI_ATTR VkResult VKAPI_CALL layer_vkEnumerateDeviceLayerProperties (
233+ VkPhysicalDevice gpu,
234+ uint32_t * pPropertyCount,
235+ VkLayerProperties* pProperties
236+ ) {
237+ return layer_vkEnumerateDeviceLayerProperties_default (gpu, pPropertyCount, pProperties);
238+ }
0 commit comments