Program Listing for File VkTypes.cpp¶
↰ Return to documentation for file (Source\Azura\RenderSystem\Src\Vulkan\VkTypes.cpp
)
#include "Vulkan/VkTypes.h"
namespace Azura {
namespace Vulkan {
bool VkQueueIndices::IsComplete() const {
const bool basicRequirement = m_graphicsFamily >= 0 && m_presentFamily >= 0;
if (m_isTransferQueueRequired) {
return basicRequirement && m_transferFamily >= 0;
}
return basicRequirement;
}
std::array<U32, 2> VkQueueIndices::GetIndicesArray() const {
return {uint32_t(m_graphicsFamily), uint32_t(m_transferFamily)};
}
U32 VkQueueIndices::GetActiveSize() const {
return m_isTransferQueueRequired ? 2 : 1;
}
SwapChainDeviceSupport::SwapChainDeviceSupport(Memory::Allocator& allocator)
: m_formats(allocator), m_presentModes(allocator) {}
bool SwapChainDeviceSupport::IsSupported() const {
return !m_formats.IsEmpty() && !m_presentModes.IsEmpty();
}
} // namespace Vulkan
} // namespace Azura