skyline/app/libraries/VulkanHpp/vulkan/internal/bitmasks.hpp
◱ PixelyIon 500b49d329 Add Vulkan-Hpp to libraries
This commit adds Vulkan-Hpp as a library to the project. The headers are from a modified version of `VulkanHppGenerator`. They are broken into multiple files to avoid exceeding the Intellisense file size limit of Android Studio.
2020-04-23 22:26:27 +05:30

3616 lines
148 KiB
C++

// Copyright (c) 2015-2019 The Khronos Group Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// ---- Exceptions to the Apache 2.0 License: ----
//
// As an exception, if you use this Software to generate code and portions of
// this Software are embedded into the generated code as a result, you may
// redistribute such product without providing attribution as would otherwise
// be required by Sections 4(a), 4(b) and 4(d) of the License.
//
// In addition, if you combine or link code generated by this Software with
// software that is licensed under the GPLv2 or the LGPL v2.0 or 2.1
// ("`Combined Software`") and if a court of competent jurisdiction determines
// that the patent provision (Section 3), the indemnity provision (Section 9)
// or other Section of the License conflicts with the conditions of the
// applicable GPL or LGPL license, you may retroactively and prospectively
// choose to deem waived or otherwise exclude such Section(s) of the License,
// but only in their entirety and only with respect to the Combined Software.
//
// This header is generated from the Khronos Vulkan XML API Registry.
#pragma once
#include "enums.hpp"
namespace VULKAN_HPP_NAMESPACE
{
using AccessFlags = Flags<AccessFlagBits>;
template <> struct FlagTraits<AccessFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(AccessFlagBits::eIndirectCommandRead) | VkFlags(AccessFlagBits::eIndexRead) | VkFlags(AccessFlagBits::eVertexAttributeRead) | VkFlags(AccessFlagBits::eUniformRead) | VkFlags(AccessFlagBits::eInputAttachmentRead) | VkFlags(AccessFlagBits::eShaderRead) | VkFlags(AccessFlagBits::eShaderWrite) | VkFlags(AccessFlagBits::eColorAttachmentRead) | VkFlags(AccessFlagBits::eColorAttachmentWrite) | VkFlags(AccessFlagBits::eDepthStencilAttachmentRead) | VkFlags(AccessFlagBits::eDepthStencilAttachmentWrite) | VkFlags(AccessFlagBits::eTransferRead) | VkFlags(AccessFlagBits::eTransferWrite) | VkFlags(AccessFlagBits::eHostRead) | VkFlags(AccessFlagBits::eHostWrite) | VkFlags(AccessFlagBits::eMemoryRead) | VkFlags(AccessFlagBits::eMemoryWrite) | VkFlags(AccessFlagBits::eTransformFeedbackWriteEXT) | VkFlags(AccessFlagBits::eTransformFeedbackCounterReadEXT) | VkFlags(AccessFlagBits::eTransformFeedbackCounterWriteEXT) | VkFlags(AccessFlagBits::eConditionalRenderingReadEXT) | VkFlags(AccessFlagBits::eCommandProcessReadNVX) | VkFlags(AccessFlagBits::eCommandProcessWriteNVX) | VkFlags(AccessFlagBits::eColorAttachmentReadNoncoherentEXT) | VkFlags(AccessFlagBits::eShadingRateImageReadNV) | VkFlags(AccessFlagBits::eAccelerationStructureReadNV) | VkFlags(AccessFlagBits::eAccelerationStructureWriteNV) | VkFlags(AccessFlagBits::eFragmentDensityMapReadEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags operator|( AccessFlagBits bit0, AccessFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return AccessFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags operator&( AccessFlagBits bit0, AccessFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return AccessFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags operator^( AccessFlagBits bit0, AccessFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return AccessFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AccessFlags operator~( AccessFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( AccessFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( AccessFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & AccessFlagBits::eIndirectCommandRead ) result += "IndirectCommandRead | ";
if ( value & AccessFlagBits::eIndexRead ) result += "IndexRead | ";
if ( value & AccessFlagBits::eVertexAttributeRead ) result += "VertexAttributeRead | ";
if ( value & AccessFlagBits::eUniformRead ) result += "UniformRead | ";
if ( value & AccessFlagBits::eInputAttachmentRead ) result += "InputAttachmentRead | ";
if ( value & AccessFlagBits::eShaderRead ) result += "ShaderRead | ";
if ( value & AccessFlagBits::eShaderWrite ) result += "ShaderWrite | ";
if ( value & AccessFlagBits::eColorAttachmentRead ) result += "ColorAttachmentRead | ";
if ( value & AccessFlagBits::eColorAttachmentWrite ) result += "ColorAttachmentWrite | ";
if ( value & AccessFlagBits::eDepthStencilAttachmentRead ) result += "DepthStencilAttachmentRead | ";
if ( value & AccessFlagBits::eDepthStencilAttachmentWrite ) result += "DepthStencilAttachmentWrite | ";
if ( value & AccessFlagBits::eTransferRead ) result += "TransferRead | ";
if ( value & AccessFlagBits::eTransferWrite ) result += "TransferWrite | ";
if ( value & AccessFlagBits::eHostRead ) result += "HostRead | ";
if ( value & AccessFlagBits::eHostWrite ) result += "HostWrite | ";
if ( value & AccessFlagBits::eMemoryRead ) result += "MemoryRead | ";
if ( value & AccessFlagBits::eMemoryWrite ) result += "MemoryWrite | ";
if ( value & AccessFlagBits::eTransformFeedbackWriteEXT ) result += "TransformFeedbackWriteEXT | ";
if ( value & AccessFlagBits::eTransformFeedbackCounterReadEXT ) result += "TransformFeedbackCounterReadEXT | ";
if ( value & AccessFlagBits::eTransformFeedbackCounterWriteEXT ) result += "TransformFeedbackCounterWriteEXT | ";
if ( value & AccessFlagBits::eConditionalRenderingReadEXT ) result += "ConditionalRenderingReadEXT | ";
if ( value & AccessFlagBits::eCommandProcessReadNVX ) result += "CommandProcessReadNVX | ";
if ( value & AccessFlagBits::eCommandProcessWriteNVX ) result += "CommandProcessWriteNVX | ";
if ( value & AccessFlagBits::eColorAttachmentReadNoncoherentEXT ) result += "ColorAttachmentReadNoncoherentEXT | ";
if ( value & AccessFlagBits::eShadingRateImageReadNV ) result += "ShadingRateImageReadNV | ";
if ( value & AccessFlagBits::eAccelerationStructureReadNV ) result += "AccelerationStructureReadNV | ";
if ( value & AccessFlagBits::eAccelerationStructureWriteNV ) result += "AccelerationStructureWriteNV | ";
if ( value & AccessFlagBits::eFragmentDensityMapReadEXT ) result += "FragmentDensityMapReadEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
#ifdef VK_USE_PLATFORM_ANDROID_KHR
enum class AndroidSurfaceCreateFlagBitsKHR : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( AndroidSurfaceCreateFlagBitsKHR )
{
return "(void)";
}
using AndroidSurfaceCreateFlagsKHR = Flags<AndroidSurfaceCreateFlagBitsKHR>;
VULKAN_HPP_INLINE std::string to_string( AndroidSurfaceCreateFlagsKHR )
{
return "{}";
}
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
using AttachmentDescriptionFlags = Flags<AttachmentDescriptionFlagBits>;
template <> struct FlagTraits<AttachmentDescriptionFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(AttachmentDescriptionFlagBits::eMayAlias)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AttachmentDescriptionFlags operator|( AttachmentDescriptionFlagBits bit0, AttachmentDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return AttachmentDescriptionFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AttachmentDescriptionFlags operator&( AttachmentDescriptionFlagBits bit0, AttachmentDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return AttachmentDescriptionFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AttachmentDescriptionFlags operator^( AttachmentDescriptionFlagBits bit0, AttachmentDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return AttachmentDescriptionFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR AttachmentDescriptionFlags operator~( AttachmentDescriptionFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( AttachmentDescriptionFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( AttachmentDescriptionFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & AttachmentDescriptionFlagBits::eMayAlias ) result += "MayAlias | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using BufferCreateFlags = Flags<BufferCreateFlagBits>;
template <> struct FlagTraits<BufferCreateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(BufferCreateFlagBits::eSparseBinding) | VkFlags(BufferCreateFlagBits::eSparseResidency) | VkFlags(BufferCreateFlagBits::eSparseAliased) | VkFlags(BufferCreateFlagBits::eProtected) | VkFlags(BufferCreateFlagBits::eDeviceAddressCaptureReplayEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferCreateFlags operator|( BufferCreateFlagBits bit0, BufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return BufferCreateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferCreateFlags operator&( BufferCreateFlagBits bit0, BufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return BufferCreateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferCreateFlags operator^( BufferCreateFlagBits bit0, BufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return BufferCreateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferCreateFlags operator~( BufferCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( BufferCreateFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( BufferCreateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & BufferCreateFlagBits::eSparseBinding ) result += "SparseBinding | ";
if ( value & BufferCreateFlagBits::eSparseResidency ) result += "SparseResidency | ";
if ( value & BufferCreateFlagBits::eSparseAliased ) result += "SparseAliased | ";
if ( value & BufferCreateFlagBits::eProtected ) result += "Protected | ";
if ( value & BufferCreateFlagBits::eDeviceAddressCaptureReplayEXT ) result += "DeviceAddressCaptureReplayEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using BufferUsageFlags = Flags<BufferUsageFlagBits>;
template <> struct FlagTraits<BufferUsageFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(BufferUsageFlagBits::eTransferSrc) | VkFlags(BufferUsageFlagBits::eTransferDst) | VkFlags(BufferUsageFlagBits::eUniformTexelBuffer) | VkFlags(BufferUsageFlagBits::eStorageTexelBuffer) | VkFlags(BufferUsageFlagBits::eUniformBuffer) | VkFlags(BufferUsageFlagBits::eStorageBuffer) | VkFlags(BufferUsageFlagBits::eIndexBuffer) | VkFlags(BufferUsageFlagBits::eVertexBuffer) | VkFlags(BufferUsageFlagBits::eIndirectBuffer) | VkFlags(BufferUsageFlagBits::eTransformFeedbackBufferEXT) | VkFlags(BufferUsageFlagBits::eTransformFeedbackCounterBufferEXT) | VkFlags(BufferUsageFlagBits::eConditionalRenderingEXT) | VkFlags(BufferUsageFlagBits::eRayTracingNV) | VkFlags(BufferUsageFlagBits::eShaderDeviceAddressEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferUsageFlags operator|( BufferUsageFlagBits bit0, BufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return BufferUsageFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferUsageFlags operator&( BufferUsageFlagBits bit0, BufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return BufferUsageFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferUsageFlags operator^( BufferUsageFlagBits bit0, BufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return BufferUsageFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BufferUsageFlags operator~( BufferUsageFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( BufferUsageFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( BufferUsageFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & BufferUsageFlagBits::eTransferSrc ) result += "TransferSrc | ";
if ( value & BufferUsageFlagBits::eTransferDst ) result += "TransferDst | ";
if ( value & BufferUsageFlagBits::eUniformTexelBuffer ) result += "UniformTexelBuffer | ";
if ( value & BufferUsageFlagBits::eStorageTexelBuffer ) result += "StorageTexelBuffer | ";
if ( value & BufferUsageFlagBits::eUniformBuffer ) result += "UniformBuffer | ";
if ( value & BufferUsageFlagBits::eStorageBuffer ) result += "StorageBuffer | ";
if ( value & BufferUsageFlagBits::eIndexBuffer ) result += "IndexBuffer | ";
if ( value & BufferUsageFlagBits::eVertexBuffer ) result += "VertexBuffer | ";
if ( value & BufferUsageFlagBits::eIndirectBuffer ) result += "IndirectBuffer | ";
if ( value & BufferUsageFlagBits::eTransformFeedbackBufferEXT ) result += "TransformFeedbackBufferEXT | ";
if ( value & BufferUsageFlagBits::eTransformFeedbackCounterBufferEXT ) result += "TransformFeedbackCounterBufferEXT | ";
if ( value & BufferUsageFlagBits::eConditionalRenderingEXT ) result += "ConditionalRenderingEXT | ";
if ( value & BufferUsageFlagBits::eRayTracingNV ) result += "RayTracingNV | ";
if ( value & BufferUsageFlagBits::eShaderDeviceAddressEXT ) result += "ShaderDeviceAddressEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using BufferViewCreateFlags = Flags<BufferViewCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( BufferViewCreateFlags )
{
return "{}";
}
using BuildAccelerationStructureFlagsNV = Flags<BuildAccelerationStructureFlagBitsNV>;
template <> struct FlagTraits<BuildAccelerationStructureFlagBitsNV>
{
enum : VkFlags
{
allFlags = VkFlags(BuildAccelerationStructureFlagBitsNV::eAllowUpdate) | VkFlags(BuildAccelerationStructureFlagBitsNV::eAllowCompaction) | VkFlags(BuildAccelerationStructureFlagBitsNV::ePreferFastTrace) | VkFlags(BuildAccelerationStructureFlagBitsNV::ePreferFastBuild) | VkFlags(BuildAccelerationStructureFlagBitsNV::eLowMemory)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsNV operator|( BuildAccelerationStructureFlagBitsNV bit0, BuildAccelerationStructureFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return BuildAccelerationStructureFlagsNV( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsNV operator&( BuildAccelerationStructureFlagBitsNV bit0, BuildAccelerationStructureFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return BuildAccelerationStructureFlagsNV( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsNV operator^( BuildAccelerationStructureFlagBitsNV bit0, BuildAccelerationStructureFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return BuildAccelerationStructureFlagsNV( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR BuildAccelerationStructureFlagsNV operator~( BuildAccelerationStructureFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
{
return ~( BuildAccelerationStructureFlagsNV( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( BuildAccelerationStructureFlagsNV value )
{
if ( !value ) return "{}";
std::string result;
if ( value & BuildAccelerationStructureFlagBitsNV::eAllowUpdate ) result += "AllowUpdate | ";
if ( value & BuildAccelerationStructureFlagBitsNV::eAllowCompaction ) result += "AllowCompaction | ";
if ( value & BuildAccelerationStructureFlagBitsNV::ePreferFastTrace ) result += "PreferFastTrace | ";
if ( value & BuildAccelerationStructureFlagBitsNV::ePreferFastBuild ) result += "PreferFastBuild | ";
if ( value & BuildAccelerationStructureFlagBitsNV::eLowMemory ) result += "LowMemory | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using ColorComponentFlags = Flags<ColorComponentFlagBits>;
template <> struct FlagTraits<ColorComponentFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(ColorComponentFlagBits::eR) | VkFlags(ColorComponentFlagBits::eG) | VkFlags(ColorComponentFlagBits::eB) | VkFlags(ColorComponentFlagBits::eA)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags operator|( ColorComponentFlagBits bit0, ColorComponentFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ColorComponentFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags operator&( ColorComponentFlagBits bit0, ColorComponentFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ColorComponentFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags operator^( ColorComponentFlagBits bit0, ColorComponentFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ColorComponentFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ColorComponentFlags operator~( ColorComponentFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ColorComponentFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( ColorComponentFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ColorComponentFlagBits::eR ) result += "R | ";
if ( value & ColorComponentFlagBits::eG ) result += "G | ";
if ( value & ColorComponentFlagBits::eB ) result += "B | ";
if ( value & ColorComponentFlagBits::eA ) result += "A | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using CommandBufferResetFlags = Flags<CommandBufferResetFlagBits>;
template <> struct FlagTraits<CommandBufferResetFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(CommandBufferResetFlagBits::eReleaseResources)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferResetFlags operator|( CommandBufferResetFlagBits bit0, CommandBufferResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CommandBufferResetFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferResetFlags operator&( CommandBufferResetFlagBits bit0, CommandBufferResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CommandBufferResetFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferResetFlags operator^( CommandBufferResetFlagBits bit0, CommandBufferResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CommandBufferResetFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferResetFlags operator~( CommandBufferResetFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( CommandBufferResetFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( CommandBufferResetFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & CommandBufferResetFlagBits::eReleaseResources ) result += "ReleaseResources | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using CommandBufferUsageFlags = Flags<CommandBufferUsageFlagBits>;
template <> struct FlagTraits<CommandBufferUsageFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(CommandBufferUsageFlagBits::eOneTimeSubmit) | VkFlags(CommandBufferUsageFlagBits::eRenderPassContinue) | VkFlags(CommandBufferUsageFlagBits::eSimultaneousUse)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferUsageFlags operator|( CommandBufferUsageFlagBits bit0, CommandBufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CommandBufferUsageFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferUsageFlags operator&( CommandBufferUsageFlagBits bit0, CommandBufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CommandBufferUsageFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferUsageFlags operator^( CommandBufferUsageFlagBits bit0, CommandBufferUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CommandBufferUsageFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandBufferUsageFlags operator~( CommandBufferUsageFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( CommandBufferUsageFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( CommandBufferUsageFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & CommandBufferUsageFlagBits::eOneTimeSubmit ) result += "OneTimeSubmit | ";
if ( value & CommandBufferUsageFlagBits::eRenderPassContinue ) result += "RenderPassContinue | ";
if ( value & CommandBufferUsageFlagBits::eSimultaneousUse ) result += "SimultaneousUse | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using CommandPoolCreateFlags = Flags<CommandPoolCreateFlagBits>;
template <> struct FlagTraits<CommandPoolCreateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(CommandPoolCreateFlagBits::eTransient) | VkFlags(CommandPoolCreateFlagBits::eResetCommandBuffer) | VkFlags(CommandPoolCreateFlagBits::eProtected)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolCreateFlags operator|( CommandPoolCreateFlagBits bit0, CommandPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CommandPoolCreateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolCreateFlags operator&( CommandPoolCreateFlagBits bit0, CommandPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CommandPoolCreateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolCreateFlags operator^( CommandPoolCreateFlagBits bit0, CommandPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CommandPoolCreateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolCreateFlags operator~( CommandPoolCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( CommandPoolCreateFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( CommandPoolCreateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & CommandPoolCreateFlagBits::eTransient ) result += "Transient | ";
if ( value & CommandPoolCreateFlagBits::eResetCommandBuffer ) result += "ResetCommandBuffer | ";
if ( value & CommandPoolCreateFlagBits::eProtected ) result += "Protected | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using CommandPoolResetFlags = Flags<CommandPoolResetFlagBits>;
template <> struct FlagTraits<CommandPoolResetFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(CommandPoolResetFlagBits::eReleaseResources)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolResetFlags operator|( CommandPoolResetFlagBits bit0, CommandPoolResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CommandPoolResetFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolResetFlags operator&( CommandPoolResetFlagBits bit0, CommandPoolResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CommandPoolResetFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolResetFlags operator^( CommandPoolResetFlagBits bit0, CommandPoolResetFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CommandPoolResetFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CommandPoolResetFlags operator~( CommandPoolResetFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( CommandPoolResetFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( CommandPoolResetFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & CommandPoolResetFlagBits::eReleaseResources ) result += "ReleaseResources | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
enum class CommandPoolTrimFlagBits : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( CommandPoolTrimFlagBits )
{
return "(void)";
}
using CommandPoolTrimFlags = Flags<CommandPoolTrimFlagBits>;
using CommandPoolTrimFlagsKHR = CommandPoolTrimFlags;
VULKAN_HPP_INLINE std::string to_string( CommandPoolTrimFlags )
{
return "{}";
}
using CompositeAlphaFlagsKHR = Flags<CompositeAlphaFlagBitsKHR>;
template <> struct FlagTraits<CompositeAlphaFlagBitsKHR>
{
enum : VkFlags
{
allFlags = VkFlags(CompositeAlphaFlagBitsKHR::eOpaque) | VkFlags(CompositeAlphaFlagBitsKHR::ePreMultiplied) | VkFlags(CompositeAlphaFlagBitsKHR::ePostMultiplied) | VkFlags(CompositeAlphaFlagBitsKHR::eInherit)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CompositeAlphaFlagsKHR operator|( CompositeAlphaFlagBitsKHR bit0, CompositeAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return CompositeAlphaFlagsKHR( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CompositeAlphaFlagsKHR operator&( CompositeAlphaFlagBitsKHR bit0, CompositeAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return CompositeAlphaFlagsKHR( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CompositeAlphaFlagsKHR operator^( CompositeAlphaFlagBitsKHR bit0, CompositeAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return CompositeAlphaFlagsKHR( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CompositeAlphaFlagsKHR operator~( CompositeAlphaFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
{
return ~( CompositeAlphaFlagsKHR( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( CompositeAlphaFlagsKHR value )
{
if ( !value ) return "{}";
std::string result;
if ( value & CompositeAlphaFlagBitsKHR::eOpaque ) result += "Opaque | ";
if ( value & CompositeAlphaFlagBitsKHR::ePreMultiplied ) result += "PreMultiplied | ";
if ( value & CompositeAlphaFlagBitsKHR::ePostMultiplied ) result += "PostMultiplied | ";
if ( value & CompositeAlphaFlagBitsKHR::eInherit ) result += "Inherit | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using ConditionalRenderingFlagsEXT = Flags<ConditionalRenderingFlagBitsEXT>;
template <> struct FlagTraits<ConditionalRenderingFlagBitsEXT>
{
enum : VkFlags
{
allFlags = VkFlags(ConditionalRenderingFlagBitsEXT::eInverted)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ConditionalRenderingFlagsEXT operator|( ConditionalRenderingFlagBitsEXT bit0, ConditionalRenderingFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return ConditionalRenderingFlagsEXT( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ConditionalRenderingFlagsEXT operator&( ConditionalRenderingFlagBitsEXT bit0, ConditionalRenderingFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return ConditionalRenderingFlagsEXT( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ConditionalRenderingFlagsEXT operator^( ConditionalRenderingFlagBitsEXT bit0, ConditionalRenderingFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return ConditionalRenderingFlagsEXT( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ConditionalRenderingFlagsEXT operator~( ConditionalRenderingFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ConditionalRenderingFlagsEXT( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( ConditionalRenderingFlagsEXT value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ConditionalRenderingFlagBitsEXT::eInverted ) result += "Inverted | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using CullModeFlags = Flags<CullModeFlagBits>;
template <> struct FlagTraits<CullModeFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(CullModeFlagBits::eNone) | VkFlags(CullModeFlagBits::eFront) | VkFlags(CullModeFlagBits::eBack) | VkFlags(CullModeFlagBits::eFrontAndBack)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CullModeFlags operator|( CullModeFlagBits bit0, CullModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CullModeFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CullModeFlags operator&( CullModeFlagBits bit0, CullModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CullModeFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CullModeFlags operator^( CullModeFlagBits bit0, CullModeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return CullModeFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR CullModeFlags operator~( CullModeFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( CullModeFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( CullModeFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & CullModeFlagBits::eFront ) result += "Front | ";
if ( value & CullModeFlagBits::eBack ) result += "Back | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using DebugReportFlagsEXT = Flags<DebugReportFlagBitsEXT>;
template <> struct FlagTraits<DebugReportFlagBitsEXT>
{
enum : VkFlags
{
allFlags = VkFlags(DebugReportFlagBitsEXT::eInformation) | VkFlags(DebugReportFlagBitsEXT::eWarning) | VkFlags(DebugReportFlagBitsEXT::ePerformanceWarning) | VkFlags(DebugReportFlagBitsEXT::eError) | VkFlags(DebugReportFlagBitsEXT::eDebug)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT operator|( DebugReportFlagBitsEXT bit0, DebugReportFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return DebugReportFlagsEXT( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT operator&( DebugReportFlagBitsEXT bit0, DebugReportFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return DebugReportFlagsEXT( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT operator^( DebugReportFlagBitsEXT bit0, DebugReportFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return DebugReportFlagsEXT( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugReportFlagsEXT operator~( DebugReportFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
{
return ~( DebugReportFlagsEXT( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( DebugReportFlagsEXT value )
{
if ( !value ) return "{}";
std::string result;
if ( value & DebugReportFlagBitsEXT::eInformation ) result += "Information | ";
if ( value & DebugReportFlagBitsEXT::eWarning ) result += "Warning | ";
if ( value & DebugReportFlagBitsEXT::ePerformanceWarning ) result += "PerformanceWarning | ";
if ( value & DebugReportFlagBitsEXT::eError ) result += "Error | ";
if ( value & DebugReportFlagBitsEXT::eDebug ) result += "Debug | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using DebugUtilsMessageSeverityFlagsEXT = Flags<DebugUtilsMessageSeverityFlagBitsEXT>;
template <> struct FlagTraits<DebugUtilsMessageSeverityFlagBitsEXT>
{
enum : VkFlags
{
allFlags = VkFlags(DebugUtilsMessageSeverityFlagBitsEXT::eVerbose) | VkFlags(DebugUtilsMessageSeverityFlagBitsEXT::eInfo) | VkFlags(DebugUtilsMessageSeverityFlagBitsEXT::eWarning) | VkFlags(DebugUtilsMessageSeverityFlagBitsEXT::eError)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT operator|( DebugUtilsMessageSeverityFlagBitsEXT bit0, DebugUtilsMessageSeverityFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return DebugUtilsMessageSeverityFlagsEXT( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT operator&( DebugUtilsMessageSeverityFlagBitsEXT bit0, DebugUtilsMessageSeverityFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return DebugUtilsMessageSeverityFlagsEXT( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT operator^( DebugUtilsMessageSeverityFlagBitsEXT bit0, DebugUtilsMessageSeverityFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return DebugUtilsMessageSeverityFlagsEXT( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT operator~( DebugUtilsMessageSeverityFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
{
return ~( DebugUtilsMessageSeverityFlagsEXT( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageSeverityFlagsEXT value )
{
if ( !value ) return "{}";
std::string result;
if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eVerbose ) result += "Verbose | ";
if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eInfo ) result += "Info | ";
if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eWarning ) result += "Warning | ";
if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eError ) result += "Error | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using DebugUtilsMessageTypeFlagsEXT = Flags<DebugUtilsMessageTypeFlagBitsEXT>;
template <> struct FlagTraits<DebugUtilsMessageTypeFlagBitsEXT>
{
enum : VkFlags
{
allFlags = VkFlags(DebugUtilsMessageTypeFlagBitsEXT::eGeneral) | VkFlags(DebugUtilsMessageTypeFlagBitsEXT::eValidation) | VkFlags(DebugUtilsMessageTypeFlagBitsEXT::ePerformance)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageTypeFlagsEXT operator|( DebugUtilsMessageTypeFlagBitsEXT bit0, DebugUtilsMessageTypeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return DebugUtilsMessageTypeFlagsEXT( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageTypeFlagsEXT operator&( DebugUtilsMessageTypeFlagBitsEXT bit0, DebugUtilsMessageTypeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return DebugUtilsMessageTypeFlagsEXT( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageTypeFlagsEXT operator^( DebugUtilsMessageTypeFlagBitsEXT bit0, DebugUtilsMessageTypeFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return DebugUtilsMessageTypeFlagsEXT( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DebugUtilsMessageTypeFlagsEXT operator~( DebugUtilsMessageTypeFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
{
return ~( DebugUtilsMessageTypeFlagsEXT( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageTypeFlagsEXT value )
{
if ( !value ) return "{}";
std::string result;
if ( value & DebugUtilsMessageTypeFlagBitsEXT::eGeneral ) result += "General | ";
if ( value & DebugUtilsMessageTypeFlagBitsEXT::eValidation ) result += "Validation | ";
if ( value & DebugUtilsMessageTypeFlagBitsEXT::ePerformance ) result += "Performance | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
enum class DebugUtilsMessengerCallbackDataFlagBitsEXT : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCallbackDataFlagBitsEXT )
{
return "(void)";
}
using DebugUtilsMessengerCallbackDataFlagsEXT = Flags<DebugUtilsMessengerCallbackDataFlagBitsEXT>;
VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCallbackDataFlagsEXT )
{
return "{}";
}
enum class DebugUtilsMessengerCreateFlagBitsEXT : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCreateFlagBitsEXT )
{
return "(void)";
}
using DebugUtilsMessengerCreateFlagsEXT = Flags<DebugUtilsMessengerCreateFlagBitsEXT>;
VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCreateFlagsEXT )
{
return "{}";
}
using DependencyFlags = Flags<DependencyFlagBits>;
template <> struct FlagTraits<DependencyFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(DependencyFlagBits::eByRegion) | VkFlags(DependencyFlagBits::eDeviceGroup) | VkFlags(DependencyFlagBits::eViewLocal)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DependencyFlags operator|( DependencyFlagBits bit0, DependencyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return DependencyFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DependencyFlags operator&( DependencyFlagBits bit0, DependencyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return DependencyFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DependencyFlags operator^( DependencyFlagBits bit0, DependencyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return DependencyFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DependencyFlags operator~( DependencyFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( DependencyFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( DependencyFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & DependencyFlagBits::eByRegion ) result += "ByRegion | ";
if ( value & DependencyFlagBits::eDeviceGroup ) result += "DeviceGroup | ";
if ( value & DependencyFlagBits::eViewLocal ) result += "ViewLocal | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using DescriptorBindingFlagsEXT = Flags<DescriptorBindingFlagBitsEXT>;
template <> struct FlagTraits<DescriptorBindingFlagBitsEXT>
{
enum : VkFlags
{
allFlags = VkFlags(DescriptorBindingFlagBitsEXT::eUpdateAfterBind) | VkFlags(DescriptorBindingFlagBitsEXT::eUpdateUnusedWhilePending) | VkFlags(DescriptorBindingFlagBitsEXT::ePartiallyBound) | VkFlags(DescriptorBindingFlagBitsEXT::eVariableDescriptorCount)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorBindingFlagsEXT operator|( DescriptorBindingFlagBitsEXT bit0, DescriptorBindingFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return DescriptorBindingFlagsEXT( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorBindingFlagsEXT operator&( DescriptorBindingFlagBitsEXT bit0, DescriptorBindingFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return DescriptorBindingFlagsEXT( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorBindingFlagsEXT operator^( DescriptorBindingFlagBitsEXT bit0, DescriptorBindingFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return DescriptorBindingFlagsEXT( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorBindingFlagsEXT operator~( DescriptorBindingFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
{
return ~( DescriptorBindingFlagsEXT( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( DescriptorBindingFlagsEXT value )
{
if ( !value ) return "{}";
std::string result;
if ( value & DescriptorBindingFlagBitsEXT::eUpdateAfterBind ) result += "UpdateAfterBind | ";
if ( value & DescriptorBindingFlagBitsEXT::eUpdateUnusedWhilePending ) result += "UpdateUnusedWhilePending | ";
if ( value & DescriptorBindingFlagBitsEXT::ePartiallyBound ) result += "PartiallyBound | ";
if ( value & DescriptorBindingFlagBitsEXT::eVariableDescriptorCount ) result += "VariableDescriptorCount | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using DescriptorPoolCreateFlags = Flags<DescriptorPoolCreateFlagBits>;
template <> struct FlagTraits<DescriptorPoolCreateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(DescriptorPoolCreateFlagBits::eFreeDescriptorSet) | VkFlags(DescriptorPoolCreateFlagBits::eUpdateAfterBindEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorPoolCreateFlags operator|( DescriptorPoolCreateFlagBits bit0, DescriptorPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return DescriptorPoolCreateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorPoolCreateFlags operator&( DescriptorPoolCreateFlagBits bit0, DescriptorPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return DescriptorPoolCreateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorPoolCreateFlags operator^( DescriptorPoolCreateFlagBits bit0, DescriptorPoolCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return DescriptorPoolCreateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorPoolCreateFlags operator~( DescriptorPoolCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( DescriptorPoolCreateFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( DescriptorPoolCreateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & DescriptorPoolCreateFlagBits::eFreeDescriptorSet ) result += "FreeDescriptorSet | ";
if ( value & DescriptorPoolCreateFlagBits::eUpdateAfterBindEXT ) result += "UpdateAfterBindEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
enum class DescriptorPoolResetFlagBits : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( DescriptorPoolResetFlagBits )
{
return "(void)";
}
using DescriptorPoolResetFlags = Flags<DescriptorPoolResetFlagBits>;
VULKAN_HPP_INLINE std::string to_string( DescriptorPoolResetFlags )
{
return "{}";
}
using DescriptorSetLayoutCreateFlags = Flags<DescriptorSetLayoutCreateFlagBits>;
template <> struct FlagTraits<DescriptorSetLayoutCreateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR) | VkFlags(DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPoolEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateFlags operator|( DescriptorSetLayoutCreateFlagBits bit0, DescriptorSetLayoutCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return DescriptorSetLayoutCreateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateFlags operator&( DescriptorSetLayoutCreateFlagBits bit0, DescriptorSetLayoutCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return DescriptorSetLayoutCreateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateFlags operator^( DescriptorSetLayoutCreateFlagBits bit0, DescriptorSetLayoutCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return DescriptorSetLayoutCreateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateFlags operator~( DescriptorSetLayoutCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( DescriptorSetLayoutCreateFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( DescriptorSetLayoutCreateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR ) result += "PushDescriptorKHR | ";
if ( value & DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPoolEXT ) result += "UpdateAfterBindPoolEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
enum class DescriptorUpdateTemplateCreateFlagBits : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( DescriptorUpdateTemplateCreateFlagBits )
{
return "(void)";
}
using DescriptorUpdateTemplateCreateFlags = Flags<DescriptorUpdateTemplateCreateFlagBits>;
using DescriptorUpdateTemplateCreateFlagsKHR = DescriptorUpdateTemplateCreateFlags;
VULKAN_HPP_INLINE std::string to_string( DescriptorUpdateTemplateCreateFlags )
{
return "{}";
}
using DeviceCreateFlags = Flags<DeviceCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( DeviceCreateFlags )
{
return "{}";
}
using DeviceGroupPresentModeFlagsKHR = Flags<DeviceGroupPresentModeFlagBitsKHR>;
template <> struct FlagTraits<DeviceGroupPresentModeFlagBitsKHR>
{
enum : VkFlags
{
allFlags = VkFlags(DeviceGroupPresentModeFlagBitsKHR::eLocal) | VkFlags(DeviceGroupPresentModeFlagBitsKHR::eRemote) | VkFlags(DeviceGroupPresentModeFlagBitsKHR::eSum) | VkFlags(DeviceGroupPresentModeFlagBitsKHR::eLocalMultiDevice)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceGroupPresentModeFlagsKHR operator|( DeviceGroupPresentModeFlagBitsKHR bit0, DeviceGroupPresentModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return DeviceGroupPresentModeFlagsKHR( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceGroupPresentModeFlagsKHR operator&( DeviceGroupPresentModeFlagBitsKHR bit0, DeviceGroupPresentModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return DeviceGroupPresentModeFlagsKHR( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceGroupPresentModeFlagsKHR operator^( DeviceGroupPresentModeFlagBitsKHR bit0, DeviceGroupPresentModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return DeviceGroupPresentModeFlagsKHR( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceGroupPresentModeFlagsKHR operator~( DeviceGroupPresentModeFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
{
return ~( DeviceGroupPresentModeFlagsKHR( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( DeviceGroupPresentModeFlagsKHR value )
{
if ( !value ) return "{}";
std::string result;
if ( value & DeviceGroupPresentModeFlagBitsKHR::eLocal ) result += "Local | ";
if ( value & DeviceGroupPresentModeFlagBitsKHR::eRemote ) result += "Remote | ";
if ( value & DeviceGroupPresentModeFlagBitsKHR::eSum ) result += "Sum | ";
if ( value & DeviceGroupPresentModeFlagBitsKHR::eLocalMultiDevice ) result += "LocalMultiDevice | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using DeviceQueueCreateFlags = Flags<DeviceQueueCreateFlagBits>;
template <> struct FlagTraits<DeviceQueueCreateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(DeviceQueueCreateFlagBits::eProtected)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceQueueCreateFlags operator|( DeviceQueueCreateFlagBits bit0, DeviceQueueCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return DeviceQueueCreateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceQueueCreateFlags operator&( DeviceQueueCreateFlagBits bit0, DeviceQueueCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return DeviceQueueCreateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceQueueCreateFlags operator^( DeviceQueueCreateFlagBits bit0, DeviceQueueCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return DeviceQueueCreateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DeviceQueueCreateFlags operator~( DeviceQueueCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( DeviceQueueCreateFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( DeviceQueueCreateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & DeviceQueueCreateFlagBits::eProtected ) result += "Protected | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
enum class DisplayModeCreateFlagBitsKHR : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( DisplayModeCreateFlagBitsKHR )
{
return "(void)";
}
using DisplayModeCreateFlagsKHR = Flags<DisplayModeCreateFlagBitsKHR>;
VULKAN_HPP_INLINE std::string to_string( DisplayModeCreateFlagsKHR )
{
return "{}";
}
using DisplayPlaneAlphaFlagsKHR = Flags<DisplayPlaneAlphaFlagBitsKHR>;
template <> struct FlagTraits<DisplayPlaneAlphaFlagBitsKHR>
{
enum : VkFlags
{
allFlags = VkFlags(DisplayPlaneAlphaFlagBitsKHR::eOpaque) | VkFlags(DisplayPlaneAlphaFlagBitsKHR::eGlobal) | VkFlags(DisplayPlaneAlphaFlagBitsKHR::ePerPixel) | VkFlags(DisplayPlaneAlphaFlagBitsKHR::ePerPixelPremultiplied)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DisplayPlaneAlphaFlagsKHR operator|( DisplayPlaneAlphaFlagBitsKHR bit0, DisplayPlaneAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return DisplayPlaneAlphaFlagsKHR( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DisplayPlaneAlphaFlagsKHR operator&( DisplayPlaneAlphaFlagBitsKHR bit0, DisplayPlaneAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return DisplayPlaneAlphaFlagsKHR( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DisplayPlaneAlphaFlagsKHR operator^( DisplayPlaneAlphaFlagBitsKHR bit0, DisplayPlaneAlphaFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return DisplayPlaneAlphaFlagsKHR( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR DisplayPlaneAlphaFlagsKHR operator~( DisplayPlaneAlphaFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
{
return ~( DisplayPlaneAlphaFlagsKHR( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( DisplayPlaneAlphaFlagsKHR value )
{
if ( !value ) return "{}";
std::string result;
if ( value & DisplayPlaneAlphaFlagBitsKHR::eOpaque ) result += "Opaque | ";
if ( value & DisplayPlaneAlphaFlagBitsKHR::eGlobal ) result += "Global | ";
if ( value & DisplayPlaneAlphaFlagBitsKHR::ePerPixel ) result += "PerPixel | ";
if ( value & DisplayPlaneAlphaFlagBitsKHR::ePerPixelPremultiplied ) result += "PerPixelPremultiplied | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
enum class DisplaySurfaceCreateFlagBitsKHR : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( DisplaySurfaceCreateFlagBitsKHR )
{
return "(void)";
}
using DisplaySurfaceCreateFlagsKHR = Flags<DisplaySurfaceCreateFlagBitsKHR>;
VULKAN_HPP_INLINE std::string to_string( DisplaySurfaceCreateFlagsKHR )
{
return "{}";
}
enum class EventCreateFlagBits : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( EventCreateFlagBits )
{
return "(void)";
}
using EventCreateFlags = Flags<EventCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( EventCreateFlags )
{
return "{}";
}
using ExternalFenceFeatureFlags = Flags<ExternalFenceFeatureFlagBits>;
template <> struct FlagTraits<ExternalFenceFeatureFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(ExternalFenceFeatureFlagBits::eExportable) | VkFlags(ExternalFenceFeatureFlagBits::eImportable)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceFeatureFlags operator|( ExternalFenceFeatureFlagBits bit0, ExternalFenceFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalFenceFeatureFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceFeatureFlags operator&( ExternalFenceFeatureFlagBits bit0, ExternalFenceFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalFenceFeatureFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceFeatureFlags operator^( ExternalFenceFeatureFlagBits bit0, ExternalFenceFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalFenceFeatureFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceFeatureFlags operator~( ExternalFenceFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ExternalFenceFeatureFlags( bits ) );
}
using ExternalFenceFeatureFlagsKHR = ExternalFenceFeatureFlags;
VULKAN_HPP_INLINE std::string to_string( ExternalFenceFeatureFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ExternalFenceFeatureFlagBits::eExportable ) result += "Exportable | ";
if ( value & ExternalFenceFeatureFlagBits::eImportable ) result += "Importable | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using ExternalFenceHandleTypeFlags = Flags<ExternalFenceHandleTypeFlagBits>;
template <> struct FlagTraits<ExternalFenceHandleTypeFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(ExternalFenceHandleTypeFlagBits::eOpaqueFd) | VkFlags(ExternalFenceHandleTypeFlagBits::eOpaqueWin32) | VkFlags(ExternalFenceHandleTypeFlagBits::eOpaqueWin32Kmt) | VkFlags(ExternalFenceHandleTypeFlagBits::eSyncFd)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceHandleTypeFlags operator|( ExternalFenceHandleTypeFlagBits bit0, ExternalFenceHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalFenceHandleTypeFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceHandleTypeFlags operator&( ExternalFenceHandleTypeFlagBits bit0, ExternalFenceHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalFenceHandleTypeFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceHandleTypeFlags operator^( ExternalFenceHandleTypeFlagBits bit0, ExternalFenceHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalFenceHandleTypeFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalFenceHandleTypeFlags operator~( ExternalFenceHandleTypeFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ExternalFenceHandleTypeFlags( bits ) );
}
using ExternalFenceHandleTypeFlagsKHR = ExternalFenceHandleTypeFlags;
VULKAN_HPP_INLINE std::string to_string( ExternalFenceHandleTypeFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ExternalFenceHandleTypeFlagBits::eOpaqueFd ) result += "OpaqueFd | ";
if ( value & ExternalFenceHandleTypeFlagBits::eOpaqueWin32 ) result += "OpaqueWin32 | ";
if ( value & ExternalFenceHandleTypeFlagBits::eOpaqueWin32Kmt ) result += "OpaqueWin32Kmt | ";
if ( value & ExternalFenceHandleTypeFlagBits::eSyncFd ) result += "SyncFd | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using ExternalMemoryFeatureFlags = Flags<ExternalMemoryFeatureFlagBits>;
template <> struct FlagTraits<ExternalMemoryFeatureFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(ExternalMemoryFeatureFlagBits::eDedicatedOnly) | VkFlags(ExternalMemoryFeatureFlagBits::eExportable) | VkFlags(ExternalMemoryFeatureFlagBits::eImportable)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlags operator|( ExternalMemoryFeatureFlagBits bit0, ExternalMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalMemoryFeatureFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlags operator&( ExternalMemoryFeatureFlagBits bit0, ExternalMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalMemoryFeatureFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlags operator^( ExternalMemoryFeatureFlagBits bit0, ExternalMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalMemoryFeatureFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlags operator~( ExternalMemoryFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ExternalMemoryFeatureFlags( bits ) );
}
using ExternalMemoryFeatureFlagsKHR = ExternalMemoryFeatureFlags;
VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ExternalMemoryFeatureFlagBits::eDedicatedOnly ) result += "DedicatedOnly | ";
if ( value & ExternalMemoryFeatureFlagBits::eExportable ) result += "Exportable | ";
if ( value & ExternalMemoryFeatureFlagBits::eImportable ) result += "Importable | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using ExternalMemoryFeatureFlagsNV = Flags<ExternalMemoryFeatureFlagBitsNV>;
template <> struct FlagTraits<ExternalMemoryFeatureFlagBitsNV>
{
enum : VkFlags
{
allFlags = VkFlags(ExternalMemoryFeatureFlagBitsNV::eDedicatedOnly) | VkFlags(ExternalMemoryFeatureFlagBitsNV::eExportable) | VkFlags(ExternalMemoryFeatureFlagBitsNV::eImportable)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlagsNV operator|( ExternalMemoryFeatureFlagBitsNV bit0, ExternalMemoryFeatureFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalMemoryFeatureFlagsNV( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlagsNV operator&( ExternalMemoryFeatureFlagBitsNV bit0, ExternalMemoryFeatureFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalMemoryFeatureFlagsNV( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlagsNV operator^( ExternalMemoryFeatureFlagBitsNV bit0, ExternalMemoryFeatureFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalMemoryFeatureFlagsNV( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryFeatureFlagsNV operator~( ExternalMemoryFeatureFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ExternalMemoryFeatureFlagsNV( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlagsNV value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ExternalMemoryFeatureFlagBitsNV::eDedicatedOnly ) result += "DedicatedOnly | ";
if ( value & ExternalMemoryFeatureFlagBitsNV::eExportable ) result += "Exportable | ";
if ( value & ExternalMemoryFeatureFlagBitsNV::eImportable ) result += "Importable | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using ExternalMemoryHandleTypeFlags = Flags<ExternalMemoryHandleTypeFlagBits>;
template <> struct FlagTraits<ExternalMemoryHandleTypeFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(ExternalMemoryHandleTypeFlagBits::eOpaqueFd) | VkFlags(ExternalMemoryHandleTypeFlagBits::eOpaqueWin32) | VkFlags(ExternalMemoryHandleTypeFlagBits::eOpaqueWin32Kmt) | VkFlags(ExternalMemoryHandleTypeFlagBits::eD3D11Texture) | VkFlags(ExternalMemoryHandleTypeFlagBits::eD3D11TextureKmt) | VkFlags(ExternalMemoryHandleTypeFlagBits::eD3D12Heap) | VkFlags(ExternalMemoryHandleTypeFlagBits::eD3D12Resource) | VkFlags(ExternalMemoryHandleTypeFlagBits::eDmaBufEXT) | VkFlags(ExternalMemoryHandleTypeFlagBits::eAndroidHardwareBufferANDROID) | VkFlags(ExternalMemoryHandleTypeFlagBits::eHostAllocationEXT) | VkFlags(ExternalMemoryHandleTypeFlagBits::eHostMappedForeignMemoryEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlags operator|( ExternalMemoryHandleTypeFlagBits bit0, ExternalMemoryHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalMemoryHandleTypeFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlags operator&( ExternalMemoryHandleTypeFlagBits bit0, ExternalMemoryHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalMemoryHandleTypeFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlags operator^( ExternalMemoryHandleTypeFlagBits bit0, ExternalMemoryHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalMemoryHandleTypeFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlags operator~( ExternalMemoryHandleTypeFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ExternalMemoryHandleTypeFlags( bits ) );
}
using ExternalMemoryHandleTypeFlagsKHR = ExternalMemoryHandleTypeFlags;
VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ExternalMemoryHandleTypeFlagBits::eOpaqueFd ) result += "OpaqueFd | ";
if ( value & ExternalMemoryHandleTypeFlagBits::eOpaqueWin32 ) result += "OpaqueWin32 | ";
if ( value & ExternalMemoryHandleTypeFlagBits::eOpaqueWin32Kmt ) result += "OpaqueWin32Kmt | ";
if ( value & ExternalMemoryHandleTypeFlagBits::eD3D11Texture ) result += "D3D11Texture | ";
if ( value & ExternalMemoryHandleTypeFlagBits::eD3D11TextureKmt ) result += "D3D11TextureKmt | ";
if ( value & ExternalMemoryHandleTypeFlagBits::eD3D12Heap ) result += "D3D12Heap | ";
if ( value & ExternalMemoryHandleTypeFlagBits::eD3D12Resource ) result += "D3D12Resource | ";
if ( value & ExternalMemoryHandleTypeFlagBits::eDmaBufEXT ) result += "DmaBufEXT | ";
if ( value & ExternalMemoryHandleTypeFlagBits::eAndroidHardwareBufferANDROID ) result += "AndroidHardwareBufferANDROID | ";
if ( value & ExternalMemoryHandleTypeFlagBits::eHostAllocationEXT ) result += "HostAllocationEXT | ";
if ( value & ExternalMemoryHandleTypeFlagBits::eHostMappedForeignMemoryEXT ) result += "HostMappedForeignMemoryEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using ExternalMemoryHandleTypeFlagsNV = Flags<ExternalMemoryHandleTypeFlagBitsNV>;
template <> struct FlagTraits<ExternalMemoryHandleTypeFlagBitsNV>
{
enum : VkFlags
{
allFlags = VkFlags(ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32) | VkFlags(ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32Kmt) | VkFlags(ExternalMemoryHandleTypeFlagBitsNV::eD3D11Image) | VkFlags(ExternalMemoryHandleTypeFlagBitsNV::eD3D11ImageKmt)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlagsNV operator|( ExternalMemoryHandleTypeFlagBitsNV bit0, ExternalMemoryHandleTypeFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalMemoryHandleTypeFlagsNV( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlagsNV operator&( ExternalMemoryHandleTypeFlagBitsNV bit0, ExternalMemoryHandleTypeFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalMemoryHandleTypeFlagsNV( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlagsNV operator^( ExternalMemoryHandleTypeFlagBitsNV bit0, ExternalMemoryHandleTypeFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalMemoryHandleTypeFlagsNV( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalMemoryHandleTypeFlagsNV operator~( ExternalMemoryHandleTypeFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ExternalMemoryHandleTypeFlagsNV( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlagsNV value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32 ) result += "OpaqueWin32 | ";
if ( value & ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32Kmt ) result += "OpaqueWin32Kmt | ";
if ( value & ExternalMemoryHandleTypeFlagBitsNV::eD3D11Image ) result += "D3D11Image | ";
if ( value & ExternalMemoryHandleTypeFlagBitsNV::eD3D11ImageKmt ) result += "D3D11ImageKmt | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using ExternalSemaphoreFeatureFlags = Flags<ExternalSemaphoreFeatureFlagBits>;
template <> struct FlagTraits<ExternalSemaphoreFeatureFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(ExternalSemaphoreFeatureFlagBits::eExportable) | VkFlags(ExternalSemaphoreFeatureFlagBits::eImportable)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreFeatureFlags operator|( ExternalSemaphoreFeatureFlagBits bit0, ExternalSemaphoreFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalSemaphoreFeatureFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreFeatureFlags operator&( ExternalSemaphoreFeatureFlagBits bit0, ExternalSemaphoreFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalSemaphoreFeatureFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreFeatureFlags operator^( ExternalSemaphoreFeatureFlagBits bit0, ExternalSemaphoreFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalSemaphoreFeatureFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreFeatureFlags operator~( ExternalSemaphoreFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ExternalSemaphoreFeatureFlags( bits ) );
}
using ExternalSemaphoreFeatureFlagsKHR = ExternalSemaphoreFeatureFlags;
VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreFeatureFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ExternalSemaphoreFeatureFlagBits::eExportable ) result += "Exportable | ";
if ( value & ExternalSemaphoreFeatureFlagBits::eImportable ) result += "Importable | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using ExternalSemaphoreHandleTypeFlags = Flags<ExternalSemaphoreHandleTypeFlagBits>;
template <> struct FlagTraits<ExternalSemaphoreHandleTypeFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd) | VkFlags(ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32) | VkFlags(ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32Kmt) | VkFlags(ExternalSemaphoreHandleTypeFlagBits::eD3D12Fence) | VkFlags(ExternalSemaphoreHandleTypeFlagBits::eSyncFd)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreHandleTypeFlags operator|( ExternalSemaphoreHandleTypeFlagBits bit0, ExternalSemaphoreHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalSemaphoreHandleTypeFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreHandleTypeFlags operator&( ExternalSemaphoreHandleTypeFlagBits bit0, ExternalSemaphoreHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalSemaphoreHandleTypeFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreHandleTypeFlags operator^( ExternalSemaphoreHandleTypeFlagBits bit0, ExternalSemaphoreHandleTypeFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ExternalSemaphoreHandleTypeFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ExternalSemaphoreHandleTypeFlags operator~( ExternalSemaphoreHandleTypeFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ExternalSemaphoreHandleTypeFlags( bits ) );
}
using ExternalSemaphoreHandleTypeFlagsKHR = ExternalSemaphoreHandleTypeFlags;
VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreHandleTypeFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd ) result += "OpaqueFd | ";
if ( value & ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32 ) result += "OpaqueWin32 | ";
if ( value & ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32Kmt ) result += "OpaqueWin32Kmt | ";
if ( value & ExternalSemaphoreHandleTypeFlagBits::eD3D12Fence ) result += "D3D12Fence | ";
if ( value & ExternalSemaphoreHandleTypeFlagBits::eSyncFd ) result += "SyncFd | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using FenceCreateFlags = Flags<FenceCreateFlagBits>;
template <> struct FlagTraits<FenceCreateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(FenceCreateFlagBits::eSignaled)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceCreateFlags operator|( FenceCreateFlagBits bit0, FenceCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return FenceCreateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceCreateFlags operator&( FenceCreateFlagBits bit0, FenceCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return FenceCreateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceCreateFlags operator^( FenceCreateFlagBits bit0, FenceCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return FenceCreateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceCreateFlags operator~( FenceCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( FenceCreateFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( FenceCreateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & FenceCreateFlagBits::eSignaled ) result += "Signaled | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using FenceImportFlags = Flags<FenceImportFlagBits>;
template <> struct FlagTraits<FenceImportFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(FenceImportFlagBits::eTemporary)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceImportFlags operator|( FenceImportFlagBits bit0, FenceImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return FenceImportFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceImportFlags operator&( FenceImportFlagBits bit0, FenceImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return FenceImportFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceImportFlags operator^( FenceImportFlagBits bit0, FenceImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return FenceImportFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FenceImportFlags operator~( FenceImportFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( FenceImportFlags( bits ) );
}
using FenceImportFlagsKHR = FenceImportFlags;
VULKAN_HPP_INLINE std::string to_string( FenceImportFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & FenceImportFlagBits::eTemporary ) result += "Temporary | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using FormatFeatureFlags = Flags<FormatFeatureFlagBits>;
template <> struct FlagTraits<FormatFeatureFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(FormatFeatureFlagBits::eSampledImage) | VkFlags(FormatFeatureFlagBits::eStorageImage) | VkFlags(FormatFeatureFlagBits::eStorageImageAtomic) | VkFlags(FormatFeatureFlagBits::eUniformTexelBuffer) | VkFlags(FormatFeatureFlagBits::eStorageTexelBuffer) | VkFlags(FormatFeatureFlagBits::eStorageTexelBufferAtomic) | VkFlags(FormatFeatureFlagBits::eVertexBuffer) | VkFlags(FormatFeatureFlagBits::eColorAttachment) | VkFlags(FormatFeatureFlagBits::eColorAttachmentBlend) | VkFlags(FormatFeatureFlagBits::eDepthStencilAttachment) | VkFlags(FormatFeatureFlagBits::eBlitSrc) | VkFlags(FormatFeatureFlagBits::eBlitDst) | VkFlags(FormatFeatureFlagBits::eSampledImageFilterLinear) | VkFlags(FormatFeatureFlagBits::eTransferSrc) | VkFlags(FormatFeatureFlagBits::eTransferDst) | VkFlags(FormatFeatureFlagBits::eMidpointChromaSamples) | VkFlags(FormatFeatureFlagBits::eSampledImageYcbcrConversionLinearFilter) | VkFlags(FormatFeatureFlagBits::eSampledImageYcbcrConversionSeparateReconstructionFilter) | VkFlags(FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicit) | VkFlags(FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable) | VkFlags(FormatFeatureFlagBits::eDisjoint) | VkFlags(FormatFeatureFlagBits::eCositedChromaSamples) | VkFlags(FormatFeatureFlagBits::eSampledImageFilterCubicIMG) | VkFlags(FormatFeatureFlagBits::eSampledImageFilterMinmaxEXT) | VkFlags(FormatFeatureFlagBits::eFragmentDensityMapEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FormatFeatureFlags operator|( FormatFeatureFlagBits bit0, FormatFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return FormatFeatureFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FormatFeatureFlags operator&( FormatFeatureFlagBits bit0, FormatFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return FormatFeatureFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FormatFeatureFlags operator^( FormatFeatureFlagBits bit0, FormatFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return FormatFeatureFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FormatFeatureFlags operator~( FormatFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( FormatFeatureFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( FormatFeatureFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & FormatFeatureFlagBits::eSampledImage ) result += "SampledImage | ";
if ( value & FormatFeatureFlagBits::eStorageImage ) result += "StorageImage | ";
if ( value & FormatFeatureFlagBits::eStorageImageAtomic ) result += "StorageImageAtomic | ";
if ( value & FormatFeatureFlagBits::eUniformTexelBuffer ) result += "UniformTexelBuffer | ";
if ( value & FormatFeatureFlagBits::eStorageTexelBuffer ) result += "StorageTexelBuffer | ";
if ( value & FormatFeatureFlagBits::eStorageTexelBufferAtomic ) result += "StorageTexelBufferAtomic | ";
if ( value & FormatFeatureFlagBits::eVertexBuffer ) result += "VertexBuffer | ";
if ( value & FormatFeatureFlagBits::eColorAttachment ) result += "ColorAttachment | ";
if ( value & FormatFeatureFlagBits::eColorAttachmentBlend ) result += "ColorAttachmentBlend | ";
if ( value & FormatFeatureFlagBits::eDepthStencilAttachment ) result += "DepthStencilAttachment | ";
if ( value & FormatFeatureFlagBits::eBlitSrc ) result += "BlitSrc | ";
if ( value & FormatFeatureFlagBits::eBlitDst ) result += "BlitDst | ";
if ( value & FormatFeatureFlagBits::eSampledImageFilterLinear ) result += "SampledImageFilterLinear | ";
if ( value & FormatFeatureFlagBits::eTransferSrc ) result += "TransferSrc | ";
if ( value & FormatFeatureFlagBits::eTransferDst ) result += "TransferDst | ";
if ( value & FormatFeatureFlagBits::eMidpointChromaSamples ) result += "MidpointChromaSamples | ";
if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionLinearFilter ) result += "SampledImageYcbcrConversionLinearFilter | ";
if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionSeparateReconstructionFilter ) result += "SampledImageYcbcrConversionSeparateReconstructionFilter | ";
if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicit ) result += "SampledImageYcbcrConversionChromaReconstructionExplicit | ";
if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable ) result += "SampledImageYcbcrConversionChromaReconstructionExplicitForceable | ";
if ( value & FormatFeatureFlagBits::eDisjoint ) result += "Disjoint | ";
if ( value & FormatFeatureFlagBits::eCositedChromaSamples ) result += "CositedChromaSamples | ";
if ( value & FormatFeatureFlagBits::eSampledImageFilterCubicIMG ) result += "SampledImageFilterCubicIMG | ";
if ( value & FormatFeatureFlagBits::eSampledImageFilterMinmaxEXT ) result += "SampledImageFilterMinmaxEXT | ";
if ( value & FormatFeatureFlagBits::eFragmentDensityMapEXT ) result += "FragmentDensityMapEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using FramebufferCreateFlags = Flags<FramebufferCreateFlagBits>;
template <> struct FlagTraits<FramebufferCreateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(FramebufferCreateFlagBits::eImagelessKHR)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FramebufferCreateFlags operator|( FramebufferCreateFlagBits bit0, FramebufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return FramebufferCreateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FramebufferCreateFlags operator&( FramebufferCreateFlagBits bit0, FramebufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return FramebufferCreateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FramebufferCreateFlags operator^( FramebufferCreateFlagBits bit0, FramebufferCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return FramebufferCreateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR FramebufferCreateFlags operator~( FramebufferCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( FramebufferCreateFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( FramebufferCreateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & FramebufferCreateFlagBits::eImagelessKHR ) result += "ImagelessKHR | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using GeometryFlagsNV = Flags<GeometryFlagBitsNV>;
template <> struct FlagTraits<GeometryFlagBitsNV>
{
enum : VkFlags
{
allFlags = VkFlags(GeometryFlagBitsNV::eOpaque) | VkFlags(GeometryFlagBitsNV::eNoDuplicateAnyHitInvocation)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryFlagsNV operator|( GeometryFlagBitsNV bit0, GeometryFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return GeometryFlagsNV( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryFlagsNV operator&( GeometryFlagBitsNV bit0, GeometryFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return GeometryFlagsNV( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryFlagsNV operator^( GeometryFlagBitsNV bit0, GeometryFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return GeometryFlagsNV( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryFlagsNV operator~( GeometryFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
{
return ~( GeometryFlagsNV( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( GeometryFlagsNV value )
{
if ( !value ) return "{}";
std::string result;
if ( value & GeometryFlagBitsNV::eOpaque ) result += "Opaque | ";
if ( value & GeometryFlagBitsNV::eNoDuplicateAnyHitInvocation ) result += "NoDuplicateAnyHitInvocation | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using GeometryInstanceFlagsNV = Flags<GeometryInstanceFlagBitsNV>;
template <> struct FlagTraits<GeometryInstanceFlagBitsNV>
{
enum : VkFlags
{
allFlags = VkFlags(GeometryInstanceFlagBitsNV::eTriangleCullDisable) | VkFlags(GeometryInstanceFlagBitsNV::eTriangleFrontCounterclockwise) | VkFlags(GeometryInstanceFlagBitsNV::eForceOpaque) | VkFlags(GeometryInstanceFlagBitsNV::eForceNoOpaque)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryInstanceFlagsNV operator|( GeometryInstanceFlagBitsNV bit0, GeometryInstanceFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return GeometryInstanceFlagsNV( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryInstanceFlagsNV operator&( GeometryInstanceFlagBitsNV bit0, GeometryInstanceFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return GeometryInstanceFlagsNV( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryInstanceFlagsNV operator^( GeometryInstanceFlagBitsNV bit0, GeometryInstanceFlagBitsNV bit1 ) VULKAN_HPP_NOEXCEPT
{
return GeometryInstanceFlagsNV( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR GeometryInstanceFlagsNV operator~( GeometryInstanceFlagBitsNV bits ) VULKAN_HPP_NOEXCEPT
{
return ~( GeometryInstanceFlagsNV( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( GeometryInstanceFlagsNV value )
{
if ( !value ) return "{}";
std::string result;
if ( value & GeometryInstanceFlagBitsNV::eTriangleCullDisable ) result += "TriangleCullDisable | ";
if ( value & GeometryInstanceFlagBitsNV::eTriangleFrontCounterclockwise ) result += "TriangleFrontCounterclockwise | ";
if ( value & GeometryInstanceFlagBitsNV::eForceOpaque ) result += "ForceOpaque | ";
if ( value & GeometryInstanceFlagBitsNV::eForceNoOpaque ) result += "ForceNoOpaque | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
enum class HeadlessSurfaceCreateFlagBitsEXT : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( HeadlessSurfaceCreateFlagBitsEXT )
{
return "(void)";
}
using HeadlessSurfaceCreateFlagsEXT = Flags<HeadlessSurfaceCreateFlagBitsEXT>;
VULKAN_HPP_INLINE std::string to_string( HeadlessSurfaceCreateFlagsEXT )
{
return "{}";
}
#ifdef VK_USE_PLATFORM_IOS_MVK
enum class IOSSurfaceCreateFlagBitsMVK : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( IOSSurfaceCreateFlagBitsMVK )
{
return "(void)";
}
using IOSSurfaceCreateFlagsMVK = Flags<IOSSurfaceCreateFlagBitsMVK>;
VULKAN_HPP_INLINE std::string to_string( IOSSurfaceCreateFlagsMVK )
{
return "{}";
}
#endif /*VK_USE_PLATFORM_IOS_MVK*/
using ImageAspectFlags = Flags<ImageAspectFlagBits>;
template <> struct FlagTraits<ImageAspectFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(ImageAspectFlagBits::eColor) | VkFlags(ImageAspectFlagBits::eDepth) | VkFlags(ImageAspectFlagBits::eStencil) | VkFlags(ImageAspectFlagBits::eMetadata) | VkFlags(ImageAspectFlagBits::ePlane0) | VkFlags(ImageAspectFlagBits::ePlane1) | VkFlags(ImageAspectFlagBits::ePlane2) | VkFlags(ImageAspectFlagBits::eMemoryPlane0EXT) | VkFlags(ImageAspectFlagBits::eMemoryPlane1EXT) | VkFlags(ImageAspectFlagBits::eMemoryPlane2EXT) | VkFlags(ImageAspectFlagBits::eMemoryPlane3EXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageAspectFlags operator|( ImageAspectFlagBits bit0, ImageAspectFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageAspectFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageAspectFlags operator&( ImageAspectFlagBits bit0, ImageAspectFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageAspectFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageAspectFlags operator^( ImageAspectFlagBits bit0, ImageAspectFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageAspectFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageAspectFlags operator~( ImageAspectFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ImageAspectFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( ImageAspectFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ImageAspectFlagBits::eColor ) result += "Color | ";
if ( value & ImageAspectFlagBits::eDepth ) result += "Depth | ";
if ( value & ImageAspectFlagBits::eStencil ) result += "Stencil | ";
if ( value & ImageAspectFlagBits::eMetadata ) result += "Metadata | ";
if ( value & ImageAspectFlagBits::ePlane0 ) result += "Plane0 | ";
if ( value & ImageAspectFlagBits::ePlane1 ) result += "Plane1 | ";
if ( value & ImageAspectFlagBits::ePlane2 ) result += "Plane2 | ";
if ( value & ImageAspectFlagBits::eMemoryPlane0EXT ) result += "MemoryPlane0EXT | ";
if ( value & ImageAspectFlagBits::eMemoryPlane1EXT ) result += "MemoryPlane1EXT | ";
if ( value & ImageAspectFlagBits::eMemoryPlane2EXT ) result += "MemoryPlane2EXT | ";
if ( value & ImageAspectFlagBits::eMemoryPlane3EXT ) result += "MemoryPlane3EXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using ImageCreateFlags = Flags<ImageCreateFlagBits>;
template <> struct FlagTraits<ImageCreateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(ImageCreateFlagBits::eSparseBinding) | VkFlags(ImageCreateFlagBits::eSparseResidency) | VkFlags(ImageCreateFlagBits::eSparseAliased) | VkFlags(ImageCreateFlagBits::eMutableFormat) | VkFlags(ImageCreateFlagBits::eCubeCompatible) | VkFlags(ImageCreateFlagBits::eAlias) | VkFlags(ImageCreateFlagBits::eSplitInstanceBindRegions) | VkFlags(ImageCreateFlagBits::e2DArrayCompatible) | VkFlags(ImageCreateFlagBits::eBlockTexelViewCompatible) | VkFlags(ImageCreateFlagBits::eExtendedUsage) | VkFlags(ImageCreateFlagBits::eProtected) | VkFlags(ImageCreateFlagBits::eDisjoint) | VkFlags(ImageCreateFlagBits::eCornerSampledNV) | VkFlags(ImageCreateFlagBits::eSampleLocationsCompatibleDepthEXT) | VkFlags(ImageCreateFlagBits::eSubsampledEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageCreateFlags operator|( ImageCreateFlagBits bit0, ImageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageCreateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageCreateFlags operator&( ImageCreateFlagBits bit0, ImageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageCreateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageCreateFlags operator^( ImageCreateFlagBits bit0, ImageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageCreateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageCreateFlags operator~( ImageCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ImageCreateFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( ImageCreateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ImageCreateFlagBits::eSparseBinding ) result += "SparseBinding | ";
if ( value & ImageCreateFlagBits::eSparseResidency ) result += "SparseResidency | ";
if ( value & ImageCreateFlagBits::eSparseAliased ) result += "SparseAliased | ";
if ( value & ImageCreateFlagBits::eMutableFormat ) result += "MutableFormat | ";
if ( value & ImageCreateFlagBits::eCubeCompatible ) result += "CubeCompatible | ";
if ( value & ImageCreateFlagBits::eAlias ) result += "Alias | ";
if ( value & ImageCreateFlagBits::eSplitInstanceBindRegions ) result += "SplitInstanceBindRegions | ";
if ( value & ImageCreateFlagBits::e2DArrayCompatible ) result += "2DArrayCompatible | ";
if ( value & ImageCreateFlagBits::eBlockTexelViewCompatible ) result += "BlockTexelViewCompatible | ";
if ( value & ImageCreateFlagBits::eExtendedUsage ) result += "ExtendedUsage | ";
if ( value & ImageCreateFlagBits::eProtected ) result += "Protected | ";
if ( value & ImageCreateFlagBits::eDisjoint ) result += "Disjoint | ";
if ( value & ImageCreateFlagBits::eCornerSampledNV ) result += "CornerSampledNV | ";
if ( value & ImageCreateFlagBits::eSampleLocationsCompatibleDepthEXT ) result += "SampleLocationsCompatibleDepthEXT | ";
if ( value & ImageCreateFlagBits::eSubsampledEXT ) result += "SubsampledEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
#ifdef VK_USE_PLATFORM_FUCHSIA
enum class ImagePipeSurfaceCreateFlagBitsFUCHSIA : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( ImagePipeSurfaceCreateFlagBitsFUCHSIA )
{
return "(void)";
}
using ImagePipeSurfaceCreateFlagsFUCHSIA = Flags<ImagePipeSurfaceCreateFlagBitsFUCHSIA>;
VULKAN_HPP_INLINE std::string to_string( ImagePipeSurfaceCreateFlagsFUCHSIA )
{
return "{}";
}
#endif /*VK_USE_PLATFORM_FUCHSIA*/
using ImageUsageFlags = Flags<ImageUsageFlagBits>;
template <> struct FlagTraits<ImageUsageFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(ImageUsageFlagBits::eTransferSrc) | VkFlags(ImageUsageFlagBits::eTransferDst) | VkFlags(ImageUsageFlagBits::eSampled) | VkFlags(ImageUsageFlagBits::eStorage) | VkFlags(ImageUsageFlagBits::eColorAttachment) | VkFlags(ImageUsageFlagBits::eDepthStencilAttachment) | VkFlags(ImageUsageFlagBits::eTransientAttachment) | VkFlags(ImageUsageFlagBits::eInputAttachment) | VkFlags(ImageUsageFlagBits::eShadingRateImageNV) | VkFlags(ImageUsageFlagBits::eFragmentDensityMapEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageUsageFlags operator|( ImageUsageFlagBits bit0, ImageUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageUsageFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageUsageFlags operator&( ImageUsageFlagBits bit0, ImageUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageUsageFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageUsageFlags operator^( ImageUsageFlagBits bit0, ImageUsageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageUsageFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageUsageFlags operator~( ImageUsageFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ImageUsageFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( ImageUsageFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ImageUsageFlagBits::eTransferSrc ) result += "TransferSrc | ";
if ( value & ImageUsageFlagBits::eTransferDst ) result += "TransferDst | ";
if ( value & ImageUsageFlagBits::eSampled ) result += "Sampled | ";
if ( value & ImageUsageFlagBits::eStorage ) result += "Storage | ";
if ( value & ImageUsageFlagBits::eColorAttachment ) result += "ColorAttachment | ";
if ( value & ImageUsageFlagBits::eDepthStencilAttachment ) result += "DepthStencilAttachment | ";
if ( value & ImageUsageFlagBits::eTransientAttachment ) result += "TransientAttachment | ";
if ( value & ImageUsageFlagBits::eInputAttachment ) result += "InputAttachment | ";
if ( value & ImageUsageFlagBits::eShadingRateImageNV ) result += "ShadingRateImageNV | ";
if ( value & ImageUsageFlagBits::eFragmentDensityMapEXT ) result += "FragmentDensityMapEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using ImageViewCreateFlags = Flags<ImageViewCreateFlagBits>;
template <> struct FlagTraits<ImageViewCreateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(ImageViewCreateFlagBits::eFragmentDensityMapDynamicEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags operator|( ImageViewCreateFlagBits bit0, ImageViewCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageViewCreateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags operator&( ImageViewCreateFlagBits bit0, ImageViewCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageViewCreateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags operator^( ImageViewCreateFlagBits bit0, ImageViewCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ImageViewCreateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ImageViewCreateFlags operator~( ImageViewCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ImageViewCreateFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( ImageViewCreateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ImageViewCreateFlagBits::eFragmentDensityMapDynamicEXT ) result += "FragmentDensityMapDynamicEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using IndirectCommandsLayoutUsageFlagsNVX = Flags<IndirectCommandsLayoutUsageFlagBitsNVX>;
template <> struct FlagTraits<IndirectCommandsLayoutUsageFlagBitsNVX>
{
enum : VkFlags
{
allFlags = VkFlags(IndirectCommandsLayoutUsageFlagBitsNVX::eUnorderedSequences) | VkFlags(IndirectCommandsLayoutUsageFlagBitsNVX::eSparseSequences) | VkFlags(IndirectCommandsLayoutUsageFlagBitsNVX::eEmptyExecutions) | VkFlags(IndirectCommandsLayoutUsageFlagBitsNVX::eIndexedSequences)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNVX operator|( IndirectCommandsLayoutUsageFlagBitsNVX bit0, IndirectCommandsLayoutUsageFlagBitsNVX bit1 ) VULKAN_HPP_NOEXCEPT
{
return IndirectCommandsLayoutUsageFlagsNVX( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNVX operator&( IndirectCommandsLayoutUsageFlagBitsNVX bit0, IndirectCommandsLayoutUsageFlagBitsNVX bit1 ) VULKAN_HPP_NOEXCEPT
{
return IndirectCommandsLayoutUsageFlagsNVX( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNVX operator^( IndirectCommandsLayoutUsageFlagBitsNVX bit0, IndirectCommandsLayoutUsageFlagBitsNVX bit1 ) VULKAN_HPP_NOEXCEPT
{
return IndirectCommandsLayoutUsageFlagsNVX( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutUsageFlagsNVX operator~( IndirectCommandsLayoutUsageFlagBitsNVX bits ) VULKAN_HPP_NOEXCEPT
{
return ~( IndirectCommandsLayoutUsageFlagsNVX( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( IndirectCommandsLayoutUsageFlagsNVX value )
{
if ( !value ) return "{}";
std::string result;
if ( value & IndirectCommandsLayoutUsageFlagBitsNVX::eUnorderedSequences ) result += "UnorderedSequences | ";
if ( value & IndirectCommandsLayoutUsageFlagBitsNVX::eSparseSequences ) result += "SparseSequences | ";
if ( value & IndirectCommandsLayoutUsageFlagBitsNVX::eEmptyExecutions ) result += "EmptyExecutions | ";
if ( value & IndirectCommandsLayoutUsageFlagBitsNVX::eIndexedSequences ) result += "IndexedSequences | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using InstanceCreateFlags = Flags<InstanceCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( InstanceCreateFlags )
{
return "{}";
}
#ifdef VK_USE_PLATFORM_MACOS_MVK
enum class MacOSSurfaceCreateFlagBitsMVK : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( MacOSSurfaceCreateFlagBitsMVK )
{
return "(void)";
}
using MacOSSurfaceCreateFlagsMVK = Flags<MacOSSurfaceCreateFlagBitsMVK>;
VULKAN_HPP_INLINE std::string to_string( MacOSSurfaceCreateFlagsMVK )
{
return "{}";
}
#endif /*VK_USE_PLATFORM_MACOS_MVK*/
using MemoryAllocateFlags = Flags<MemoryAllocateFlagBits>;
template <> struct FlagTraits<MemoryAllocateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(MemoryAllocateFlagBits::eDeviceMask)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags operator|( MemoryAllocateFlagBits bit0, MemoryAllocateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return MemoryAllocateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags operator&( MemoryAllocateFlagBits bit0, MemoryAllocateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return MemoryAllocateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags operator^( MemoryAllocateFlagBits bit0, MemoryAllocateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return MemoryAllocateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryAllocateFlags operator~( MemoryAllocateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( MemoryAllocateFlags( bits ) );
}
using MemoryAllocateFlagsKHR = MemoryAllocateFlags;
VULKAN_HPP_INLINE std::string to_string( MemoryAllocateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & MemoryAllocateFlagBits::eDeviceMask ) result += "DeviceMask | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using MemoryHeapFlags = Flags<MemoryHeapFlagBits>;
template <> struct FlagTraits<MemoryHeapFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(MemoryHeapFlagBits::eDeviceLocal) | VkFlags(MemoryHeapFlagBits::eMultiInstance)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryHeapFlags operator|( MemoryHeapFlagBits bit0, MemoryHeapFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return MemoryHeapFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryHeapFlags operator&( MemoryHeapFlagBits bit0, MemoryHeapFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return MemoryHeapFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryHeapFlags operator^( MemoryHeapFlagBits bit0, MemoryHeapFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return MemoryHeapFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryHeapFlags operator~( MemoryHeapFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( MemoryHeapFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( MemoryHeapFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & MemoryHeapFlagBits::eDeviceLocal ) result += "DeviceLocal | ";
if ( value & MemoryHeapFlagBits::eMultiInstance ) result += "MultiInstance | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
enum class MemoryMapFlagBits : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( MemoryMapFlagBits )
{
return "(void)";
}
using MemoryMapFlags = Flags<MemoryMapFlagBits>;
VULKAN_HPP_INLINE std::string to_string( MemoryMapFlags )
{
return "{}";
}
using MemoryPropertyFlags = Flags<MemoryPropertyFlagBits>;
template <> struct FlagTraits<MemoryPropertyFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(MemoryPropertyFlagBits::eDeviceLocal) | VkFlags(MemoryPropertyFlagBits::eHostVisible) | VkFlags(MemoryPropertyFlagBits::eHostCoherent) | VkFlags(MemoryPropertyFlagBits::eHostCached) | VkFlags(MemoryPropertyFlagBits::eLazilyAllocated) | VkFlags(MemoryPropertyFlagBits::eProtected) | VkFlags(MemoryPropertyFlagBits::eDeviceCoherentAMD) | VkFlags(MemoryPropertyFlagBits::eDeviceUncachedAMD)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags operator|( MemoryPropertyFlagBits bit0, MemoryPropertyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return MemoryPropertyFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags operator&( MemoryPropertyFlagBits bit0, MemoryPropertyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return MemoryPropertyFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags operator^( MemoryPropertyFlagBits bit0, MemoryPropertyFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return MemoryPropertyFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR MemoryPropertyFlags operator~( MemoryPropertyFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( MemoryPropertyFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( MemoryPropertyFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & MemoryPropertyFlagBits::eDeviceLocal ) result += "DeviceLocal | ";
if ( value & MemoryPropertyFlagBits::eHostVisible ) result += "HostVisible | ";
if ( value & MemoryPropertyFlagBits::eHostCoherent ) result += "HostCoherent | ";
if ( value & MemoryPropertyFlagBits::eHostCached ) result += "HostCached | ";
if ( value & MemoryPropertyFlagBits::eLazilyAllocated ) result += "LazilyAllocated | ";
if ( value & MemoryPropertyFlagBits::eProtected ) result += "Protected | ";
if ( value & MemoryPropertyFlagBits::eDeviceCoherentAMD ) result += "DeviceCoherentAMD | ";
if ( value & MemoryPropertyFlagBits::eDeviceUncachedAMD ) result += "DeviceUncachedAMD | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
#ifdef VK_USE_PLATFORM_METAL_EXT
enum class MetalSurfaceCreateFlagBitsEXT : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( MetalSurfaceCreateFlagBitsEXT )
{
return "(void)";
}
using MetalSurfaceCreateFlagsEXT = Flags<MetalSurfaceCreateFlagBitsEXT>;
VULKAN_HPP_INLINE std::string to_string( MetalSurfaceCreateFlagsEXT )
{
return "{}";
}
#endif /*VK_USE_PLATFORM_METAL_EXT*/
using ObjectEntryUsageFlagsNVX = Flags<ObjectEntryUsageFlagBitsNVX>;
template <> struct FlagTraits<ObjectEntryUsageFlagBitsNVX>
{
enum : VkFlags
{
allFlags = VkFlags(ObjectEntryUsageFlagBitsNVX::eGraphics) | VkFlags(ObjectEntryUsageFlagBitsNVX::eCompute)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ObjectEntryUsageFlagsNVX operator|( ObjectEntryUsageFlagBitsNVX bit0, ObjectEntryUsageFlagBitsNVX bit1 ) VULKAN_HPP_NOEXCEPT
{
return ObjectEntryUsageFlagsNVX( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ObjectEntryUsageFlagsNVX operator&( ObjectEntryUsageFlagBitsNVX bit0, ObjectEntryUsageFlagBitsNVX bit1 ) VULKAN_HPP_NOEXCEPT
{
return ObjectEntryUsageFlagsNVX( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ObjectEntryUsageFlagsNVX operator^( ObjectEntryUsageFlagBitsNVX bit0, ObjectEntryUsageFlagBitsNVX bit1 ) VULKAN_HPP_NOEXCEPT
{
return ObjectEntryUsageFlagsNVX( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ObjectEntryUsageFlagsNVX operator~( ObjectEntryUsageFlagBitsNVX bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ObjectEntryUsageFlagsNVX( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( ObjectEntryUsageFlagsNVX value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ObjectEntryUsageFlagBitsNVX::eGraphics ) result += "Graphics | ";
if ( value & ObjectEntryUsageFlagBitsNVX::eCompute ) result += "Compute | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using PeerMemoryFeatureFlags = Flags<PeerMemoryFeatureFlagBits>;
template <> struct FlagTraits<PeerMemoryFeatureFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(PeerMemoryFeatureFlagBits::eCopySrc) | VkFlags(PeerMemoryFeatureFlagBits::eCopyDst) | VkFlags(PeerMemoryFeatureFlagBits::eGenericSrc) | VkFlags(PeerMemoryFeatureFlagBits::eGenericDst)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PeerMemoryFeatureFlags operator|( PeerMemoryFeatureFlagBits bit0, PeerMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return PeerMemoryFeatureFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PeerMemoryFeatureFlags operator&( PeerMemoryFeatureFlagBits bit0, PeerMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return PeerMemoryFeatureFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PeerMemoryFeatureFlags operator^( PeerMemoryFeatureFlagBits bit0, PeerMemoryFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return PeerMemoryFeatureFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PeerMemoryFeatureFlags operator~( PeerMemoryFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( PeerMemoryFeatureFlags( bits ) );
}
using PeerMemoryFeatureFlagsKHR = PeerMemoryFeatureFlags;
VULKAN_HPP_INLINE std::string to_string( PeerMemoryFeatureFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & PeerMemoryFeatureFlagBits::eCopySrc ) result += "CopySrc | ";
if ( value & PeerMemoryFeatureFlagBits::eCopyDst ) result += "CopyDst | ";
if ( value & PeerMemoryFeatureFlagBits::eGenericSrc ) result += "GenericSrc | ";
if ( value & PeerMemoryFeatureFlagBits::eGenericDst ) result += "GenericDst | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using PipelineCacheCreateFlags = Flags<PipelineCacheCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( PipelineCacheCreateFlags )
{
return "{}";
}
using PipelineColorBlendStateCreateFlags = Flags<PipelineColorBlendStateCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( PipelineColorBlendStateCreateFlags )
{
return "{}";
}
using PipelineCompilerControlFlagsAMD = Flags<PipelineCompilerControlFlagBitsAMD>;
VULKAN_HPP_INLINE std::string to_string( PipelineCompilerControlFlagsAMD )
{
return "{}";
}
enum class PipelineCoverageModulationStateCreateFlagBitsNV : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( PipelineCoverageModulationStateCreateFlagBitsNV )
{
return "(void)";
}
using PipelineCoverageModulationStateCreateFlagsNV = Flags<PipelineCoverageModulationStateCreateFlagBitsNV>;
VULKAN_HPP_INLINE std::string to_string( PipelineCoverageModulationStateCreateFlagsNV )
{
return "{}";
}
enum class PipelineCoverageReductionStateCreateFlagBitsNV : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( PipelineCoverageReductionStateCreateFlagBitsNV )
{
return "(void)";
}
using PipelineCoverageReductionStateCreateFlagsNV = Flags<PipelineCoverageReductionStateCreateFlagBitsNV>;
VULKAN_HPP_INLINE std::string to_string( PipelineCoverageReductionStateCreateFlagsNV )
{
return "{}";
}
enum class PipelineCoverageToColorStateCreateFlagBitsNV : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( PipelineCoverageToColorStateCreateFlagBitsNV )
{
return "(void)";
}
using PipelineCoverageToColorStateCreateFlagsNV = Flags<PipelineCoverageToColorStateCreateFlagBitsNV>;
VULKAN_HPP_INLINE std::string to_string( PipelineCoverageToColorStateCreateFlagsNV )
{
return "{}";
}
using PipelineCreateFlags = Flags<PipelineCreateFlagBits>;
template <> struct FlagTraits<PipelineCreateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(PipelineCreateFlagBits::eDisableOptimization) | VkFlags(PipelineCreateFlagBits::eAllowDerivatives) | VkFlags(PipelineCreateFlagBits::eDerivative) | VkFlags(PipelineCreateFlagBits::eViewIndexFromDeviceIndex) | VkFlags(PipelineCreateFlagBits::eDispatchBase) | VkFlags(PipelineCreateFlagBits::eDeferCompileNV) | VkFlags(PipelineCreateFlagBits::eCaptureStatisticsKHR) | VkFlags(PipelineCreateFlagBits::eCaptureInternalRepresentationsKHR)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags operator|( PipelineCreateFlagBits bit0, PipelineCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return PipelineCreateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags operator&( PipelineCreateFlagBits bit0, PipelineCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return PipelineCreateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags operator^( PipelineCreateFlagBits bit0, PipelineCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return PipelineCreateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreateFlags operator~( PipelineCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( PipelineCreateFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( PipelineCreateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & PipelineCreateFlagBits::eDisableOptimization ) result += "DisableOptimization | ";
if ( value & PipelineCreateFlagBits::eAllowDerivatives ) result += "AllowDerivatives | ";
if ( value & PipelineCreateFlagBits::eDerivative ) result += "Derivative | ";
if ( value & PipelineCreateFlagBits::eViewIndexFromDeviceIndex ) result += "ViewIndexFromDeviceIndex | ";
if ( value & PipelineCreateFlagBits::eDispatchBase ) result += "DispatchBase | ";
if ( value & PipelineCreateFlagBits::eDeferCompileNV ) result += "DeferCompileNV | ";
if ( value & PipelineCreateFlagBits::eCaptureStatisticsKHR ) result += "CaptureStatisticsKHR | ";
if ( value & PipelineCreateFlagBits::eCaptureInternalRepresentationsKHR ) result += "CaptureInternalRepresentationsKHR | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using PipelineCreationFeedbackFlagsEXT = Flags<PipelineCreationFeedbackFlagBitsEXT>;
template <> struct FlagTraits<PipelineCreationFeedbackFlagBitsEXT>
{
enum : VkFlags
{
allFlags = VkFlags(PipelineCreationFeedbackFlagBitsEXT::eValid) | VkFlags(PipelineCreationFeedbackFlagBitsEXT::eApplicationPipelineCacheHit) | VkFlags(PipelineCreationFeedbackFlagBitsEXT::eBasePipelineAcceleration)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackFlagsEXT operator|( PipelineCreationFeedbackFlagBitsEXT bit0, PipelineCreationFeedbackFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return PipelineCreationFeedbackFlagsEXT( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackFlagsEXT operator&( PipelineCreationFeedbackFlagBitsEXT bit0, PipelineCreationFeedbackFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return PipelineCreationFeedbackFlagsEXT( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackFlagsEXT operator^( PipelineCreationFeedbackFlagBitsEXT bit0, PipelineCreationFeedbackFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return PipelineCreationFeedbackFlagsEXT( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackFlagsEXT operator~( PipelineCreationFeedbackFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
{
return ~( PipelineCreationFeedbackFlagsEXT( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( PipelineCreationFeedbackFlagsEXT value )
{
if ( !value ) return "{}";
std::string result;
if ( value & PipelineCreationFeedbackFlagBitsEXT::eValid ) result += "Valid | ";
if ( value & PipelineCreationFeedbackFlagBitsEXT::eApplicationPipelineCacheHit ) result += "ApplicationPipelineCacheHit | ";
if ( value & PipelineCreationFeedbackFlagBitsEXT::eBasePipelineAcceleration ) result += "BasePipelineAcceleration | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using PipelineDepthStencilStateCreateFlags = Flags<PipelineDepthStencilStateCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( PipelineDepthStencilStateCreateFlags )
{
return "{}";
}
enum class PipelineDiscardRectangleStateCreateFlagBitsEXT : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( PipelineDiscardRectangleStateCreateFlagBitsEXT )
{
return "(void)";
}
using PipelineDiscardRectangleStateCreateFlagsEXT = Flags<PipelineDiscardRectangleStateCreateFlagBitsEXT>;
VULKAN_HPP_INLINE std::string to_string( PipelineDiscardRectangleStateCreateFlagsEXT )
{
return "{}";
}
using PipelineDynamicStateCreateFlags = Flags<PipelineDynamicStateCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( PipelineDynamicStateCreateFlags )
{
return "{}";
}
using PipelineInputAssemblyStateCreateFlags = Flags<PipelineInputAssemblyStateCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( PipelineInputAssemblyStateCreateFlags )
{
return "{}";
}
using PipelineLayoutCreateFlags = Flags<PipelineLayoutCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( PipelineLayoutCreateFlags )
{
return "{}";
}
using PipelineMultisampleStateCreateFlags = Flags<PipelineMultisampleStateCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( PipelineMultisampleStateCreateFlags )
{
return "{}";
}
enum class PipelineRasterizationConservativeStateCreateFlagBitsEXT : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationConservativeStateCreateFlagBitsEXT )
{
return "(void)";
}
using PipelineRasterizationConservativeStateCreateFlagsEXT = Flags<PipelineRasterizationConservativeStateCreateFlagBitsEXT>;
VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationConservativeStateCreateFlagsEXT )
{
return "{}";
}
enum class PipelineRasterizationDepthClipStateCreateFlagBitsEXT : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationDepthClipStateCreateFlagBitsEXT )
{
return "(void)";
}
using PipelineRasterizationDepthClipStateCreateFlagsEXT = Flags<PipelineRasterizationDepthClipStateCreateFlagBitsEXT>;
VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationDepthClipStateCreateFlagsEXT )
{
return "{}";
}
using PipelineRasterizationStateCreateFlags = Flags<PipelineRasterizationStateCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateCreateFlags )
{
return "{}";
}
enum class PipelineRasterizationStateStreamCreateFlagBitsEXT : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateStreamCreateFlagBitsEXT )
{
return "(void)";
}
using PipelineRasterizationStateStreamCreateFlagsEXT = Flags<PipelineRasterizationStateStreamCreateFlagBitsEXT>;
VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateStreamCreateFlagsEXT )
{
return "{}";
}
using PipelineShaderStageCreateFlags = Flags<PipelineShaderStageCreateFlagBits>;
template <> struct FlagTraits<PipelineShaderStageCreateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(PipelineShaderStageCreateFlagBits::eAllowVaryingSubgroupSizeEXT) | VkFlags(PipelineShaderStageCreateFlagBits::eRequireFullSubgroupsEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateFlags operator|( PipelineShaderStageCreateFlagBits bit0, PipelineShaderStageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return PipelineShaderStageCreateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateFlags operator&( PipelineShaderStageCreateFlagBits bit0, PipelineShaderStageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return PipelineShaderStageCreateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateFlags operator^( PipelineShaderStageCreateFlagBits bit0, PipelineShaderStageCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return PipelineShaderStageCreateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateFlags operator~( PipelineShaderStageCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( PipelineShaderStageCreateFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( PipelineShaderStageCreateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & PipelineShaderStageCreateFlagBits::eAllowVaryingSubgroupSizeEXT ) result += "AllowVaryingSubgroupSizeEXT | ";
if ( value & PipelineShaderStageCreateFlagBits::eRequireFullSubgroupsEXT ) result += "RequireFullSubgroupsEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using PipelineStageFlags = Flags<PipelineStageFlagBits>;
template <> struct FlagTraits<PipelineStageFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(PipelineStageFlagBits::eTopOfPipe) | VkFlags(PipelineStageFlagBits::eDrawIndirect) | VkFlags(PipelineStageFlagBits::eVertexInput) | VkFlags(PipelineStageFlagBits::eVertexShader) | VkFlags(PipelineStageFlagBits::eTessellationControlShader) | VkFlags(PipelineStageFlagBits::eTessellationEvaluationShader) | VkFlags(PipelineStageFlagBits::eGeometryShader) | VkFlags(PipelineStageFlagBits::eFragmentShader) | VkFlags(PipelineStageFlagBits::eEarlyFragmentTests) | VkFlags(PipelineStageFlagBits::eLateFragmentTests) | VkFlags(PipelineStageFlagBits::eColorAttachmentOutput) | VkFlags(PipelineStageFlagBits::eComputeShader) | VkFlags(PipelineStageFlagBits::eTransfer) | VkFlags(PipelineStageFlagBits::eBottomOfPipe) | VkFlags(PipelineStageFlagBits::eHost) | VkFlags(PipelineStageFlagBits::eAllGraphics) | VkFlags(PipelineStageFlagBits::eAllCommands) | VkFlags(PipelineStageFlagBits::eTransformFeedbackEXT) | VkFlags(PipelineStageFlagBits::eConditionalRenderingEXT) | VkFlags(PipelineStageFlagBits::eCommandProcessNVX) | VkFlags(PipelineStageFlagBits::eShadingRateImageNV) | VkFlags(PipelineStageFlagBits::eRayTracingShaderNV) | VkFlags(PipelineStageFlagBits::eAccelerationStructureBuildNV) | VkFlags(PipelineStageFlagBits::eTaskShaderNV) | VkFlags(PipelineStageFlagBits::eMeshShaderNV) | VkFlags(PipelineStageFlagBits::eFragmentDensityProcessEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags operator|( PipelineStageFlagBits bit0, PipelineStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return PipelineStageFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags operator&( PipelineStageFlagBits bit0, PipelineStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return PipelineStageFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags operator^( PipelineStageFlagBits bit0, PipelineStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return PipelineStageFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR PipelineStageFlags operator~( PipelineStageFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( PipelineStageFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( PipelineStageFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & PipelineStageFlagBits::eTopOfPipe ) result += "TopOfPipe | ";
if ( value & PipelineStageFlagBits::eDrawIndirect ) result += "DrawIndirect | ";
if ( value & PipelineStageFlagBits::eVertexInput ) result += "VertexInput | ";
if ( value & PipelineStageFlagBits::eVertexShader ) result += "VertexShader | ";
if ( value & PipelineStageFlagBits::eTessellationControlShader ) result += "TessellationControlShader | ";
if ( value & PipelineStageFlagBits::eTessellationEvaluationShader ) result += "TessellationEvaluationShader | ";
if ( value & PipelineStageFlagBits::eGeometryShader ) result += "GeometryShader | ";
if ( value & PipelineStageFlagBits::eFragmentShader ) result += "FragmentShader | ";
if ( value & PipelineStageFlagBits::eEarlyFragmentTests ) result += "EarlyFragmentTests | ";
if ( value & PipelineStageFlagBits::eLateFragmentTests ) result += "LateFragmentTests | ";
if ( value & PipelineStageFlagBits::eColorAttachmentOutput ) result += "ColorAttachmentOutput | ";
if ( value & PipelineStageFlagBits::eComputeShader ) result += "ComputeShader | ";
if ( value & PipelineStageFlagBits::eTransfer ) result += "Transfer | ";
if ( value & PipelineStageFlagBits::eBottomOfPipe ) result += "BottomOfPipe | ";
if ( value & PipelineStageFlagBits::eHost ) result += "Host | ";
if ( value & PipelineStageFlagBits::eAllGraphics ) result += "AllGraphics | ";
if ( value & PipelineStageFlagBits::eAllCommands ) result += "AllCommands | ";
if ( value & PipelineStageFlagBits::eTransformFeedbackEXT ) result += "TransformFeedbackEXT | ";
if ( value & PipelineStageFlagBits::eConditionalRenderingEXT ) result += "ConditionalRenderingEXT | ";
if ( value & PipelineStageFlagBits::eCommandProcessNVX ) result += "CommandProcessNVX | ";
if ( value & PipelineStageFlagBits::eShadingRateImageNV ) result += "ShadingRateImageNV | ";
if ( value & PipelineStageFlagBits::eRayTracingShaderNV ) result += "RayTracingShaderNV | ";
if ( value & PipelineStageFlagBits::eAccelerationStructureBuildNV ) result += "AccelerationStructureBuildNV | ";
if ( value & PipelineStageFlagBits::eTaskShaderNV ) result += "TaskShaderNV | ";
if ( value & PipelineStageFlagBits::eMeshShaderNV ) result += "MeshShaderNV | ";
if ( value & PipelineStageFlagBits::eFragmentDensityProcessEXT ) result += "FragmentDensityProcessEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using PipelineTessellationStateCreateFlags = Flags<PipelineTessellationStateCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( PipelineTessellationStateCreateFlags )
{
return "{}";
}
using PipelineVertexInputStateCreateFlags = Flags<PipelineVertexInputStateCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( PipelineVertexInputStateCreateFlags )
{
return "{}";
}
using PipelineViewportStateCreateFlags = Flags<PipelineViewportStateCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( PipelineViewportStateCreateFlags )
{
return "{}";
}
enum class PipelineViewportSwizzleStateCreateFlagBitsNV : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( PipelineViewportSwizzleStateCreateFlagBitsNV )
{
return "(void)";
}
using PipelineViewportSwizzleStateCreateFlagsNV = Flags<PipelineViewportSwizzleStateCreateFlagBitsNV>;
VULKAN_HPP_INLINE std::string to_string( PipelineViewportSwizzleStateCreateFlagsNV )
{
return "{}";
}
using QueryControlFlags = Flags<QueryControlFlagBits>;
template <> struct FlagTraits<QueryControlFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(QueryControlFlagBits::ePrecise)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryControlFlags operator|( QueryControlFlagBits bit0, QueryControlFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return QueryControlFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryControlFlags operator&( QueryControlFlagBits bit0, QueryControlFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return QueryControlFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryControlFlags operator^( QueryControlFlagBits bit0, QueryControlFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return QueryControlFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryControlFlags operator~( QueryControlFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( QueryControlFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( QueryControlFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & QueryControlFlagBits::ePrecise ) result += "Precise | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using QueryPipelineStatisticFlags = Flags<QueryPipelineStatisticFlagBits>;
template <> struct FlagTraits<QueryPipelineStatisticFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(QueryPipelineStatisticFlagBits::eInputAssemblyVertices) | VkFlags(QueryPipelineStatisticFlagBits::eInputAssemblyPrimitives) | VkFlags(QueryPipelineStatisticFlagBits::eVertexShaderInvocations) | VkFlags(QueryPipelineStatisticFlagBits::eGeometryShaderInvocations) | VkFlags(QueryPipelineStatisticFlagBits::eGeometryShaderPrimitives) | VkFlags(QueryPipelineStatisticFlagBits::eClippingInvocations) | VkFlags(QueryPipelineStatisticFlagBits::eClippingPrimitives) | VkFlags(QueryPipelineStatisticFlagBits::eFragmentShaderInvocations) | VkFlags(QueryPipelineStatisticFlagBits::eTessellationControlShaderPatches) | VkFlags(QueryPipelineStatisticFlagBits::eTessellationEvaluationShaderInvocations) | VkFlags(QueryPipelineStatisticFlagBits::eComputeShaderInvocations)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryPipelineStatisticFlags operator|( QueryPipelineStatisticFlagBits bit0, QueryPipelineStatisticFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return QueryPipelineStatisticFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryPipelineStatisticFlags operator&( QueryPipelineStatisticFlagBits bit0, QueryPipelineStatisticFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return QueryPipelineStatisticFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryPipelineStatisticFlags operator^( QueryPipelineStatisticFlagBits bit0, QueryPipelineStatisticFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return QueryPipelineStatisticFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryPipelineStatisticFlags operator~( QueryPipelineStatisticFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( QueryPipelineStatisticFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( QueryPipelineStatisticFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & QueryPipelineStatisticFlagBits::eInputAssemblyVertices ) result += "InputAssemblyVertices | ";
if ( value & QueryPipelineStatisticFlagBits::eInputAssemblyPrimitives ) result += "InputAssemblyPrimitives | ";
if ( value & QueryPipelineStatisticFlagBits::eVertexShaderInvocations ) result += "VertexShaderInvocations | ";
if ( value & QueryPipelineStatisticFlagBits::eGeometryShaderInvocations ) result += "GeometryShaderInvocations | ";
if ( value & QueryPipelineStatisticFlagBits::eGeometryShaderPrimitives ) result += "GeometryShaderPrimitives | ";
if ( value & QueryPipelineStatisticFlagBits::eClippingInvocations ) result += "ClippingInvocations | ";
if ( value & QueryPipelineStatisticFlagBits::eClippingPrimitives ) result += "ClippingPrimitives | ";
if ( value & QueryPipelineStatisticFlagBits::eFragmentShaderInvocations ) result += "FragmentShaderInvocations | ";
if ( value & QueryPipelineStatisticFlagBits::eTessellationControlShaderPatches ) result += "TessellationControlShaderPatches | ";
if ( value & QueryPipelineStatisticFlagBits::eTessellationEvaluationShaderInvocations ) result += "TessellationEvaluationShaderInvocations | ";
if ( value & QueryPipelineStatisticFlagBits::eComputeShaderInvocations ) result += "ComputeShaderInvocations | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using QueryPoolCreateFlags = Flags<QueryPoolCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( QueryPoolCreateFlags )
{
return "{}";
}
using QueryResultFlags = Flags<QueryResultFlagBits>;
template <> struct FlagTraits<QueryResultFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(QueryResultFlagBits::e64) | VkFlags(QueryResultFlagBits::eWait) | VkFlags(QueryResultFlagBits::eWithAvailability) | VkFlags(QueryResultFlagBits::ePartial)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryResultFlags operator|( QueryResultFlagBits bit0, QueryResultFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return QueryResultFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryResultFlags operator&( QueryResultFlagBits bit0, QueryResultFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return QueryResultFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryResultFlags operator^( QueryResultFlagBits bit0, QueryResultFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return QueryResultFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueryResultFlags operator~( QueryResultFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( QueryResultFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( QueryResultFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & QueryResultFlagBits::e64 ) result += "64 | ";
if ( value & QueryResultFlagBits::eWait ) result += "Wait | ";
if ( value & QueryResultFlagBits::eWithAvailability ) result += "WithAvailability | ";
if ( value & QueryResultFlagBits::ePartial ) result += "Partial | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using QueueFlags = Flags<QueueFlagBits>;
template <> struct FlagTraits<QueueFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(QueueFlagBits::eGraphics) | VkFlags(QueueFlagBits::eCompute) | VkFlags(QueueFlagBits::eTransfer) | VkFlags(QueueFlagBits::eSparseBinding) | VkFlags(QueueFlagBits::eProtected)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator|( QueueFlagBits bit0, QueueFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return QueueFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator&( QueueFlagBits bit0, QueueFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return QueueFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator^( QueueFlagBits bit0, QueueFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return QueueFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR QueueFlags operator~( QueueFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( QueueFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( QueueFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & QueueFlagBits::eGraphics ) result += "Graphics | ";
if ( value & QueueFlagBits::eCompute ) result += "Compute | ";
if ( value & QueueFlagBits::eTransfer ) result += "Transfer | ";
if ( value & QueueFlagBits::eSparseBinding ) result += "SparseBinding | ";
if ( value & QueueFlagBits::eProtected ) result += "Protected | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using RenderPassCreateFlags = Flags<RenderPassCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( RenderPassCreateFlags )
{
return "{}";
}
using ResolveModeFlagsKHR = Flags<ResolveModeFlagBitsKHR>;
template <> struct FlagTraits<ResolveModeFlagBitsKHR>
{
enum : VkFlags
{
allFlags = VkFlags(ResolveModeFlagBitsKHR::eNone) | VkFlags(ResolveModeFlagBitsKHR::eSampleZero) | VkFlags(ResolveModeFlagBitsKHR::eAverage) | VkFlags(ResolveModeFlagBitsKHR::eMin) | VkFlags(ResolveModeFlagBitsKHR::eMax)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ResolveModeFlagsKHR operator|( ResolveModeFlagBitsKHR bit0, ResolveModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return ResolveModeFlagsKHR( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ResolveModeFlagsKHR operator&( ResolveModeFlagBitsKHR bit0, ResolveModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return ResolveModeFlagsKHR( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ResolveModeFlagsKHR operator^( ResolveModeFlagBitsKHR bit0, ResolveModeFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return ResolveModeFlagsKHR( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ResolveModeFlagsKHR operator~( ResolveModeFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ResolveModeFlagsKHR( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( ResolveModeFlagsKHR value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ResolveModeFlagBitsKHR::eSampleZero ) result += "SampleZero | ";
if ( value & ResolveModeFlagBitsKHR::eAverage ) result += "Average | ";
if ( value & ResolveModeFlagBitsKHR::eMin ) result += "Min | ";
if ( value & ResolveModeFlagBitsKHR::eMax ) result += "Max | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using SampleCountFlags = Flags<SampleCountFlagBits>;
template <> struct FlagTraits<SampleCountFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(SampleCountFlagBits::e1) | VkFlags(SampleCountFlagBits::e2) | VkFlags(SampleCountFlagBits::e4) | VkFlags(SampleCountFlagBits::e8) | VkFlags(SampleCountFlagBits::e16) | VkFlags(SampleCountFlagBits::e32) | VkFlags(SampleCountFlagBits::e64)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SampleCountFlags operator|( SampleCountFlagBits bit0, SampleCountFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SampleCountFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SampleCountFlags operator&( SampleCountFlagBits bit0, SampleCountFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SampleCountFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SampleCountFlags operator^( SampleCountFlagBits bit0, SampleCountFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SampleCountFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SampleCountFlags operator~( SampleCountFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( SampleCountFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( SampleCountFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & SampleCountFlagBits::e1 ) result += "1 | ";
if ( value & SampleCountFlagBits::e2 ) result += "2 | ";
if ( value & SampleCountFlagBits::e4 ) result += "4 | ";
if ( value & SampleCountFlagBits::e8 ) result += "8 | ";
if ( value & SampleCountFlagBits::e16 ) result += "16 | ";
if ( value & SampleCountFlagBits::e32 ) result += "32 | ";
if ( value & SampleCountFlagBits::e64 ) result += "64 | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using SamplerCreateFlags = Flags<SamplerCreateFlagBits>;
template <> struct FlagTraits<SamplerCreateFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(SamplerCreateFlagBits::eSubsampledEXT) | VkFlags(SamplerCreateFlagBits::eSubsampledCoarseReconstructionEXT)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SamplerCreateFlags operator|( SamplerCreateFlagBits bit0, SamplerCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SamplerCreateFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SamplerCreateFlags operator&( SamplerCreateFlagBits bit0, SamplerCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SamplerCreateFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SamplerCreateFlags operator^( SamplerCreateFlagBits bit0, SamplerCreateFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SamplerCreateFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SamplerCreateFlags operator~( SamplerCreateFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( SamplerCreateFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( SamplerCreateFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & SamplerCreateFlagBits::eSubsampledEXT ) result += "SubsampledEXT | ";
if ( value & SamplerCreateFlagBits::eSubsampledCoarseReconstructionEXT ) result += "SubsampledCoarseReconstructionEXT | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
enum class SemaphoreCreateFlagBits : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( SemaphoreCreateFlagBits )
{
return "(void)";
}
using SemaphoreCreateFlags = Flags<SemaphoreCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( SemaphoreCreateFlags )
{
return "{}";
}
using SemaphoreImportFlags = Flags<SemaphoreImportFlagBits>;
template <> struct FlagTraits<SemaphoreImportFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(SemaphoreImportFlagBits::eTemporary)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags operator|( SemaphoreImportFlagBits bit0, SemaphoreImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SemaphoreImportFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags operator&( SemaphoreImportFlagBits bit0, SemaphoreImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SemaphoreImportFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags operator^( SemaphoreImportFlagBits bit0, SemaphoreImportFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SemaphoreImportFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SemaphoreImportFlags operator~( SemaphoreImportFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( SemaphoreImportFlags( bits ) );
}
using SemaphoreImportFlagsKHR = SemaphoreImportFlags;
VULKAN_HPP_INLINE std::string to_string( SemaphoreImportFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & SemaphoreImportFlagBits::eTemporary ) result += "Temporary | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using ShaderCorePropertiesFlagsAMD = Flags<ShaderCorePropertiesFlagBitsAMD>;
VULKAN_HPP_INLINE std::string to_string( ShaderCorePropertiesFlagsAMD )
{
return "{}";
}
using ShaderModuleCreateFlags = Flags<ShaderModuleCreateFlagBits>;
VULKAN_HPP_INLINE std::string to_string( ShaderModuleCreateFlags )
{
return "{}";
}
using ShaderStageFlags = Flags<ShaderStageFlagBits>;
template <> struct FlagTraits<ShaderStageFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(ShaderStageFlagBits::eVertex) | VkFlags(ShaderStageFlagBits::eTessellationControl) | VkFlags(ShaderStageFlagBits::eTessellationEvaluation) | VkFlags(ShaderStageFlagBits::eGeometry) | VkFlags(ShaderStageFlagBits::eFragment) | VkFlags(ShaderStageFlagBits::eCompute) | VkFlags(ShaderStageFlagBits::eAllGraphics) | VkFlags(ShaderStageFlagBits::eAll) | VkFlags(ShaderStageFlagBits::eRaygenNV) | VkFlags(ShaderStageFlagBits::eAnyHitNV) | VkFlags(ShaderStageFlagBits::eClosestHitNV) | VkFlags(ShaderStageFlagBits::eMissNV) | VkFlags(ShaderStageFlagBits::eIntersectionNV) | VkFlags(ShaderStageFlagBits::eCallableNV) | VkFlags(ShaderStageFlagBits::eTaskNV) | VkFlags(ShaderStageFlagBits::eMeshNV)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ShaderStageFlags operator|( ShaderStageFlagBits bit0, ShaderStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ShaderStageFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ShaderStageFlags operator&( ShaderStageFlagBits bit0, ShaderStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ShaderStageFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ShaderStageFlags operator^( ShaderStageFlagBits bit0, ShaderStageFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return ShaderStageFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR ShaderStageFlags operator~( ShaderStageFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( ShaderStageFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( ShaderStageFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & ShaderStageFlagBits::eVertex ) result += "Vertex | ";
if ( value & ShaderStageFlagBits::eTessellationControl ) result += "TessellationControl | ";
if ( value & ShaderStageFlagBits::eTessellationEvaluation ) result += "TessellationEvaluation | ";
if ( value & ShaderStageFlagBits::eGeometry ) result += "Geometry | ";
if ( value & ShaderStageFlagBits::eFragment ) result += "Fragment | ";
if ( value & ShaderStageFlagBits::eCompute ) result += "Compute | ";
if ( value & ShaderStageFlagBits::eRaygenNV ) result += "RaygenNV | ";
if ( value & ShaderStageFlagBits::eAnyHitNV ) result += "AnyHitNV | ";
if ( value & ShaderStageFlagBits::eClosestHitNV ) result += "ClosestHitNV | ";
if ( value & ShaderStageFlagBits::eMissNV ) result += "MissNV | ";
if ( value & ShaderStageFlagBits::eIntersectionNV ) result += "IntersectionNV | ";
if ( value & ShaderStageFlagBits::eCallableNV ) result += "CallableNV | ";
if ( value & ShaderStageFlagBits::eTaskNV ) result += "TaskNV | ";
if ( value & ShaderStageFlagBits::eMeshNV ) result += "MeshNV | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using SparseImageFormatFlags = Flags<SparseImageFormatFlagBits>;
template <> struct FlagTraits<SparseImageFormatFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(SparseImageFormatFlagBits::eSingleMiptail) | VkFlags(SparseImageFormatFlagBits::eAlignedMipSize) | VkFlags(SparseImageFormatFlagBits::eNonstandardBlockSize)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseImageFormatFlags operator|( SparseImageFormatFlagBits bit0, SparseImageFormatFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SparseImageFormatFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseImageFormatFlags operator&( SparseImageFormatFlagBits bit0, SparseImageFormatFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SparseImageFormatFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseImageFormatFlags operator^( SparseImageFormatFlagBits bit0, SparseImageFormatFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SparseImageFormatFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseImageFormatFlags operator~( SparseImageFormatFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( SparseImageFormatFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( SparseImageFormatFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & SparseImageFormatFlagBits::eSingleMiptail ) result += "SingleMiptail | ";
if ( value & SparseImageFormatFlagBits::eAlignedMipSize ) result += "AlignedMipSize | ";
if ( value & SparseImageFormatFlagBits::eNonstandardBlockSize ) result += "NonstandardBlockSize | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using SparseMemoryBindFlags = Flags<SparseMemoryBindFlagBits>;
template <> struct FlagTraits<SparseMemoryBindFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(SparseMemoryBindFlagBits::eMetadata)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseMemoryBindFlags operator|( SparseMemoryBindFlagBits bit0, SparseMemoryBindFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SparseMemoryBindFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseMemoryBindFlags operator&( SparseMemoryBindFlagBits bit0, SparseMemoryBindFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SparseMemoryBindFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseMemoryBindFlags operator^( SparseMemoryBindFlagBits bit0, SparseMemoryBindFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SparseMemoryBindFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SparseMemoryBindFlags operator~( SparseMemoryBindFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( SparseMemoryBindFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( SparseMemoryBindFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & SparseMemoryBindFlagBits::eMetadata ) result += "Metadata | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using StencilFaceFlags = Flags<StencilFaceFlagBits>;
template <> struct FlagTraits<StencilFaceFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(StencilFaceFlagBits::eFront) | VkFlags(StencilFaceFlagBits::eBack) | VkFlags(StencilFaceFlagBits::eFrontAndBack)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR StencilFaceFlags operator|( StencilFaceFlagBits bit0, StencilFaceFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return StencilFaceFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR StencilFaceFlags operator&( StencilFaceFlagBits bit0, StencilFaceFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return StencilFaceFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR StencilFaceFlags operator^( StencilFaceFlagBits bit0, StencilFaceFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return StencilFaceFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR StencilFaceFlags operator~( StencilFaceFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( StencilFaceFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( StencilFaceFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & StencilFaceFlagBits::eFront ) result += "Front | ";
if ( value & StencilFaceFlagBits::eBack ) result += "Back | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
#ifdef VK_USE_PLATFORM_GGP
enum class StreamDescriptorSurfaceCreateFlagBitsGGP : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( StreamDescriptorSurfaceCreateFlagBitsGGP )
{
return "(void)";
}
using StreamDescriptorSurfaceCreateFlagsGGP = Flags<StreamDescriptorSurfaceCreateFlagBitsGGP>;
VULKAN_HPP_INLINE std::string to_string( StreamDescriptorSurfaceCreateFlagsGGP )
{
return "{}";
}
#endif /*VK_USE_PLATFORM_GGP*/
using SubgroupFeatureFlags = Flags<SubgroupFeatureFlagBits>;
template <> struct FlagTraits<SubgroupFeatureFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(SubgroupFeatureFlagBits::eBasic) | VkFlags(SubgroupFeatureFlagBits::eVote) | VkFlags(SubgroupFeatureFlagBits::eArithmetic) | VkFlags(SubgroupFeatureFlagBits::eBallot) | VkFlags(SubgroupFeatureFlagBits::eShuffle) | VkFlags(SubgroupFeatureFlagBits::eShuffleRelative) | VkFlags(SubgroupFeatureFlagBits::eClustered) | VkFlags(SubgroupFeatureFlagBits::eQuad) | VkFlags(SubgroupFeatureFlagBits::ePartitionedNV)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags operator|( SubgroupFeatureFlagBits bit0, SubgroupFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SubgroupFeatureFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags operator&( SubgroupFeatureFlagBits bit0, SubgroupFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SubgroupFeatureFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags operator^( SubgroupFeatureFlagBits bit0, SubgroupFeatureFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SubgroupFeatureFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubgroupFeatureFlags operator~( SubgroupFeatureFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( SubgroupFeatureFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( SubgroupFeatureFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & SubgroupFeatureFlagBits::eBasic ) result += "Basic | ";
if ( value & SubgroupFeatureFlagBits::eVote ) result += "Vote | ";
if ( value & SubgroupFeatureFlagBits::eArithmetic ) result += "Arithmetic | ";
if ( value & SubgroupFeatureFlagBits::eBallot ) result += "Ballot | ";
if ( value & SubgroupFeatureFlagBits::eShuffle ) result += "Shuffle | ";
if ( value & SubgroupFeatureFlagBits::eShuffleRelative ) result += "ShuffleRelative | ";
if ( value & SubgroupFeatureFlagBits::eClustered ) result += "Clustered | ";
if ( value & SubgroupFeatureFlagBits::eQuad ) result += "Quad | ";
if ( value & SubgroupFeatureFlagBits::ePartitionedNV ) result += "PartitionedNV | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using SubpassDescriptionFlags = Flags<SubpassDescriptionFlagBits>;
template <> struct FlagTraits<SubpassDescriptionFlagBits>
{
enum : VkFlags
{
allFlags = VkFlags(SubpassDescriptionFlagBits::ePerViewAttributesNVX) | VkFlags(SubpassDescriptionFlagBits::ePerViewPositionXOnlyNVX)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubpassDescriptionFlags operator|( SubpassDescriptionFlagBits bit0, SubpassDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SubpassDescriptionFlags( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubpassDescriptionFlags operator&( SubpassDescriptionFlagBits bit0, SubpassDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SubpassDescriptionFlags( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubpassDescriptionFlags operator^( SubpassDescriptionFlagBits bit0, SubpassDescriptionFlagBits bit1 ) VULKAN_HPP_NOEXCEPT
{
return SubpassDescriptionFlags( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SubpassDescriptionFlags operator~( SubpassDescriptionFlagBits bits ) VULKAN_HPP_NOEXCEPT
{
return ~( SubpassDescriptionFlags( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( SubpassDescriptionFlags value )
{
if ( !value ) return "{}";
std::string result;
if ( value & SubpassDescriptionFlagBits::ePerViewAttributesNVX ) result += "PerViewAttributesNVX | ";
if ( value & SubpassDescriptionFlagBits::ePerViewPositionXOnlyNVX ) result += "PerViewPositionXOnlyNVX | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using SurfaceCounterFlagsEXT = Flags<SurfaceCounterFlagBitsEXT>;
template <> struct FlagTraits<SurfaceCounterFlagBitsEXT>
{
enum : VkFlags
{
allFlags = VkFlags(SurfaceCounterFlagBitsEXT::eVblank)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceCounterFlagsEXT operator|( SurfaceCounterFlagBitsEXT bit0, SurfaceCounterFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return SurfaceCounterFlagsEXT( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceCounterFlagsEXT operator&( SurfaceCounterFlagBitsEXT bit0, SurfaceCounterFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return SurfaceCounterFlagsEXT( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceCounterFlagsEXT operator^( SurfaceCounterFlagBitsEXT bit0, SurfaceCounterFlagBitsEXT bit1 ) VULKAN_HPP_NOEXCEPT
{
return SurfaceCounterFlagsEXT( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceCounterFlagsEXT operator~( SurfaceCounterFlagBitsEXT bits ) VULKAN_HPP_NOEXCEPT
{
return ~( SurfaceCounterFlagsEXT( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( SurfaceCounterFlagsEXT value )
{
if ( !value ) return "{}";
std::string result;
if ( value & SurfaceCounterFlagBitsEXT::eVblank ) result += "Vblank | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using SurfaceTransformFlagsKHR = Flags<SurfaceTransformFlagBitsKHR>;
template <> struct FlagTraits<SurfaceTransformFlagBitsKHR>
{
enum : VkFlags
{
allFlags = VkFlags(SurfaceTransformFlagBitsKHR::eIdentity) | VkFlags(SurfaceTransformFlagBitsKHR::eRotate90) | VkFlags(SurfaceTransformFlagBitsKHR::eRotate180) | VkFlags(SurfaceTransformFlagBitsKHR::eRotate270) | VkFlags(SurfaceTransformFlagBitsKHR::eHorizontalMirror) | VkFlags(SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate90) | VkFlags(SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate180) | VkFlags(SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate270) | VkFlags(SurfaceTransformFlagBitsKHR::eInherit)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceTransformFlagsKHR operator|( SurfaceTransformFlagBitsKHR bit0, SurfaceTransformFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return SurfaceTransformFlagsKHR( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceTransformFlagsKHR operator&( SurfaceTransformFlagBitsKHR bit0, SurfaceTransformFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return SurfaceTransformFlagsKHR( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceTransformFlagsKHR operator^( SurfaceTransformFlagBitsKHR bit0, SurfaceTransformFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return SurfaceTransformFlagsKHR( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SurfaceTransformFlagsKHR operator~( SurfaceTransformFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
{
return ~( SurfaceTransformFlagsKHR( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( SurfaceTransformFlagsKHR value )
{
if ( !value ) return "{}";
std::string result;
if ( value & SurfaceTransformFlagBitsKHR::eIdentity ) result += "Identity | ";
if ( value & SurfaceTransformFlagBitsKHR::eRotate90 ) result += "Rotate90 | ";
if ( value & SurfaceTransformFlagBitsKHR::eRotate180 ) result += "Rotate180 | ";
if ( value & SurfaceTransformFlagBitsKHR::eRotate270 ) result += "Rotate270 | ";
if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirror ) result += "HorizontalMirror | ";
if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate90 ) result += "HorizontalMirrorRotate90 | ";
if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate180 ) result += "HorizontalMirrorRotate180 | ";
if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate270 ) result += "HorizontalMirrorRotate270 | ";
if ( value & SurfaceTransformFlagBitsKHR::eInherit ) result += "Inherit | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
using SwapchainCreateFlagsKHR = Flags<SwapchainCreateFlagBitsKHR>;
template <> struct FlagTraits<SwapchainCreateFlagBitsKHR>
{
enum : VkFlags
{
allFlags = VkFlags(SwapchainCreateFlagBitsKHR::eSplitInstanceBindRegions) | VkFlags(SwapchainCreateFlagBitsKHR::eProtected) | VkFlags(SwapchainCreateFlagBitsKHR::eMutableFormat)
};
};
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SwapchainCreateFlagsKHR operator|( SwapchainCreateFlagBitsKHR bit0, SwapchainCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return SwapchainCreateFlagsKHR( bit0 ) | bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SwapchainCreateFlagsKHR operator&( SwapchainCreateFlagBitsKHR bit0, SwapchainCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return SwapchainCreateFlagsKHR( bit0 ) & bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SwapchainCreateFlagsKHR operator^( SwapchainCreateFlagBitsKHR bit0, SwapchainCreateFlagBitsKHR bit1 ) VULKAN_HPP_NOEXCEPT
{
return SwapchainCreateFlagsKHR( bit0 ) ^ bit1;
}
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR SwapchainCreateFlagsKHR operator~( SwapchainCreateFlagBitsKHR bits ) VULKAN_HPP_NOEXCEPT
{
return ~( SwapchainCreateFlagsKHR( bits ) );
}
VULKAN_HPP_INLINE std::string to_string( SwapchainCreateFlagsKHR value )
{
if ( !value ) return "{}";
std::string result;
if ( value & SwapchainCreateFlagBitsKHR::eSplitInstanceBindRegions ) result += "SplitInstanceBindRegions | ";
if ( value & SwapchainCreateFlagBitsKHR::eProtected ) result += "Protected | ";
if ( value & SwapchainCreateFlagBitsKHR::eMutableFormat ) result += "MutableFormat | ";
return "{ " + result.substr(0, result.size() - 3) + " }";
}
enum class ValidationCacheCreateFlagBitsEXT : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( ValidationCacheCreateFlagBitsEXT )
{
return "(void)";
}
using ValidationCacheCreateFlagsEXT = Flags<ValidationCacheCreateFlagBitsEXT>;
VULKAN_HPP_INLINE std::string to_string( ValidationCacheCreateFlagsEXT )
{
return "{}";
}
#ifdef VK_USE_PLATFORM_VI_NN
enum class ViSurfaceCreateFlagBitsNN : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( ViSurfaceCreateFlagBitsNN )
{
return "(void)";
}
using ViSurfaceCreateFlagsNN = Flags<ViSurfaceCreateFlagBitsNN>;
VULKAN_HPP_INLINE std::string to_string( ViSurfaceCreateFlagsNN )
{
return "{}";
}
#endif /*VK_USE_PLATFORM_VI_NN*/
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
enum class WaylandSurfaceCreateFlagBitsKHR : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( WaylandSurfaceCreateFlagBitsKHR )
{
return "(void)";
}
using WaylandSurfaceCreateFlagsKHR = Flags<WaylandSurfaceCreateFlagBitsKHR>;
VULKAN_HPP_INLINE std::string to_string( WaylandSurfaceCreateFlagsKHR )
{
return "{}";
}
#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
#ifdef VK_USE_PLATFORM_WIN32_KHR
enum class Win32SurfaceCreateFlagBitsKHR : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( Win32SurfaceCreateFlagBitsKHR )
{
return "(void)";
}
using Win32SurfaceCreateFlagsKHR = Flags<Win32SurfaceCreateFlagBitsKHR>;
VULKAN_HPP_INLINE std::string to_string( Win32SurfaceCreateFlagsKHR )
{
return "{}";
}
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#ifdef VK_USE_PLATFORM_XCB_KHR
enum class XcbSurfaceCreateFlagBitsKHR : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( XcbSurfaceCreateFlagBitsKHR )
{
return "(void)";
}
using XcbSurfaceCreateFlagsKHR = Flags<XcbSurfaceCreateFlagBitsKHR>;
VULKAN_HPP_INLINE std::string to_string( XcbSurfaceCreateFlagsKHR )
{
return "{}";
}
#endif /*VK_USE_PLATFORM_XCB_KHR*/
#ifdef VK_USE_PLATFORM_XLIB_KHR
enum class XlibSurfaceCreateFlagBitsKHR : VkFlags
{};
VULKAN_HPP_INLINE std::string to_string( XlibSurfaceCreateFlagBitsKHR )
{
return "(void)";
}
using XlibSurfaceCreateFlagsKHR = Flags<XlibSurfaceCreateFlagBitsKHR>;
VULKAN_HPP_INLINE std::string to_string( XlibSurfaceCreateFlagsKHR )
{
return "{}";
}
#endif /*VK_USE_PLATFORM_XLIB_KHR*/
} // namespace VULKAN_HPP_NAMESPACE