tp::ApplicationSetup struct

Used as configuration for creating a new tp::Application object.

Constructors, destructors, conversion operators

ApplicationSetup(ApplicationIdentifier applicationIdentifier = {}, DebugReportHandler* debugReportHandler = nullptr, ArrayView<const char*const> extensions = {}, ArrayView<const char*const> layers = {}, Version apiVersion = Version::getMaxUsedVulkanAPIVersion(), ArrayView<VkLayerSettingEXT> layerSettingsEXT = {}, void* vkCreateInfoExtPtr = nullptr)

Function documentation

tp::ApplicationSetup::ApplicationSetup(ApplicationIdentifier applicationIdentifier = {}, DebugReportHandler* debugReportHandler = nullptr, ArrayView<const char*const> extensions = {}, ArrayView<const char*const> layers = {}, Version apiVersion = Version::getMaxUsedVulkanAPIVersion(), ArrayView<VkLayerSettingEXT> layerSettingsEXT = {}, void* vkCreateInfoExtPtr = nullptr)

Parameters
applicationIdentifier The optional identification of your application.
debugReportHandler If not nullptr, points to the object responsible for reporting debug and validation information. If nullptr, reporting of debug information will be disabled.
extensions The set of application extensions or Vulkan instance extensions to enable. The extensions must be available, as can be checked with tp::Application::isExtensionAvailable. See tp::ApplicationExtension.
layers The set of additional Vulkan instance layers to enable. The layers must be available, as can be checked with tp::Application::isLayerAvailable.
apiVersion The highest Vulkan API version that this application will use. Only the major and minor versions are considered. Should be equal or higher than tp::Version::getMaxUsedVulkanAPIVersion.
layerSettingsEXT Layer-specific settings that can be used to configure enabled layers. Requires the tp::ApplicationExtension::EXT_LayerSettings extension to be among the list of extensions to enable.
vkCreateInfoExtPtr A pointer to additional Vulkan structures to be passed in pNext of VkInstanceCreateInfo.