1// Copyright (c) 2014-2020 Khronos Group.
2//
3// SPDX-License-Identifier: CC-BY-4.0
4
5[[capabilities-object-refresh]]
6== Object Refresh Capabilities
7
8[open,refpage='vkGetPhysicalDeviceRefreshableObjectTypesKHR',desc='Query refreshable objects',type='protos']
9--
10To query the set of object types that require periodic refreshing, call:
11
12include::{generated}/api/protos/vkGetPhysicalDeviceRefreshableObjectTypesKHR.adoc[]
13
14  * pname:physicalDevice is the physical device from which to query the set
15    of refreshable object types.
16  * pname:pRefreshableObjectTypeCount is a pointer to an integer related to
17    the number of refreshable object types available or queried, as
18    described below.
19  * pname:pRefreshableObjectTypes is either `NULL` or a pointer to an array
20    of elink:VkObjectType values, indicating the supported refreshable
21    object types.
22
23If pname:pRefreshableObjectTypes is `NULL`, then the number of refreshable
24object types supported for the given pname:physicalDevice is returned in
25pname:pRefreshableObjectTypeCount.
26Otherwise, pname:pRefreshableObjectTypeCount must: point to a variable set
27by the user to the number of elements in the pname:pRefreshableObjectTypes
28array, and on return the variable is overwritten with the number of object
29types actually written to pname:pRefreshableObjectTypes.
30If the value of pname:pRefreshableObjectTypeCount is less than the number of
31refreshable object types supported, at most
32pname:pRefreshableObjectTypeCount object types will be written, and
33ename:VK_INCOMPLETE will be returned instead of ename:VK_SUCCESS, to
34indicate that not all the available object types were returned.
35
36include::{generated}/validity/protos/vkGetPhysicalDeviceRefreshableObjectTypesKHR.adoc[]
37--
38