#include "libANGLE/renderer/vulkan/vk_caps_utils.h"
#include <type_traits>
#include "common/system_utils.h"
#include "common/utilities.h"
#include "libANGLE/Caps.h"
#include "libANGLE/formatutils.h"
#include "libANGLE/renderer/driver_utils.h"
#include "libANGLE/renderer/vulkan/DisplayVk.h"
#include "libANGLE/renderer/vulkan/vk_cache_utils.h"
#include "libANGLE/renderer/vulkan/vk_renderer.h"
#include "vk_format_utils.h"
namespace
{
constexpr unsigned int kComponentsPerVector = …;
constexpr bool kEnableLogMissingExtensionsForGLES32 = …;
}
namespace rx
{
namespace vk
{
namespace
{
bool FormatReinterpretationSupported(const std::vector<GLenum> &optionalSizedFormats,
const Renderer *renderer,
bool checkLinearColorspace)
{ … }
bool GetTextureSRGBDecodeSupport(const Renderer *renderer)
{ … }
bool GetTextureSRGBOverrideSupport(const Renderer *renderer,
const gl::Extensions &supportedExtensions)
{ … }
bool CanSupportYuvInternalFormat(const Renderer *renderer)
{ … }
uint32_t GetTimestampValidBits(const std::vector<VkQueueFamilyProperties> &queueFamilyProperties,
uint32_t queueFamilyIndex)
{ … }
bool CanSupportGPUShader5(const VkPhysicalDeviceFeatures &features)
{ … }
ANGLE_INLINE std::vector<bool> GetRequiredGLES32ExtensionList(
const gl::Extensions &nativeExtensions)
{ … }
void LogMissingExtensionsForGLES32(const gl::Extensions &nativeExtensions)
{ … }
}
void Renderer::ensureCapsInitialized() const
{ … }
bool CanSupportGLES32(const gl::Extensions &nativeExtensions)
{ … }
bool CanSupportTransformFeedbackExtension(
const VkPhysicalDeviceTransformFeedbackFeaturesEXT &xfbFeatures)
{ … }
bool CanSupportTransformFeedbackEmulation(const VkPhysicalDeviceFeatures &features)
{ … }
}
namespace egl_vk
{
namespace
{
EGLint ComputeMaximumPBufferPixels(const VkPhysicalDeviceProperties &physicalDeviceProperties)
{ … }
EGLint GetMatchFormat(GLenum internalFormat)
{ … }
egl::Config GenerateDefaultConfig(DisplayVk *display,
const gl::InternalFormat &colorFormat,
const gl::InternalFormat &depthStencilFormat,
EGLint sampleCount)
{ … }
}
egl::ConfigSet GenerateConfigs(const GLenum *colorFormats,
size_t colorFormatsCount,
const GLenum *depthStencilFormats,
size_t depthStencilFormatCount,
DisplayVk *display)
{ … }
}
}