#ifndef LIBANGLE_RENDERER_VULKAN_VK_UTILS_H_
#define LIBANGLE_RENDERER_VULKAN_VK_UTILS_H_
#include <atomic>
#include <limits>
#include <queue>
#include "GLSLANG/ShaderLang.h"
#include "common/FixedVector.h"
#include "common/Optional.h"
#include "common/PackedEnums.h"
#include "common/SimpleMutex.h"
#include "common/WorkerThread.h"
#include "common/backtrace_utils.h"
#include "common/debug.h"
#include "libANGLE/Error.h"
#include "libANGLE/Observer.h"
#include "libANGLE/angletypes.h"
#include "libANGLE/renderer/serial_utils.h"
#include "libANGLE/renderer/vulkan/SecondaryCommandBuffer.h"
#include "libANGLE/renderer/vulkan/SecondaryCommandPool.h"
#include "libANGLE/renderer/vulkan/VulkanSecondaryCommandBuffer.h"
#include "libANGLE/renderer/vulkan/vk_wrapper.h"
#include "platform/autogen/FeaturesVk_autogen.h"
#include "vulkan/vulkan_fuchsia_ext.h"
#define ANGLE_GL_OBJECTS_X(PROC) …
#define ANGLE_PRE_DECLARE_OBJECT(OBJ) …
namespace egl
{
class Display;
class Image;
class ShareGroup;
}
gl
#define ANGLE_PRE_DECLARE_VK_OBJECT(OBJ) …
namespace rx
{
class DisplayVk;
class ImageVk;
class ProgramExecutableVk;
class RenderbufferVk;
class RenderTargetVk;
class RenderPassCache;
class ShareGroupVk;
}
namespace angle
{
egl::Error ToEGL(Result result, EGLint errorCode);
}
rx
#define ANGLE_VK_TRY(context, command) …
#define ANGLE_VK_CHECK(context, test, error) …
#define ANGLE_VK_CHECK_MATH(context, result) …
#define ANGLE_VK_CHECK_ALLOC(context, result) …
#define ANGLE_VK_UNREACHABLE(context) …
#define VK_RESULT_TRY(command) …
#define VK_RESULT_CHECK(test, error) …
#define ANGLE_VK_VERSION_MAJOR_NVIDIA(version) …
#define ANGLE_VK_VERSION_MINOR_NVIDIA(version) …
#define ANGLE_VK_VERSION_SUB_MINOR_NVIDIA(version) …
#define ANGLE_VK_VERSION_PATCH_NVIDIA(version) …
#define ANGLE_VK_VERSION_MAJOR_WIN_INTEL(version) …
#define ANGLE_VK_VERSION_MINOR_WIN_INTEL(version) …
#endif