Commit 528ae31e by Jamie Madill Committed by Commit Bot

Vulkan: Move ExtensionNameList out of the class.

Mostly a consistency change where now the list never needs to be prefixed with RendererVk:: and always prefixed with vk::. Also we can respect the style guide's member ordering suggestion. Bug: b/172704839 Change-Id: I758bf324573e5585be6842b3455feab0c23c9d4a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2525142Reviewed-by: 's avatarCourtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: 's avatarTim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
parent c8a7c033
...@@ -95,14 +95,14 @@ bool StrLess(const char *a, const char *b) ...@@ -95,14 +95,14 @@ bool StrLess(const char *a, const char *b)
return strcmp(a, b) < 0; return strcmp(a, b) < 0;
} }
bool ExtensionFound(const char *needle, const RendererVk::ExtensionNameList &haystack) bool ExtensionFound(const char *needle, const vk::ExtensionNameList &haystack)
{ {
// NOTE: The list must be sorted. // NOTE: The list must be sorted.
return std::binary_search(haystack.begin(), haystack.end(), needle, StrLess); return std::binary_search(haystack.begin(), haystack.end(), needle, StrLess);
} }
VkResult VerifyExtensionsPresent(const RendererVk::ExtensionNameList &haystack, VkResult VerifyExtensionsPresent(const vk::ExtensionNameList &haystack,
const RendererVk::ExtensionNameList &needles) const vk::ExtensionNameList &needles)
{ {
// NOTE: The lists must be sorted. // NOTE: The lists must be sorted.
if (std::includes(haystack.begin(), haystack.end(), needles.begin(), needles.end(), StrLess)) if (std::includes(haystack.begin(), haystack.end(), needles.begin(), needles.end(), StrLess))
...@@ -673,7 +673,7 @@ angle::Result RendererVk::initialize(DisplayVk *displayVk, ...@@ -673,7 +673,7 @@ angle::Result RendererVk::initialize(DisplayVk *displayVk,
instanceExtensionProps.data() + previousExtensionCount)); instanceExtensionProps.data() + previousExtensionCount));
} }
ExtensionNameList instanceExtensionNames; vk::ExtensionNameList instanceExtensionNames;
if (!instanceExtensionProps.empty()) if (!instanceExtensionProps.empty())
{ {
for (const VkExtensionProperties &i : instanceExtensionProps) for (const VkExtensionProperties &i : instanceExtensionProps)
...@@ -683,7 +683,7 @@ angle::Result RendererVk::initialize(DisplayVk *displayVk, ...@@ -683,7 +683,7 @@ angle::Result RendererVk::initialize(DisplayVk *displayVk,
std::sort(instanceExtensionNames.begin(), instanceExtensionNames.end(), StrLess); std::sort(instanceExtensionNames.begin(), instanceExtensionNames.end(), StrLess);
} }
ExtensionNameList enabledInstanceExtensions; vk::ExtensionNameList enabledInstanceExtensions;
enabledInstanceExtensions.push_back(VK_KHR_SURFACE_EXTENSION_NAME); enabledInstanceExtensions.push_back(VK_KHR_SURFACE_EXTENSION_NAME);
enabledInstanceExtensions.push_back(wsiExtension); enabledInstanceExtensions.push_back(wsiExtension);
mEnableDebugUtils = mEnableValidationLayers && mEnableDebugUtils = mEnableValidationLayers &&
...@@ -937,7 +937,7 @@ angle::Result RendererVk::initialize(DisplayVk *displayVk, ...@@ -937,7 +937,7 @@ angle::Result RendererVk::initialize(DisplayVk *displayVk,
return angle::Result::Continue; return angle::Result::Continue;
} }
void RendererVk::queryDeviceExtensionFeatures(const ExtensionNameList &deviceExtensionNames) void RendererVk::queryDeviceExtensionFeatures(const vk::ExtensionNameList &deviceExtensionNames)
{ {
// Default initialize all extension features to false. // Default initialize all extension features to false.
mLineRasterizationFeatures = {}; mLineRasterizationFeatures = {};
...@@ -1162,7 +1162,7 @@ angle::Result RendererVk::initializeDevice(DisplayVk *displayVk, uint32_t queueF ...@@ -1162,7 +1162,7 @@ angle::Result RendererVk::initializeDevice(DisplayVk *displayVk, uint32_t queueF
deviceExtensionProps.data() + previousExtensionCount)); deviceExtensionProps.data() + previousExtensionCount));
} }
ExtensionNameList deviceExtensionNames; vk::ExtensionNameList deviceExtensionNames;
if (!deviceExtensionProps.empty()) if (!deviceExtensionProps.empty())
{ {
ASSERT(deviceExtensionNames.size() <= deviceExtensionProps.size()); ASSERT(deviceExtensionNames.size() <= deviceExtensionProps.size());
...@@ -1173,7 +1173,7 @@ angle::Result RendererVk::initializeDevice(DisplayVk *displayVk, uint32_t queueF ...@@ -1173,7 +1173,7 @@ angle::Result RendererVk::initializeDevice(DisplayVk *displayVk, uint32_t queueF
std::sort(deviceExtensionNames.begin(), deviceExtensionNames.end(), StrLess); std::sort(deviceExtensionNames.begin(), deviceExtensionNames.end(), StrLess);
} }
ExtensionNameList enabledDeviceExtensions; vk::ExtensionNameList enabledDeviceExtensions;
enabledDeviceExtensions.push_back(VK_KHR_SWAPCHAIN_EXTENSION_NAME); enabledDeviceExtensions.push_back(VK_KHR_SWAPCHAIN_EXTENSION_NAME);
// Queues: map low, med, high priority to whatever is supported up to 3 queues // Queues: map low, med, high priority to whatever is supported up to 3 queues
...@@ -1737,7 +1737,8 @@ gl::Version RendererVk::getMaxConformantESVersion() const ...@@ -1737,7 +1737,8 @@ gl::Version RendererVk::getMaxConformantESVersion() const
return LimitVersionTo(getMaxSupportedESVersion(), {3, 1}); return LimitVersionTo(getMaxSupportedESVersion(), {3, 1});
} }
void RendererVk::initFeatures(DisplayVk *displayVk, const ExtensionNameList &deviceExtensionNames) void RendererVk::initFeatures(DisplayVk *displayVk,
const vk::ExtensionNameList &deviceExtensionNames)
{ {
if (displayVk->getState().featuresAllDisabled) if (displayVk->getState().featuresAllDisabled)
{ {
......
...@@ -50,6 +50,9 @@ class FramebufferVk; ...@@ -50,6 +50,9 @@ class FramebufferVk;
namespace vk namespace vk
{ {
struct Format; struct Format;
static constexpr size_t kMaxExtensionNames = 200;
using ExtensionNameList = angle::FixedVector<const char *, kMaxExtensionNames>;
} // namespace vk } // namespace vk
// Supports one semaphore from current surface, and one semaphore passed to // Supports one semaphore from current surface, and one semaphore passed to
...@@ -233,9 +236,6 @@ class RendererVk : angle::NonCopyable ...@@ -233,9 +236,6 @@ class RendererVk : angle::NonCopyable
} }
void handleDeviceLost() { mCommandProcessor.handleDeviceLost(); } void handleDeviceLost() { mCommandProcessor.handleDeviceLost(); }
static constexpr size_t kMaxExtensionNames = 200;
using ExtensionNameList = angle::FixedVector<const char *, kMaxExtensionNames>;
angle::Result getPipelineCache(vk::PipelineCache **pipelineCache); angle::Result getPipelineCache(vk::PipelineCache **pipelineCache);
void onNewGraphicsPipeline() void onNewGraphicsPipeline()
{ {
...@@ -325,9 +325,9 @@ class RendererVk : angle::NonCopyable ...@@ -325,9 +325,9 @@ class RendererVk : angle::NonCopyable
angle::Result initializeDevice(DisplayVk *displayVk, uint32_t queueFamilyIndex); angle::Result initializeDevice(DisplayVk *displayVk, uint32_t queueFamilyIndex);
void ensureCapsInitialized() const; void ensureCapsInitialized() const;
void queryDeviceExtensionFeatures(const ExtensionNameList &deviceExtensionNames); void queryDeviceExtensionFeatures(const vk::ExtensionNameList &deviceExtensionNames);
void initFeatures(DisplayVk *display, const ExtensionNameList &extensions); void initFeatures(DisplayVk *display, const vk::ExtensionNameList &extensions);
void initPipelineCacheVkKey(); void initPipelineCacheVkKey();
angle::Result initPipelineCache(DisplayVk *display, angle::Result initPipelineCache(DisplayVk *display,
vk::PipelineCache *pipelineCache, vk::PipelineCache *pipelineCache,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment