UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FVulkanInstanceExtension Class Reference

#include <VulkanExtensions.h>

+ Inheritance diagram for FVulkanInstanceExtension:

Public Member Functions

 FVulkanInstanceExtension (const ANSICHAR *InExtensionName, int32 InEnabledInCode, uint32 InPromotedVersion=VULKAN_EXTENSION_NOT_PROMOTED, TUniqueFunction< void(FOptionalVulkanInstanceExtensions &ExtensionFlags)> &&InFlagSetter=nullptr, EExtensionActivation InActivation=FVulkanExtensionBase::AutoActivate)
 
virtual void PreCreateInstance (VkInstanceCreateInfo &CreateInfo, FOptionalVulkanInstanceExtensions &ExtensionFlags)
 
- Public Member Functions inherited from FVulkanExtensionBase
 FVulkanExtensionBase (const ANSICHAR *InExtensionName, int32 InEnabledInCode, uint32 InPromotedVersion, EExtensionActivation InActivation)
 
virtual ~FVulkanExtensionBase ()
 
void SetSupported ()
 
void SetActivated ()
 
bool SetCore (uint32 ApiVersion)
 
const ANSICHARGetExtensionName () const
 
bool IsEnabled () const
 
bool IsSupported () const
 
bool IsCore ()
 
bool InUse () const
 

Static Public Member Functions

static FVulkanInstanceExtensionArray GetUESupportedInstanceExtensions (uint32 ApiVersion)
 
static TArray< VkExtensionPropertiesGetDriverSupportedInstanceExtensions (const ANSICHAR *LayerName=nullptr)
 
- Static Public Member Functions inherited from FVulkanExtensionBase
template<typename ExtensionType >
static int32 FindExtension (const TArray< TUniquePtr< ExtensionType > > &UEExtensions, const ANSICHAR *ExtensionName)
 

Static Public Attributes

static TArray< const ANSICHAR * > ExternalExtensions
 

Protected Attributes

TUniqueFunction< void(FOptionalVulkanInstanceExtensions &ExtensionFlags)> FlagSetter
 
- Protected Attributes inherited from FVulkanExtensionBase
const ANSICHARExtensionName
 
const uint32 PromotedVersion
 
bool bEnabledInCode
 
bool bSupported
 
bool bActivated
 
bool bCore
 

Additional Inherited Members

- Public Types inherited from FVulkanExtensionBase
enum  EExtensionActivation : uint8 { AutoActivate , ManuallyActivate }
 

Constructor & Destructor Documentation

◆ FVulkanInstanceExtension()

FVulkanInstanceExtension::FVulkanInstanceExtension ( const ANSICHAR InExtensionName,
int32  InEnabledInCode,
uint32  InPromotedVersion = VULKAN_EXTENSION_NOT_PROMOTED,
TUniqueFunction< void(FOptionalVulkanInstanceExtensions &ExtensionFlags)> &&  InFlagSetter = nullptr,
EExtensionActivation  InActivation = FVulkanExtensionBase::AutoActivate 
)
inline

Member Function Documentation

◆ GetDriverSupportedInstanceExtensions()

TArray< VkExtensionProperties > FVulkanInstanceExtension::GetDriverSupportedInstanceExtensions ( const ANSICHAR LayerName = nullptr)
static

◆ GetUESupportedInstanceExtensions()

FVulkanInstanceExtensionArray FVulkanInstanceExtension::GetUESupportedInstanceExtensions ( uint32  ApiVersion)
static

◆ PreCreateInstance()

virtual void FVulkanInstanceExtension::PreCreateInstance ( VkInstanceCreateInfo CreateInfo,
FOptionalVulkanInstanceExtensions ExtensionFlags 
)
inlinevirtual

Member Data Documentation

◆ ExternalExtensions

TArray< const ANSICHAR * > FVulkanInstanceExtension::ExternalExtensions
static

◆ FlagSetter

TUniqueFunction<void(FOptionalVulkanInstanceExtensions& ExtensionFlags)> FVulkanInstanceExtension::FlagSetter
protected

The documentation for this class was generated from the following files: