Lines Matching defs:instance
88 // all entrypoints on the instance chain need to be locked except GPA
143 // Wrapper around opendir so that the dirent_on_windows gets the instance it needs
145 DIR *loader_opendir(const struct loader_instance *instance, const char *name) {
147 return opendir(instance ? &instance->alloc_callbacks : NULL, name);
149 (void)instance;
155 int loader_closedir(const struct loader_instance *instance, DIR *dir) {
157 return closedir(instance ? &instance->alloc_callbacks : NULL, dir);
159 (void)instance;
200 VKAPI_ATTR VkResult VKAPI_CALL vkSetInstanceDispatch(VkInstance instance, void *object) {
201 struct loader_instance *inst = loader_get_instance(instance);
1135 // instance chain and will contain the necessary logic
1155 // Check if a user wants to disable the instance extension filtering behavior
1547 // Skip this step if inst is NULL, aka when this function is being called before instance creation
2082 // Add any instance and device extensions from component layers to this layer
2093 loader_log(inst, VULKAN_LOADER_DEBUG_BIT, 0, "Meta-layer %s component layer %s adding instance extension %s",
2146 "Removing meta-layer %s from instance layer list since it appears invalid.", prop->info.layerName);
2568 // Read in the pre-instance stuff
4001 // Global functions - Do not need a valid instance handle to query
4032 // vkGetInstanceProcAddr This is because VK_EXT_debug_utils is an instance level extension with device level functions, and
4132 struct loader_instance *loader_get_instance(const VkInstance instance) {
4134 // there is no guarantee the instance is still a loader_instance* after any
4135 // layers which wrap the instance object.
4137 struct loader_instance *ptr_instance = (struct loader_instance *)instance;
4138 if (VK_NULL_HANDLE == instance || LOADER_MAGIC_NUMBER != ptr_instance->magic) {
4141 disp = loader_get_instance_layer_dispatch(instance);
4256 assert(inst && "Cannot have null instance");
4339 // Can only setup debug marker as debug utils is an instance extensions.
4361 VKAPI_ATTR VkResult VKAPI_CALL loader_layer_create_device(VkInstance instance, VkPhysicalDevice physicalDevice,
4370 if (instance != VK_NULL_HANDLE) {
4371 inst = loader_get_instance(instance);
4391 (PFN_vkEnumerateDeviceExtensionProperties)layerGIPA(instance, "vkEnumerateDeviceExtensionProperties");
4424 // Initialize any device extension dispatch entry's from the instance list
4430 dev->loader_dispatch.core_dispatch.GetDeviceProcAddr, inst->instance, *pDevice);
4504 // The instance chain is terminated by a loader function
4545 // Create instance chain of enabled layers
4658 loader_log(inst, VULKAN_LOADER_INFO_BIT | VULKAN_LOADER_LAYER_BIT, 0, "Insert instance layer \"%s\" (%s)",
4784 inst->instance = *created_instance;
4924 // Create instance chain of enabled layers
5003 PFN_vkCreateDevice fpCreateDevice = (PFN_vkCreateDevice)nextGIPA(inst->instance, "vkCreateDevice");
5172 // Check if a user wants to disable the instance extension filtering behavior
5192 "loader_validate_instance_extensions: Extension %s not found in list of known instance extensions.",
5297 "terminator_CreateInstance: Loader instance pointer null encountered. Possibly set by active layer. (Policy "
5307 // what the application requested, and thus will increase the instance version to a level that suites their needs.
5417 // At least one ICD supports this, so the instance should be able to support it
5480 // Create an instance, substituting the version to 1.0 if necessary
5499 ptr_instance->icd_tramp_list.scanned_list[i].CreateInstance(&icd_create_info, pAllocator, &(icd_term->instance));
5558 // instance to have it
5574 // If no ICDs were added to instance list and res is unchanged from it's initial value, the loader was unable to
5594 if (NULL != icd_term->instance) {
5595 icd_term->dispatch.DestroyInstance(icd_term->instance, pAllocator);
5615 VKAPI_ATTR void VKAPI_CALL terminator_DestroyInstance(VkInstance instance, const VkAllocationCallbacks *pAllocator) {
5616 struct loader_instance *ptr_instance = loader_get_instance(instance);
5623 // Remove this instance from the list of instances:
5629 // Remove this instance from the list:
5642 if (icd_terms->instance) {
5643 icd_terms->dispatch.DestroyInstance(icd_terms->instance, pAllocator);
5646 icd_terms->instance = VK_NULL_HANDLE;
6261 res = icd_term->dispatch.EnumeratePhysicalDevices(icd_term->instance, &icd_phys_dev_array[icd_idx].device_count, NULL);
6279 res = icd_term->dispatch.EnumeratePhysicalDevices(icd_term->instance, &(icd_phys_dev_array[icd_idx].device_count),
6495 VKAPI_ATTR VkResult VKAPI_CALL terminator_EnumeratePhysicalDevices(VkInstance instance, uint32_t *pPhysicalDeviceCount,
6497 struct loader_instance *inst = (struct loader_instance *)instance;
6624 // This case is during the call down the instance chain with pLayerName == NULL and pProperties == NULL
6884 VkInstance instance, uint32_t *pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties *pPhysicalDeviceGroupProperties) {
6885 struct loader_instance *inst = (struct loader_instance *)instance;
6912 res = icd_term->dispatch.EnumeratePhysicalDevices(icd_term->instance, &cur_icd_group_count, NULL);
6922 res = fpEnumeratePhysicalDeviceGroups(icd_term->instance, &cur_icd_group_count, NULL);
6944 // in the instance for the Terminator code.
6982 icd_term->dispatch.EnumeratePhysicalDevices(icd_term->instance, &count_this_time, NULL);
6994 res = icd_term->dispatch.EnumeratePhysicalDevices(icd_term->instance, &count_this_time, phys_dev_array);
7013 res = fpEnumeratePhysicalDeviceGroups(icd_term->instance, &count_this_time, NULL);
7025 res = fpEnumeratePhysicalDeviceGroups(icd_term->instance, &count_this_time,
7057 res = fpEnumeratePhysicalDeviceGroups(icd_term->instance, &count_this_time, tmp_group_props);