Specification
C Version:
C Implementation Specific Version:
WisResult wisVKInstanceQueryAdapters(
const WisVKInstance* self,
WisVKAdapterQuery* query);
WisResult wisDX12InstanceQueryAdapters(
const WisDX12Instance* self,
WisDX12AdapterQuery* query);
C++ Version:
namespace wis{
WIS_NODISCARD wis::AdapterQuery Instance::QueryAdapters(wis::AdapterPreference preference,
wis::Result& out_result) const noexcept;
}
C++ Implementation Specific Version:
namespace wis{
WIS_NODISCARD wis::VKAdapterQuery VKInstance::QueryAdapters(wis::AdapterPreference preference,
wis::Result& out_result) const noexcept;
WIS_NODISCARD wis::DX12AdapterQuery DX12Instance::QueryAdapters(wis::AdapterPreference preference,
wis::Result& out_result) const noexcept;
}
Parameters
- this
self self is a pointer to the valid WisInstance instance.
preference indicates the order in which adapters are listed.
query points to WisAdapterQuery, which is initialized on success.
- return denoting the outcome of operation.
Description
This function creates a WisAdapterQuery object that can be used to enumerate the available adapters on the system. preference influences the order in which adapters are listed, allowing applications to prioritize certain types of adapters based on their needs. preference does not guarantee the real adapter order, as the underlying graphics APIs may have their own heuristics for adapter selection. The created AdapterQuery object must be destroyed with wisDestroyAdapterQuery when no longer needed. The order of adapters depends on preference: For MinConsumption
- DirectX 12: Integrated, Discrete, External, Software;
- Vulkan: Integrated GPU, Discrete GPU, Virtual GPU, CPU. For Performance
- DirectX 12: External, Discrete, Integrated, Software;
- Vulkan: Discrete GPU, Integrated GPU, Virtual GPU, CPU.
See Also