android13/external/swiftshader/include/vulkan/vulkan_structs.hpp

97939 lines
3.8 MiB

// Copyright 2015-2022 The Khronos Group Inc.
//
// SPDX-License-Identifier: Apache-2.0 OR MIT
//
// This header is generated from the Khronos Vulkan XML API Registry.
#ifndef VULKAN_STRUCTS_HPP
#define VULKAN_STRUCTS_HPP
namespace VULKAN_HPP_NAMESPACE {
//===============
//=== STRUCTS ===
//===============
struct AabbPositionsKHR
{
using NativeType = VkAabbPositionsKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
AabbPositionsKHR(float minX_ = {}, float minY_ = {}, float minZ_ = {}, float maxX_ = {}, float maxY_ = {}, float maxZ_ = {}) VULKAN_HPP_NOEXCEPT
: minX(minX_),
minY(minY_),
minZ(minZ_),
maxX(maxX_),
maxY(maxY_),
maxZ(maxZ_)
{
}
VULKAN_HPP_CONSTEXPR AabbPositionsKHR(AabbPositionsKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AabbPositionsKHR(VkAabbPositionsKHR const &rhs) VULKAN_HPP_NOEXCEPT : AabbPositionsKHR(*reinterpret_cast<AabbPositionsKHR const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AabbPositionsKHR &operator=(AabbPositionsKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AabbPositionsKHR &operator=(VkAabbPositionsKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AabbPositionsKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AabbPositionsKHR &setMinX(float minX_) VULKAN_HPP_NOEXCEPT
{
minX = minX_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AabbPositionsKHR &setMinY(float minY_) VULKAN_HPP_NOEXCEPT
{
minY = minY_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AabbPositionsKHR &setMinZ(float minZ_) VULKAN_HPP_NOEXCEPT
{
minZ = minZ_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AabbPositionsKHR &setMaxX(float maxX_) VULKAN_HPP_NOEXCEPT
{
maxX = maxX_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AabbPositionsKHR &setMaxY(float maxY_) VULKAN_HPP_NOEXCEPT
{
maxY = maxY_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AabbPositionsKHR &setMaxZ(float maxZ_) VULKAN_HPP_NOEXCEPT
{
maxZ = maxZ_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAabbPositionsKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAabbPositionsKHR *>(this);
}
explicit operator VkAabbPositionsKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAabbPositionsKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<float const &, float const &, float const &, float const &, float const &, float const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(minX, minY, minZ, maxX, maxY, maxZ);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AabbPositionsKHR const &) const = default;
#else
bool operator==(AabbPositionsKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (minX == rhs.minX) && (minY == rhs.minY) && (minZ == rhs.minZ) && (maxX == rhs.maxX) && (maxY == rhs.maxY) && (maxZ == rhs.maxZ);
# endif
}
bool operator!=(AabbPositionsKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
float minX = {};
float minY = {};
float minZ = {};
float maxX = {};
float maxY = {};
float maxZ = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AabbPositionsKHR) == sizeof(VkAabbPositionsKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AabbPositionsKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AabbPositionsKHR>::value,
"AabbPositionsKHR is not nothrow_move_constructible!");
using AabbPositionsNV = AabbPositionsKHR;
union DeviceOrHostAddressConstKHR
{
using NativeType = VkDeviceOrHostAddressConstKHR;
#if !defined(VULKAN_HPP_NO_UNION_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 DeviceOrHostAddressConstKHR(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {})
: deviceAddress(deviceAddress_)
{}
VULKAN_HPP_CONSTEXPR_14 DeviceOrHostAddressConstKHR(const void *hostAddress_)
: hostAddress(hostAddress_)
{}
#endif /*VULKAN_HPP_NO_UNION_CONSTRUCTORS*/
#if !defined(VULKAN_HPP_NO_UNION_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceOrHostAddressConstKHR &setDeviceAddress(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_) VULKAN_HPP_NOEXCEPT
{
deviceAddress = deviceAddress_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceOrHostAddressConstKHR &setHostAddress(const void *hostAddress_) VULKAN_HPP_NOEXCEPT
{
hostAddress = hostAddress_;
return *this;
}
#endif /*VULKAN_HPP_NO_UNION_SETTERS*/
operator VkDeviceOrHostAddressConstKHR const &() const
{
return *reinterpret_cast<const VkDeviceOrHostAddressConstKHR *>(this);
}
operator VkDeviceOrHostAddressConstKHR &()
{
return *reinterpret_cast<VkDeviceOrHostAddressConstKHR *>(this);
}
#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress;
const void *hostAddress;
#else
VkDeviceAddress deviceAddress;
const void *hostAddress;
#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
};
struct AccelerationStructureGeometryTrianglesDataKHR
{
using NativeType = VkAccelerationStructureGeometryTrianglesDataKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureGeometryTrianglesDataKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14
AccelerationStructureGeometryTrianglesDataKHR(VULKAN_HPP_NAMESPACE::Format vertexFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR vertexData_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize vertexStride_ = {},
uint32_t maxVertex_ = {},
VULKAN_HPP_NAMESPACE::IndexType indexType_ = VULKAN_HPP_NAMESPACE::IndexType::eUint16,
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR indexData_ = {},
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR transformData_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
vertexFormat(vertexFormat_),
vertexData(vertexData_),
vertexStride(vertexStride_),
maxVertex(maxVertex_),
indexType(indexType_),
indexData(indexData_),
transformData(transformData_)
{
}
VULKAN_HPP_CONSTEXPR_14
AccelerationStructureGeometryTrianglesDataKHR(AccelerationStructureGeometryTrianglesDataKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureGeometryTrianglesDataKHR(VkAccelerationStructureGeometryTrianglesDataKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureGeometryTrianglesDataKHR(*reinterpret_cast<AccelerationStructureGeometryTrianglesDataKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureGeometryTrianglesDataKHR &operator=(AccelerationStructureGeometryTrianglesDataKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureGeometryTrianglesDataKHR &operator=(VkAccelerationStructureGeometryTrianglesDataKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryTrianglesDataKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryTrianglesDataKHR &setVertexFormat(VULKAN_HPP_NAMESPACE::Format vertexFormat_) VULKAN_HPP_NOEXCEPT
{
vertexFormat = vertexFormat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryTrianglesDataKHR &
setVertexData(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &vertexData_) VULKAN_HPP_NOEXCEPT
{
vertexData = vertexData_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryTrianglesDataKHR &
setVertexStride(VULKAN_HPP_NAMESPACE::DeviceSize vertexStride_) VULKAN_HPP_NOEXCEPT
{
vertexStride = vertexStride_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryTrianglesDataKHR &setMaxVertex(uint32_t maxVertex_) VULKAN_HPP_NOEXCEPT
{
maxVertex = maxVertex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryTrianglesDataKHR &setIndexType(VULKAN_HPP_NAMESPACE::IndexType indexType_) VULKAN_HPP_NOEXCEPT
{
indexType = indexType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryTrianglesDataKHR &
setIndexData(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &indexData_) VULKAN_HPP_NOEXCEPT
{
indexData = indexData_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryTrianglesDataKHR &
setTransformData(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &transformData_) VULKAN_HPP_NOEXCEPT
{
transformData = transformData_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureGeometryTrianglesDataKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureGeometryTrianglesDataKHR *>(this);
}
explicit operator VkAccelerationStructureGeometryTrianglesDataKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureGeometryTrianglesDataKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::IndexType const &,
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &,
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, vertexFormat, vertexData, vertexStride, maxVertex, indexType, indexData, transformData);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryTrianglesDataKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Format vertexFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR vertexData = {};
VULKAN_HPP_NAMESPACE::DeviceSize vertexStride = {};
uint32_t maxVertex = {};
VULKAN_HPP_NAMESPACE::IndexType indexType = VULKAN_HPP_NAMESPACE::IndexType::eUint16;
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR indexData = {};
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR transformData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR) ==
sizeof(VkAccelerationStructureGeometryTrianglesDataKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR>::value,
"AccelerationStructureGeometryTrianglesDataKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureGeometryTrianglesDataKHR>
{
using Type = AccelerationStructureGeometryTrianglesDataKHR;
};
struct AccelerationStructureGeometryAabbsDataKHR
{
using NativeType = VkAccelerationStructureGeometryAabbsDataKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureGeometryAabbsDataKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryAabbsDataKHR(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR data_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize stride_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
data(data_),
stride(stride_)
{
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryAabbsDataKHR(AccelerationStructureGeometryAabbsDataKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureGeometryAabbsDataKHR(VkAccelerationStructureGeometryAabbsDataKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureGeometryAabbsDataKHR(*reinterpret_cast<AccelerationStructureGeometryAabbsDataKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureGeometryAabbsDataKHR &operator=(AccelerationStructureGeometryAabbsDataKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureGeometryAabbsDataKHR &operator=(VkAccelerationStructureGeometryAabbsDataKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryAabbsDataKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryAabbsDataKHR &
setData(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &data_) VULKAN_HPP_NOEXCEPT
{
data = data_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryAabbsDataKHR &setStride(VULKAN_HPP_NAMESPACE::DeviceSize stride_) VULKAN_HPP_NOEXCEPT
{
stride = stride_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureGeometryAabbsDataKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureGeometryAabbsDataKHR *>(this);
}
explicit operator VkAccelerationStructureGeometryAabbsDataKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureGeometryAabbsDataKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, data, stride);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryAabbsDataKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR data = {};
VULKAN_HPP_NAMESPACE::DeviceSize stride = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR) == sizeof(VkAccelerationStructureGeometryAabbsDataKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR>::value,
"AccelerationStructureGeometryAabbsDataKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureGeometryAabbsDataKHR>
{
using Type = AccelerationStructureGeometryAabbsDataKHR;
};
struct AccelerationStructureGeometryInstancesDataKHR
{
using NativeType = VkAccelerationStructureGeometryInstancesDataKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureGeometryInstancesDataKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryInstancesDataKHR(VULKAN_HPP_NAMESPACE::Bool32 arrayOfPointers_ = {},
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR data_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
arrayOfPointers(arrayOfPointers_),
data(data_)
{
}
VULKAN_HPP_CONSTEXPR_14
AccelerationStructureGeometryInstancesDataKHR(AccelerationStructureGeometryInstancesDataKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureGeometryInstancesDataKHR(VkAccelerationStructureGeometryInstancesDataKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureGeometryInstancesDataKHR(*reinterpret_cast<AccelerationStructureGeometryInstancesDataKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureGeometryInstancesDataKHR &operator=(AccelerationStructureGeometryInstancesDataKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureGeometryInstancesDataKHR &operator=(VkAccelerationStructureGeometryInstancesDataKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryInstancesDataKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryInstancesDataKHR &
setArrayOfPointers(VULKAN_HPP_NAMESPACE::Bool32 arrayOfPointers_) VULKAN_HPP_NOEXCEPT
{
arrayOfPointers = arrayOfPointers_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryInstancesDataKHR &
setData(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &data_) VULKAN_HPP_NOEXCEPT
{
data = data_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureGeometryInstancesDataKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureGeometryInstancesDataKHR *>(this);
}
explicit operator VkAccelerationStructureGeometryInstancesDataKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureGeometryInstancesDataKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, arrayOfPointers, data);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryInstancesDataKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 arrayOfPointers = {};
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR data = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR) ==
sizeof(VkAccelerationStructureGeometryInstancesDataKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR>::value,
"AccelerationStructureGeometryInstancesDataKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureGeometryInstancesDataKHR>
{
using Type = AccelerationStructureGeometryInstancesDataKHR;
};
union AccelerationStructureGeometryDataKHR
{
using NativeType = VkAccelerationStructureGeometryDataKHR;
#if !defined(VULKAN_HPP_NO_UNION_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryDataKHR(VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR triangles_ = {})
: triangles(triangles_)
{
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryDataKHR(VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR aabbs_)
: aabbs(aabbs_)
{}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryDataKHR(VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR instances_)
: instances(instances_)
{
}
#endif /*VULKAN_HPP_NO_UNION_CONSTRUCTORS*/
#if !defined(VULKAN_HPP_NO_UNION_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryDataKHR &
setTriangles(VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR const &triangles_) VULKAN_HPP_NOEXCEPT
{
triangles = triangles_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryDataKHR &
setAabbs(VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR const &aabbs_) VULKAN_HPP_NOEXCEPT
{
aabbs = aabbs_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryDataKHR &
setInstances(VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR const &instances_) VULKAN_HPP_NOEXCEPT
{
instances = instances_;
return *this;
}
#endif /*VULKAN_HPP_NO_UNION_SETTERS*/
operator VkAccelerationStructureGeometryDataKHR const &() const
{
return *reinterpret_cast<const VkAccelerationStructureGeometryDataKHR *>(this);
}
operator VkAccelerationStructureGeometryDataKHR &()
{
return *reinterpret_cast<VkAccelerationStructureGeometryDataKHR *>(this);
}
#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryTrianglesDataKHR triangles;
VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryAabbsDataKHR aabbs;
VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryInstancesDataKHR instances;
#else
VkAccelerationStructureGeometryTrianglesDataKHR triangles;
VkAccelerationStructureGeometryAabbsDataKHR aabbs;
VkAccelerationStructureGeometryInstancesDataKHR instances;
#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
};
struct AccelerationStructureGeometryKHR
{
using NativeType = VkAccelerationStructureGeometryKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureGeometryKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14
AccelerationStructureGeometryKHR(VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType_ = VULKAN_HPP_NAMESPACE::GeometryTypeKHR::eTriangles,
VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR geometry_ = {},
VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
geometryType(geometryType_),
geometry(geometry_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryKHR(AccelerationStructureGeometryKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureGeometryKHR(VkAccelerationStructureGeometryKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureGeometryKHR(*reinterpret_cast<AccelerationStructureGeometryKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureGeometryKHR &operator=(AccelerationStructureGeometryKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureGeometryKHR &operator=(VkAccelerationStructureGeometryKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryKHR &setGeometryType(VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType_) VULKAN_HPP_NOEXCEPT
{
geometryType = geometryType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryKHR &
setGeometry(VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR const &geometry_) VULKAN_HPP_NOEXCEPT
{
geometry = geometry_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryKHR &setFlags(VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureGeometryKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureGeometryKHR *>(this);
}
explicit operator VkAccelerationStructureGeometryKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureGeometryKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::GeometryTypeKHR const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR const &,
VULKAN_HPP_NAMESPACE::GeometryFlagsKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, geometryType, geometry, flags);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType = VULKAN_HPP_NAMESPACE::GeometryTypeKHR::eTriangles;
VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryDataKHR geometry = {};
VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR) == sizeof(VkAccelerationStructureGeometryKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR>::value,
"AccelerationStructureGeometryKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureGeometryKHR>
{
using Type = AccelerationStructureGeometryKHR;
};
union DeviceOrHostAddressKHR
{
using NativeType = VkDeviceOrHostAddressKHR;
#if !defined(VULKAN_HPP_NO_UNION_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 DeviceOrHostAddressKHR(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {})
: deviceAddress(deviceAddress_)
{}
VULKAN_HPP_CONSTEXPR_14 DeviceOrHostAddressKHR(void *hostAddress_)
: hostAddress(hostAddress_)
{}
#endif /*VULKAN_HPP_NO_UNION_CONSTRUCTORS*/
#if !defined(VULKAN_HPP_NO_UNION_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceOrHostAddressKHR &setDeviceAddress(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_) VULKAN_HPP_NOEXCEPT
{
deviceAddress = deviceAddress_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceOrHostAddressKHR &setHostAddress(void *hostAddress_) VULKAN_HPP_NOEXCEPT
{
hostAddress = hostAddress_;
return *this;
}
#endif /*VULKAN_HPP_NO_UNION_SETTERS*/
operator VkDeviceOrHostAddressKHR const &() const
{
return *reinterpret_cast<const VkDeviceOrHostAddressKHR *>(this);
}
operator VkDeviceOrHostAddressKHR &()
{
return *reinterpret_cast<VkDeviceOrHostAddressKHR *>(this);
}
#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress;
void *hostAddress;
#else
VkDeviceAddress deviceAddress;
void *hostAddress;
#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
};
struct AccelerationStructureBuildGeometryInfoKHR
{
using NativeType = VkAccelerationStructureBuildGeometryInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureBuildGeometryInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildGeometryInfoKHR(
VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_ = VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR::eTopLevel,
VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags_ = {},
VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode_ = VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR::eBuild,
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure_ = {},
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure_ = {},
uint32_t geometryCount_ = {},
const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR *pGeometries_ = {},
const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR *const *ppGeometries_ = {},
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR scratchData_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
type(type_),
flags(flags_),
mode(mode_),
srcAccelerationStructure(srcAccelerationStructure_),
dstAccelerationStructure(dstAccelerationStructure_),
geometryCount(geometryCount_),
pGeometries(pGeometries_),
ppGeometries(ppGeometries_),
scratchData(scratchData_)
{
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildGeometryInfoKHR(AccelerationStructureBuildGeometryInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureBuildGeometryInfoKHR(VkAccelerationStructureBuildGeometryInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureBuildGeometryInfoKHR(*reinterpret_cast<AccelerationStructureBuildGeometryInfoKHR const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
AccelerationStructureBuildGeometryInfoKHR(
VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_,
VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags_,
VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode_,
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure_,
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR> const &geometries_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR *const> const &pGeometries_ = {},
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR scratchData_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, type(type_)
, flags(flags_)
, mode(mode_)
, srcAccelerationStructure(srcAccelerationStructure_)
, dstAccelerationStructure(dstAccelerationStructure_)
, geometryCount(static_cast<uint32_t>(!geometries_.empty() ? geometries_.size() : pGeometries_.size()))
, pGeometries(geometries_.data())
, ppGeometries(pGeometries_.data())
, scratchData(scratchData_)
{
# ifdef VULKAN_HPP_NO_EXCEPTIONS
VULKAN_HPP_ASSERT((!geometries_.empty() + !pGeometries_.empty()) <= 1);
# else
if(1 < (!geometries_.empty() + !pGeometries_.empty()))
{
throw LogicError(
VULKAN_HPP_NAMESPACE_STRING
"::AccelerationStructureBuildGeometryInfoKHR::AccelerationStructureBuildGeometryInfoKHR: 1 < ( !geometries_.empty() + !pGeometries_.empty() )");
}
# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureBuildGeometryInfoKHR &operator=(AccelerationStructureBuildGeometryInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureBuildGeometryInfoKHR &operator=(VkAccelerationStructureBuildGeometryInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildGeometryInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildGeometryInfoKHR &setType(VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildGeometryInfoKHR &
setFlags(VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildGeometryInfoKHR &
setMode(VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode_) VULKAN_HPP_NOEXCEPT
{
mode = mode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildGeometryInfoKHR &
setSrcAccelerationStructure(VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure_) VULKAN_HPP_NOEXCEPT
{
srcAccelerationStructure = srcAccelerationStructure_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildGeometryInfoKHR &
setDstAccelerationStructure(VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure_) VULKAN_HPP_NOEXCEPT
{
dstAccelerationStructure = dstAccelerationStructure_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildGeometryInfoKHR &setGeometryCount(uint32_t geometryCount_) VULKAN_HPP_NOEXCEPT
{
geometryCount = geometryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildGeometryInfoKHR &
setPGeometries(const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR *pGeometries_) VULKAN_HPP_NOEXCEPT
{
pGeometries = pGeometries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
AccelerationStructureBuildGeometryInfoKHR &setGeometries(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR> const &geometries_) VULKAN_HPP_NOEXCEPT
{
geometryCount = static_cast<uint32_t>(geometries_.size());
pGeometries = geometries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildGeometryInfoKHR &
setPpGeometries(const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR *const *ppGeometries_) VULKAN_HPP_NOEXCEPT
{
ppGeometries = ppGeometries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
AccelerationStructureBuildGeometryInfoKHR &
setPGeometries(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR *const> const &pGeometries_)
VULKAN_HPP_NOEXCEPT
{
geometryCount = static_cast<uint32_t>(pGeometries_.size());
ppGeometries = pGeometries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildGeometryInfoKHR &
setScratchData(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR const &scratchData_) VULKAN_HPP_NOEXCEPT
{
scratchData = scratchData_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureBuildGeometryInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureBuildGeometryInfoKHR *>(this);
}
explicit operator VkAccelerationStructureBuildGeometryInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureBuildGeometryInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR const &,
VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR const &,
VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR *const &,
const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR *const *const &,
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, type, flags, mode, srcAccelerationStructure, dstAccelerationStructure, geometryCount, pGeometries, ppGeometries, scratchData);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureBuildGeometryInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type = VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR::eTopLevel;
VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsKHR flags = {};
VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR mode = VULKAN_HPP_NAMESPACE::BuildAccelerationStructureModeKHR::eBuild;
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR srcAccelerationStructure = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dstAccelerationStructure = {};
uint32_t geometryCount = {};
const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR *pGeometries = {};
const VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryKHR *const *ppGeometries = {};
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR scratchData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR) == sizeof(VkAccelerationStructureBuildGeometryInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildGeometryInfoKHR>::value,
"AccelerationStructureBuildGeometryInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureBuildGeometryInfoKHR>
{
using Type = AccelerationStructureBuildGeometryInfoKHR;
};
struct AccelerationStructureBuildRangeInfoKHR
{
using NativeType = VkAccelerationStructureBuildRangeInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AccelerationStructureBuildRangeInfoKHR(uint32_t primitiveCount_ = {},
uint32_t primitiveOffset_ = {},
uint32_t firstVertex_ = {},
uint32_t transformOffset_ = {}) VULKAN_HPP_NOEXCEPT
: primitiveCount(primitiveCount_),
primitiveOffset(primitiveOffset_),
firstVertex(firstVertex_),
transformOffset(transformOffset_)
{
}
VULKAN_HPP_CONSTEXPR AccelerationStructureBuildRangeInfoKHR(AccelerationStructureBuildRangeInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureBuildRangeInfoKHR(VkAccelerationStructureBuildRangeInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureBuildRangeInfoKHR(*reinterpret_cast<AccelerationStructureBuildRangeInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureBuildRangeInfoKHR &operator=(AccelerationStructureBuildRangeInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureBuildRangeInfoKHR &operator=(VkAccelerationStructureBuildRangeInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildRangeInfoKHR &setPrimitiveCount(uint32_t primitiveCount_) VULKAN_HPP_NOEXCEPT
{
primitiveCount = primitiveCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildRangeInfoKHR &setPrimitiveOffset(uint32_t primitiveOffset_) VULKAN_HPP_NOEXCEPT
{
primitiveOffset = primitiveOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildRangeInfoKHR &setFirstVertex(uint32_t firstVertex_) VULKAN_HPP_NOEXCEPT
{
firstVertex = firstVertex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildRangeInfoKHR &setTransformOffset(uint32_t transformOffset_) VULKAN_HPP_NOEXCEPT
{
transformOffset = transformOffset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureBuildRangeInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureBuildRangeInfoKHR *>(this);
}
explicit operator VkAccelerationStructureBuildRangeInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureBuildRangeInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(primitiveCount, primitiveOffset, firstVertex, transformOffset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AccelerationStructureBuildRangeInfoKHR const &) const = default;
#else
bool operator==(AccelerationStructureBuildRangeInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (primitiveCount == rhs.primitiveCount) && (primitiveOffset == rhs.primitiveOffset) && (firstVertex == rhs.firstVertex) &&
(transformOffset == rhs.transformOffset);
# endif
}
bool operator!=(AccelerationStructureBuildRangeInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t primitiveCount = {};
uint32_t primitiveOffset = {};
uint32_t firstVertex = {};
uint32_t transformOffset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR) == sizeof(VkAccelerationStructureBuildRangeInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildRangeInfoKHR>::value,
"AccelerationStructureBuildRangeInfoKHR is not nothrow_move_constructible!");
struct AccelerationStructureBuildSizesInfoKHR
{
using NativeType = VkAccelerationStructureBuildSizesInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureBuildSizesInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AccelerationStructureBuildSizesInfoKHR(VULKAN_HPP_NAMESPACE::DeviceSize accelerationStructureSize_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize updateScratchSize_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize buildScratchSize_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
accelerationStructureSize(accelerationStructureSize_),
updateScratchSize(updateScratchSize_),
buildScratchSize(buildScratchSize_)
{
}
VULKAN_HPP_CONSTEXPR AccelerationStructureBuildSizesInfoKHR(AccelerationStructureBuildSizesInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureBuildSizesInfoKHR(VkAccelerationStructureBuildSizesInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureBuildSizesInfoKHR(*reinterpret_cast<AccelerationStructureBuildSizesInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureBuildSizesInfoKHR &operator=(AccelerationStructureBuildSizesInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureBuildSizesInfoKHR &operator=(VkAccelerationStructureBuildSizesInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildSizesInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildSizesInfoKHR &
setAccelerationStructureSize(VULKAN_HPP_NAMESPACE::DeviceSize accelerationStructureSize_) VULKAN_HPP_NOEXCEPT
{
accelerationStructureSize = accelerationStructureSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildSizesInfoKHR &
setUpdateScratchSize(VULKAN_HPP_NAMESPACE::DeviceSize updateScratchSize_) VULKAN_HPP_NOEXCEPT
{
updateScratchSize = updateScratchSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureBuildSizesInfoKHR &
setBuildScratchSize(VULKAN_HPP_NAMESPACE::DeviceSize buildScratchSize_) VULKAN_HPP_NOEXCEPT
{
buildScratchSize = buildScratchSize_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureBuildSizesInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureBuildSizesInfoKHR *>(this);
}
explicit operator VkAccelerationStructureBuildSizesInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureBuildSizesInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, accelerationStructureSize, updateScratchSize, buildScratchSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AccelerationStructureBuildSizesInfoKHR const &) const = default;
#else
bool operator==(AccelerationStructureBuildSizesInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (accelerationStructureSize == rhs.accelerationStructureSize) &&
(updateScratchSize == rhs.updateScratchSize) && (buildScratchSize == rhs.buildScratchSize);
# endif
}
bool operator!=(AccelerationStructureBuildSizesInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureBuildSizesInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceSize accelerationStructureSize = {};
VULKAN_HPP_NAMESPACE::DeviceSize updateScratchSize = {};
VULKAN_HPP_NAMESPACE::DeviceSize buildScratchSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR) == sizeof(VkAccelerationStructureBuildSizesInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureBuildSizesInfoKHR>::value,
"AccelerationStructureBuildSizesInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureBuildSizesInfoKHR>
{
using Type = AccelerationStructureBuildSizesInfoKHR;
};
struct AccelerationStructureCreateInfoKHR
{
using NativeType = VkAccelerationStructureCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AccelerationStructureCreateInfoKHR(
VULKAN_HPP_NAMESPACE::AccelerationStructureCreateFlagsKHR createFlags_ = {},
VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_ = VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR::eTopLevel,
VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
createFlags(createFlags_),
buffer(buffer_),
offset(offset_),
size(size_),
type(type_),
deviceAddress(deviceAddress_)
{
}
VULKAN_HPP_CONSTEXPR AccelerationStructureCreateInfoKHR(AccelerationStructureCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureCreateInfoKHR(VkAccelerationStructureCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureCreateInfoKHR(*reinterpret_cast<AccelerationStructureCreateInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureCreateInfoKHR &operator=(AccelerationStructureCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureCreateInfoKHR &operator=(VkAccelerationStructureCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureCreateInfoKHR &
setCreateFlags(VULKAN_HPP_NAMESPACE::AccelerationStructureCreateFlagsKHR createFlags_) VULKAN_HPP_NOEXCEPT
{
createFlags = createFlags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureCreateInfoKHR &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureCreateInfoKHR &setOffset(VULKAN_HPP_NAMESPACE::DeviceSize offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureCreateInfoKHR &setSize(VULKAN_HPP_NAMESPACE::DeviceSize size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureCreateInfoKHR &setType(VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureCreateInfoKHR &setDeviceAddress(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_) VULKAN_HPP_NOEXCEPT
{
deviceAddress = deviceAddress_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureCreateInfoKHR *>(this);
}
explicit operator VkAccelerationStructureCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureCreateFlagsKHR const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR const &,
VULKAN_HPP_NAMESPACE::DeviceAddress const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, createFlags, buffer, offset, size, type, deviceAddress);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AccelerationStructureCreateInfoKHR const &) const = default;
#else
bool operator==(AccelerationStructureCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (createFlags == rhs.createFlags) && (buffer == rhs.buffer) && (offset == rhs.offset) &&
(size == rhs.size) && (type == rhs.type) && (deviceAddress == rhs.deviceAddress);
# endif
}
bool operator!=(AccelerationStructureCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureCreateFlagsKHR createFlags = {};
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR type = VULKAN_HPP_NAMESPACE::AccelerationStructureTypeKHR::eTopLevel;
VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoKHR) == sizeof(VkAccelerationStructureCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoKHR>::value,
"AccelerationStructureCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureCreateInfoKHR>
{
using Type = AccelerationStructureCreateInfoKHR;
};
struct GeometryTrianglesNV
{
using NativeType = VkGeometryTrianglesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeometryTrianglesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR GeometryTrianglesNV(VULKAN_HPP_NAMESPACE::Buffer vertexData_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize vertexOffset_ = {},
uint32_t vertexCount_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize vertexStride_ = {},
VULKAN_HPP_NAMESPACE::Format vertexFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::Buffer indexData_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize indexOffset_ = {},
uint32_t indexCount_ = {},
VULKAN_HPP_NAMESPACE::IndexType indexType_ = VULKAN_HPP_NAMESPACE::IndexType::eUint16,
VULKAN_HPP_NAMESPACE::Buffer transformData_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize transformOffset_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
vertexData(vertexData_),
vertexOffset(vertexOffset_),
vertexCount(vertexCount_),
vertexStride(vertexStride_),
vertexFormat(vertexFormat_),
indexData(indexData_),
indexOffset(indexOffset_),
indexCount(indexCount_),
indexType(indexType_),
transformData(transformData_),
transformOffset(transformOffset_)
{
}
VULKAN_HPP_CONSTEXPR GeometryTrianglesNV(GeometryTrianglesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GeometryTrianglesNV(VkGeometryTrianglesNV const &rhs) VULKAN_HPP_NOEXCEPT : GeometryTrianglesNV(*reinterpret_cast<GeometryTrianglesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
GeometryTrianglesNV &operator=(GeometryTrianglesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GeometryTrianglesNV &operator=(VkGeometryTrianglesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeometryTrianglesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &setVertexData(VULKAN_HPP_NAMESPACE::Buffer vertexData_) VULKAN_HPP_NOEXCEPT
{
vertexData = vertexData_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &setVertexOffset(VULKAN_HPP_NAMESPACE::DeviceSize vertexOffset_) VULKAN_HPP_NOEXCEPT
{
vertexOffset = vertexOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &setVertexCount(uint32_t vertexCount_) VULKAN_HPP_NOEXCEPT
{
vertexCount = vertexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &setVertexStride(VULKAN_HPP_NAMESPACE::DeviceSize vertexStride_) VULKAN_HPP_NOEXCEPT
{
vertexStride = vertexStride_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &setVertexFormat(VULKAN_HPP_NAMESPACE::Format vertexFormat_) VULKAN_HPP_NOEXCEPT
{
vertexFormat = vertexFormat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &setIndexData(VULKAN_HPP_NAMESPACE::Buffer indexData_) VULKAN_HPP_NOEXCEPT
{
indexData = indexData_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &setIndexOffset(VULKAN_HPP_NAMESPACE::DeviceSize indexOffset_) VULKAN_HPP_NOEXCEPT
{
indexOffset = indexOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &setIndexCount(uint32_t indexCount_) VULKAN_HPP_NOEXCEPT
{
indexCount = indexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &setIndexType(VULKAN_HPP_NAMESPACE::IndexType indexType_) VULKAN_HPP_NOEXCEPT
{
indexType = indexType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &setTransformData(VULKAN_HPP_NAMESPACE::Buffer transformData_) VULKAN_HPP_NOEXCEPT
{
transformData = transformData_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryTrianglesNV &setTransformOffset(VULKAN_HPP_NAMESPACE::DeviceSize transformOffset_) VULKAN_HPP_NOEXCEPT
{
transformOffset = transformOffset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkGeometryTrianglesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkGeometryTrianglesNV *>(this);
}
explicit operator VkGeometryTrianglesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkGeometryTrianglesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::IndexType const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
vertexData,
vertexOffset,
vertexCount,
vertexStride,
vertexFormat,
indexData,
indexOffset,
indexCount,
indexType,
transformData,
transformOffset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(GeometryTrianglesNV const &) const = default;
#else
bool operator==(GeometryTrianglesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (vertexData == rhs.vertexData) && (vertexOffset == rhs.vertexOffset) &&
(vertexCount == rhs.vertexCount) && (vertexStride == rhs.vertexStride) && (vertexFormat == rhs.vertexFormat) &&
(indexData == rhs.indexData) && (indexOffset == rhs.indexOffset) && (indexCount == rhs.indexCount) && (indexType == rhs.indexType) &&
(transformData == rhs.transformData) && (transformOffset == rhs.transformOffset);
# endif
}
bool operator!=(GeometryTrianglesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeometryTrianglesNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Buffer vertexData = {};
VULKAN_HPP_NAMESPACE::DeviceSize vertexOffset = {};
uint32_t vertexCount = {};
VULKAN_HPP_NAMESPACE::DeviceSize vertexStride = {};
VULKAN_HPP_NAMESPACE::Format vertexFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::Buffer indexData = {};
VULKAN_HPP_NAMESPACE::DeviceSize indexOffset = {};
uint32_t indexCount = {};
VULKAN_HPP_NAMESPACE::IndexType indexType = VULKAN_HPP_NAMESPACE::IndexType::eUint16;
VULKAN_HPP_NAMESPACE::Buffer transformData = {};
VULKAN_HPP_NAMESPACE::DeviceSize transformOffset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::GeometryTrianglesNV) == sizeof(VkGeometryTrianglesNV), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::GeometryTrianglesNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GeometryTrianglesNV>::value,
"GeometryTrianglesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eGeometryTrianglesNV>
{
using Type = GeometryTrianglesNV;
};
struct GeometryAABBNV
{
using NativeType = VkGeometryAABBNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeometryAabbNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR GeometryAABBNV(VULKAN_HPP_NAMESPACE::Buffer aabbData_ = {},
uint32_t numAABBs_ = {},
uint32_t stride_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
aabbData(aabbData_),
numAABBs(numAABBs_),
stride(stride_),
offset(offset_)
{
}
VULKAN_HPP_CONSTEXPR GeometryAABBNV(GeometryAABBNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GeometryAABBNV(VkGeometryAABBNV const &rhs) VULKAN_HPP_NOEXCEPT : GeometryAABBNV(*reinterpret_cast<GeometryAABBNV const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
GeometryAABBNV &operator=(GeometryAABBNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GeometryAABBNV &operator=(VkGeometryAABBNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeometryAABBNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 GeometryAABBNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryAABBNV &setAabbData(VULKAN_HPP_NAMESPACE::Buffer aabbData_) VULKAN_HPP_NOEXCEPT
{
aabbData = aabbData_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryAABBNV &setNumAABBs(uint32_t numAABBs_) VULKAN_HPP_NOEXCEPT
{
numAABBs = numAABBs_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryAABBNV &setStride(uint32_t stride_) VULKAN_HPP_NOEXCEPT
{
stride = stride_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryAABBNV &setOffset(VULKAN_HPP_NAMESPACE::DeviceSize offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkGeometryAABBNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkGeometryAABBNV *>(this);
}
explicit operator VkGeometryAABBNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkGeometryAABBNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, aabbData, numAABBs, stride, offset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(GeometryAABBNV const &) const = default;
#else
bool operator==(GeometryAABBNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (aabbData == rhs.aabbData) && (numAABBs == rhs.numAABBs) && (stride == rhs.stride) &&
(offset == rhs.offset);
# endif
}
bool operator!=(GeometryAABBNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeometryAabbNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Buffer aabbData = {};
uint32_t numAABBs = {};
uint32_t stride = {};
VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::GeometryAABBNV) == sizeof(VkGeometryAABBNV), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::GeometryAABBNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GeometryAABBNV>::value,
"GeometryAABBNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eGeometryAabbNV>
{
using Type = GeometryAABBNV;
};
struct GeometryDataNV
{
using NativeType = VkGeometryDataNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR GeometryDataNV(VULKAN_HPP_NAMESPACE::GeometryTrianglesNV triangles_ = {},
VULKAN_HPP_NAMESPACE::GeometryAABBNV aabbs_ = {}) VULKAN_HPP_NOEXCEPT
: triangles(triangles_),
aabbs(aabbs_)
{
}
VULKAN_HPP_CONSTEXPR GeometryDataNV(GeometryDataNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GeometryDataNV(VkGeometryDataNV const &rhs) VULKAN_HPP_NOEXCEPT : GeometryDataNV(*reinterpret_cast<GeometryDataNV const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
GeometryDataNV &operator=(GeometryDataNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GeometryDataNV &operator=(VkGeometryDataNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeometryDataNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 GeometryDataNV &setTriangles(VULKAN_HPP_NAMESPACE::GeometryTrianglesNV const &triangles_) VULKAN_HPP_NOEXCEPT
{
triangles = triangles_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryDataNV &setAabbs(VULKAN_HPP_NAMESPACE::GeometryAABBNV const &aabbs_) VULKAN_HPP_NOEXCEPT
{
aabbs = aabbs_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkGeometryDataNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkGeometryDataNV *>(this);
}
explicit operator VkGeometryDataNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkGeometryDataNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::GeometryTrianglesNV const &, VULKAN_HPP_NAMESPACE::GeometryAABBNV const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(triangles, aabbs);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(GeometryDataNV const &) const = default;
#else
bool operator==(GeometryDataNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (triangles == rhs.triangles) && (aabbs == rhs.aabbs);
# endif
}
bool operator!=(GeometryDataNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::GeometryTrianglesNV triangles = {};
VULKAN_HPP_NAMESPACE::GeometryAABBNV aabbs = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::GeometryDataNV) == sizeof(VkGeometryDataNV), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::GeometryDataNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GeometryDataNV>::value,
"GeometryDataNV is not nothrow_move_constructible!");
struct GeometryNV
{
using NativeType = VkGeometryNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeometryNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR GeometryNV(VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType_ = VULKAN_HPP_NAMESPACE::GeometryTypeKHR::eTriangles,
VULKAN_HPP_NAMESPACE::GeometryDataNV geometry_ = {},
VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
geometryType(geometryType_),
geometry(geometry_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR GeometryNV(GeometryNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GeometryNV(VkGeometryNV const &rhs) VULKAN_HPP_NOEXCEPT : GeometryNV(*reinterpret_cast<GeometryNV const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
GeometryNV &operator=(GeometryNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GeometryNV &operator=(VkGeometryNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeometryNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 GeometryNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryNV &setGeometryType(VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType_) VULKAN_HPP_NOEXCEPT
{
geometryType = geometryType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryNV &setGeometry(VULKAN_HPP_NAMESPACE::GeometryDataNV const &geometry_) VULKAN_HPP_NOEXCEPT
{
geometry = geometry_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeometryNV &setFlags(VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkGeometryNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkGeometryNV *>(this);
}
explicit operator VkGeometryNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkGeometryNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::GeometryTypeKHR const &,
VULKAN_HPP_NAMESPACE::GeometryDataNV const &,
VULKAN_HPP_NAMESPACE::GeometryFlagsKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, geometryType, geometry, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(GeometryNV const &) const = default;
#else
bool operator==(GeometryNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (geometryType == rhs.geometryType) && (geometry == rhs.geometry) && (flags == rhs.flags);
# endif
}
bool operator!=(GeometryNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeometryNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::GeometryTypeKHR geometryType = VULKAN_HPP_NAMESPACE::GeometryTypeKHR::eTriangles;
VULKAN_HPP_NAMESPACE::GeometryDataNV geometry = {};
VULKAN_HPP_NAMESPACE::GeometryFlagsKHR flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::GeometryNV) == sizeof(VkGeometryNV), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::GeometryNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GeometryNV>::value, "GeometryNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eGeometryNV>
{
using Type = GeometryNV;
};
struct AccelerationStructureInfoNV
{
using NativeType = VkAccelerationStructureInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AccelerationStructureInfoNV(VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV type_ = {},
VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV flags_ = {},
uint32_t instanceCount_ = {},
uint32_t geometryCount_ = {},
const VULKAN_HPP_NAMESPACE::GeometryNV *pGeometries_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
type(type_),
flags(flags_),
instanceCount(instanceCount_),
geometryCount(geometryCount_),
pGeometries(pGeometries_)
{
}
VULKAN_HPP_CONSTEXPR AccelerationStructureInfoNV(AccelerationStructureInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureInfoNV(VkAccelerationStructureInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureInfoNV(*reinterpret_cast<AccelerationStructureInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
AccelerationStructureInfoNV(VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV type_,
VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV flags_,
uint32_t instanceCount_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::GeometryNV> const &geometries_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, type(type_)
, flags(flags_)
, instanceCount(instanceCount_)
, geometryCount(static_cast<uint32_t>(geometries_.size()))
, pGeometries(geometries_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureInfoNV &operator=(AccelerationStructureInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureInfoNV &operator=(VkAccelerationStructureInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInfoNV &setType(VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInfoNV &setFlags(VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInfoNV &setInstanceCount(uint32_t instanceCount_) VULKAN_HPP_NOEXCEPT
{
instanceCount = instanceCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInfoNV &setGeometryCount(uint32_t geometryCount_) VULKAN_HPP_NOEXCEPT
{
geometryCount = geometryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInfoNV &setPGeometries(const VULKAN_HPP_NAMESPACE::GeometryNV *pGeometries_) VULKAN_HPP_NOEXCEPT
{
pGeometries = pGeometries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
AccelerationStructureInfoNV &
setGeometries(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::GeometryNV> const &geometries_) VULKAN_HPP_NOEXCEPT
{
geometryCount = static_cast<uint32_t>(geometries_.size());
pGeometries = geometries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureInfoNV *>(this);
}
explicit operator VkAccelerationStructureInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV const &,
VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::GeometryNV *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, type, flags, instanceCount, geometryCount, pGeometries);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AccelerationStructureInfoNV const &) const = default;
#else
bool operator==(AccelerationStructureInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (type == rhs.type) && (flags == rhs.flags) && (instanceCount == rhs.instanceCount) &&
(geometryCount == rhs.geometryCount) && (pGeometries == rhs.pGeometries);
# endif
}
bool operator!=(AccelerationStructureInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureTypeNV type = {};
VULKAN_HPP_NAMESPACE::BuildAccelerationStructureFlagsNV flags = {};
uint32_t instanceCount = {};
uint32_t geometryCount = {};
const VULKAN_HPP_NAMESPACE::GeometryNV *pGeometries = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV) == sizeof(VkAccelerationStructureInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV>::value,
"AccelerationStructureInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureInfoNV>
{
using Type = AccelerationStructureInfoNV;
};
struct AccelerationStructureCreateInfoNV
{
using NativeType = VkAccelerationStructureCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AccelerationStructureCreateInfoNV(VULKAN_HPP_NAMESPACE::DeviceSize compactedSize_ = {},
VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV info_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
compactedSize(compactedSize_),
info(info_)
{
}
VULKAN_HPP_CONSTEXPR AccelerationStructureCreateInfoNV(AccelerationStructureCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureCreateInfoNV(VkAccelerationStructureCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureCreateInfoNV(*reinterpret_cast<AccelerationStructureCreateInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureCreateInfoNV &operator=(AccelerationStructureCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureCreateInfoNV &operator=(VkAccelerationStructureCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureCreateInfoNV &setCompactedSize(VULKAN_HPP_NAMESPACE::DeviceSize compactedSize_) VULKAN_HPP_NOEXCEPT
{
compactedSize = compactedSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureCreateInfoNV &setInfo(VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV const &info_) VULKAN_HPP_NOEXCEPT
{
info = info_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureCreateInfoNV *>(this);
}
explicit operator VkAccelerationStructureCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, compactedSize, info);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AccelerationStructureCreateInfoNV const &) const = default;
#else
bool operator==(AccelerationStructureCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (compactedSize == rhs.compactedSize) && (info == rhs.info);
# endif
}
bool operator!=(AccelerationStructureCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceSize compactedSize = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureInfoNV info = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoNV) == sizeof(VkAccelerationStructureCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureCreateInfoNV>::value,
"AccelerationStructureCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureCreateInfoNV>
{
using Type = AccelerationStructureCreateInfoNV;
};
struct AccelerationStructureDeviceAddressInfoKHR
{
using NativeType = VkAccelerationStructureDeviceAddressInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureDeviceAddressInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AccelerationStructureDeviceAddressInfoKHR(VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
accelerationStructure(accelerationStructure_)
{
}
VULKAN_HPP_CONSTEXPR AccelerationStructureDeviceAddressInfoKHR(AccelerationStructureDeviceAddressInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureDeviceAddressInfoKHR(VkAccelerationStructureDeviceAddressInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureDeviceAddressInfoKHR(*reinterpret_cast<AccelerationStructureDeviceAddressInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureDeviceAddressInfoKHR &operator=(AccelerationStructureDeviceAddressInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureDeviceAddressInfoKHR &operator=(VkAccelerationStructureDeviceAddressInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureDeviceAddressInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureDeviceAddressInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureDeviceAddressInfoKHR &
setAccelerationStructure(VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure_) VULKAN_HPP_NOEXCEPT
{
accelerationStructure = accelerationStructure_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureDeviceAddressInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureDeviceAddressInfoKHR *>(this);
}
explicit operator VkAccelerationStructureDeviceAddressInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureDeviceAddressInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::AccelerationStructureKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, accelerationStructure);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AccelerationStructureDeviceAddressInfoKHR const &) const = default;
#else
bool operator==(AccelerationStructureDeviceAddressInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (accelerationStructure == rhs.accelerationStructure);
# endif
}
bool operator!=(AccelerationStructureDeviceAddressInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureDeviceAddressInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR accelerationStructure = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureDeviceAddressInfoKHR) == sizeof(VkAccelerationStructureDeviceAddressInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureDeviceAddressInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureDeviceAddressInfoKHR>::value,
"AccelerationStructureDeviceAddressInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureDeviceAddressInfoKHR>
{
using Type = AccelerationStructureDeviceAddressInfoKHR;
};
struct AccelerationStructureGeometryMotionTrianglesDataNV
{
using NativeType = VkAccelerationStructureGeometryMotionTrianglesDataNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureGeometryMotionTrianglesDataNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryMotionTrianglesDataNV(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR vertexData_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
vertexData(vertexData_)
{
}
VULKAN_HPP_CONSTEXPR_14
AccelerationStructureGeometryMotionTrianglesDataNV(AccelerationStructureGeometryMotionTrianglesDataNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureGeometryMotionTrianglesDataNV(VkAccelerationStructureGeometryMotionTrianglesDataNV const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureGeometryMotionTrianglesDataNV(*reinterpret_cast<AccelerationStructureGeometryMotionTrianglesDataNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureGeometryMotionTrianglesDataNV &
operator=(AccelerationStructureGeometryMotionTrianglesDataNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureGeometryMotionTrianglesDataNV &operator=(VkAccelerationStructureGeometryMotionTrianglesDataNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryMotionTrianglesDataNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryMotionTrianglesDataNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureGeometryMotionTrianglesDataNV &
setVertexData(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &vertexData_) VULKAN_HPP_NOEXCEPT
{
vertexData = vertexData_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureGeometryMotionTrianglesDataNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureGeometryMotionTrianglesDataNV *>(this);
}
explicit operator VkAccelerationStructureGeometryMotionTrianglesDataNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureGeometryMotionTrianglesDataNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, vertexData);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureGeometryMotionTrianglesDataNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR vertexData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryMotionTrianglesDataNV) ==
sizeof(VkAccelerationStructureGeometryMotionTrianglesDataNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryMotionTrianglesDataNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryMotionTrianglesDataNV>::value,
"AccelerationStructureGeometryMotionTrianglesDataNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureGeometryMotionTrianglesDataNV>
{
using Type = AccelerationStructureGeometryMotionTrianglesDataNV;
};
struct TransformMatrixKHR
{
using NativeType = VkTransformMatrixKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 TransformMatrixKHR(std::array<std::array<float, 4>, 3> const &matrix_ = {}) VULKAN_HPP_NOEXCEPT : matrix(matrix_)
{}
VULKAN_HPP_CONSTEXPR_14 TransformMatrixKHR(TransformMatrixKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
TransformMatrixKHR(VkTransformMatrixKHR const &rhs) VULKAN_HPP_NOEXCEPT : TransformMatrixKHR(*reinterpret_cast<TransformMatrixKHR const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
TransformMatrixKHR &operator=(TransformMatrixKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
TransformMatrixKHR &operator=(VkTransformMatrixKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::TransformMatrixKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 TransformMatrixKHR &setMatrix(std::array<std::array<float, 4>, 3> matrix_) VULKAN_HPP_NOEXCEPT
{
matrix = matrix_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkTransformMatrixKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkTransformMatrixKHR *>(this);
}
explicit operator VkTransformMatrixKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkTransformMatrixKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ArrayWrapper2D<float, 3, 4> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(matrix);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(TransformMatrixKHR const &) const = default;
#else
bool operator==(TransformMatrixKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (matrix == rhs.matrix);
# endif
}
bool operator!=(TransformMatrixKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<float, 3, 4> matrix = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::TransformMatrixKHR) == sizeof(VkTransformMatrixKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::TransformMatrixKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::TransformMatrixKHR>::value,
"TransformMatrixKHR is not nothrow_move_constructible!");
using TransformMatrixNV = TransformMatrixKHR;
struct AccelerationStructureInstanceKHR
{
using NativeType = VkAccelerationStructureInstanceKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInstanceKHR(VULKAN_HPP_NAMESPACE::TransformMatrixKHR transform_ = {},
uint32_t instanceCustomIndex_ = {},
uint32_t mask_ = {},
uint32_t instanceShaderBindingTableRecordOffset_ = {},
VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_ = {},
uint64_t accelerationStructureReference_ = {}) VULKAN_HPP_NOEXCEPT
: transform(transform_),
instanceCustomIndex(instanceCustomIndex_),
mask(mask_),
instanceShaderBindingTableRecordOffset(instanceShaderBindingTableRecordOffset_),
flags(flags_),
accelerationStructureReference(accelerationStructureReference_)
{
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInstanceKHR(AccelerationStructureInstanceKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureInstanceKHR(VkAccelerationStructureInstanceKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureInstanceKHR(*reinterpret_cast<AccelerationStructureInstanceKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureInstanceKHR &operator=(AccelerationStructureInstanceKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureInstanceKHR &operator=(VkAccelerationStructureInstanceKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureInstanceKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInstanceKHR &setTransform(VULKAN_HPP_NAMESPACE::TransformMatrixKHR const &transform_) VULKAN_HPP_NOEXCEPT
{
transform = transform_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInstanceKHR &setInstanceCustomIndex(uint32_t instanceCustomIndex_) VULKAN_HPP_NOEXCEPT
{
instanceCustomIndex = instanceCustomIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInstanceKHR &setMask(uint32_t mask_) VULKAN_HPP_NOEXCEPT
{
mask = mask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInstanceKHR &
setInstanceShaderBindingTableRecordOffset(uint32_t instanceShaderBindingTableRecordOffset_) VULKAN_HPP_NOEXCEPT
{
instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset_;
return *this;
}
AccelerationStructureInstanceKHR &setFlags(VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = *reinterpret_cast<VkGeometryInstanceFlagsKHR *>(&flags_);
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureInstanceKHR &setAccelerationStructureReference(uint64_t accelerationStructureReference_) VULKAN_HPP_NOEXCEPT
{
accelerationStructureReference = accelerationStructureReference_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureInstanceKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureInstanceKHR *>(this);
}
explicit operator VkAccelerationStructureInstanceKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureInstanceKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::TransformMatrixKHR const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VkGeometryInstanceFlagsKHR const &,
uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(transform, instanceCustomIndex, mask, instanceShaderBindingTableRecordOffset, flags, accelerationStructureReference);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AccelerationStructureInstanceKHR const &) const = default;
#else
bool operator==(AccelerationStructureInstanceKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (transform == rhs.transform) && (instanceCustomIndex == rhs.instanceCustomIndex) && (mask == rhs.mask) &&
(instanceShaderBindingTableRecordOffset == rhs.instanceShaderBindingTableRecordOffset) && (flags == rhs.flags) &&
(accelerationStructureReference == rhs.accelerationStructureReference);
# endif
}
bool operator!=(AccelerationStructureInstanceKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::TransformMatrixKHR transform = {};
uint32_t instanceCustomIndex : 24;
uint32_t mask : 8;
uint32_t instanceShaderBindingTableRecordOffset : 24;
VkGeometryInstanceFlagsKHR flags : 8;
uint64_t accelerationStructureReference = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureInstanceKHR) == sizeof(VkAccelerationStructureInstanceKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureInstanceKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureInstanceKHR>::value,
"AccelerationStructureInstanceKHR is not nothrow_move_constructible!");
using AccelerationStructureInstanceNV = AccelerationStructureInstanceKHR;
struct AccelerationStructureMatrixMotionInstanceNV
{
using NativeType = VkAccelerationStructureMatrixMotionInstanceNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMatrixMotionInstanceNV(VULKAN_HPP_NAMESPACE::TransformMatrixKHR transformT0_ = {},
VULKAN_HPP_NAMESPACE::TransformMatrixKHR transformT1_ = {},
uint32_t instanceCustomIndex_ = {},
uint32_t mask_ = {},
uint32_t instanceShaderBindingTableRecordOffset_ = {},
VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_ = {},
uint64_t accelerationStructureReference_ = {}) VULKAN_HPP_NOEXCEPT
: transformT0(transformT0_),
transformT1(transformT1_),
instanceCustomIndex(instanceCustomIndex_),
mask(mask_),
instanceShaderBindingTableRecordOffset(instanceShaderBindingTableRecordOffset_),
flags(flags_),
accelerationStructureReference(accelerationStructureReference_)
{
}
VULKAN_HPP_CONSTEXPR_14
AccelerationStructureMatrixMotionInstanceNV(AccelerationStructureMatrixMotionInstanceNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureMatrixMotionInstanceNV(VkAccelerationStructureMatrixMotionInstanceNV const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureMatrixMotionInstanceNV(*reinterpret_cast<AccelerationStructureMatrixMotionInstanceNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureMatrixMotionInstanceNV &operator=(AccelerationStructureMatrixMotionInstanceNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureMatrixMotionInstanceNV &operator=(VkAccelerationStructureMatrixMotionInstanceNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureMatrixMotionInstanceNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMatrixMotionInstanceNV &
setTransformT0(VULKAN_HPP_NAMESPACE::TransformMatrixKHR const &transformT0_) VULKAN_HPP_NOEXCEPT
{
transformT0 = transformT0_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMatrixMotionInstanceNV &
setTransformT1(VULKAN_HPP_NAMESPACE::TransformMatrixKHR const &transformT1_) VULKAN_HPP_NOEXCEPT
{
transformT1 = transformT1_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMatrixMotionInstanceNV &setInstanceCustomIndex(uint32_t instanceCustomIndex_) VULKAN_HPP_NOEXCEPT
{
instanceCustomIndex = instanceCustomIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMatrixMotionInstanceNV &setMask(uint32_t mask_) VULKAN_HPP_NOEXCEPT
{
mask = mask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMatrixMotionInstanceNV &
setInstanceShaderBindingTableRecordOffset(uint32_t instanceShaderBindingTableRecordOffset_) VULKAN_HPP_NOEXCEPT
{
instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset_;
return *this;
}
AccelerationStructureMatrixMotionInstanceNV &setFlags(VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = *reinterpret_cast<VkGeometryInstanceFlagsKHR *>(&flags_);
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMatrixMotionInstanceNV &
setAccelerationStructureReference(uint64_t accelerationStructureReference_) VULKAN_HPP_NOEXCEPT
{
accelerationStructureReference = accelerationStructureReference_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureMatrixMotionInstanceNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureMatrixMotionInstanceNV *>(this);
}
explicit operator VkAccelerationStructureMatrixMotionInstanceNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureMatrixMotionInstanceNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::TransformMatrixKHR const &,
VULKAN_HPP_NAMESPACE::TransformMatrixKHR const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VkGeometryInstanceFlagsKHR const &,
uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(transformT0, transformT1, instanceCustomIndex, mask, instanceShaderBindingTableRecordOffset, flags, accelerationStructureReference);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AccelerationStructureMatrixMotionInstanceNV const &) const = default;
#else
bool operator==(AccelerationStructureMatrixMotionInstanceNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (transformT0 == rhs.transformT0) && (transformT1 == rhs.transformT1) && (instanceCustomIndex == rhs.instanceCustomIndex) &&
(mask == rhs.mask) && (instanceShaderBindingTableRecordOffset == rhs.instanceShaderBindingTableRecordOffset) && (flags == rhs.flags) &&
(accelerationStructureReference == rhs.accelerationStructureReference);
# endif
}
bool operator!=(AccelerationStructureMatrixMotionInstanceNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::TransformMatrixKHR transformT0 = {};
VULKAN_HPP_NAMESPACE::TransformMatrixKHR transformT1 = {};
uint32_t instanceCustomIndex : 24;
uint32_t mask : 8;
uint32_t instanceShaderBindingTableRecordOffset : 24;
VkGeometryInstanceFlagsKHR flags : 8;
uint64_t accelerationStructureReference = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureMatrixMotionInstanceNV) ==
sizeof(VkAccelerationStructureMatrixMotionInstanceNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureMatrixMotionInstanceNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureMatrixMotionInstanceNV>::value,
"AccelerationStructureMatrixMotionInstanceNV is not nothrow_move_constructible!");
struct AccelerationStructureMemoryRequirementsInfoNV
{
using NativeType = VkAccelerationStructureMemoryRequirementsInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureMemoryRequirementsInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AccelerationStructureMemoryRequirementsInfoNV(
VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV type_ = VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV::eObject,
VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
type(type_),
accelerationStructure(accelerationStructure_)
{
}
VULKAN_HPP_CONSTEXPR
AccelerationStructureMemoryRequirementsInfoNV(AccelerationStructureMemoryRequirementsInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureMemoryRequirementsInfoNV(VkAccelerationStructureMemoryRequirementsInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureMemoryRequirementsInfoNV(*reinterpret_cast<AccelerationStructureMemoryRequirementsInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureMemoryRequirementsInfoNV &operator=(AccelerationStructureMemoryRequirementsInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureMemoryRequirementsInfoNV &operator=(VkAccelerationStructureMemoryRequirementsInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMemoryRequirementsInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMemoryRequirementsInfoNV &
setType(VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMemoryRequirementsInfoNV &
setAccelerationStructure(VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_) VULKAN_HPP_NOEXCEPT
{
accelerationStructure = accelerationStructure_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureMemoryRequirementsInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureMemoryRequirementsInfoNV *>(this);
}
explicit operator VkAccelerationStructureMemoryRequirementsInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureMemoryRequirementsInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureNV const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, type, accelerationStructure);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AccelerationStructureMemoryRequirementsInfoNV const &) const = default;
#else
bool operator==(AccelerationStructureMemoryRequirementsInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (type == rhs.type) && (accelerationStructure == rhs.accelerationStructure);
# endif
}
bool operator!=(AccelerationStructureMemoryRequirementsInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureMemoryRequirementsInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV type = VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsTypeNV::eObject;
VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsInfoNV) ==
sizeof(VkAccelerationStructureMemoryRequirementsInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureMemoryRequirementsInfoNV>::value,
"AccelerationStructureMemoryRequirementsInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureMemoryRequirementsInfoNV>
{
using Type = AccelerationStructureMemoryRequirementsInfoNV;
};
struct AccelerationStructureMotionInfoNV
{
using NativeType = VkAccelerationStructureMotionInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureMotionInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AccelerationStructureMotionInfoNV(uint32_t maxInstances_ = {},
VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInfoFlagsNV flags_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxInstances(maxInstances_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR AccelerationStructureMotionInfoNV(AccelerationStructureMotionInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureMotionInfoNV(VkAccelerationStructureMotionInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureMotionInfoNV(*reinterpret_cast<AccelerationStructureMotionInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureMotionInfoNV &operator=(AccelerationStructureMotionInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureMotionInfoNV &operator=(VkAccelerationStructureMotionInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInfoNV &setMaxInstances(uint32_t maxInstances_) VULKAN_HPP_NOEXCEPT
{
maxInstances = maxInstances_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInfoNV &
setFlags(VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInfoFlagsNV flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureMotionInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureMotionInfoNV *>(this);
}
explicit operator VkAccelerationStructureMotionInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureMotionInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInfoFlagsNV const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxInstances, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AccelerationStructureMotionInfoNV const &) const = default;
#else
bool operator==(AccelerationStructureMotionInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxInstances == rhs.maxInstances) && (flags == rhs.flags);
# endif
}
bool operator!=(AccelerationStructureMotionInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureMotionInfoNV;
const void *pNext = {};
uint32_t maxInstances = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInfoFlagsNV flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInfoNV) == sizeof(VkAccelerationStructureMotionInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInfoNV>::value,
"AccelerationStructureMotionInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureMotionInfoNV>
{
using Type = AccelerationStructureMotionInfoNV;
};
struct SRTDataNV
{
using NativeType = VkSRTDataNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SRTDataNV(float sx_ = {},
float a_ = {},
float b_ = {},
float pvx_ = {},
float sy_ = {},
float c_ = {},
float pvy_ = {},
float sz_ = {},
float pvz_ = {},
float qx_ = {},
float qy_ = {},
float qz_ = {},
float qw_ = {},
float tx_ = {},
float ty_ = {},
float tz_ = {}) VULKAN_HPP_NOEXCEPT
: sx(sx_),
a(a_),
b(b_),
pvx(pvx_),
sy(sy_),
c(c_),
pvy(pvy_),
sz(sz_),
pvz(pvz_),
qx(qx_),
qy(qy_),
qz(qz_),
qw(qw_),
tx(tx_),
ty(ty_),
tz(tz_)
{
}
VULKAN_HPP_CONSTEXPR SRTDataNV(SRTDataNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
SRTDataNV(VkSRTDataNV const &rhs) VULKAN_HPP_NOEXCEPT : SRTDataNV(*reinterpret_cast<SRTDataNV const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SRTDataNV &operator=(SRTDataNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
SRTDataNV &operator=(VkSRTDataNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SRTDataNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setSx(float sx_) VULKAN_HPP_NOEXCEPT
{
sx = sx_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setA(float a_) VULKAN_HPP_NOEXCEPT
{
a = a_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setB(float b_) VULKAN_HPP_NOEXCEPT
{
b = b_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setPvx(float pvx_) VULKAN_HPP_NOEXCEPT
{
pvx = pvx_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setSy(float sy_) VULKAN_HPP_NOEXCEPT
{
sy = sy_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setC(float c_) VULKAN_HPP_NOEXCEPT
{
c = c_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setPvy(float pvy_) VULKAN_HPP_NOEXCEPT
{
pvy = pvy_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setSz(float sz_) VULKAN_HPP_NOEXCEPT
{
sz = sz_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setPvz(float pvz_) VULKAN_HPP_NOEXCEPT
{
pvz = pvz_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setQx(float qx_) VULKAN_HPP_NOEXCEPT
{
qx = qx_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setQy(float qy_) VULKAN_HPP_NOEXCEPT
{
qy = qy_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setQz(float qz_) VULKAN_HPP_NOEXCEPT
{
qz = qz_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setQw(float qw_) VULKAN_HPP_NOEXCEPT
{
qw = qw_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setTx(float tx_) VULKAN_HPP_NOEXCEPT
{
tx = tx_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setTy(float ty_) VULKAN_HPP_NOEXCEPT
{
ty = ty_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SRTDataNV &setTz(float tz_) VULKAN_HPP_NOEXCEPT
{
tz = tz_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSRTDataNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSRTDataNV *>(this);
}
explicit operator VkSRTDataNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSRTDataNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<float const &,
float const &,
float const &,
float const &,
float const &,
float const &,
float const &,
float const &,
float const &,
float const &,
float const &,
float const &,
float const &,
float const &,
float const &,
float const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sx, a, b, pvx, sy, c, pvy, sz, pvz, qx, qy, qz, qw, tx, ty, tz);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SRTDataNV const &) const = default;
#else
bool operator==(SRTDataNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sx == rhs.sx) && (a == rhs.a) && (b == rhs.b) && (pvx == rhs.pvx) && (sy == rhs.sy) && (c == rhs.c) && (pvy == rhs.pvy) &&
(sz == rhs.sz) && (pvz == rhs.pvz) && (qx == rhs.qx) && (qy == rhs.qy) && (qz == rhs.qz) && (qw == rhs.qw) && (tx == rhs.tx) &&
(ty == rhs.ty) && (tz == rhs.tz);
# endif
}
bool operator!=(SRTDataNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
float sx = {};
float a = {};
float b = {};
float pvx = {};
float sy = {};
float c = {};
float pvy = {};
float sz = {};
float pvz = {};
float qx = {};
float qy = {};
float qz = {};
float qw = {};
float tx = {};
float ty = {};
float tz = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SRTDataNV) == sizeof(VkSRTDataNV), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SRTDataNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SRTDataNV>::value, "SRTDataNV is not nothrow_move_constructible!");
struct AccelerationStructureSRTMotionInstanceNV
{
using NativeType = VkAccelerationStructureSRTMotionInstanceNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AccelerationStructureSRTMotionInstanceNV(VULKAN_HPP_NAMESPACE::SRTDataNV transformT0_ = {},
VULKAN_HPP_NAMESPACE::SRTDataNV transformT1_ = {},
uint32_t instanceCustomIndex_ = {},
uint32_t mask_ = {},
uint32_t instanceShaderBindingTableRecordOffset_ = {},
VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_ = {},
uint64_t accelerationStructureReference_ = {}) VULKAN_HPP_NOEXCEPT
: transformT0(transformT0_),
transformT1(transformT1_),
instanceCustomIndex(instanceCustomIndex_),
mask(mask_),
instanceShaderBindingTableRecordOffset(instanceShaderBindingTableRecordOffset_),
flags(flags_),
accelerationStructureReference(accelerationStructureReference_)
{
}
VULKAN_HPP_CONSTEXPR AccelerationStructureSRTMotionInstanceNV(AccelerationStructureSRTMotionInstanceNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureSRTMotionInstanceNV(VkAccelerationStructureSRTMotionInstanceNV const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureSRTMotionInstanceNV(*reinterpret_cast<AccelerationStructureSRTMotionInstanceNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureSRTMotionInstanceNV &operator=(AccelerationStructureSRTMotionInstanceNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureSRTMotionInstanceNV &operator=(VkAccelerationStructureSRTMotionInstanceNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureSRTMotionInstanceNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureSRTMotionInstanceNV &
setTransformT0(VULKAN_HPP_NAMESPACE::SRTDataNV const &transformT0_) VULKAN_HPP_NOEXCEPT
{
transformT0 = transformT0_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureSRTMotionInstanceNV &
setTransformT1(VULKAN_HPP_NAMESPACE::SRTDataNV const &transformT1_) VULKAN_HPP_NOEXCEPT
{
transformT1 = transformT1_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureSRTMotionInstanceNV &setInstanceCustomIndex(uint32_t instanceCustomIndex_) VULKAN_HPP_NOEXCEPT
{
instanceCustomIndex = instanceCustomIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureSRTMotionInstanceNV &setMask(uint32_t mask_) VULKAN_HPP_NOEXCEPT
{
mask = mask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureSRTMotionInstanceNV &
setInstanceShaderBindingTableRecordOffset(uint32_t instanceShaderBindingTableRecordOffset_) VULKAN_HPP_NOEXCEPT
{
instanceShaderBindingTableRecordOffset = instanceShaderBindingTableRecordOffset_;
return *this;
}
AccelerationStructureSRTMotionInstanceNV &setFlags(VULKAN_HPP_NAMESPACE::GeometryInstanceFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = *reinterpret_cast<VkGeometryInstanceFlagsKHR *>(&flags_);
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureSRTMotionInstanceNV &
setAccelerationStructureReference(uint64_t accelerationStructureReference_) VULKAN_HPP_NOEXCEPT
{
accelerationStructureReference = accelerationStructureReference_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureSRTMotionInstanceNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureSRTMotionInstanceNV *>(this);
}
explicit operator VkAccelerationStructureSRTMotionInstanceNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureSRTMotionInstanceNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::SRTDataNV const &,
VULKAN_HPP_NAMESPACE::SRTDataNV const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VkGeometryInstanceFlagsKHR const &,
uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(transformT0, transformT1, instanceCustomIndex, mask, instanceShaderBindingTableRecordOffset, flags, accelerationStructureReference);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AccelerationStructureSRTMotionInstanceNV const &) const = default;
#else
bool operator==(AccelerationStructureSRTMotionInstanceNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (transformT0 == rhs.transformT0) && (transformT1 == rhs.transformT1) && (instanceCustomIndex == rhs.instanceCustomIndex) &&
(mask == rhs.mask) && (instanceShaderBindingTableRecordOffset == rhs.instanceShaderBindingTableRecordOffset) && (flags == rhs.flags) &&
(accelerationStructureReference == rhs.accelerationStructureReference);
# endif
}
bool operator!=(AccelerationStructureSRTMotionInstanceNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::SRTDataNV transformT0 = {};
VULKAN_HPP_NAMESPACE::SRTDataNV transformT1 = {};
uint32_t instanceCustomIndex : 24;
uint32_t mask : 8;
uint32_t instanceShaderBindingTableRecordOffset : 24;
VkGeometryInstanceFlagsKHR flags : 8;
uint64_t accelerationStructureReference = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureSRTMotionInstanceNV) == sizeof(VkAccelerationStructureSRTMotionInstanceNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureSRTMotionInstanceNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureSRTMotionInstanceNV>::value,
"AccelerationStructureSRTMotionInstanceNV is not nothrow_move_constructible!");
union AccelerationStructureMotionInstanceDataNV
{
using NativeType = VkAccelerationStructureMotionInstanceDataNV;
#if !defined(VULKAN_HPP_NO_UNION_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInstanceDataNV(VULKAN_HPP_NAMESPACE::AccelerationStructureInstanceKHR staticInstance_ = {})
: staticInstance(staticInstance_)
{
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInstanceDataNV(VULKAN_HPP_NAMESPACE::AccelerationStructureMatrixMotionInstanceNV matrixMotionInstance_)
: matrixMotionInstance(matrixMotionInstance_)
{
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInstanceDataNV(VULKAN_HPP_NAMESPACE::AccelerationStructureSRTMotionInstanceNV srtMotionInstance_)
: srtMotionInstance(srtMotionInstance_)
{
}
#endif /*VULKAN_HPP_NO_UNION_CONSTRUCTORS*/
#if !defined(VULKAN_HPP_NO_UNION_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInstanceDataNV &
setStaticInstance(VULKAN_HPP_NAMESPACE::AccelerationStructureInstanceKHR const &staticInstance_) VULKAN_HPP_NOEXCEPT
{
staticInstance = staticInstance_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInstanceDataNV &
setMatrixMotionInstance(VULKAN_HPP_NAMESPACE::AccelerationStructureMatrixMotionInstanceNV const &matrixMotionInstance_) VULKAN_HPP_NOEXCEPT
{
matrixMotionInstance = matrixMotionInstance_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInstanceDataNV &
setSrtMotionInstance(VULKAN_HPP_NAMESPACE::AccelerationStructureSRTMotionInstanceNV const &srtMotionInstance_) VULKAN_HPP_NOEXCEPT
{
srtMotionInstance = srtMotionInstance_;
return *this;
}
#endif /*VULKAN_HPP_NO_UNION_SETTERS*/
operator VkAccelerationStructureMotionInstanceDataNV const &() const
{
return *reinterpret_cast<const VkAccelerationStructureMotionInstanceDataNV *>(this);
}
operator VkAccelerationStructureMotionInstanceDataNV &()
{
return *reinterpret_cast<VkAccelerationStructureMotionInstanceDataNV *>(this);
}
#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
VULKAN_HPP_NAMESPACE::AccelerationStructureInstanceKHR staticInstance;
VULKAN_HPP_NAMESPACE::AccelerationStructureMatrixMotionInstanceNV matrixMotionInstance;
VULKAN_HPP_NAMESPACE::AccelerationStructureSRTMotionInstanceNV srtMotionInstance;
#else
VkAccelerationStructureInstanceKHR staticInstance;
VkAccelerationStructureMatrixMotionInstanceNV matrixMotionInstance;
VkAccelerationStructureSRTMotionInstanceNV srtMotionInstance;
#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
};
struct AccelerationStructureMotionInstanceNV
{
using NativeType = VkAccelerationStructureMotionInstanceNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInstanceNV(
VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceTypeNV type_ = VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceTypeNV::eStatic,
VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceFlagsNV flags_ = {},
VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceDataNV data_ = {}) VULKAN_HPP_NOEXCEPT
: type(type_),
flags(flags_),
data(data_)
{
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInstanceNV(AccelerationStructureMotionInstanceNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureMotionInstanceNV(VkAccelerationStructureMotionInstanceNV const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureMotionInstanceNV(*reinterpret_cast<AccelerationStructureMotionInstanceNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureMotionInstanceNV &operator=(AccelerationStructureMotionInstanceNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureMotionInstanceNV &operator=(VkAccelerationStructureMotionInstanceNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInstanceNV &
setType(VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceTypeNV type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInstanceNV &
setFlags(VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceFlagsNV flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureMotionInstanceNV &
setData(VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceDataNV const &data_) VULKAN_HPP_NOEXCEPT
{
data = data_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureMotionInstanceNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureMotionInstanceNV *>(this);
}
explicit operator VkAccelerationStructureMotionInstanceNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureMotionInstanceNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceTypeNV const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceFlagsNV const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceDataNV const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(type, flags, data);
}
#endif
public:
VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceTypeNV type = VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceTypeNV::eStatic;
VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceFlagsNV flags = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceDataNV data = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceNV) == sizeof(VkAccelerationStructureMotionInstanceNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureMotionInstanceNV>::value,
"AccelerationStructureMotionInstanceNV is not nothrow_move_constructible!");
struct AccelerationStructureVersionInfoKHR
{
using NativeType = VkAccelerationStructureVersionInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAccelerationStructureVersionInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AccelerationStructureVersionInfoKHR(const uint8_t *pVersionData_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pVersionData(pVersionData_)
{
}
VULKAN_HPP_CONSTEXPR AccelerationStructureVersionInfoKHR(AccelerationStructureVersionInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureVersionInfoKHR(VkAccelerationStructureVersionInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AccelerationStructureVersionInfoKHR(*reinterpret_cast<AccelerationStructureVersionInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AccelerationStructureVersionInfoKHR &operator=(AccelerationStructureVersionInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AccelerationStructureVersionInfoKHR &operator=(VkAccelerationStructureVersionInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AccelerationStructureVersionInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureVersionInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AccelerationStructureVersionInfoKHR &setPVersionData(const uint8_t *pVersionData_) VULKAN_HPP_NOEXCEPT
{
pVersionData = pVersionData_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAccelerationStructureVersionInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAccelerationStructureVersionInfoKHR *>(this);
}
explicit operator VkAccelerationStructureVersionInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAccelerationStructureVersionInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, const uint8_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pVersionData);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AccelerationStructureVersionInfoKHR const &) const = default;
#else
bool operator==(AccelerationStructureVersionInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pVersionData == rhs.pVersionData);
# endif
}
bool operator!=(AccelerationStructureVersionInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAccelerationStructureVersionInfoKHR;
const void *pNext = {};
const uint8_t *pVersionData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AccelerationStructureVersionInfoKHR) == sizeof(VkAccelerationStructureVersionInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureVersionInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureVersionInfoKHR>::value,
"AccelerationStructureVersionInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAccelerationStructureVersionInfoKHR>
{
using Type = AccelerationStructureVersionInfoKHR;
};
struct AcquireNextImageInfoKHR
{
using NativeType = VkAcquireNextImageInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAcquireNextImageInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AcquireNextImageInfoKHR(VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ = {},
uint64_t timeout_ = {},
VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
VULKAN_HPP_NAMESPACE::Fence fence_ = {},
uint32_t deviceMask_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
swapchain(swapchain_),
timeout(timeout_),
semaphore(semaphore_),
fence(fence_),
deviceMask(deviceMask_)
{
}
VULKAN_HPP_CONSTEXPR AcquireNextImageInfoKHR(AcquireNextImageInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AcquireNextImageInfoKHR(VkAcquireNextImageInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AcquireNextImageInfoKHR(*reinterpret_cast<AcquireNextImageInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AcquireNextImageInfoKHR &operator=(AcquireNextImageInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AcquireNextImageInfoKHR &operator=(VkAcquireNextImageInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AcquireNextImageInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AcquireNextImageInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AcquireNextImageInfoKHR &setSwapchain(VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_) VULKAN_HPP_NOEXCEPT
{
swapchain = swapchain_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AcquireNextImageInfoKHR &setTimeout(uint64_t timeout_) VULKAN_HPP_NOEXCEPT
{
timeout = timeout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AcquireNextImageInfoKHR &setSemaphore(VULKAN_HPP_NAMESPACE::Semaphore semaphore_) VULKAN_HPP_NOEXCEPT
{
semaphore = semaphore_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AcquireNextImageInfoKHR &setFence(VULKAN_HPP_NAMESPACE::Fence fence_) VULKAN_HPP_NOEXCEPT
{
fence = fence_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AcquireNextImageInfoKHR &setDeviceMask(uint32_t deviceMask_) VULKAN_HPP_NOEXCEPT
{
deviceMask = deviceMask_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAcquireNextImageInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAcquireNextImageInfoKHR *>(this);
}
explicit operator VkAcquireNextImageInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAcquireNextImageInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::SwapchainKHR const &,
uint64_t const &,
VULKAN_HPP_NAMESPACE::Semaphore const &,
VULKAN_HPP_NAMESPACE::Fence const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, swapchain, timeout, semaphore, fence, deviceMask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AcquireNextImageInfoKHR const &) const = default;
#else
bool operator==(AcquireNextImageInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (swapchain == rhs.swapchain) && (timeout == rhs.timeout) &&
(semaphore == rhs.semaphore) && (fence == rhs.fence) && (deviceMask == rhs.deviceMask);
# endif
}
bool operator!=(AcquireNextImageInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAcquireNextImageInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain = {};
uint64_t timeout = {};
VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
VULKAN_HPP_NAMESPACE::Fence fence = {};
uint32_t deviceMask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AcquireNextImageInfoKHR) == sizeof(VkAcquireNextImageInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AcquireNextImageInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AcquireNextImageInfoKHR>::value,
"AcquireNextImageInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAcquireNextImageInfoKHR>
{
using Type = AcquireNextImageInfoKHR;
};
struct AcquireProfilingLockInfoKHR
{
using NativeType = VkAcquireProfilingLockInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAcquireProfilingLockInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AcquireProfilingLockInfoKHR(VULKAN_HPP_NAMESPACE::AcquireProfilingLockFlagsKHR flags_ = {},
uint64_t timeout_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
timeout(timeout_)
{
}
VULKAN_HPP_CONSTEXPR AcquireProfilingLockInfoKHR(AcquireProfilingLockInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AcquireProfilingLockInfoKHR(VkAcquireProfilingLockInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AcquireProfilingLockInfoKHR(*reinterpret_cast<AcquireProfilingLockInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AcquireProfilingLockInfoKHR &operator=(AcquireProfilingLockInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AcquireProfilingLockInfoKHR &operator=(VkAcquireProfilingLockInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AcquireProfilingLockInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AcquireProfilingLockInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AcquireProfilingLockInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::AcquireProfilingLockFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AcquireProfilingLockInfoKHR &setTimeout(uint64_t timeout_) VULKAN_HPP_NOEXCEPT
{
timeout = timeout_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAcquireProfilingLockInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAcquireProfilingLockInfoKHR *>(this);
}
explicit operator VkAcquireProfilingLockInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAcquireProfilingLockInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::AcquireProfilingLockFlagsKHR const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, timeout);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AcquireProfilingLockInfoKHR const &) const = default;
#else
bool operator==(AcquireProfilingLockInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (timeout == rhs.timeout);
# endif
}
bool operator!=(AcquireProfilingLockInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAcquireProfilingLockInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AcquireProfilingLockFlagsKHR flags = {};
uint64_t timeout = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AcquireProfilingLockInfoKHR) == sizeof(VkAcquireProfilingLockInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AcquireProfilingLockInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AcquireProfilingLockInfoKHR>::value,
"AcquireProfilingLockInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAcquireProfilingLockInfoKHR>
{
using Type = AcquireProfilingLockInfoKHR;
};
struct AllocationCallbacks
{
using NativeType = VkAllocationCallbacks;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AllocationCallbacks(void *pUserData_ = {},
PFN_vkAllocationFunction pfnAllocation_ = {},
PFN_vkReallocationFunction pfnReallocation_ = {},
PFN_vkFreeFunction pfnFree_ = {},
PFN_vkInternalAllocationNotification pfnInternalAllocation_ = {},
PFN_vkInternalFreeNotification pfnInternalFree_ = {}) VULKAN_HPP_NOEXCEPT
: pUserData(pUserData_),
pfnAllocation(pfnAllocation_),
pfnReallocation(pfnReallocation_),
pfnFree(pfnFree_),
pfnInternalAllocation(pfnInternalAllocation_),
pfnInternalFree(pfnInternalFree_)
{
}
VULKAN_HPP_CONSTEXPR AllocationCallbacks(AllocationCallbacks const &rhs) VULKAN_HPP_NOEXCEPT = default;
AllocationCallbacks(VkAllocationCallbacks const &rhs) VULKAN_HPP_NOEXCEPT : AllocationCallbacks(*reinterpret_cast<AllocationCallbacks const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AllocationCallbacks &operator=(AllocationCallbacks const &rhs) VULKAN_HPP_NOEXCEPT = default;
AllocationCallbacks &operator=(VkAllocationCallbacks const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AllocationCallbacks const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AllocationCallbacks &setPUserData(void *pUserData_) VULKAN_HPP_NOEXCEPT
{
pUserData = pUserData_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AllocationCallbacks &setPfnAllocation(PFN_vkAllocationFunction pfnAllocation_) VULKAN_HPP_NOEXCEPT
{
pfnAllocation = pfnAllocation_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AllocationCallbacks &setPfnReallocation(PFN_vkReallocationFunction pfnReallocation_) VULKAN_HPP_NOEXCEPT
{
pfnReallocation = pfnReallocation_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AllocationCallbacks &setPfnFree(PFN_vkFreeFunction pfnFree_) VULKAN_HPP_NOEXCEPT
{
pfnFree = pfnFree_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AllocationCallbacks &setPfnInternalAllocation(PFN_vkInternalAllocationNotification pfnInternalAllocation_) VULKAN_HPP_NOEXCEPT
{
pfnInternalAllocation = pfnInternalAllocation_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AllocationCallbacks &setPfnInternalFree(PFN_vkInternalFreeNotification pfnInternalFree_) VULKAN_HPP_NOEXCEPT
{
pfnInternalFree = pfnInternalFree_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAllocationCallbacks const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAllocationCallbacks *>(this);
}
explicit operator VkAllocationCallbacks &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAllocationCallbacks *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<void *const &,
PFN_vkAllocationFunction const &,
PFN_vkReallocationFunction const &,
PFN_vkFreeFunction const &,
PFN_vkInternalAllocationNotification const &,
PFN_vkInternalFreeNotification const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(pUserData, pfnAllocation, pfnReallocation, pfnFree, pfnInternalAllocation, pfnInternalFree);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AllocationCallbacks const &) const = default;
#else
bool operator==(AllocationCallbacks const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (pUserData == rhs.pUserData) && (pfnAllocation == rhs.pfnAllocation) && (pfnReallocation == rhs.pfnReallocation) &&
(pfnFree == rhs.pfnFree) && (pfnInternalAllocation == rhs.pfnInternalAllocation) && (pfnInternalFree == rhs.pfnInternalFree);
# endif
}
bool operator!=(AllocationCallbacks const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
void *pUserData = {};
PFN_vkAllocationFunction pfnAllocation = {};
PFN_vkReallocationFunction pfnReallocation = {};
PFN_vkFreeFunction pfnFree = {};
PFN_vkInternalAllocationNotification pfnInternalAllocation = {};
PFN_vkInternalFreeNotification pfnInternalFree = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AllocationCallbacks) == sizeof(VkAllocationCallbacks), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AllocationCallbacks>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AllocationCallbacks>::value,
"AllocationCallbacks is not nothrow_move_constructible!");
struct ComponentMapping
{
using NativeType = VkComponentMapping;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ComponentMapping(VULKAN_HPP_NAMESPACE::ComponentSwizzle r_ = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity,
VULKAN_HPP_NAMESPACE::ComponentSwizzle g_ = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity,
VULKAN_HPP_NAMESPACE::ComponentSwizzle b_ = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity,
VULKAN_HPP_NAMESPACE::ComponentSwizzle a_ = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity) VULKAN_HPP_NOEXCEPT
: r(r_),
g(g_),
b(b_),
a(a_)
{
}
VULKAN_HPP_CONSTEXPR ComponentMapping(ComponentMapping const &rhs) VULKAN_HPP_NOEXCEPT = default;
ComponentMapping(VkComponentMapping const &rhs) VULKAN_HPP_NOEXCEPT : ComponentMapping(*reinterpret_cast<ComponentMapping const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ComponentMapping &operator=(ComponentMapping const &rhs) VULKAN_HPP_NOEXCEPT = default;
ComponentMapping &operator=(VkComponentMapping const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ComponentMapping const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ComponentMapping &setR(VULKAN_HPP_NAMESPACE::ComponentSwizzle r_) VULKAN_HPP_NOEXCEPT
{
r = r_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ComponentMapping &setG(VULKAN_HPP_NAMESPACE::ComponentSwizzle g_) VULKAN_HPP_NOEXCEPT
{
g = g_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ComponentMapping &setB(VULKAN_HPP_NAMESPACE::ComponentSwizzle b_) VULKAN_HPP_NOEXCEPT
{
b = b_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ComponentMapping &setA(VULKAN_HPP_NAMESPACE::ComponentSwizzle a_) VULKAN_HPP_NOEXCEPT
{
a = a_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkComponentMapping const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkComponentMapping *>(this);
}
explicit operator VkComponentMapping &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkComponentMapping *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ComponentSwizzle const &,
VULKAN_HPP_NAMESPACE::ComponentSwizzle const &,
VULKAN_HPP_NAMESPACE::ComponentSwizzle const &,
VULKAN_HPP_NAMESPACE::ComponentSwizzle const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(r, g, b, a);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ComponentMapping const &) const = default;
#else
bool operator==(ComponentMapping const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (r == rhs.r) && (g == rhs.g) && (b == rhs.b) && (a == rhs.a);
# endif
}
bool operator!=(ComponentMapping const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ComponentSwizzle r = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity;
VULKAN_HPP_NAMESPACE::ComponentSwizzle g = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity;
VULKAN_HPP_NAMESPACE::ComponentSwizzle b = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity;
VULKAN_HPP_NAMESPACE::ComponentSwizzle a = VULKAN_HPP_NAMESPACE::ComponentSwizzle::eIdentity;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ComponentMapping) == sizeof(VkComponentMapping), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ComponentMapping>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ComponentMapping>::value,
"ComponentMapping is not nothrow_move_constructible!");
#if defined(VK_USE_PLATFORM_ANDROID_KHR)
struct AndroidHardwareBufferFormatProperties2ANDROID
{
using NativeType = VkAndroidHardwareBufferFormatProperties2ANDROID;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAndroidHardwareBufferFormatProperties2ANDROID;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AndroidHardwareBufferFormatProperties2ANDROID(
VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
uint64_t externalFormat_ = {},
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 formatFeatures_ = {},
VULKAN_HPP_NAMESPACE::ComponentMapping samplerYcbcrConversionComponents_ = {},
VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion suggestedYcbcrModel_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity,
VULKAN_HPP_NAMESPACE::SamplerYcbcrRange suggestedYcbcrRange_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull,
VULKAN_HPP_NAMESPACE::ChromaLocation suggestedXChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven,
VULKAN_HPP_NAMESPACE::ChromaLocation suggestedYChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven,
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
format(format_),
externalFormat(externalFormat_),
formatFeatures(formatFeatures_),
samplerYcbcrConversionComponents(samplerYcbcrConversionComponents_),
suggestedYcbcrModel(suggestedYcbcrModel_),
suggestedYcbcrRange(suggestedYcbcrRange_),
suggestedXChromaOffset(suggestedXChromaOffset_),
suggestedYChromaOffset(suggestedYChromaOffset_)
{
}
VULKAN_HPP_CONSTEXPR
AndroidHardwareBufferFormatProperties2ANDROID(AndroidHardwareBufferFormatProperties2ANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
AndroidHardwareBufferFormatProperties2ANDROID(VkAndroidHardwareBufferFormatProperties2ANDROID const &rhs) VULKAN_HPP_NOEXCEPT
: AndroidHardwareBufferFormatProperties2ANDROID(*reinterpret_cast<AndroidHardwareBufferFormatProperties2ANDROID const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AndroidHardwareBufferFormatProperties2ANDROID &operator=(AndroidHardwareBufferFormatProperties2ANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
AndroidHardwareBufferFormatProperties2ANDROID &operator=(VkAndroidHardwareBufferFormatProperties2ANDROID const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferFormatProperties2ANDROID const *>(&rhs);
return *this;
}
explicit operator VkAndroidHardwareBufferFormatProperties2ANDROID const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAndroidHardwareBufferFormatProperties2ANDROID *>(this);
}
explicit operator VkAndroidHardwareBufferFormatProperties2ANDROID &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAndroidHardwareBufferFormatProperties2ANDROID *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Format const &,
uint64_t const &,
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 const &,
VULKAN_HPP_NAMESPACE::ComponentMapping const &,
VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion const &,
VULKAN_HPP_NAMESPACE::SamplerYcbcrRange const &,
VULKAN_HPP_NAMESPACE::ChromaLocation const &,
VULKAN_HPP_NAMESPACE::ChromaLocation const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
format,
externalFormat,
formatFeatures,
samplerYcbcrConversionComponents,
suggestedYcbcrModel,
suggestedYcbcrRange,
suggestedXChromaOffset,
suggestedYChromaOffset);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AndroidHardwareBufferFormatProperties2ANDROID const &) const = default;
# else
bool operator==(AndroidHardwareBufferFormatProperties2ANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (format == rhs.format) && (externalFormat == rhs.externalFormat) &&
(formatFeatures == rhs.formatFeatures) && (samplerYcbcrConversionComponents == rhs.samplerYcbcrConversionComponents) &&
(suggestedYcbcrModel == rhs.suggestedYcbcrModel) && (suggestedYcbcrRange == rhs.suggestedYcbcrRange) &&
(suggestedXChromaOffset == rhs.suggestedXChromaOffset) && (suggestedYChromaOffset == rhs.suggestedYChromaOffset);
# endif
}
bool operator!=(AndroidHardwareBufferFormatProperties2ANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidHardwareBufferFormatProperties2ANDROID;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
uint64_t externalFormat = {};
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 formatFeatures = {};
VULKAN_HPP_NAMESPACE::ComponentMapping samplerYcbcrConversionComponents = {};
VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion suggestedYcbcrModel = VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity;
VULKAN_HPP_NAMESPACE::SamplerYcbcrRange suggestedYcbcrRange = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull;
VULKAN_HPP_NAMESPACE::ChromaLocation suggestedXChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
VULKAN_HPP_NAMESPACE::ChromaLocation suggestedYChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AndroidHardwareBufferFormatProperties2ANDROID) ==
sizeof(VkAndroidHardwareBufferFormatProperties2ANDROID),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferFormatProperties2ANDROID>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferFormatProperties2ANDROID>::value,
"AndroidHardwareBufferFormatProperties2ANDROID is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAndroidHardwareBufferFormatProperties2ANDROID>
{
using Type = AndroidHardwareBufferFormatProperties2ANDROID;
};
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
#if defined(VK_USE_PLATFORM_ANDROID_KHR)
struct AndroidHardwareBufferFormatPropertiesANDROID
{
using NativeType = VkAndroidHardwareBufferFormatPropertiesANDROID;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAndroidHardwareBufferFormatPropertiesANDROID;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AndroidHardwareBufferFormatPropertiesANDROID(
VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
uint64_t externalFormat_ = {},
VULKAN_HPP_NAMESPACE::FormatFeatureFlags formatFeatures_ = {},
VULKAN_HPP_NAMESPACE::ComponentMapping samplerYcbcrConversionComponents_ = {},
VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion suggestedYcbcrModel_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity,
VULKAN_HPP_NAMESPACE::SamplerYcbcrRange suggestedYcbcrRange_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull,
VULKAN_HPP_NAMESPACE::ChromaLocation suggestedXChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven,
VULKAN_HPP_NAMESPACE::ChromaLocation suggestedYChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven,
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
format(format_),
externalFormat(externalFormat_),
formatFeatures(formatFeatures_),
samplerYcbcrConversionComponents(samplerYcbcrConversionComponents_),
suggestedYcbcrModel(suggestedYcbcrModel_),
suggestedYcbcrRange(suggestedYcbcrRange_),
suggestedXChromaOffset(suggestedXChromaOffset_),
suggestedYChromaOffset(suggestedYChromaOffset_)
{
}
VULKAN_HPP_CONSTEXPR AndroidHardwareBufferFormatPropertiesANDROID(AndroidHardwareBufferFormatPropertiesANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
AndroidHardwareBufferFormatPropertiesANDROID(VkAndroidHardwareBufferFormatPropertiesANDROID const &rhs) VULKAN_HPP_NOEXCEPT
: AndroidHardwareBufferFormatPropertiesANDROID(*reinterpret_cast<AndroidHardwareBufferFormatPropertiesANDROID const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AndroidHardwareBufferFormatPropertiesANDROID &operator=(AndroidHardwareBufferFormatPropertiesANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
AndroidHardwareBufferFormatPropertiesANDROID &operator=(VkAndroidHardwareBufferFormatPropertiesANDROID const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferFormatPropertiesANDROID const *>(&rhs);
return *this;
}
explicit operator VkAndroidHardwareBufferFormatPropertiesANDROID const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAndroidHardwareBufferFormatPropertiesANDROID *>(this);
}
explicit operator VkAndroidHardwareBufferFormatPropertiesANDROID &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAndroidHardwareBufferFormatPropertiesANDROID *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Format const &,
uint64_t const &,
VULKAN_HPP_NAMESPACE::FormatFeatureFlags const &,
VULKAN_HPP_NAMESPACE::ComponentMapping const &,
VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion const &,
VULKAN_HPP_NAMESPACE::SamplerYcbcrRange const &,
VULKAN_HPP_NAMESPACE::ChromaLocation const &,
VULKAN_HPP_NAMESPACE::ChromaLocation const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
format,
externalFormat,
formatFeatures,
samplerYcbcrConversionComponents,
suggestedYcbcrModel,
suggestedYcbcrRange,
suggestedXChromaOffset,
suggestedYChromaOffset);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AndroidHardwareBufferFormatPropertiesANDROID const &) const = default;
# else
bool operator==(AndroidHardwareBufferFormatPropertiesANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (format == rhs.format) && (externalFormat == rhs.externalFormat) &&
(formatFeatures == rhs.formatFeatures) && (samplerYcbcrConversionComponents == rhs.samplerYcbcrConversionComponents) &&
(suggestedYcbcrModel == rhs.suggestedYcbcrModel) && (suggestedYcbcrRange == rhs.suggestedYcbcrRange) &&
(suggestedXChromaOffset == rhs.suggestedXChromaOffset) && (suggestedYChromaOffset == rhs.suggestedYChromaOffset);
# endif
}
bool operator!=(AndroidHardwareBufferFormatPropertiesANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidHardwareBufferFormatPropertiesANDROID;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
uint64_t externalFormat = {};
VULKAN_HPP_NAMESPACE::FormatFeatureFlags formatFeatures = {};
VULKAN_HPP_NAMESPACE::ComponentMapping samplerYcbcrConversionComponents = {};
VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion suggestedYcbcrModel = VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity;
VULKAN_HPP_NAMESPACE::SamplerYcbcrRange suggestedYcbcrRange = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull;
VULKAN_HPP_NAMESPACE::ChromaLocation suggestedXChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
VULKAN_HPP_NAMESPACE::ChromaLocation suggestedYChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AndroidHardwareBufferFormatPropertiesANDROID) ==
sizeof(VkAndroidHardwareBufferFormatPropertiesANDROID),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferFormatPropertiesANDROID>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferFormatPropertiesANDROID>::value,
"AndroidHardwareBufferFormatPropertiesANDROID is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAndroidHardwareBufferFormatPropertiesANDROID>
{
using Type = AndroidHardwareBufferFormatPropertiesANDROID;
};
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
#if defined(VK_USE_PLATFORM_ANDROID_KHR)
struct AndroidHardwareBufferPropertiesANDROID
{
using NativeType = VkAndroidHardwareBufferPropertiesANDROID;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAndroidHardwareBufferPropertiesANDROID;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AndroidHardwareBufferPropertiesANDROID(VULKAN_HPP_NAMESPACE::DeviceSize allocationSize_ = {},
uint32_t memoryTypeBits_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
allocationSize(allocationSize_),
memoryTypeBits(memoryTypeBits_)
{
}
VULKAN_HPP_CONSTEXPR AndroidHardwareBufferPropertiesANDROID(AndroidHardwareBufferPropertiesANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
AndroidHardwareBufferPropertiesANDROID(VkAndroidHardwareBufferPropertiesANDROID const &rhs) VULKAN_HPP_NOEXCEPT
: AndroidHardwareBufferPropertiesANDROID(*reinterpret_cast<AndroidHardwareBufferPropertiesANDROID const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AndroidHardwareBufferPropertiesANDROID &operator=(AndroidHardwareBufferPropertiesANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
AndroidHardwareBufferPropertiesANDROID &operator=(VkAndroidHardwareBufferPropertiesANDROID const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID const *>(&rhs);
return *this;
}
explicit operator VkAndroidHardwareBufferPropertiesANDROID const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAndroidHardwareBufferPropertiesANDROID *>(this);
}
explicit operator VkAndroidHardwareBufferPropertiesANDROID &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAndroidHardwareBufferPropertiesANDROID *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::DeviceSize const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, allocationSize, memoryTypeBits);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AndroidHardwareBufferPropertiesANDROID const &) const = default;
# else
bool operator==(AndroidHardwareBufferPropertiesANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (allocationSize == rhs.allocationSize) && (memoryTypeBits == rhs.memoryTypeBits);
# endif
}
bool operator!=(AndroidHardwareBufferPropertiesANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidHardwareBufferPropertiesANDROID;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceSize allocationSize = {};
uint32_t memoryTypeBits = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID) == sizeof(VkAndroidHardwareBufferPropertiesANDROID),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferPropertiesANDROID>::value,
"AndroidHardwareBufferPropertiesANDROID is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAndroidHardwareBufferPropertiesANDROID>
{
using Type = AndroidHardwareBufferPropertiesANDROID;
};
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
#if defined(VK_USE_PLATFORM_ANDROID_KHR)
struct AndroidHardwareBufferUsageANDROID
{
using NativeType = VkAndroidHardwareBufferUsageANDROID;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAndroidHardwareBufferUsageANDROID;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AndroidHardwareBufferUsageANDROID(uint64_t androidHardwareBufferUsage_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
androidHardwareBufferUsage(androidHardwareBufferUsage_)
{
}
VULKAN_HPP_CONSTEXPR AndroidHardwareBufferUsageANDROID(AndroidHardwareBufferUsageANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
AndroidHardwareBufferUsageANDROID(VkAndroidHardwareBufferUsageANDROID const &rhs) VULKAN_HPP_NOEXCEPT
: AndroidHardwareBufferUsageANDROID(*reinterpret_cast<AndroidHardwareBufferUsageANDROID const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AndroidHardwareBufferUsageANDROID &operator=(AndroidHardwareBufferUsageANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
AndroidHardwareBufferUsageANDROID &operator=(VkAndroidHardwareBufferUsageANDROID const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferUsageANDROID const *>(&rhs);
return *this;
}
explicit operator VkAndroidHardwareBufferUsageANDROID const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAndroidHardwareBufferUsageANDROID *>(this);
}
explicit operator VkAndroidHardwareBufferUsageANDROID &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAndroidHardwareBufferUsageANDROID *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, androidHardwareBufferUsage);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AndroidHardwareBufferUsageANDROID const &) const = default;
# else
bool operator==(AndroidHardwareBufferUsageANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (androidHardwareBufferUsage == rhs.androidHardwareBufferUsage);
# endif
}
bool operator!=(AndroidHardwareBufferUsageANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidHardwareBufferUsageANDROID;
void *pNext = {};
uint64_t androidHardwareBufferUsage = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AndroidHardwareBufferUsageANDROID) == sizeof(VkAndroidHardwareBufferUsageANDROID),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferUsageANDROID>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AndroidHardwareBufferUsageANDROID>::value,
"AndroidHardwareBufferUsageANDROID is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAndroidHardwareBufferUsageANDROID>
{
using Type = AndroidHardwareBufferUsageANDROID;
};
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
#if defined(VK_USE_PLATFORM_ANDROID_KHR)
struct AndroidSurfaceCreateInfoKHR
{
using NativeType = VkAndroidSurfaceCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAndroidSurfaceCreateInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AndroidSurfaceCreateInfoKHR(VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateFlagsKHR flags_ = {},
struct ANativeWindow *window_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
window(window_)
{
}
VULKAN_HPP_CONSTEXPR AndroidSurfaceCreateInfoKHR(AndroidSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AndroidSurfaceCreateInfoKHR(VkAndroidSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: AndroidSurfaceCreateInfoKHR(*reinterpret_cast<AndroidSurfaceCreateInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AndroidSurfaceCreateInfoKHR &operator=(AndroidSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
AndroidSurfaceCreateInfoKHR &operator=(VkAndroidSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AndroidSurfaceCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AndroidSurfaceCreateInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AndroidSurfaceCreateInfoKHR &setWindow(struct ANativeWindow *window_) VULKAN_HPP_NOEXCEPT
{
window = window_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAndroidSurfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAndroidSurfaceCreateInfoKHR *>(this);
}
explicit operator VkAndroidSurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAndroidSurfaceCreateInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateFlagsKHR const &,
struct ANativeWindow *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, window);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AndroidSurfaceCreateInfoKHR const &) const = default;
# else
bool operator==(AndroidSurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (window == rhs.window);
# endif
}
bool operator!=(AndroidSurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAndroidSurfaceCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateFlagsKHR flags = {};
struct ANativeWindow *window = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateInfoKHR) == sizeof(VkAndroidSurfaceCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AndroidSurfaceCreateInfoKHR>::value,
"AndroidSurfaceCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAndroidSurfaceCreateInfoKHR>
{
using Type = AndroidSurfaceCreateInfoKHR;
};
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
struct ApplicationInfo
{
using NativeType = VkApplicationInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eApplicationInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ApplicationInfo(const char *pApplicationName_ = {},
uint32_t applicationVersion_ = {},
const char *pEngineName_ = {},
uint32_t engineVersion_ = {},
uint32_t apiVersion_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pApplicationName(pApplicationName_),
applicationVersion(applicationVersion_),
pEngineName(pEngineName_),
engineVersion(engineVersion_),
apiVersion(apiVersion_)
{
}
VULKAN_HPP_CONSTEXPR ApplicationInfo(ApplicationInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ApplicationInfo(VkApplicationInfo const &rhs) VULKAN_HPP_NOEXCEPT : ApplicationInfo(*reinterpret_cast<ApplicationInfo const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ApplicationInfo &operator=(ApplicationInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ApplicationInfo &operator=(VkApplicationInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ApplicationInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ApplicationInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ApplicationInfo &setPApplicationName(const char *pApplicationName_) VULKAN_HPP_NOEXCEPT
{
pApplicationName = pApplicationName_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ApplicationInfo &setApplicationVersion(uint32_t applicationVersion_) VULKAN_HPP_NOEXCEPT
{
applicationVersion = applicationVersion_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ApplicationInfo &setPEngineName(const char *pEngineName_) VULKAN_HPP_NOEXCEPT
{
pEngineName = pEngineName_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ApplicationInfo &setEngineVersion(uint32_t engineVersion_) VULKAN_HPP_NOEXCEPT
{
engineVersion = engineVersion_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ApplicationInfo &setApiVersion(uint32_t apiVersion_) VULKAN_HPP_NOEXCEPT
{
apiVersion = apiVersion_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkApplicationInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkApplicationInfo *>(this);
}
explicit operator VkApplicationInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkApplicationInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
const char *const &,
uint32_t const &,
const char *const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pApplicationName, applicationVersion, pEngineName, engineVersion, apiVersion);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(ApplicationInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(pApplicationName != rhs.pApplicationName)
if(auto cmp = strcmp(pApplicationName, rhs.pApplicationName); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
if(auto cmp = applicationVersion <=> rhs.applicationVersion; cmp != 0)
return cmp;
if(pEngineName != rhs.pEngineName)
if(auto cmp = strcmp(pEngineName, rhs.pEngineName); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
if(auto cmp = engineVersion <=> rhs.engineVersion; cmp != 0)
return cmp;
if(auto cmp = apiVersion <=> rhs.apiVersion; cmp != 0)
return cmp;
return std::strong_ordering::equivalent;
}
#endif
bool operator==(ApplicationInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) &&
((pApplicationName == rhs.pApplicationName) || (strcmp(pApplicationName, rhs.pApplicationName) == 0)) &&
(applicationVersion == rhs.applicationVersion) && ((pEngineName == rhs.pEngineName) || (strcmp(pEngineName, rhs.pEngineName) == 0)) &&
(engineVersion == rhs.engineVersion) && (apiVersion == rhs.apiVersion);
}
bool operator!=(ApplicationInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eApplicationInfo;
const void *pNext = {};
const char *pApplicationName = {};
uint32_t applicationVersion = {};
const char *pEngineName = {};
uint32_t engineVersion = {};
uint32_t apiVersion = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ApplicationInfo) == sizeof(VkApplicationInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ApplicationInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ApplicationInfo>::value,
"ApplicationInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eApplicationInfo>
{
using Type = ApplicationInfo;
};
struct AttachmentDescription
{
using NativeType = VkAttachmentDescription;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
AttachmentDescription(VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags_ = {},
VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad,
VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore,
VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad,
VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore,
VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::ImageLayout finalLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined) VULKAN_HPP_NOEXCEPT
: flags(flags_),
format(format_),
samples(samples_),
loadOp(loadOp_),
storeOp(storeOp_),
stencilLoadOp(stencilLoadOp_),
stencilStoreOp(stencilStoreOp_),
initialLayout(initialLayout_),
finalLayout(finalLayout_)
{
}
VULKAN_HPP_CONSTEXPR AttachmentDescription(AttachmentDescription const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentDescription(VkAttachmentDescription const &rhs) VULKAN_HPP_NOEXCEPT
: AttachmentDescription(*reinterpret_cast<AttachmentDescription const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AttachmentDescription &operator=(AttachmentDescription const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentDescription &operator=(VkAttachmentDescription const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentDescription const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription &setFlags(VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription &setFormat(VULKAN_HPP_NAMESPACE::Format format_) VULKAN_HPP_NOEXCEPT
{
format = format_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription &setSamples(VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_) VULKAN_HPP_NOEXCEPT
{
samples = samples_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription &setLoadOp(VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_) VULKAN_HPP_NOEXCEPT
{
loadOp = loadOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription &setStoreOp(VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_) VULKAN_HPP_NOEXCEPT
{
storeOp = storeOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription &setStencilLoadOp(VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp_) VULKAN_HPP_NOEXCEPT
{
stencilLoadOp = stencilLoadOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription &setStencilStoreOp(VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp_) VULKAN_HPP_NOEXCEPT
{
stencilStoreOp = stencilStoreOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription &setInitialLayout(VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_) VULKAN_HPP_NOEXCEPT
{
initialLayout = initialLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription &setFinalLayout(VULKAN_HPP_NAMESPACE::ImageLayout finalLayout_) VULKAN_HPP_NOEXCEPT
{
finalLayout = finalLayout_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAttachmentDescription const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAttachmentDescription *>(this);
}
explicit operator VkAttachmentDescription &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAttachmentDescription *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits const &,
VULKAN_HPP_NAMESPACE::AttachmentLoadOp const &,
VULKAN_HPP_NAMESPACE::AttachmentStoreOp const &,
VULKAN_HPP_NAMESPACE::AttachmentLoadOp const &,
VULKAN_HPP_NAMESPACE::AttachmentStoreOp const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(flags, format, samples, loadOp, storeOp, stencilLoadOp, stencilStoreOp, initialLayout, finalLayout);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AttachmentDescription const &) const = default;
#else
bool operator==(AttachmentDescription const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (flags == rhs.flags) && (format == rhs.format) && (samples == rhs.samples) && (loadOp == rhs.loadOp) && (storeOp == rhs.storeOp) &&
(stencilLoadOp == rhs.stencilLoadOp) && (stencilStoreOp == rhs.stencilStoreOp) && (initialLayout == rhs.initialLayout) &&
(finalLayout == rhs.finalLayout);
# endif
}
bool operator!=(AttachmentDescription const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags = {};
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
VULKAN_HPP_NAMESPACE::ImageLayout initialLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::ImageLayout finalLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AttachmentDescription) == sizeof(VkAttachmentDescription),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AttachmentDescription>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AttachmentDescription>::value,
"AttachmentDescription is not nothrow_move_constructible!");
struct AttachmentDescription2
{
using NativeType = VkAttachmentDescription2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAttachmentDescription2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AttachmentDescription2(VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags_ = {},
VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad,
VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore,
VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad,
VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore,
VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::ImageLayout finalLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
format(format_),
samples(samples_),
loadOp(loadOp_),
storeOp(storeOp_),
stencilLoadOp(stencilLoadOp_),
stencilStoreOp(stencilStoreOp_),
initialLayout(initialLayout_),
finalLayout(finalLayout_)
{
}
VULKAN_HPP_CONSTEXPR AttachmentDescription2(AttachmentDescription2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentDescription2(VkAttachmentDescription2 const &rhs) VULKAN_HPP_NOEXCEPT
: AttachmentDescription2(*reinterpret_cast<AttachmentDescription2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AttachmentDescription2 &operator=(AttachmentDescription2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentDescription2 &operator=(VkAttachmentDescription2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentDescription2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription2 &setFlags(VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription2 &setFormat(VULKAN_HPP_NAMESPACE::Format format_) VULKAN_HPP_NOEXCEPT
{
format = format_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription2 &setSamples(VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_) VULKAN_HPP_NOEXCEPT
{
samples = samples_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription2 &setLoadOp(VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_) VULKAN_HPP_NOEXCEPT
{
loadOp = loadOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription2 &setStoreOp(VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_) VULKAN_HPP_NOEXCEPT
{
storeOp = storeOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription2 &setStencilLoadOp(VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp_) VULKAN_HPP_NOEXCEPT
{
stencilLoadOp = stencilLoadOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription2 &setStencilStoreOp(VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp_) VULKAN_HPP_NOEXCEPT
{
stencilStoreOp = stencilStoreOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription2 &setInitialLayout(VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_) VULKAN_HPP_NOEXCEPT
{
initialLayout = initialLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescription2 &setFinalLayout(VULKAN_HPP_NAMESPACE::ImageLayout finalLayout_) VULKAN_HPP_NOEXCEPT
{
finalLayout = finalLayout_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAttachmentDescription2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAttachmentDescription2 *>(this);
}
explicit operator VkAttachmentDescription2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAttachmentDescription2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits const &,
VULKAN_HPP_NAMESPACE::AttachmentLoadOp const &,
VULKAN_HPP_NAMESPACE::AttachmentStoreOp const &,
VULKAN_HPP_NAMESPACE::AttachmentLoadOp const &,
VULKAN_HPP_NAMESPACE::AttachmentStoreOp const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, format, samples, loadOp, storeOp, stencilLoadOp, stencilStoreOp, initialLayout, finalLayout);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AttachmentDescription2 const &) const = default;
#else
bool operator==(AttachmentDescription2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (format == rhs.format) && (samples == rhs.samples) &&
(loadOp == rhs.loadOp) && (storeOp == rhs.storeOp) && (stencilLoadOp == rhs.stencilLoadOp) && (stencilStoreOp == rhs.stencilStoreOp) &&
(initialLayout == rhs.initialLayout) && (finalLayout == rhs.finalLayout);
# endif
}
bool operator!=(AttachmentDescription2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentDescription2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AttachmentDescriptionFlags flags = {};
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
VULKAN_HPP_NAMESPACE::AttachmentLoadOp stencilLoadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
VULKAN_HPP_NAMESPACE::AttachmentStoreOp stencilStoreOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
VULKAN_HPP_NAMESPACE::ImageLayout initialLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::ImageLayout finalLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AttachmentDescription2) == sizeof(VkAttachmentDescription2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AttachmentDescription2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AttachmentDescription2>::value,
"AttachmentDescription2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAttachmentDescription2>
{
using Type = AttachmentDescription2;
};
using AttachmentDescription2KHR = AttachmentDescription2;
struct AttachmentDescriptionStencilLayout
{
using NativeType = VkAttachmentDescriptionStencilLayout;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAttachmentDescriptionStencilLayout;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
AttachmentDescriptionStencilLayout(VULKAN_HPP_NAMESPACE::ImageLayout stencilInitialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::ImageLayout stencilFinalLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
stencilInitialLayout(stencilInitialLayout_),
stencilFinalLayout(stencilFinalLayout_)
{
}
VULKAN_HPP_CONSTEXPR AttachmentDescriptionStencilLayout(AttachmentDescriptionStencilLayout const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentDescriptionStencilLayout(VkAttachmentDescriptionStencilLayout const &rhs) VULKAN_HPP_NOEXCEPT
: AttachmentDescriptionStencilLayout(*reinterpret_cast<AttachmentDescriptionStencilLayout const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AttachmentDescriptionStencilLayout &operator=(AttachmentDescriptionStencilLayout const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentDescriptionStencilLayout &operator=(VkAttachmentDescriptionStencilLayout const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentDescriptionStencilLayout const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AttachmentDescriptionStencilLayout &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescriptionStencilLayout &
setStencilInitialLayout(VULKAN_HPP_NAMESPACE::ImageLayout stencilInitialLayout_) VULKAN_HPP_NOEXCEPT
{
stencilInitialLayout = stencilInitialLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentDescriptionStencilLayout &
setStencilFinalLayout(VULKAN_HPP_NAMESPACE::ImageLayout stencilFinalLayout_) VULKAN_HPP_NOEXCEPT
{
stencilFinalLayout = stencilFinalLayout_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAttachmentDescriptionStencilLayout const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAttachmentDescriptionStencilLayout *>(this);
}
explicit operator VkAttachmentDescriptionStencilLayout &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAttachmentDescriptionStencilLayout *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::
tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::ImageLayout const &, VULKAN_HPP_NAMESPACE::ImageLayout const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, stencilInitialLayout, stencilFinalLayout);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AttachmentDescriptionStencilLayout const &) const = default;
#else
bool operator==(AttachmentDescriptionStencilLayout const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (stencilInitialLayout == rhs.stencilInitialLayout) &&
(stencilFinalLayout == rhs.stencilFinalLayout);
# endif
}
bool operator!=(AttachmentDescriptionStencilLayout const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentDescriptionStencilLayout;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageLayout stencilInitialLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::ImageLayout stencilFinalLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AttachmentDescriptionStencilLayout) == sizeof(VkAttachmentDescriptionStencilLayout),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AttachmentDescriptionStencilLayout>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AttachmentDescriptionStencilLayout>::value,
"AttachmentDescriptionStencilLayout is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAttachmentDescriptionStencilLayout>
{
using Type = AttachmentDescriptionStencilLayout;
};
using AttachmentDescriptionStencilLayoutKHR = AttachmentDescriptionStencilLayout;
struct AttachmentReference
{
using NativeType = VkAttachmentReference;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AttachmentReference(uint32_t attachment_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout layout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined) VULKAN_HPP_NOEXCEPT
: attachment(attachment_),
layout(layout_)
{
}
VULKAN_HPP_CONSTEXPR AttachmentReference(AttachmentReference const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentReference(VkAttachmentReference const &rhs) VULKAN_HPP_NOEXCEPT : AttachmentReference(*reinterpret_cast<AttachmentReference const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AttachmentReference &operator=(AttachmentReference const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentReference &operator=(VkAttachmentReference const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentReference const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AttachmentReference &setAttachment(uint32_t attachment_) VULKAN_HPP_NOEXCEPT
{
attachment = attachment_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentReference &setLayout(VULKAN_HPP_NAMESPACE::ImageLayout layout_) VULKAN_HPP_NOEXCEPT
{
layout = layout_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAttachmentReference const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAttachmentReference *>(this);
}
explicit operator VkAttachmentReference &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAttachmentReference *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, VULKAN_HPP_NAMESPACE::ImageLayout const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(attachment, layout);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AttachmentReference const &) const = default;
#else
bool operator==(AttachmentReference const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (attachment == rhs.attachment) && (layout == rhs.layout);
# endif
}
bool operator!=(AttachmentReference const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t attachment = {};
VULKAN_HPP_NAMESPACE::ImageLayout layout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AttachmentReference) == sizeof(VkAttachmentReference), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AttachmentReference>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AttachmentReference>::value,
"AttachmentReference is not nothrow_move_constructible!");
struct AttachmentReference2
{
using NativeType = VkAttachmentReference2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAttachmentReference2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AttachmentReference2(uint32_t attachment_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout layout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
attachment(attachment_),
layout(layout_),
aspectMask(aspectMask_)
{
}
VULKAN_HPP_CONSTEXPR AttachmentReference2(AttachmentReference2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentReference2(VkAttachmentReference2 const &rhs) VULKAN_HPP_NOEXCEPT
: AttachmentReference2(*reinterpret_cast<AttachmentReference2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AttachmentReference2 &operator=(AttachmentReference2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentReference2 &operator=(VkAttachmentReference2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentReference2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AttachmentReference2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentReference2 &setAttachment(uint32_t attachment_) VULKAN_HPP_NOEXCEPT
{
attachment = attachment_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentReference2 &setLayout(VULKAN_HPP_NAMESPACE::ImageLayout layout_) VULKAN_HPP_NOEXCEPT
{
layout = layout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentReference2 &setAspectMask(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_) VULKAN_HPP_NOEXCEPT
{
aspectMask = aspectMask_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAttachmentReference2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAttachmentReference2 *>(this);
}
explicit operator VkAttachmentReference2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAttachmentReference2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
VULKAN_HPP_NAMESPACE::ImageAspectFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, attachment, layout, aspectMask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AttachmentReference2 const &) const = default;
#else
bool operator==(AttachmentReference2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (attachment == rhs.attachment) && (layout == rhs.layout) &&
(aspectMask == rhs.aspectMask);
# endif
}
bool operator!=(AttachmentReference2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentReference2;
const void *pNext = {};
uint32_t attachment = {};
VULKAN_HPP_NAMESPACE::ImageLayout layout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AttachmentReference2) == sizeof(VkAttachmentReference2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AttachmentReference2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AttachmentReference2>::value,
"AttachmentReference2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAttachmentReference2>
{
using Type = AttachmentReference2;
};
using AttachmentReference2KHR = AttachmentReference2;
struct AttachmentReferenceStencilLayout
{
using NativeType = VkAttachmentReferenceStencilLayout;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAttachmentReferenceStencilLayout;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AttachmentReferenceStencilLayout(VULKAN_HPP_NAMESPACE::ImageLayout stencilLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
stencilLayout(stencilLayout_)
{
}
VULKAN_HPP_CONSTEXPR AttachmentReferenceStencilLayout(AttachmentReferenceStencilLayout const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentReferenceStencilLayout(VkAttachmentReferenceStencilLayout const &rhs) VULKAN_HPP_NOEXCEPT
: AttachmentReferenceStencilLayout(*reinterpret_cast<AttachmentReferenceStencilLayout const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AttachmentReferenceStencilLayout &operator=(AttachmentReferenceStencilLayout const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentReferenceStencilLayout &operator=(VkAttachmentReferenceStencilLayout const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentReferenceStencilLayout const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AttachmentReferenceStencilLayout &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentReferenceStencilLayout &setStencilLayout(VULKAN_HPP_NAMESPACE::ImageLayout stencilLayout_) VULKAN_HPP_NOEXCEPT
{
stencilLayout = stencilLayout_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAttachmentReferenceStencilLayout const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAttachmentReferenceStencilLayout *>(this);
}
explicit operator VkAttachmentReferenceStencilLayout &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAttachmentReferenceStencilLayout *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::ImageLayout const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, stencilLayout);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AttachmentReferenceStencilLayout const &) const = default;
#else
bool operator==(AttachmentReferenceStencilLayout const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (stencilLayout == rhs.stencilLayout);
# endif
}
bool operator!=(AttachmentReferenceStencilLayout const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentReferenceStencilLayout;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageLayout stencilLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AttachmentReferenceStencilLayout) == sizeof(VkAttachmentReferenceStencilLayout),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AttachmentReferenceStencilLayout>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AttachmentReferenceStencilLayout>::value,
"AttachmentReferenceStencilLayout is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAttachmentReferenceStencilLayout>
{
using Type = AttachmentReferenceStencilLayout;
};
using AttachmentReferenceStencilLayoutKHR = AttachmentReferenceStencilLayout;
struct AttachmentSampleCountInfoAMD
{
using NativeType = VkAttachmentSampleCountInfoAMD;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eAttachmentSampleCountInfoAMD;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
AttachmentSampleCountInfoAMD(uint32_t colorAttachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::SampleCountFlagBits *pColorAttachmentSamples_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlagBits depthStencilAttachmentSamples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
colorAttachmentCount(colorAttachmentCount_),
pColorAttachmentSamples(pColorAttachmentSamples_),
depthStencilAttachmentSamples(depthStencilAttachmentSamples_)
{
}
VULKAN_HPP_CONSTEXPR AttachmentSampleCountInfoAMD(AttachmentSampleCountInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentSampleCountInfoAMD(VkAttachmentSampleCountInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT
: AttachmentSampleCountInfoAMD(*reinterpret_cast<AttachmentSampleCountInfoAMD const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
AttachmentSampleCountInfoAMD(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SampleCountFlagBits> const &colorAttachmentSamples_,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits depthStencilAttachmentSamples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
const void *pNext_ = nullptr)
: pNext(pNext_)
, colorAttachmentCount(static_cast<uint32_t>(colorAttachmentSamples_.size()))
, pColorAttachmentSamples(colorAttachmentSamples_.data())
, depthStencilAttachmentSamples(depthStencilAttachmentSamples_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AttachmentSampleCountInfoAMD &operator=(AttachmentSampleCountInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentSampleCountInfoAMD &operator=(VkAttachmentSampleCountInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentSampleCountInfoAMD const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AttachmentSampleCountInfoAMD &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentSampleCountInfoAMD &setColorAttachmentCount(uint32_t colorAttachmentCount_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = colorAttachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentSampleCountInfoAMD &
setPColorAttachmentSamples(const VULKAN_HPP_NAMESPACE::SampleCountFlagBits *pColorAttachmentSamples_) VULKAN_HPP_NOEXCEPT
{
pColorAttachmentSamples = pColorAttachmentSamples_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
AttachmentSampleCountInfoAMD &setColorAttachmentSamples(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SampleCountFlagBits> const &colorAttachmentSamples_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = static_cast<uint32_t>(colorAttachmentSamples_.size());
pColorAttachmentSamples = colorAttachmentSamples_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 AttachmentSampleCountInfoAMD &
setDepthStencilAttachmentSamples(VULKAN_HPP_NAMESPACE::SampleCountFlagBits depthStencilAttachmentSamples_) VULKAN_HPP_NOEXCEPT
{
depthStencilAttachmentSamples = depthStencilAttachmentSamples_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAttachmentSampleCountInfoAMD const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAttachmentSampleCountInfoAMD *>(this);
}
explicit operator VkAttachmentSampleCountInfoAMD &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAttachmentSampleCountInfoAMD *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SampleCountFlagBits *const &,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, colorAttachmentCount, pColorAttachmentSamples, depthStencilAttachmentSamples);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AttachmentSampleCountInfoAMD const &) const = default;
#else
bool operator==(AttachmentSampleCountInfoAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (colorAttachmentCount == rhs.colorAttachmentCount) &&
(pColorAttachmentSamples == rhs.pColorAttachmentSamples) && (depthStencilAttachmentSamples == rhs.depthStencilAttachmentSamples);
# endif
}
bool operator!=(AttachmentSampleCountInfoAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eAttachmentSampleCountInfoAMD;
const void *pNext = {};
uint32_t colorAttachmentCount = {};
const VULKAN_HPP_NAMESPACE::SampleCountFlagBits *pColorAttachmentSamples = {};
VULKAN_HPP_NAMESPACE::SampleCountFlagBits depthStencilAttachmentSamples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AttachmentSampleCountInfoAMD) == sizeof(VkAttachmentSampleCountInfoAMD),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AttachmentSampleCountInfoAMD>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AttachmentSampleCountInfoAMD>::value,
"AttachmentSampleCountInfoAMD is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eAttachmentSampleCountInfoAMD>
{
using Type = AttachmentSampleCountInfoAMD;
};
using AttachmentSampleCountInfoNV = AttachmentSampleCountInfoAMD;
struct Extent2D
{
using NativeType = VkExtent2D;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR Extent2D(uint32_t width_ = {}, uint32_t height_ = {}) VULKAN_HPP_NOEXCEPT
: width(width_),
height(height_)
{
}
VULKAN_HPP_CONSTEXPR Extent2D(Extent2D const &rhs) VULKAN_HPP_NOEXCEPT = default;
Extent2D(VkExtent2D const &rhs) VULKAN_HPP_NOEXCEPT : Extent2D(*reinterpret_cast<Extent2D const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
Extent2D &operator=(Extent2D const &rhs) VULKAN_HPP_NOEXCEPT = default;
Extent2D &operator=(VkExtent2D const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Extent2D const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 Extent2D &setWidth(uint32_t width_) VULKAN_HPP_NOEXCEPT
{
width = width_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Extent2D &setHeight(uint32_t height_) VULKAN_HPP_NOEXCEPT
{
height = height_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExtent2D const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExtent2D *>(this);
}
explicit operator VkExtent2D &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExtent2D *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(width, height);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(Extent2D const &) const = default;
#else
bool operator==(Extent2D const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (width == rhs.width) && (height == rhs.height);
# endif
}
bool operator!=(Extent2D const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t width = {};
uint32_t height = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::Extent2D) == sizeof(VkExtent2D), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::Extent2D>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::Extent2D>::value, "Extent2D is not nothrow_move_constructible!");
struct SampleLocationEXT
{
using NativeType = VkSampleLocationEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SampleLocationEXT(float x_ = {}, float y_ = {}) VULKAN_HPP_NOEXCEPT
: x(x_),
y(y_)
{
}
VULKAN_HPP_CONSTEXPR SampleLocationEXT(SampleLocationEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SampleLocationEXT(VkSampleLocationEXT const &rhs) VULKAN_HPP_NOEXCEPT : SampleLocationEXT(*reinterpret_cast<SampleLocationEXT const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SampleLocationEXT &operator=(SampleLocationEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SampleLocationEXT &operator=(VkSampleLocationEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SampleLocationEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SampleLocationEXT &setX(float x_) VULKAN_HPP_NOEXCEPT
{
x = x_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SampleLocationEXT &setY(float y_) VULKAN_HPP_NOEXCEPT
{
y = y_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSampleLocationEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSampleLocationEXT *>(this);
}
explicit operator VkSampleLocationEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSampleLocationEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<float const &, float const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(x, y);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SampleLocationEXT const &) const = default;
#else
bool operator==(SampleLocationEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (x == rhs.x) && (y == rhs.y);
# endif
}
bool operator!=(SampleLocationEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
float x = {};
float y = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SampleLocationEXT) == sizeof(VkSampleLocationEXT), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SampleLocationEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SampleLocationEXT>::value,
"SampleLocationEXT is not nothrow_move_constructible!");
struct SampleLocationsInfoEXT
{
using NativeType = VkSampleLocationsInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSampleLocationsInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
SampleLocationsInfoEXT(VULKAN_HPP_NAMESPACE::SampleCountFlagBits sampleLocationsPerPixel_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
VULKAN_HPP_NAMESPACE::Extent2D sampleLocationGridSize_ = {},
uint32_t sampleLocationsCount_ = {},
const VULKAN_HPP_NAMESPACE::SampleLocationEXT *pSampleLocations_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
sampleLocationsPerPixel(sampleLocationsPerPixel_),
sampleLocationGridSize(sampleLocationGridSize_),
sampleLocationsCount(sampleLocationsCount_),
pSampleLocations(pSampleLocations_)
{
}
VULKAN_HPP_CONSTEXPR SampleLocationsInfoEXT(SampleLocationsInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SampleLocationsInfoEXT(VkSampleLocationsInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: SampleLocationsInfoEXT(*reinterpret_cast<SampleLocationsInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SampleLocationsInfoEXT(VULKAN_HPP_NAMESPACE::SampleCountFlagBits sampleLocationsPerPixel_,
VULKAN_HPP_NAMESPACE::Extent2D sampleLocationGridSize_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SampleLocationEXT> const &sampleLocations_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, sampleLocationsPerPixel(sampleLocationsPerPixel_)
, sampleLocationGridSize(sampleLocationGridSize_)
, sampleLocationsCount(static_cast<uint32_t>(sampleLocations_.size()))
, pSampleLocations(sampleLocations_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SampleLocationsInfoEXT &operator=(SampleLocationsInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SampleLocationsInfoEXT &operator=(VkSampleLocationsInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SampleLocationsInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SampleLocationsInfoEXT &
setSampleLocationsPerPixel(VULKAN_HPP_NAMESPACE::SampleCountFlagBits sampleLocationsPerPixel_) VULKAN_HPP_NOEXCEPT
{
sampleLocationsPerPixel = sampleLocationsPerPixel_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SampleLocationsInfoEXT &
setSampleLocationGridSize(VULKAN_HPP_NAMESPACE::Extent2D const &sampleLocationGridSize_) VULKAN_HPP_NOEXCEPT
{
sampleLocationGridSize = sampleLocationGridSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SampleLocationsInfoEXT &setSampleLocationsCount(uint32_t sampleLocationsCount_) VULKAN_HPP_NOEXCEPT
{
sampleLocationsCount = sampleLocationsCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SampleLocationsInfoEXT &
setPSampleLocations(const VULKAN_HPP_NAMESPACE::SampleLocationEXT *pSampleLocations_) VULKAN_HPP_NOEXCEPT
{
pSampleLocations = pSampleLocations_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SampleLocationsInfoEXT &setSampleLocations(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SampleLocationEXT> const &sampleLocations_) VULKAN_HPP_NOEXCEPT
{
sampleLocationsCount = static_cast<uint32_t>(sampleLocations_.size());
pSampleLocations = sampleLocations_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSampleLocationsInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSampleLocationsInfoEXT *>(this);
}
explicit operator VkSampleLocationsInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSampleLocationsInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SampleLocationEXT *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, sampleLocationsPerPixel, sampleLocationGridSize, sampleLocationsCount, pSampleLocations);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SampleLocationsInfoEXT const &) const = default;
#else
bool operator==(SampleLocationsInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (sampleLocationsPerPixel == rhs.sampleLocationsPerPixel) &&
(sampleLocationGridSize == rhs.sampleLocationGridSize) && (sampleLocationsCount == rhs.sampleLocationsCount) &&
(pSampleLocations == rhs.pSampleLocations);
# endif
}
bool operator!=(SampleLocationsInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSampleLocationsInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SampleCountFlagBits sampleLocationsPerPixel = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
VULKAN_HPP_NAMESPACE::Extent2D sampleLocationGridSize = {};
uint32_t sampleLocationsCount = {};
const VULKAN_HPP_NAMESPACE::SampleLocationEXT *pSampleLocations = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT) == sizeof(VkSampleLocationsInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT>::value,
"SampleLocationsInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSampleLocationsInfoEXT>
{
using Type = SampleLocationsInfoEXT;
};
struct AttachmentSampleLocationsEXT
{
using NativeType = VkAttachmentSampleLocationsEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR AttachmentSampleLocationsEXT(uint32_t attachmentIndex_ = {},
VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo_ = {}) VULKAN_HPP_NOEXCEPT
: attachmentIndex(attachmentIndex_),
sampleLocationsInfo(sampleLocationsInfo_)
{
}
VULKAN_HPP_CONSTEXPR AttachmentSampleLocationsEXT(AttachmentSampleLocationsEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentSampleLocationsEXT(VkAttachmentSampleLocationsEXT const &rhs) VULKAN_HPP_NOEXCEPT
: AttachmentSampleLocationsEXT(*reinterpret_cast<AttachmentSampleLocationsEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
AttachmentSampleLocationsEXT &operator=(AttachmentSampleLocationsEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
AttachmentSampleLocationsEXT &operator=(VkAttachmentSampleLocationsEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 AttachmentSampleLocationsEXT &setAttachmentIndex(uint32_t attachmentIndex_) VULKAN_HPP_NOEXCEPT
{
attachmentIndex = attachmentIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 AttachmentSampleLocationsEXT &
setSampleLocationsInfo(VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const &sampleLocationsInfo_) VULKAN_HPP_NOEXCEPT
{
sampleLocationsInfo = sampleLocationsInfo_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkAttachmentSampleLocationsEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkAttachmentSampleLocationsEXT *>(this);
}
explicit operator VkAttachmentSampleLocationsEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkAttachmentSampleLocationsEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(attachmentIndex, sampleLocationsInfo);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(AttachmentSampleLocationsEXT const &) const = default;
#else
bool operator==(AttachmentSampleLocationsEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (attachmentIndex == rhs.attachmentIndex) && (sampleLocationsInfo == rhs.sampleLocationsInfo);
# endif
}
bool operator!=(AttachmentSampleLocationsEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t attachmentIndex = {};
VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT) == sizeof(VkAttachmentSampleLocationsEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT>::value,
"AttachmentSampleLocationsEXT is not nothrow_move_constructible!");
struct BaseInStructure
{
using NativeType = VkBaseInStructure;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
BaseInStructure(VULKAN_HPP_NAMESPACE::StructureType sType_ = VULKAN_HPP_NAMESPACE::StructureType::eApplicationInfo,
const struct VULKAN_HPP_NAMESPACE::BaseInStructure *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: sType(sType_),
pNext(pNext_)
{
}
BaseInStructure(BaseInStructure const &rhs) VULKAN_HPP_NOEXCEPT = default;
BaseInStructure(VkBaseInStructure const &rhs) VULKAN_HPP_NOEXCEPT : BaseInStructure(*reinterpret_cast<BaseInStructure const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BaseInStructure &operator=(BaseInStructure const &rhs) VULKAN_HPP_NOEXCEPT = default;
BaseInStructure &operator=(VkBaseInStructure const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BaseInStructure const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BaseInStructure &setPNext(const struct VULKAN_HPP_NAMESPACE::BaseInStructure *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBaseInStructure const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBaseInStructure *>(this);
}
explicit operator VkBaseInStructure &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBaseInStructure *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const struct VULKAN_HPP_NAMESPACE::BaseInStructure *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BaseInStructure const &) const = default;
#else
bool operator==(BaseInStructure const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext);
# endif
}
bool operator!=(BaseInStructure const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = VULKAN_HPP_NAMESPACE::StructureType::eApplicationInfo;
const struct VULKAN_HPP_NAMESPACE::BaseInStructure *pNext = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BaseInStructure) == sizeof(VkBaseInStructure), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BaseInStructure>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BaseInStructure>::value,
"BaseInStructure is not nothrow_move_constructible!");
struct BaseOutStructure
{
using NativeType = VkBaseOutStructure;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
BaseOutStructure(VULKAN_HPP_NAMESPACE::StructureType sType_ = VULKAN_HPP_NAMESPACE::StructureType::eApplicationInfo,
struct VULKAN_HPP_NAMESPACE::BaseOutStructure *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: sType(sType_),
pNext(pNext_)
{
}
BaseOutStructure(BaseOutStructure const &rhs) VULKAN_HPP_NOEXCEPT = default;
BaseOutStructure(VkBaseOutStructure const &rhs) VULKAN_HPP_NOEXCEPT : BaseOutStructure(*reinterpret_cast<BaseOutStructure const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BaseOutStructure &operator=(BaseOutStructure const &rhs) VULKAN_HPP_NOEXCEPT = default;
BaseOutStructure &operator=(VkBaseOutStructure const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BaseOutStructure const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BaseOutStructure &setPNext(struct VULKAN_HPP_NAMESPACE::BaseOutStructure *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBaseOutStructure const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBaseOutStructure *>(this);
}
explicit operator VkBaseOutStructure &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBaseOutStructure *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, struct VULKAN_HPP_NAMESPACE::BaseOutStructure *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BaseOutStructure const &) const = default;
#else
bool operator==(BaseOutStructure const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext);
# endif
}
bool operator!=(BaseOutStructure const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = VULKAN_HPP_NAMESPACE::StructureType::eApplicationInfo;
struct VULKAN_HPP_NAMESPACE::BaseOutStructure *pNext = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BaseOutStructure) == sizeof(VkBaseOutStructure), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BaseOutStructure>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BaseOutStructure>::value,
"BaseOutStructure is not nothrow_move_constructible!");
struct BindAccelerationStructureMemoryInfoNV
{
using NativeType = VkBindAccelerationStructureMemoryInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindAccelerationStructureMemoryInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BindAccelerationStructureMemoryInfoNV(VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_ = {},
VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {},
uint32_t deviceIndexCount_ = {},
const uint32_t *pDeviceIndices_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
accelerationStructure(accelerationStructure_),
memory(memory_),
memoryOffset(memoryOffset_),
deviceIndexCount(deviceIndexCount_),
pDeviceIndices(pDeviceIndices_)
{
}
VULKAN_HPP_CONSTEXPR BindAccelerationStructureMemoryInfoNV(BindAccelerationStructureMemoryInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindAccelerationStructureMemoryInfoNV(VkBindAccelerationStructureMemoryInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: BindAccelerationStructureMemoryInfoNV(*reinterpret_cast<BindAccelerationStructureMemoryInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindAccelerationStructureMemoryInfoNV(VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_,
VULKAN_HPP_NAMESPACE::DeviceMemory memory_,
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &deviceIndices_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, accelerationStructure(accelerationStructure_)
, memory(memory_)
, memoryOffset(memoryOffset_)
, deviceIndexCount(static_cast<uint32_t>(deviceIndices_.size()))
, pDeviceIndices(deviceIndices_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BindAccelerationStructureMemoryInfoNV &operator=(BindAccelerationStructureMemoryInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindAccelerationStructureMemoryInfoNV &operator=(VkBindAccelerationStructureMemoryInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BindAccelerationStructureMemoryInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindAccelerationStructureMemoryInfoNV &
setAccelerationStructure(VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure_) VULKAN_HPP_NOEXCEPT
{
accelerationStructure = accelerationStructure_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindAccelerationStructureMemoryInfoNV &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindAccelerationStructureMemoryInfoNV &setMemoryOffset(VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_) VULKAN_HPP_NOEXCEPT
{
memoryOffset = memoryOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindAccelerationStructureMemoryInfoNV &setDeviceIndexCount(uint32_t deviceIndexCount_) VULKAN_HPP_NOEXCEPT
{
deviceIndexCount = deviceIndexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindAccelerationStructureMemoryInfoNV &setPDeviceIndices(const uint32_t *pDeviceIndices_) VULKAN_HPP_NOEXCEPT
{
pDeviceIndices = pDeviceIndices_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindAccelerationStructureMemoryInfoNV &
setDeviceIndices(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &deviceIndices_) VULKAN_HPP_NOEXCEPT
{
deviceIndexCount = static_cast<uint32_t>(deviceIndices_.size());
pDeviceIndices = deviceIndices_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBindAccelerationStructureMemoryInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBindAccelerationStructureMemoryInfoNV *>(this);
}
explicit operator VkBindAccelerationStructureMemoryInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBindAccelerationStructureMemoryInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureNV const &,
VULKAN_HPP_NAMESPACE::DeviceMemory const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
uint32_t const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, accelerationStructure, memory, memoryOffset, deviceIndexCount, pDeviceIndices);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BindAccelerationStructureMemoryInfoNV const &) const = default;
#else
bool operator==(BindAccelerationStructureMemoryInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (accelerationStructure == rhs.accelerationStructure) && (memory == rhs.memory) &&
(memoryOffset == rhs.memoryOffset) && (deviceIndexCount == rhs.deviceIndexCount) && (pDeviceIndices == rhs.pDeviceIndices);
# endif
}
bool operator!=(BindAccelerationStructureMemoryInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindAccelerationStructureMemoryInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureNV accelerationStructure = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
uint32_t deviceIndexCount = {};
const uint32_t *pDeviceIndices = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV) == sizeof(VkBindAccelerationStructureMemoryInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BindAccelerationStructureMemoryInfoNV>::value,
"BindAccelerationStructureMemoryInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBindAccelerationStructureMemoryInfoNV>
{
using Type = BindAccelerationStructureMemoryInfoNV;
};
struct BindBufferMemoryDeviceGroupInfo
{
using NativeType = VkBindBufferMemoryDeviceGroupInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindBufferMemoryDeviceGroupInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BindBufferMemoryDeviceGroupInfo(uint32_t deviceIndexCount_ = {},
const uint32_t *pDeviceIndices_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
deviceIndexCount(deviceIndexCount_),
pDeviceIndices(pDeviceIndices_)
{
}
VULKAN_HPP_CONSTEXPR BindBufferMemoryDeviceGroupInfo(BindBufferMemoryDeviceGroupInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindBufferMemoryDeviceGroupInfo(VkBindBufferMemoryDeviceGroupInfo const &rhs) VULKAN_HPP_NOEXCEPT
: BindBufferMemoryDeviceGroupInfo(*reinterpret_cast<BindBufferMemoryDeviceGroupInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindBufferMemoryDeviceGroupInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &deviceIndices_, const void *pNext_ = nullptr)
: pNext(pNext_)
, deviceIndexCount(static_cast<uint32_t>(deviceIndices_.size()))
, pDeviceIndices(deviceIndices_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BindBufferMemoryDeviceGroupInfo &operator=(BindBufferMemoryDeviceGroupInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindBufferMemoryDeviceGroupInfo &operator=(VkBindBufferMemoryDeviceGroupInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindBufferMemoryDeviceGroupInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BindBufferMemoryDeviceGroupInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindBufferMemoryDeviceGroupInfo &setDeviceIndexCount(uint32_t deviceIndexCount_) VULKAN_HPP_NOEXCEPT
{
deviceIndexCount = deviceIndexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindBufferMemoryDeviceGroupInfo &setPDeviceIndices(const uint32_t *pDeviceIndices_) VULKAN_HPP_NOEXCEPT
{
pDeviceIndices = pDeviceIndices_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindBufferMemoryDeviceGroupInfo &
setDeviceIndices(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &deviceIndices_) VULKAN_HPP_NOEXCEPT
{
deviceIndexCount = static_cast<uint32_t>(deviceIndices_.size());
pDeviceIndices = deviceIndices_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBindBufferMemoryDeviceGroupInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBindBufferMemoryDeviceGroupInfo *>(this);
}
explicit operator VkBindBufferMemoryDeviceGroupInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBindBufferMemoryDeviceGroupInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, deviceIndexCount, pDeviceIndices);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BindBufferMemoryDeviceGroupInfo const &) const = default;
#else
bool operator==(BindBufferMemoryDeviceGroupInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (deviceIndexCount == rhs.deviceIndexCount) && (pDeviceIndices == rhs.pDeviceIndices);
# endif
}
bool operator!=(BindBufferMemoryDeviceGroupInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindBufferMemoryDeviceGroupInfo;
const void *pNext = {};
uint32_t deviceIndexCount = {};
const uint32_t *pDeviceIndices = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BindBufferMemoryDeviceGroupInfo) == sizeof(VkBindBufferMemoryDeviceGroupInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BindBufferMemoryDeviceGroupInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BindBufferMemoryDeviceGroupInfo>::value,
"BindBufferMemoryDeviceGroupInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBindBufferMemoryDeviceGroupInfo>
{
using Type = BindBufferMemoryDeviceGroupInfo;
};
using BindBufferMemoryDeviceGroupInfoKHR = BindBufferMemoryDeviceGroupInfo;
struct BindBufferMemoryInfo
{
using NativeType = VkBindBufferMemoryInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindBufferMemoryInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BindBufferMemoryInfo(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
buffer(buffer_),
memory(memory_),
memoryOffset(memoryOffset_)
{
}
VULKAN_HPP_CONSTEXPR BindBufferMemoryInfo(BindBufferMemoryInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindBufferMemoryInfo(VkBindBufferMemoryInfo const &rhs) VULKAN_HPP_NOEXCEPT
: BindBufferMemoryInfo(*reinterpret_cast<BindBufferMemoryInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BindBufferMemoryInfo &operator=(BindBufferMemoryInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindBufferMemoryInfo &operator=(VkBindBufferMemoryInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BindBufferMemoryInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindBufferMemoryInfo &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindBufferMemoryInfo &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindBufferMemoryInfo &setMemoryOffset(VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_) VULKAN_HPP_NOEXCEPT
{
memoryOffset = memoryOffset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBindBufferMemoryInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBindBufferMemoryInfo *>(this);
}
explicit operator VkBindBufferMemoryInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBindBufferMemoryInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceMemory const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, buffer, memory, memoryOffset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BindBufferMemoryInfo const &) const = default;
#else
bool operator==(BindBufferMemoryInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (buffer == rhs.buffer) && (memory == rhs.memory) && (memoryOffset == rhs.memoryOffset);
# endif
}
bool operator!=(BindBufferMemoryInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindBufferMemoryInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo) == sizeof(VkBindBufferMemoryInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BindBufferMemoryInfo>::value,
"BindBufferMemoryInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBindBufferMemoryInfo>
{
using Type = BindBufferMemoryInfo;
};
using BindBufferMemoryInfoKHR = BindBufferMemoryInfo;
struct Offset2D
{
using NativeType = VkOffset2D;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR Offset2D(int32_t x_ = {}, int32_t y_ = {}) VULKAN_HPP_NOEXCEPT
: x(x_),
y(y_)
{
}
VULKAN_HPP_CONSTEXPR Offset2D(Offset2D const &rhs) VULKAN_HPP_NOEXCEPT = default;
Offset2D(VkOffset2D const &rhs) VULKAN_HPP_NOEXCEPT : Offset2D(*reinterpret_cast<Offset2D const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
Offset2D &operator=(Offset2D const &rhs) VULKAN_HPP_NOEXCEPT = default;
Offset2D &operator=(VkOffset2D const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Offset2D const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 Offset2D &setX(int32_t x_) VULKAN_HPP_NOEXCEPT
{
x = x_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Offset2D &setY(int32_t y_) VULKAN_HPP_NOEXCEPT
{
y = y_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkOffset2D const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkOffset2D *>(this);
}
explicit operator VkOffset2D &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkOffset2D *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<int32_t const &, int32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(x, y);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(Offset2D const &) const = default;
#else
bool operator==(Offset2D const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (x == rhs.x) && (y == rhs.y);
# endif
}
bool operator!=(Offset2D const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
int32_t x = {};
int32_t y = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::Offset2D) == sizeof(VkOffset2D), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::Offset2D>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::Offset2D>::value, "Offset2D is not nothrow_move_constructible!");
struct Rect2D
{
using NativeType = VkRect2D;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR Rect2D(VULKAN_HPP_NAMESPACE::Offset2D offset_ = {}, VULKAN_HPP_NAMESPACE::Extent2D extent_ = {}) VULKAN_HPP_NOEXCEPT
: offset(offset_),
extent(extent_)
{
}
VULKAN_HPP_CONSTEXPR Rect2D(Rect2D const &rhs) VULKAN_HPP_NOEXCEPT = default;
Rect2D(VkRect2D const &rhs) VULKAN_HPP_NOEXCEPT : Rect2D(*reinterpret_cast<Rect2D const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
Rect2D &operator=(Rect2D const &rhs) VULKAN_HPP_NOEXCEPT = default;
Rect2D &operator=(VkRect2D const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Rect2D const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 Rect2D &setOffset(VULKAN_HPP_NAMESPACE::Offset2D const &offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Rect2D &setExtent(VULKAN_HPP_NAMESPACE::Extent2D const &extent_) VULKAN_HPP_NOEXCEPT
{
extent = extent_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRect2D const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRect2D *>(this);
}
explicit operator VkRect2D &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRect2D *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Offset2D const &, VULKAN_HPP_NAMESPACE::Extent2D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(offset, extent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(Rect2D const &) const = default;
#else
bool operator==(Rect2D const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (offset == rhs.offset) && (extent == rhs.extent);
# endif
}
bool operator!=(Rect2D const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Offset2D offset = {};
VULKAN_HPP_NAMESPACE::Extent2D extent = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::Rect2D) == sizeof(VkRect2D), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::Rect2D>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::Rect2D>::value, "Rect2D is not nothrow_move_constructible!");
struct BindImageMemoryDeviceGroupInfo
{
using NativeType = VkBindImageMemoryDeviceGroupInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindImageMemoryDeviceGroupInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BindImageMemoryDeviceGroupInfo(uint32_t deviceIndexCount_ = {},
const uint32_t *pDeviceIndices_ = {},
uint32_t splitInstanceBindRegionCount_ = {},
const VULKAN_HPP_NAMESPACE::Rect2D *pSplitInstanceBindRegions_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
deviceIndexCount(deviceIndexCount_),
pDeviceIndices(pDeviceIndices_),
splitInstanceBindRegionCount(splitInstanceBindRegionCount_),
pSplitInstanceBindRegions(pSplitInstanceBindRegions_)
{
}
VULKAN_HPP_CONSTEXPR BindImageMemoryDeviceGroupInfo(BindImageMemoryDeviceGroupInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindImageMemoryDeviceGroupInfo(VkBindImageMemoryDeviceGroupInfo const &rhs) VULKAN_HPP_NOEXCEPT
: BindImageMemoryDeviceGroupInfo(*reinterpret_cast<BindImageMemoryDeviceGroupInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindImageMemoryDeviceGroupInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &deviceIndices_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const &splitInstanceBindRegions_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, deviceIndexCount(static_cast<uint32_t>(deviceIndices_.size()))
, pDeviceIndices(deviceIndices_.data())
, splitInstanceBindRegionCount(static_cast<uint32_t>(splitInstanceBindRegions_.size()))
, pSplitInstanceBindRegions(splitInstanceBindRegions_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BindImageMemoryDeviceGroupInfo &operator=(BindImageMemoryDeviceGroupInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindImageMemoryDeviceGroupInfo &operator=(VkBindImageMemoryDeviceGroupInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindImageMemoryDeviceGroupInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BindImageMemoryDeviceGroupInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindImageMemoryDeviceGroupInfo &setDeviceIndexCount(uint32_t deviceIndexCount_) VULKAN_HPP_NOEXCEPT
{
deviceIndexCount = deviceIndexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindImageMemoryDeviceGroupInfo &setPDeviceIndices(const uint32_t *pDeviceIndices_) VULKAN_HPP_NOEXCEPT
{
pDeviceIndices = pDeviceIndices_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindImageMemoryDeviceGroupInfo &
setDeviceIndices(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &deviceIndices_) VULKAN_HPP_NOEXCEPT
{
deviceIndexCount = static_cast<uint32_t>(deviceIndices_.size());
pDeviceIndices = deviceIndices_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 BindImageMemoryDeviceGroupInfo &setSplitInstanceBindRegionCount(uint32_t splitInstanceBindRegionCount_) VULKAN_HPP_NOEXCEPT
{
splitInstanceBindRegionCount = splitInstanceBindRegionCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindImageMemoryDeviceGroupInfo &
setPSplitInstanceBindRegions(const VULKAN_HPP_NAMESPACE::Rect2D *pSplitInstanceBindRegions_) VULKAN_HPP_NOEXCEPT
{
pSplitInstanceBindRegions = pSplitInstanceBindRegions_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindImageMemoryDeviceGroupInfo &setSplitInstanceBindRegions(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const &splitInstanceBindRegions_) VULKAN_HPP_NOEXCEPT
{
splitInstanceBindRegionCount = static_cast<uint32_t>(splitInstanceBindRegions_.size());
pSplitInstanceBindRegions = splitInstanceBindRegions_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBindImageMemoryDeviceGroupInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBindImageMemoryDeviceGroupInfo *>(this);
}
explicit operator VkBindImageMemoryDeviceGroupInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBindImageMemoryDeviceGroupInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const uint32_t *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Rect2D *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, deviceIndexCount, pDeviceIndices, splitInstanceBindRegionCount, pSplitInstanceBindRegions);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BindImageMemoryDeviceGroupInfo const &) const = default;
#else
bool operator==(BindImageMemoryDeviceGroupInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (deviceIndexCount == rhs.deviceIndexCount) && (pDeviceIndices == rhs.pDeviceIndices) &&
(splitInstanceBindRegionCount == rhs.splitInstanceBindRegionCount) && (pSplitInstanceBindRegions == rhs.pSplitInstanceBindRegions);
# endif
}
bool operator!=(BindImageMemoryDeviceGroupInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindImageMemoryDeviceGroupInfo;
const void *pNext = {};
uint32_t deviceIndexCount = {};
const uint32_t *pDeviceIndices = {};
uint32_t splitInstanceBindRegionCount = {};
const VULKAN_HPP_NAMESPACE::Rect2D *pSplitInstanceBindRegions = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BindImageMemoryDeviceGroupInfo) == sizeof(VkBindImageMemoryDeviceGroupInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BindImageMemoryDeviceGroupInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BindImageMemoryDeviceGroupInfo>::value,
"BindImageMemoryDeviceGroupInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBindImageMemoryDeviceGroupInfo>
{
using Type = BindImageMemoryDeviceGroupInfo;
};
using BindImageMemoryDeviceGroupInfoKHR = BindImageMemoryDeviceGroupInfo;
struct BindImageMemoryInfo
{
using NativeType = VkBindImageMemoryInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindImageMemoryInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BindImageMemoryInfo(VULKAN_HPP_NAMESPACE::Image image_ = {},
VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
image(image_),
memory(memory_),
memoryOffset(memoryOffset_)
{
}
VULKAN_HPP_CONSTEXPR BindImageMemoryInfo(BindImageMemoryInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindImageMemoryInfo(VkBindImageMemoryInfo const &rhs) VULKAN_HPP_NOEXCEPT : BindImageMemoryInfo(*reinterpret_cast<BindImageMemoryInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BindImageMemoryInfo &operator=(BindImageMemoryInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindImageMemoryInfo &operator=(VkBindImageMemoryInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindImageMemoryInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BindImageMemoryInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindImageMemoryInfo &setImage(VULKAN_HPP_NAMESPACE::Image image_) VULKAN_HPP_NOEXCEPT
{
image = image_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindImageMemoryInfo &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindImageMemoryInfo &setMemoryOffset(VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_) VULKAN_HPP_NOEXCEPT
{
memoryOffset = memoryOffset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBindImageMemoryInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBindImageMemoryInfo *>(this);
}
explicit operator VkBindImageMemoryInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBindImageMemoryInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Image const &,
VULKAN_HPP_NAMESPACE::DeviceMemory const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, image, memory, memoryOffset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BindImageMemoryInfo const &) const = default;
#else
bool operator==(BindImageMemoryInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (image == rhs.image) && (memory == rhs.memory) && (memoryOffset == rhs.memoryOffset);
# endif
}
bool operator!=(BindImageMemoryInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindImageMemoryInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Image image = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BindImageMemoryInfo) == sizeof(VkBindImageMemoryInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BindImageMemoryInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BindImageMemoryInfo>::value,
"BindImageMemoryInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBindImageMemoryInfo>
{
using Type = BindImageMemoryInfo;
};
using BindImageMemoryInfoKHR = BindImageMemoryInfo;
struct BindImageMemorySwapchainInfoKHR
{
using NativeType = VkBindImageMemorySwapchainInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindImageMemorySwapchainInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BindImageMemorySwapchainInfoKHR(VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ = {},
uint32_t imageIndex_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
swapchain(swapchain_),
imageIndex(imageIndex_)
{
}
VULKAN_HPP_CONSTEXPR BindImageMemorySwapchainInfoKHR(BindImageMemorySwapchainInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindImageMemorySwapchainInfoKHR(VkBindImageMemorySwapchainInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: BindImageMemorySwapchainInfoKHR(*reinterpret_cast<BindImageMemorySwapchainInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BindImageMemorySwapchainInfoKHR &operator=(BindImageMemorySwapchainInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindImageMemorySwapchainInfoKHR &operator=(VkBindImageMemorySwapchainInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindImageMemorySwapchainInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BindImageMemorySwapchainInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindImageMemorySwapchainInfoKHR &setSwapchain(VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_) VULKAN_HPP_NOEXCEPT
{
swapchain = swapchain_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindImageMemorySwapchainInfoKHR &setImageIndex(uint32_t imageIndex_) VULKAN_HPP_NOEXCEPT
{
imageIndex = imageIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBindImageMemorySwapchainInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBindImageMemorySwapchainInfoKHR *>(this);
}
explicit operator VkBindImageMemorySwapchainInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBindImageMemorySwapchainInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::SwapchainKHR const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, swapchain, imageIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BindImageMemorySwapchainInfoKHR const &) const = default;
#else
bool operator==(BindImageMemorySwapchainInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (swapchain == rhs.swapchain) && (imageIndex == rhs.imageIndex);
# endif
}
bool operator!=(BindImageMemorySwapchainInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindImageMemorySwapchainInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain = {};
uint32_t imageIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BindImageMemorySwapchainInfoKHR) == sizeof(VkBindImageMemorySwapchainInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BindImageMemorySwapchainInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BindImageMemorySwapchainInfoKHR>::value,
"BindImageMemorySwapchainInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBindImageMemorySwapchainInfoKHR>
{
using Type = BindImageMemorySwapchainInfoKHR;
};
struct BindImagePlaneMemoryInfo
{
using NativeType = VkBindImagePlaneMemoryInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindImagePlaneMemoryInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BindImagePlaneMemoryInfo(VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_ = VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
planeAspect(planeAspect_)
{
}
VULKAN_HPP_CONSTEXPR BindImagePlaneMemoryInfo(BindImagePlaneMemoryInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindImagePlaneMemoryInfo(VkBindImagePlaneMemoryInfo const &rhs) VULKAN_HPP_NOEXCEPT
: BindImagePlaneMemoryInfo(*reinterpret_cast<BindImagePlaneMemoryInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BindImagePlaneMemoryInfo &operator=(BindImagePlaneMemoryInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindImagePlaneMemoryInfo &operator=(VkBindImagePlaneMemoryInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindImagePlaneMemoryInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BindImagePlaneMemoryInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindImagePlaneMemoryInfo &setPlaneAspect(VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_) VULKAN_HPP_NOEXCEPT
{
planeAspect = planeAspect_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBindImagePlaneMemoryInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBindImagePlaneMemoryInfo *>(this);
}
explicit operator VkBindImagePlaneMemoryInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBindImagePlaneMemoryInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ImageAspectFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, planeAspect);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BindImagePlaneMemoryInfo const &) const = default;
#else
bool operator==(BindImagePlaneMemoryInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (planeAspect == rhs.planeAspect);
# endif
}
bool operator!=(BindImagePlaneMemoryInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindImagePlaneMemoryInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect = VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BindImagePlaneMemoryInfo) == sizeof(VkBindImagePlaneMemoryInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BindImagePlaneMemoryInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BindImagePlaneMemoryInfo>::value,
"BindImagePlaneMemoryInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBindImagePlaneMemoryInfo>
{
using Type = BindImagePlaneMemoryInfo;
};
using BindImagePlaneMemoryInfoKHR = BindImagePlaneMemoryInfo;
struct BindIndexBufferIndirectCommandNV
{
using NativeType = VkBindIndexBufferIndirectCommandNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
BindIndexBufferIndirectCommandNV(VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress_ = {},
uint32_t size_ = {},
VULKAN_HPP_NAMESPACE::IndexType indexType_ = VULKAN_HPP_NAMESPACE::IndexType::eUint16) VULKAN_HPP_NOEXCEPT
: bufferAddress(bufferAddress_),
size(size_),
indexType(indexType_)
{
}
VULKAN_HPP_CONSTEXPR BindIndexBufferIndirectCommandNV(BindIndexBufferIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindIndexBufferIndirectCommandNV(VkBindIndexBufferIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT
: BindIndexBufferIndirectCommandNV(*reinterpret_cast<BindIndexBufferIndirectCommandNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BindIndexBufferIndirectCommandNV &operator=(BindIndexBufferIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindIndexBufferIndirectCommandNV &operator=(VkBindIndexBufferIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindIndexBufferIndirectCommandNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BindIndexBufferIndirectCommandNV &setBufferAddress(VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress_) VULKAN_HPP_NOEXCEPT
{
bufferAddress = bufferAddress_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindIndexBufferIndirectCommandNV &setSize(uint32_t size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindIndexBufferIndirectCommandNV &setIndexType(VULKAN_HPP_NAMESPACE::IndexType indexType_) VULKAN_HPP_NOEXCEPT
{
indexType = indexType_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBindIndexBufferIndirectCommandNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBindIndexBufferIndirectCommandNV *>(this);
}
explicit operator VkBindIndexBufferIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBindIndexBufferIndirectCommandNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DeviceAddress const &, uint32_t const &, VULKAN_HPP_NAMESPACE::IndexType const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(bufferAddress, size, indexType);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BindIndexBufferIndirectCommandNV const &) const = default;
#else
bool operator==(BindIndexBufferIndirectCommandNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (bufferAddress == rhs.bufferAddress) && (size == rhs.size) && (indexType == rhs.indexType);
# endif
}
bool operator!=(BindIndexBufferIndirectCommandNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress = {};
uint32_t size = {};
VULKAN_HPP_NAMESPACE::IndexType indexType = VULKAN_HPP_NAMESPACE::IndexType::eUint16;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BindIndexBufferIndirectCommandNV) == sizeof(VkBindIndexBufferIndirectCommandNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BindIndexBufferIndirectCommandNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BindIndexBufferIndirectCommandNV>::value,
"BindIndexBufferIndirectCommandNV is not nothrow_move_constructible!");
struct BindShaderGroupIndirectCommandNV
{
using NativeType = VkBindShaderGroupIndirectCommandNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BindShaderGroupIndirectCommandNV(uint32_t groupIndex_ = {}) VULKAN_HPP_NOEXCEPT : groupIndex(groupIndex_)
{}
VULKAN_HPP_CONSTEXPR BindShaderGroupIndirectCommandNV(BindShaderGroupIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindShaderGroupIndirectCommandNV(VkBindShaderGroupIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT
: BindShaderGroupIndirectCommandNV(*reinterpret_cast<BindShaderGroupIndirectCommandNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BindShaderGroupIndirectCommandNV &operator=(BindShaderGroupIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindShaderGroupIndirectCommandNV &operator=(VkBindShaderGroupIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindShaderGroupIndirectCommandNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BindShaderGroupIndirectCommandNV &setGroupIndex(uint32_t groupIndex_) VULKAN_HPP_NOEXCEPT
{
groupIndex = groupIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBindShaderGroupIndirectCommandNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBindShaderGroupIndirectCommandNV *>(this);
}
explicit operator VkBindShaderGroupIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBindShaderGroupIndirectCommandNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(groupIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BindShaderGroupIndirectCommandNV const &) const = default;
#else
bool operator==(BindShaderGroupIndirectCommandNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (groupIndex == rhs.groupIndex);
# endif
}
bool operator!=(BindShaderGroupIndirectCommandNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t groupIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BindShaderGroupIndirectCommandNV) == sizeof(VkBindShaderGroupIndirectCommandNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BindShaderGroupIndirectCommandNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BindShaderGroupIndirectCommandNV>::value,
"BindShaderGroupIndirectCommandNV is not nothrow_move_constructible!");
struct SparseMemoryBind
{
using NativeType = VkSparseMemoryBind;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SparseMemoryBind(VULKAN_HPP_NAMESPACE::DeviceSize resourceOffset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {},
VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags_ = {}) VULKAN_HPP_NOEXCEPT
: resourceOffset(resourceOffset_),
size(size_),
memory(memory_),
memoryOffset(memoryOffset_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR SparseMemoryBind(SparseMemoryBind const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseMemoryBind(VkSparseMemoryBind const &rhs) VULKAN_HPP_NOEXCEPT : SparseMemoryBind(*reinterpret_cast<SparseMemoryBind const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SparseMemoryBind &operator=(SparseMemoryBind const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseMemoryBind &operator=(VkSparseMemoryBind const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseMemoryBind const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SparseMemoryBind &setResourceOffset(VULKAN_HPP_NAMESPACE::DeviceSize resourceOffset_) VULKAN_HPP_NOEXCEPT
{
resourceOffset = resourceOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseMemoryBind &setSize(VULKAN_HPP_NAMESPACE::DeviceSize size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseMemoryBind &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseMemoryBind &setMemoryOffset(VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_) VULKAN_HPP_NOEXCEPT
{
memoryOffset = memoryOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseMemoryBind &setFlags(VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSparseMemoryBind const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSparseMemoryBind *>(this);
}
explicit operator VkSparseMemoryBind &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSparseMemoryBind *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceMemory const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(resourceOffset, size, memory, memoryOffset, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SparseMemoryBind const &) const = default;
#else
bool operator==(SparseMemoryBind const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (resourceOffset == rhs.resourceOffset) && (size == rhs.size) && (memory == rhs.memory) && (memoryOffset == rhs.memoryOffset) &&
(flags == rhs.flags);
# endif
}
bool operator!=(SparseMemoryBind const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DeviceSize resourceOffset = {};
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SparseMemoryBind) == sizeof(VkSparseMemoryBind), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SparseMemoryBind>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SparseMemoryBind>::value,
"SparseMemoryBind is not nothrow_move_constructible!");
struct SparseBufferMemoryBindInfo
{
using NativeType = VkSparseBufferMemoryBindInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SparseBufferMemoryBindInfo(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
uint32_t bindCount_ = {},
const VULKAN_HPP_NAMESPACE::SparseMemoryBind *pBinds_ = {}) VULKAN_HPP_NOEXCEPT
: buffer(buffer_),
bindCount(bindCount_),
pBinds(pBinds_)
{
}
VULKAN_HPP_CONSTEXPR SparseBufferMemoryBindInfo(SparseBufferMemoryBindInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseBufferMemoryBindInfo(VkSparseBufferMemoryBindInfo const &rhs) VULKAN_HPP_NOEXCEPT
: SparseBufferMemoryBindInfo(*reinterpret_cast<SparseBufferMemoryBindInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SparseBufferMemoryBindInfo(VULKAN_HPP_NAMESPACE::Buffer buffer_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseMemoryBind> const &binds_)
: buffer(buffer_)
, bindCount(static_cast<uint32_t>(binds_.size()))
, pBinds(binds_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SparseBufferMemoryBindInfo &operator=(SparseBufferMemoryBindInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseBufferMemoryBindInfo &operator=(VkSparseBufferMemoryBindInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SparseBufferMemoryBindInfo &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseBufferMemoryBindInfo &setBindCount(uint32_t bindCount_) VULKAN_HPP_NOEXCEPT
{
bindCount = bindCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseBufferMemoryBindInfo &setPBinds(const VULKAN_HPP_NAMESPACE::SparseMemoryBind *pBinds_) VULKAN_HPP_NOEXCEPT
{
pBinds = pBinds_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SparseBufferMemoryBindInfo &
setBinds(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseMemoryBind> const &binds_) VULKAN_HPP_NOEXCEPT
{
bindCount = static_cast<uint32_t>(binds_.size());
pBinds = binds_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSparseBufferMemoryBindInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSparseBufferMemoryBindInfo *>(this);
}
explicit operator VkSparseBufferMemoryBindInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSparseBufferMemoryBindInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Buffer const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::SparseMemoryBind *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(buffer, bindCount, pBinds);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SparseBufferMemoryBindInfo const &) const = default;
#else
bool operator==(SparseBufferMemoryBindInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (buffer == rhs.buffer) && (bindCount == rhs.bindCount) && (pBinds == rhs.pBinds);
# endif
}
bool operator!=(SparseBufferMemoryBindInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
uint32_t bindCount = {};
const VULKAN_HPP_NAMESPACE::SparseMemoryBind *pBinds = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo) == sizeof(VkSparseBufferMemoryBindInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo>::value,
"SparseBufferMemoryBindInfo is not nothrow_move_constructible!");
struct SparseImageOpaqueMemoryBindInfo
{
using NativeType = VkSparseImageOpaqueMemoryBindInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SparseImageOpaqueMemoryBindInfo(VULKAN_HPP_NAMESPACE::Image image_ = {},
uint32_t bindCount_ = {},
const VULKAN_HPP_NAMESPACE::SparseMemoryBind *pBinds_ = {}) VULKAN_HPP_NOEXCEPT
: image(image_),
bindCount(bindCount_),
pBinds(pBinds_)
{
}
VULKAN_HPP_CONSTEXPR SparseImageOpaqueMemoryBindInfo(SparseImageOpaqueMemoryBindInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageOpaqueMemoryBindInfo(VkSparseImageOpaqueMemoryBindInfo const &rhs) VULKAN_HPP_NOEXCEPT
: SparseImageOpaqueMemoryBindInfo(*reinterpret_cast<SparseImageOpaqueMemoryBindInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SparseImageOpaqueMemoryBindInfo(VULKAN_HPP_NAMESPACE::Image image_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseMemoryBind> const &binds_)
: image(image_)
, bindCount(static_cast<uint32_t>(binds_.size()))
, pBinds(binds_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SparseImageOpaqueMemoryBindInfo &operator=(SparseImageOpaqueMemoryBindInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageOpaqueMemoryBindInfo &operator=(VkSparseImageOpaqueMemoryBindInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SparseImageOpaqueMemoryBindInfo &setImage(VULKAN_HPP_NAMESPACE::Image image_) VULKAN_HPP_NOEXCEPT
{
image = image_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseImageOpaqueMemoryBindInfo &setBindCount(uint32_t bindCount_) VULKAN_HPP_NOEXCEPT
{
bindCount = bindCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseImageOpaqueMemoryBindInfo &setPBinds(const VULKAN_HPP_NAMESPACE::SparseMemoryBind *pBinds_) VULKAN_HPP_NOEXCEPT
{
pBinds = pBinds_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SparseImageOpaqueMemoryBindInfo &
setBinds(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseMemoryBind> const &binds_) VULKAN_HPP_NOEXCEPT
{
bindCount = static_cast<uint32_t>(binds_.size());
pBinds = binds_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSparseImageOpaqueMemoryBindInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSparseImageOpaqueMemoryBindInfo *>(this);
}
explicit operator VkSparseImageOpaqueMemoryBindInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSparseImageOpaqueMemoryBindInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Image const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::SparseMemoryBind *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(image, bindCount, pBinds);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SparseImageOpaqueMemoryBindInfo const &) const = default;
#else
bool operator==(SparseImageOpaqueMemoryBindInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (image == rhs.image) && (bindCount == rhs.bindCount) && (pBinds == rhs.pBinds);
# endif
}
bool operator!=(SparseImageOpaqueMemoryBindInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Image image = {};
uint32_t bindCount = {};
const VULKAN_HPP_NAMESPACE::SparseMemoryBind *pBinds = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo) == sizeof(VkSparseImageOpaqueMemoryBindInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo>::value,
"SparseImageOpaqueMemoryBindInfo is not nothrow_move_constructible!");
struct ImageSubresource
{
using NativeType = VkImageSubresource;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
ImageSubresource(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {}, uint32_t mipLevel_ = {}, uint32_t arrayLayer_ = {}) VULKAN_HPP_NOEXCEPT
: aspectMask(aspectMask_),
mipLevel(mipLevel_),
arrayLayer(arrayLayer_)
{
}
VULKAN_HPP_CONSTEXPR ImageSubresource(ImageSubresource const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageSubresource(VkImageSubresource const &rhs) VULKAN_HPP_NOEXCEPT : ImageSubresource(*reinterpret_cast<ImageSubresource const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageSubresource &operator=(ImageSubresource const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageSubresource &operator=(VkImageSubresource const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSubresource const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageSubresource &setAspectMask(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_) VULKAN_HPP_NOEXCEPT
{
aspectMask = aspectMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageSubresource &setMipLevel(uint32_t mipLevel_) VULKAN_HPP_NOEXCEPT
{
mipLevel = mipLevel_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageSubresource &setArrayLayer(uint32_t arrayLayer_) VULKAN_HPP_NOEXCEPT
{
arrayLayer = arrayLayer_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageSubresource const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageSubresource *>(this);
}
explicit operator VkImageSubresource &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageSubresource *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ImageAspectFlags const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(aspectMask, mipLevel, arrayLayer);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageSubresource const &) const = default;
#else
bool operator==(ImageSubresource const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (aspectMask == rhs.aspectMask) && (mipLevel == rhs.mipLevel) && (arrayLayer == rhs.arrayLayer);
# endif
}
bool operator!=(ImageSubresource const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
uint32_t mipLevel = {};
uint32_t arrayLayer = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageSubresource) == sizeof(VkImageSubresource), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageSubresource>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageSubresource>::value,
"ImageSubresource is not nothrow_move_constructible!");
struct Offset3D
{
using NativeType = VkOffset3D;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR Offset3D(int32_t x_ = {}, int32_t y_ = {}, int32_t z_ = {}) VULKAN_HPP_NOEXCEPT
: x(x_),
y(y_),
z(z_)
{
}
VULKAN_HPP_CONSTEXPR Offset3D(Offset3D const &rhs) VULKAN_HPP_NOEXCEPT = default;
Offset3D(VkOffset3D const &rhs) VULKAN_HPP_NOEXCEPT : Offset3D(*reinterpret_cast<Offset3D const *>(&rhs)) {}
explicit Offset3D(Offset2D const &offset2D, int32_t z_ = {})
: x(offset2D.x)
, y(offset2D.y)
, z(z_)
{}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
Offset3D &operator=(Offset3D const &rhs) VULKAN_HPP_NOEXCEPT = default;
Offset3D &operator=(VkOffset3D const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Offset3D const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 Offset3D &setX(int32_t x_) VULKAN_HPP_NOEXCEPT
{
x = x_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Offset3D &setY(int32_t y_) VULKAN_HPP_NOEXCEPT
{
y = y_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Offset3D &setZ(int32_t z_) VULKAN_HPP_NOEXCEPT
{
z = z_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkOffset3D const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkOffset3D *>(this);
}
explicit operator VkOffset3D &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkOffset3D *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<int32_t const &, int32_t const &, int32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(x, y, z);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(Offset3D const &) const = default;
#else
bool operator==(Offset3D const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (x == rhs.x) && (y == rhs.y) && (z == rhs.z);
# endif
}
bool operator!=(Offset3D const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
int32_t x = {};
int32_t y = {};
int32_t z = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::Offset3D) == sizeof(VkOffset3D), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::Offset3D>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::Offset3D>::value, "Offset3D is not nothrow_move_constructible!");
struct Extent3D
{
using NativeType = VkExtent3D;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR Extent3D(uint32_t width_ = {}, uint32_t height_ = {}, uint32_t depth_ = {}) VULKAN_HPP_NOEXCEPT
: width(width_),
height(height_),
depth(depth_)
{
}
VULKAN_HPP_CONSTEXPR Extent3D(Extent3D const &rhs) VULKAN_HPP_NOEXCEPT = default;
Extent3D(VkExtent3D const &rhs) VULKAN_HPP_NOEXCEPT : Extent3D(*reinterpret_cast<Extent3D const *>(&rhs)) {}
explicit Extent3D(Extent2D const &extent2D, uint32_t depth_ = {})
: width(extent2D.width)
, height(extent2D.height)
, depth(depth_)
{}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
Extent3D &operator=(Extent3D const &rhs) VULKAN_HPP_NOEXCEPT = default;
Extent3D &operator=(VkExtent3D const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Extent3D const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 Extent3D &setWidth(uint32_t width_) VULKAN_HPP_NOEXCEPT
{
width = width_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Extent3D &setHeight(uint32_t height_) VULKAN_HPP_NOEXCEPT
{
height = height_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Extent3D &setDepth(uint32_t depth_) VULKAN_HPP_NOEXCEPT
{
depth = depth_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExtent3D const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExtent3D *>(this);
}
explicit operator VkExtent3D &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExtent3D *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(width, height, depth);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(Extent3D const &) const = default;
#else
bool operator==(Extent3D const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (width == rhs.width) && (height == rhs.height) && (depth == rhs.depth);
# endif
}
bool operator!=(Extent3D const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t width = {};
uint32_t height = {};
uint32_t depth = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::Extent3D) == sizeof(VkExtent3D), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::Extent3D>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::Extent3D>::value, "Extent3D is not nothrow_move_constructible!");
struct SparseImageMemoryBind
{
using NativeType = VkSparseImageMemoryBind;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SparseImageMemoryBind(VULKAN_HPP_NAMESPACE::ImageSubresource subresource_ = {},
VULKAN_HPP_NAMESPACE::Offset3D offset_ = {},
VULKAN_HPP_NAMESPACE::Extent3D extent_ = {},
VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {},
VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags_ = {}) VULKAN_HPP_NOEXCEPT
: subresource(subresource_),
offset(offset_),
extent(extent_),
memory(memory_),
memoryOffset(memoryOffset_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR SparseImageMemoryBind(SparseImageMemoryBind const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageMemoryBind(VkSparseImageMemoryBind const &rhs) VULKAN_HPP_NOEXCEPT
: SparseImageMemoryBind(*reinterpret_cast<SparseImageMemoryBind const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SparseImageMemoryBind &operator=(SparseImageMemoryBind const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageMemoryBind &operator=(VkSparseImageMemoryBind const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageMemoryBind const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryBind &setSubresource(VULKAN_HPP_NAMESPACE::ImageSubresource const &subresource_) VULKAN_HPP_NOEXCEPT
{
subresource = subresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryBind &setOffset(VULKAN_HPP_NAMESPACE::Offset3D const &offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryBind &setExtent(VULKAN_HPP_NAMESPACE::Extent3D const &extent_) VULKAN_HPP_NOEXCEPT
{
extent = extent_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryBind &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryBind &setMemoryOffset(VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_) VULKAN_HPP_NOEXCEPT
{
memoryOffset = memoryOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryBind &setFlags(VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSparseImageMemoryBind const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSparseImageMemoryBind *>(this);
}
explicit operator VkSparseImageMemoryBind &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSparseImageMemoryBind *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ImageSubresource const &,
VULKAN_HPP_NAMESPACE::Offset3D const &,
VULKAN_HPP_NAMESPACE::Extent3D const &,
VULKAN_HPP_NAMESPACE::DeviceMemory const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(subresource, offset, extent, memory, memoryOffset, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SparseImageMemoryBind const &) const = default;
#else
bool operator==(SparseImageMemoryBind const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (subresource == rhs.subresource) && (offset == rhs.offset) && (extent == rhs.extent) && (memory == rhs.memory) &&
(memoryOffset == rhs.memoryOffset) && (flags == rhs.flags);
# endif
}
bool operator!=(SparseImageMemoryBind const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ImageSubresource subresource = {};
VULKAN_HPP_NAMESPACE::Offset3D offset = {};
VULKAN_HPP_NAMESPACE::Extent3D extent = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
VULKAN_HPP_NAMESPACE::SparseMemoryBindFlags flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SparseImageMemoryBind) == sizeof(VkSparseImageMemoryBind),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SparseImageMemoryBind>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SparseImageMemoryBind>::value,
"SparseImageMemoryBind is not nothrow_move_constructible!");
struct SparseImageMemoryBindInfo
{
using NativeType = VkSparseImageMemoryBindInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SparseImageMemoryBindInfo(VULKAN_HPP_NAMESPACE::Image image_ = {},
uint32_t bindCount_ = {},
const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind *pBinds_ = {}) VULKAN_HPP_NOEXCEPT
: image(image_),
bindCount(bindCount_),
pBinds(pBinds_)
{
}
VULKAN_HPP_CONSTEXPR SparseImageMemoryBindInfo(SparseImageMemoryBindInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageMemoryBindInfo(VkSparseImageMemoryBindInfo const &rhs) VULKAN_HPP_NOEXCEPT
: SparseImageMemoryBindInfo(*reinterpret_cast<SparseImageMemoryBindInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SparseImageMemoryBindInfo(VULKAN_HPP_NAMESPACE::Image image_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind> const &binds_)
: image(image_)
, bindCount(static_cast<uint32_t>(binds_.size()))
, pBinds(binds_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SparseImageMemoryBindInfo &operator=(SparseImageMemoryBindInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageMemoryBindInfo &operator=(VkSparseImageMemoryBindInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryBindInfo &setImage(VULKAN_HPP_NAMESPACE::Image image_) VULKAN_HPP_NOEXCEPT
{
image = image_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryBindInfo &setBindCount(uint32_t bindCount_) VULKAN_HPP_NOEXCEPT
{
bindCount = bindCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SparseImageMemoryBindInfo &setPBinds(const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind *pBinds_) VULKAN_HPP_NOEXCEPT
{
pBinds = pBinds_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SparseImageMemoryBindInfo &
setBinds(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind> const &binds_) VULKAN_HPP_NOEXCEPT
{
bindCount = static_cast<uint32_t>(binds_.size());
pBinds = binds_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSparseImageMemoryBindInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSparseImageMemoryBindInfo *>(this);
}
explicit operator VkSparseImageMemoryBindInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSparseImageMemoryBindInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Image const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(image, bindCount, pBinds);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SparseImageMemoryBindInfo const &) const = default;
#else
bool operator==(SparseImageMemoryBindInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (image == rhs.image) && (bindCount == rhs.bindCount) && (pBinds == rhs.pBinds);
# endif
}
bool operator!=(SparseImageMemoryBindInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Image image = {};
uint32_t bindCount = {};
const VULKAN_HPP_NAMESPACE::SparseImageMemoryBind *pBinds = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo) == sizeof(VkSparseImageMemoryBindInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo>::value,
"SparseImageMemoryBindInfo is not nothrow_move_constructible!");
struct BindSparseInfo
{
using NativeType = VkBindSparseInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBindSparseInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BindSparseInfo(uint32_t waitSemaphoreCount_ = {},
const VULKAN_HPP_NAMESPACE::Semaphore *pWaitSemaphores_ = {},
uint32_t bufferBindCount_ = {},
const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo *pBufferBinds_ = {},
uint32_t imageOpaqueBindCount_ = {},
const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo *pImageOpaqueBinds_ = {},
uint32_t imageBindCount_ = {},
const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo *pImageBinds_ = {},
uint32_t signalSemaphoreCount_ = {},
const VULKAN_HPP_NAMESPACE::Semaphore *pSignalSemaphores_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
waitSemaphoreCount(waitSemaphoreCount_),
pWaitSemaphores(pWaitSemaphores_),
bufferBindCount(bufferBindCount_),
pBufferBinds(pBufferBinds_),
imageOpaqueBindCount(imageOpaqueBindCount_),
pImageOpaqueBinds(pImageOpaqueBinds_),
imageBindCount(imageBindCount_),
pImageBinds(pImageBinds_),
signalSemaphoreCount(signalSemaphoreCount_),
pSignalSemaphores(pSignalSemaphores_)
{
}
VULKAN_HPP_CONSTEXPR BindSparseInfo(BindSparseInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindSparseInfo(VkBindSparseInfo const &rhs) VULKAN_HPP_NOEXCEPT : BindSparseInfo(*reinterpret_cast<BindSparseInfo const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindSparseInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &waitSemaphores_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo> const &bufferBinds_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo> const &imageOpaqueBinds_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo> const &imageBinds_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &signalSemaphores_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, waitSemaphoreCount(static_cast<uint32_t>(waitSemaphores_.size()))
, pWaitSemaphores(waitSemaphores_.data())
, bufferBindCount(static_cast<uint32_t>(bufferBinds_.size()))
, pBufferBinds(bufferBinds_.data())
, imageOpaqueBindCount(static_cast<uint32_t>(imageOpaqueBinds_.size()))
, pImageOpaqueBinds(imageOpaqueBinds_.data())
, imageBindCount(static_cast<uint32_t>(imageBinds_.size()))
, pImageBinds(imageBinds_.data())
, signalSemaphoreCount(static_cast<uint32_t>(signalSemaphores_.size()))
, pSignalSemaphores(signalSemaphores_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BindSparseInfo &operator=(BindSparseInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindSparseInfo &operator=(VkBindSparseInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindSparseInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BindSparseInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindSparseInfo &setWaitSemaphoreCount(uint32_t waitSemaphoreCount_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreCount = waitSemaphoreCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindSparseInfo &setPWaitSemaphores(const VULKAN_HPP_NAMESPACE::Semaphore *pWaitSemaphores_) VULKAN_HPP_NOEXCEPT
{
pWaitSemaphores = pWaitSemaphores_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindSparseInfo &
setWaitSemaphores(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &waitSemaphores_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreCount = static_cast<uint32_t>(waitSemaphores_.size());
pWaitSemaphores = waitSemaphores_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 BindSparseInfo &setBufferBindCount(uint32_t bufferBindCount_) VULKAN_HPP_NOEXCEPT
{
bufferBindCount = bufferBindCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindSparseInfo &setPBufferBinds(const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo *pBufferBinds_) VULKAN_HPP_NOEXCEPT
{
pBufferBinds = pBufferBinds_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindSparseInfo &setBufferBinds(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo> const &bufferBinds_) VULKAN_HPP_NOEXCEPT
{
bufferBindCount = static_cast<uint32_t>(bufferBinds_.size());
pBufferBinds = bufferBinds_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 BindSparseInfo &setImageOpaqueBindCount(uint32_t imageOpaqueBindCount_) VULKAN_HPP_NOEXCEPT
{
imageOpaqueBindCount = imageOpaqueBindCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindSparseInfo &
setPImageOpaqueBinds(const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo *pImageOpaqueBinds_) VULKAN_HPP_NOEXCEPT
{
pImageOpaqueBinds = pImageOpaqueBinds_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindSparseInfo &setImageOpaqueBinds(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo> const &imageOpaqueBinds_) VULKAN_HPP_NOEXCEPT
{
imageOpaqueBindCount = static_cast<uint32_t>(imageOpaqueBinds_.size());
pImageOpaqueBinds = imageOpaqueBinds_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 BindSparseInfo &setImageBindCount(uint32_t imageBindCount_) VULKAN_HPP_NOEXCEPT
{
imageBindCount = imageBindCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindSparseInfo &setPImageBinds(const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo *pImageBinds_) VULKAN_HPP_NOEXCEPT
{
pImageBinds = pImageBinds_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindSparseInfo &setImageBinds(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo> const &imageBinds_)
VULKAN_HPP_NOEXCEPT
{
imageBindCount = static_cast<uint32_t>(imageBinds_.size());
pImageBinds = imageBinds_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 BindSparseInfo &setSignalSemaphoreCount(uint32_t signalSemaphoreCount_) VULKAN_HPP_NOEXCEPT
{
signalSemaphoreCount = signalSemaphoreCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindSparseInfo &setPSignalSemaphores(const VULKAN_HPP_NAMESPACE::Semaphore *pSignalSemaphores_) VULKAN_HPP_NOEXCEPT
{
pSignalSemaphores = pSignalSemaphores_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BindSparseInfo &
setSignalSemaphores(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &signalSemaphores_) VULKAN_HPP_NOEXCEPT
{
signalSemaphoreCount = static_cast<uint32_t>(signalSemaphores_.size());
pSignalSemaphores = signalSemaphores_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBindSparseInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBindSparseInfo *>(this);
}
explicit operator VkBindSparseInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBindSparseInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Semaphore *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Semaphore *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
waitSemaphoreCount,
pWaitSemaphores,
bufferBindCount,
pBufferBinds,
imageOpaqueBindCount,
pImageOpaqueBinds,
imageBindCount,
pImageBinds,
signalSemaphoreCount,
pSignalSemaphores);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BindSparseInfo const &) const = default;
#else
bool operator==(BindSparseInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (waitSemaphoreCount == rhs.waitSemaphoreCount) &&
(pWaitSemaphores == rhs.pWaitSemaphores) && (bufferBindCount == rhs.bufferBindCount) && (pBufferBinds == rhs.pBufferBinds) &&
(imageOpaqueBindCount == rhs.imageOpaqueBindCount) && (pImageOpaqueBinds == rhs.pImageOpaqueBinds) &&
(imageBindCount == rhs.imageBindCount) && (pImageBinds == rhs.pImageBinds) && (signalSemaphoreCount == rhs.signalSemaphoreCount) &&
(pSignalSemaphores == rhs.pSignalSemaphores);
# endif
}
bool operator!=(BindSparseInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBindSparseInfo;
const void *pNext = {};
uint32_t waitSemaphoreCount = {};
const VULKAN_HPP_NAMESPACE::Semaphore *pWaitSemaphores = {};
uint32_t bufferBindCount = {};
const VULKAN_HPP_NAMESPACE::SparseBufferMemoryBindInfo *pBufferBinds = {};
uint32_t imageOpaqueBindCount = {};
const VULKAN_HPP_NAMESPACE::SparseImageOpaqueMemoryBindInfo *pImageOpaqueBinds = {};
uint32_t imageBindCount = {};
const VULKAN_HPP_NAMESPACE::SparseImageMemoryBindInfo *pImageBinds = {};
uint32_t signalSemaphoreCount = {};
const VULKAN_HPP_NAMESPACE::Semaphore *pSignalSemaphores = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BindSparseInfo) == sizeof(VkBindSparseInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BindSparseInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BindSparseInfo>::value,
"BindSparseInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBindSparseInfo>
{
using Type = BindSparseInfo;
};
struct BindVertexBufferIndirectCommandNV
{
using NativeType = VkBindVertexBufferIndirectCommandNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BindVertexBufferIndirectCommandNV(VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress_ = {},
uint32_t size_ = {},
uint32_t stride_ = {}) VULKAN_HPP_NOEXCEPT
: bufferAddress(bufferAddress_),
size(size_),
stride(stride_)
{
}
VULKAN_HPP_CONSTEXPR BindVertexBufferIndirectCommandNV(BindVertexBufferIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindVertexBufferIndirectCommandNV(VkBindVertexBufferIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT
: BindVertexBufferIndirectCommandNV(*reinterpret_cast<BindVertexBufferIndirectCommandNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BindVertexBufferIndirectCommandNV &operator=(BindVertexBufferIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
BindVertexBufferIndirectCommandNV &operator=(VkBindVertexBufferIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BindVertexBufferIndirectCommandNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BindVertexBufferIndirectCommandNV &setBufferAddress(VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress_) VULKAN_HPP_NOEXCEPT
{
bufferAddress = bufferAddress_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindVertexBufferIndirectCommandNV &setSize(uint32_t size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BindVertexBufferIndirectCommandNV &setStride(uint32_t stride_) VULKAN_HPP_NOEXCEPT
{
stride = stride_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBindVertexBufferIndirectCommandNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBindVertexBufferIndirectCommandNV *>(this);
}
explicit operator VkBindVertexBufferIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBindVertexBufferIndirectCommandNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DeviceAddress const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(bufferAddress, size, stride);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BindVertexBufferIndirectCommandNV const &) const = default;
#else
bool operator==(BindVertexBufferIndirectCommandNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (bufferAddress == rhs.bufferAddress) && (size == rhs.size) && (stride == rhs.stride);
# endif
}
bool operator!=(BindVertexBufferIndirectCommandNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DeviceAddress bufferAddress = {};
uint32_t size = {};
uint32_t stride = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BindVertexBufferIndirectCommandNV) == sizeof(VkBindVertexBufferIndirectCommandNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BindVertexBufferIndirectCommandNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BindVertexBufferIndirectCommandNV>::value,
"BindVertexBufferIndirectCommandNV is not nothrow_move_constructible!");
struct ImageSubresourceLayers
{
using NativeType = VkImageSubresourceLayers;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageSubresourceLayers(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {},
uint32_t mipLevel_ = {},
uint32_t baseArrayLayer_ = {},
uint32_t layerCount_ = {}) VULKAN_HPP_NOEXCEPT
: aspectMask(aspectMask_),
mipLevel(mipLevel_),
baseArrayLayer(baseArrayLayer_),
layerCount(layerCount_)
{
}
VULKAN_HPP_CONSTEXPR ImageSubresourceLayers(ImageSubresourceLayers const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageSubresourceLayers(VkImageSubresourceLayers const &rhs) VULKAN_HPP_NOEXCEPT
: ImageSubresourceLayers(*reinterpret_cast<ImageSubresourceLayers const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageSubresourceLayers &operator=(ImageSubresourceLayers const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageSubresourceLayers &operator=(VkImageSubresourceLayers const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageSubresourceLayers &setAspectMask(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_) VULKAN_HPP_NOEXCEPT
{
aspectMask = aspectMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageSubresourceLayers &setMipLevel(uint32_t mipLevel_) VULKAN_HPP_NOEXCEPT
{
mipLevel = mipLevel_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageSubresourceLayers &setBaseArrayLayer(uint32_t baseArrayLayer_) VULKAN_HPP_NOEXCEPT
{
baseArrayLayer = baseArrayLayer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageSubresourceLayers &setLayerCount(uint32_t layerCount_) VULKAN_HPP_NOEXCEPT
{
layerCount = layerCount_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageSubresourceLayers const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageSubresourceLayers *>(this);
}
explicit operator VkImageSubresourceLayers &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageSubresourceLayers *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ImageAspectFlags const &, uint32_t const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(aspectMask, mipLevel, baseArrayLayer, layerCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageSubresourceLayers const &) const = default;
#else
bool operator==(ImageSubresourceLayers const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (aspectMask == rhs.aspectMask) && (mipLevel == rhs.mipLevel) && (baseArrayLayer == rhs.baseArrayLayer) && (layerCount == rhs.layerCount);
# endif
}
bool operator!=(ImageSubresourceLayers const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
uint32_t mipLevel = {};
uint32_t baseArrayLayer = {};
uint32_t layerCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers) == sizeof(VkImageSubresourceLayers),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageSubresourceLayers>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageSubresourceLayers>::value,
"ImageSubresourceLayers is not nothrow_move_constructible!");
struct ImageBlit2
{
using NativeType = VkImageBlit2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageBlit2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 ImageBlit2(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {},
std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const &srcOffsets_ = {},
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {},
std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const &dstOffsets_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcSubresource(srcSubresource_),
srcOffsets(srcOffsets_),
dstSubresource(dstSubresource_),
dstOffsets(dstOffsets_)
{
}
VULKAN_HPP_CONSTEXPR_14 ImageBlit2(ImageBlit2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageBlit2(VkImageBlit2 const &rhs) VULKAN_HPP_NOEXCEPT : ImageBlit2(*reinterpret_cast<ImageBlit2 const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageBlit2 &operator=(ImageBlit2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageBlit2 &operator=(VkImageBlit2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageBlit2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageBlit2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageBlit2 &setSrcSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &srcSubresource_) VULKAN_HPP_NOEXCEPT
{
srcSubresource = srcSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageBlit2 &setSrcOffsets(std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const &srcOffsets_) VULKAN_HPP_NOEXCEPT
{
srcOffsets = srcOffsets_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageBlit2 &setDstSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &dstSubresource_) VULKAN_HPP_NOEXCEPT
{
dstSubresource = dstSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageBlit2 &setDstOffsets(std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const &dstOffsets_) VULKAN_HPP_NOEXCEPT
{
dstOffsets = dstOffsets_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageBlit2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageBlit2 *>(this);
}
explicit operator VkImageBlit2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageBlit2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcSubresource, srcOffsets, dstSubresource, dstOffsets);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageBlit2 const &) const = default;
#else
bool operator==(ImageBlit2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcSubresource == rhs.srcSubresource) && (srcOffsets == rhs.srcOffsets) &&
(dstSubresource == rhs.dstSubresource) && (dstOffsets == rhs.dstOffsets);
# endif
}
bool operator!=(ImageBlit2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageBlit2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> srcOffsets = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> dstOffsets = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageBlit2) == sizeof(VkImageBlit2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageBlit2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageBlit2>::value, "ImageBlit2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageBlit2>
{
using Type = ImageBlit2;
};
using ImageBlit2KHR = ImageBlit2;
struct BlitImageInfo2
{
using NativeType = VkBlitImageInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBlitImageInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2(VULKAN_HPP_NAMESPACE::Image srcImage_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::Image dstImage_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
uint32_t regionCount_ = {},
const VULKAN_HPP_NAMESPACE::ImageBlit2 *pRegions_ = {},
VULKAN_HPP_NAMESPACE::Filter filter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcImage(srcImage_),
srcImageLayout(srcImageLayout_),
dstImage(dstImage_),
dstImageLayout(dstImageLayout_),
regionCount(regionCount_),
pRegions(pRegions_),
filter(filter_)
{
}
VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2(BlitImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
BlitImageInfo2(VkBlitImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT : BlitImageInfo2(*reinterpret_cast<BlitImageInfo2 const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BlitImageInfo2(VULKAN_HPP_NAMESPACE::Image srcImage_,
VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_,
VULKAN_HPP_NAMESPACE::Image dstImage_,
VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageBlit2> const &regions_,
VULKAN_HPP_NAMESPACE::Filter filter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest,
const void *pNext_ = nullptr)
: pNext(pNext_)
, srcImage(srcImage_)
, srcImageLayout(srcImageLayout_)
, dstImage(dstImage_)
, dstImageLayout(dstImageLayout_)
, regionCount(static_cast<uint32_t>(regions_.size()))
, pRegions(regions_.data())
, filter(filter_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BlitImageInfo2 &operator=(BlitImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
BlitImageInfo2 &operator=(VkBlitImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BlitImageInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2 &setSrcImage(VULKAN_HPP_NAMESPACE::Image srcImage_) VULKAN_HPP_NOEXCEPT
{
srcImage = srcImage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2 &setSrcImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_) VULKAN_HPP_NOEXCEPT
{
srcImageLayout = srcImageLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2 &setDstImage(VULKAN_HPP_NAMESPACE::Image dstImage_) VULKAN_HPP_NOEXCEPT
{
dstImage = dstImage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2 &setDstImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_) VULKAN_HPP_NOEXCEPT
{
dstImageLayout = dstImageLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2 &setRegionCount(uint32_t regionCount_) VULKAN_HPP_NOEXCEPT
{
regionCount = regionCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2 &setPRegions(const VULKAN_HPP_NAMESPACE::ImageBlit2 *pRegions_) VULKAN_HPP_NOEXCEPT
{
pRegions = pRegions_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BlitImageInfo2 &setRegions(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageBlit2> const &regions_) VULKAN_HPP_NOEXCEPT
{
regionCount = static_cast<uint32_t>(regions_.size());
pRegions = regions_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 BlitImageInfo2 &setFilter(VULKAN_HPP_NAMESPACE::Filter filter_) VULKAN_HPP_NOEXCEPT
{
filter = filter_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBlitImageInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBlitImageInfo2 *>(this);
}
explicit operator VkBlitImageInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBlitImageInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Image const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
VULKAN_HPP_NAMESPACE::Image const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ImageBlit2 *const &,
VULKAN_HPP_NAMESPACE::Filter const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions, filter);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BlitImageInfo2 const &) const = default;
#else
bool operator==(BlitImageInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcImage == rhs.srcImage) && (srcImageLayout == rhs.srcImageLayout) &&
(dstImage == rhs.dstImage) && (dstImageLayout == rhs.dstImageLayout) && (regionCount == rhs.regionCount) && (pRegions == rhs.pRegions) &&
(filter == rhs.filter);
# endif
}
bool operator!=(BlitImageInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBlitImageInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Image srcImage = {};
VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::Image dstImage = {};
VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
uint32_t regionCount = {};
const VULKAN_HPP_NAMESPACE::ImageBlit2 *pRegions = {};
VULKAN_HPP_NAMESPACE::Filter filter = VULKAN_HPP_NAMESPACE::Filter::eNearest;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BlitImageInfo2) == sizeof(VkBlitImageInfo2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BlitImageInfo2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BlitImageInfo2>::value,
"BlitImageInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBlitImageInfo2>
{
using Type = BlitImageInfo2;
};
using BlitImageInfo2KHR = BlitImageInfo2;
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct BufferCollectionBufferCreateInfoFUCHSIA
{
using NativeType = VkBufferCollectionBufferCreateInfoFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferCollectionBufferCreateInfoFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferCollectionBufferCreateInfoFUCHSIA(VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection_ = {},
uint32_t index_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
collection(collection_),
index(index_)
{
}
VULKAN_HPP_CONSTEXPR BufferCollectionBufferCreateInfoFUCHSIA(BufferCollectionBufferCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCollectionBufferCreateInfoFUCHSIA(VkBufferCollectionBufferCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: BufferCollectionBufferCreateInfoFUCHSIA(*reinterpret_cast<BufferCollectionBufferCreateInfoFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferCollectionBufferCreateInfoFUCHSIA &operator=(BufferCollectionBufferCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCollectionBufferCreateInfoFUCHSIA &operator=(VkBufferCollectionBufferCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCollectionBufferCreateInfoFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferCollectionBufferCreateInfoFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionBufferCreateInfoFUCHSIA &
setCollection(VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection_) VULKAN_HPP_NOEXCEPT
{
collection = collection_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionBufferCreateInfoFUCHSIA &setIndex(uint32_t index_) VULKAN_HPP_NOEXCEPT
{
index = index_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferCollectionBufferCreateInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferCollectionBufferCreateInfoFUCHSIA *>(this);
}
explicit operator VkBufferCollectionBufferCreateInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferCollectionBufferCreateInfoFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, collection, index);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferCollectionBufferCreateInfoFUCHSIA const &) const = default;
# else
bool operator==(BufferCollectionBufferCreateInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (collection == rhs.collection) && (index == rhs.index);
# endif
}
bool operator!=(BufferCollectionBufferCreateInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferCollectionBufferCreateInfoFUCHSIA;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection = {};
uint32_t index = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferCollectionBufferCreateInfoFUCHSIA) == sizeof(VkBufferCollectionBufferCreateInfoFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferCollectionBufferCreateInfoFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferCollectionBufferCreateInfoFUCHSIA>::value,
"BufferCollectionBufferCreateInfoFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferCollectionBufferCreateInfoFUCHSIA>
{
using Type = BufferCollectionBufferCreateInfoFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct BufferCollectionConstraintsInfoFUCHSIA
{
using NativeType = VkBufferCollectionConstraintsInfoFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferCollectionConstraintsInfoFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferCollectionConstraintsInfoFUCHSIA(uint32_t minBufferCount_ = {},
uint32_t maxBufferCount_ = {},
uint32_t minBufferCountForCamping_ = {},
uint32_t minBufferCountForDedicatedSlack_ = {},
uint32_t minBufferCountForSharedSlack_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
minBufferCount(minBufferCount_),
maxBufferCount(maxBufferCount_),
minBufferCountForCamping(minBufferCountForCamping_),
minBufferCountForDedicatedSlack(minBufferCountForDedicatedSlack_),
minBufferCountForSharedSlack(minBufferCountForSharedSlack_)
{
}
VULKAN_HPP_CONSTEXPR BufferCollectionConstraintsInfoFUCHSIA(BufferCollectionConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCollectionConstraintsInfoFUCHSIA(VkBufferCollectionConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: BufferCollectionConstraintsInfoFUCHSIA(*reinterpret_cast<BufferCollectionConstraintsInfoFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferCollectionConstraintsInfoFUCHSIA &operator=(BufferCollectionConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCollectionConstraintsInfoFUCHSIA &operator=(VkBufferCollectionConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferCollectionConstraintsInfoFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionConstraintsInfoFUCHSIA &setMinBufferCount(uint32_t minBufferCount_) VULKAN_HPP_NOEXCEPT
{
minBufferCount = minBufferCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionConstraintsInfoFUCHSIA &setMaxBufferCount(uint32_t maxBufferCount_) VULKAN_HPP_NOEXCEPT
{
maxBufferCount = maxBufferCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionConstraintsInfoFUCHSIA &setMinBufferCountForCamping(uint32_t minBufferCountForCamping_) VULKAN_HPP_NOEXCEPT
{
minBufferCountForCamping = minBufferCountForCamping_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionConstraintsInfoFUCHSIA &
setMinBufferCountForDedicatedSlack(uint32_t minBufferCountForDedicatedSlack_) VULKAN_HPP_NOEXCEPT
{
minBufferCountForDedicatedSlack = minBufferCountForDedicatedSlack_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionConstraintsInfoFUCHSIA &
setMinBufferCountForSharedSlack(uint32_t minBufferCountForSharedSlack_) VULKAN_HPP_NOEXCEPT
{
minBufferCountForSharedSlack = minBufferCountForSharedSlack_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferCollectionConstraintsInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferCollectionConstraintsInfoFUCHSIA *>(this);
}
explicit operator VkBufferCollectionConstraintsInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferCollectionConstraintsInfoFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, minBufferCount, maxBufferCount, minBufferCountForCamping, minBufferCountForDedicatedSlack, minBufferCountForSharedSlack);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferCollectionConstraintsInfoFUCHSIA const &) const = default;
# else
bool operator==(BufferCollectionConstraintsInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (minBufferCount == rhs.minBufferCount) && (maxBufferCount == rhs.maxBufferCount) &&
(minBufferCountForCamping == rhs.minBufferCountForCamping) && (minBufferCountForDedicatedSlack == rhs.minBufferCountForDedicatedSlack) &&
(minBufferCountForSharedSlack == rhs.minBufferCountForSharedSlack);
# endif
}
bool operator!=(BufferCollectionConstraintsInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferCollectionConstraintsInfoFUCHSIA;
const void *pNext = {};
uint32_t minBufferCount = {};
uint32_t maxBufferCount = {};
uint32_t minBufferCountForCamping = {};
uint32_t minBufferCountForDedicatedSlack = {};
uint32_t minBufferCountForSharedSlack = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA) == sizeof(VkBufferCollectionConstraintsInfoFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA>::value,
"BufferCollectionConstraintsInfoFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferCollectionConstraintsInfoFUCHSIA>
{
using Type = BufferCollectionConstraintsInfoFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct BufferCollectionCreateInfoFUCHSIA
{
using NativeType = VkBufferCollectionCreateInfoFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferCollectionCreateInfoFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferCollectionCreateInfoFUCHSIA(zx_handle_t collectionToken_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
collectionToken(collectionToken_)
{
}
VULKAN_HPP_CONSTEXPR BufferCollectionCreateInfoFUCHSIA(BufferCollectionCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCollectionCreateInfoFUCHSIA(VkBufferCollectionCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: BufferCollectionCreateInfoFUCHSIA(*reinterpret_cast<BufferCollectionCreateInfoFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferCollectionCreateInfoFUCHSIA &operator=(BufferCollectionCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCollectionCreateInfoFUCHSIA &operator=(VkBufferCollectionCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCollectionCreateInfoFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferCollectionCreateInfoFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionCreateInfoFUCHSIA &setCollectionToken(zx_handle_t collectionToken_) VULKAN_HPP_NOEXCEPT
{
collectionToken = collectionToken_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferCollectionCreateInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferCollectionCreateInfoFUCHSIA *>(this);
}
explicit operator VkBufferCollectionCreateInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferCollectionCreateInfoFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, zx_handle_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, collectionToken);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(BufferCollectionCreateInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = memcmp(&collectionToken, &rhs.collectionToken, sizeof(zx_handle_t)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(BufferCollectionCreateInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memcmp(&collectionToken, &rhs.collectionToken, sizeof(zx_handle_t)) == 0);
}
bool operator!=(BufferCollectionCreateInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferCollectionCreateInfoFUCHSIA;
const void *pNext = {};
zx_handle_t collectionToken = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferCollectionCreateInfoFUCHSIA) == sizeof(VkBufferCollectionCreateInfoFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferCollectionCreateInfoFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferCollectionCreateInfoFUCHSIA>::value,
"BufferCollectionCreateInfoFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferCollectionCreateInfoFUCHSIA>
{
using Type = BufferCollectionCreateInfoFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct BufferCollectionImageCreateInfoFUCHSIA
{
using NativeType = VkBufferCollectionImageCreateInfoFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferCollectionImageCreateInfoFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferCollectionImageCreateInfoFUCHSIA(VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection_ = {},
uint32_t index_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
collection(collection_),
index(index_)
{
}
VULKAN_HPP_CONSTEXPR BufferCollectionImageCreateInfoFUCHSIA(BufferCollectionImageCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCollectionImageCreateInfoFUCHSIA(VkBufferCollectionImageCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: BufferCollectionImageCreateInfoFUCHSIA(*reinterpret_cast<BufferCollectionImageCreateInfoFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferCollectionImageCreateInfoFUCHSIA &operator=(BufferCollectionImageCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCollectionImageCreateInfoFUCHSIA &operator=(VkBufferCollectionImageCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCollectionImageCreateInfoFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferCollectionImageCreateInfoFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionImageCreateInfoFUCHSIA &
setCollection(VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection_) VULKAN_HPP_NOEXCEPT
{
collection = collection_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionImageCreateInfoFUCHSIA &setIndex(uint32_t index_) VULKAN_HPP_NOEXCEPT
{
index = index_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferCollectionImageCreateInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferCollectionImageCreateInfoFUCHSIA *>(this);
}
explicit operator VkBufferCollectionImageCreateInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferCollectionImageCreateInfoFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, collection, index);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferCollectionImageCreateInfoFUCHSIA const &) const = default;
# else
bool operator==(BufferCollectionImageCreateInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (collection == rhs.collection) && (index == rhs.index);
# endif
}
bool operator!=(BufferCollectionImageCreateInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferCollectionImageCreateInfoFUCHSIA;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection = {};
uint32_t index = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferCollectionImageCreateInfoFUCHSIA) == sizeof(VkBufferCollectionImageCreateInfoFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferCollectionImageCreateInfoFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferCollectionImageCreateInfoFUCHSIA>::value,
"BufferCollectionImageCreateInfoFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferCollectionImageCreateInfoFUCHSIA>
{
using Type = BufferCollectionImageCreateInfoFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct SysmemColorSpaceFUCHSIA
{
using NativeType = VkSysmemColorSpaceFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSysmemColorSpaceFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SysmemColorSpaceFUCHSIA(uint32_t colorSpace_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
colorSpace(colorSpace_)
{
}
VULKAN_HPP_CONSTEXPR SysmemColorSpaceFUCHSIA(SysmemColorSpaceFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
SysmemColorSpaceFUCHSIA(VkSysmemColorSpaceFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: SysmemColorSpaceFUCHSIA(*reinterpret_cast<SysmemColorSpaceFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SysmemColorSpaceFUCHSIA &operator=(SysmemColorSpaceFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
SysmemColorSpaceFUCHSIA &operator=(VkSysmemColorSpaceFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SysmemColorSpaceFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SysmemColorSpaceFUCHSIA &setColorSpace(uint32_t colorSpace_) VULKAN_HPP_NOEXCEPT
{
colorSpace = colorSpace_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSysmemColorSpaceFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSysmemColorSpaceFUCHSIA *>(this);
}
explicit operator VkSysmemColorSpaceFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSysmemColorSpaceFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, colorSpace);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SysmemColorSpaceFUCHSIA const &) const = default;
# else
bool operator==(SysmemColorSpaceFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (colorSpace == rhs.colorSpace);
# endif
}
bool operator!=(SysmemColorSpaceFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSysmemColorSpaceFUCHSIA;
const void *pNext = {};
uint32_t colorSpace = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA) == sizeof(VkSysmemColorSpaceFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA>::value,
"SysmemColorSpaceFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSysmemColorSpaceFUCHSIA>
{
using Type = SysmemColorSpaceFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct BufferCollectionPropertiesFUCHSIA
{
using NativeType = VkBufferCollectionPropertiesFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferCollectionPropertiesFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferCollectionPropertiesFUCHSIA(
uint32_t memoryTypeBits_ = {},
uint32_t bufferCount_ = {},
uint32_t createInfoIndex_ = {},
uint64_t sysmemPixelFormat_ = {},
VULKAN_HPP_NAMESPACE::FormatFeatureFlags formatFeatures_ = {},
VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA sysmemColorSpaceIndex_ = {},
VULKAN_HPP_NAMESPACE::ComponentMapping samplerYcbcrConversionComponents_ = {},
VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion suggestedYcbcrModel_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity,
VULKAN_HPP_NAMESPACE::SamplerYcbcrRange suggestedYcbcrRange_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull,
VULKAN_HPP_NAMESPACE::ChromaLocation suggestedXChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven,
VULKAN_HPP_NAMESPACE::ChromaLocation suggestedYChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven,
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memoryTypeBits(memoryTypeBits_),
bufferCount(bufferCount_),
createInfoIndex(createInfoIndex_),
sysmemPixelFormat(sysmemPixelFormat_),
formatFeatures(formatFeatures_),
sysmemColorSpaceIndex(sysmemColorSpaceIndex_),
samplerYcbcrConversionComponents(samplerYcbcrConversionComponents_),
suggestedYcbcrModel(suggestedYcbcrModel_),
suggestedYcbcrRange(suggestedYcbcrRange_),
suggestedXChromaOffset(suggestedXChromaOffset_),
suggestedYChromaOffset(suggestedYChromaOffset_)
{
}
VULKAN_HPP_CONSTEXPR BufferCollectionPropertiesFUCHSIA(BufferCollectionPropertiesFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCollectionPropertiesFUCHSIA(VkBufferCollectionPropertiesFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: BufferCollectionPropertiesFUCHSIA(*reinterpret_cast<BufferCollectionPropertiesFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferCollectionPropertiesFUCHSIA &operator=(BufferCollectionPropertiesFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCollectionPropertiesFUCHSIA &operator=(VkBufferCollectionPropertiesFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCollectionPropertiesFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferCollectionPropertiesFUCHSIA &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionPropertiesFUCHSIA &setMemoryTypeBits(uint32_t memoryTypeBits_) VULKAN_HPP_NOEXCEPT
{
memoryTypeBits = memoryTypeBits_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionPropertiesFUCHSIA &setBufferCount(uint32_t bufferCount_) VULKAN_HPP_NOEXCEPT
{
bufferCount = bufferCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionPropertiesFUCHSIA &setCreateInfoIndex(uint32_t createInfoIndex_) VULKAN_HPP_NOEXCEPT
{
createInfoIndex = createInfoIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionPropertiesFUCHSIA &setSysmemPixelFormat(uint64_t sysmemPixelFormat_) VULKAN_HPP_NOEXCEPT
{
sysmemPixelFormat = sysmemPixelFormat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionPropertiesFUCHSIA &
setFormatFeatures(VULKAN_HPP_NAMESPACE::FormatFeatureFlags formatFeatures_) VULKAN_HPP_NOEXCEPT
{
formatFeatures = formatFeatures_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionPropertiesFUCHSIA &
setSysmemColorSpaceIndex(VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA const &sysmemColorSpaceIndex_) VULKAN_HPP_NOEXCEPT
{
sysmemColorSpaceIndex = sysmemColorSpaceIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionPropertiesFUCHSIA &
setSamplerYcbcrConversionComponents(VULKAN_HPP_NAMESPACE::ComponentMapping const &samplerYcbcrConversionComponents_) VULKAN_HPP_NOEXCEPT
{
samplerYcbcrConversionComponents = samplerYcbcrConversionComponents_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionPropertiesFUCHSIA &
setSuggestedYcbcrModel(VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion suggestedYcbcrModel_) VULKAN_HPP_NOEXCEPT
{
suggestedYcbcrModel = suggestedYcbcrModel_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionPropertiesFUCHSIA &
setSuggestedYcbcrRange(VULKAN_HPP_NAMESPACE::SamplerYcbcrRange suggestedYcbcrRange_) VULKAN_HPP_NOEXCEPT
{
suggestedYcbcrRange = suggestedYcbcrRange_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionPropertiesFUCHSIA &
setSuggestedXChromaOffset(VULKAN_HPP_NAMESPACE::ChromaLocation suggestedXChromaOffset_) VULKAN_HPP_NOEXCEPT
{
suggestedXChromaOffset = suggestedXChromaOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCollectionPropertiesFUCHSIA &
setSuggestedYChromaOffset(VULKAN_HPP_NAMESPACE::ChromaLocation suggestedYChromaOffset_) VULKAN_HPP_NOEXCEPT
{
suggestedYChromaOffset = suggestedYChromaOffset_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferCollectionPropertiesFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferCollectionPropertiesFUCHSIA *>(this);
}
explicit operator VkBufferCollectionPropertiesFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferCollectionPropertiesFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint64_t const &,
VULKAN_HPP_NAMESPACE::FormatFeatureFlags const &,
VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA const &,
VULKAN_HPP_NAMESPACE::ComponentMapping const &,
VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion const &,
VULKAN_HPP_NAMESPACE::SamplerYcbcrRange const &,
VULKAN_HPP_NAMESPACE::ChromaLocation const &,
VULKAN_HPP_NAMESPACE::ChromaLocation const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
memoryTypeBits,
bufferCount,
createInfoIndex,
sysmemPixelFormat,
formatFeatures,
sysmemColorSpaceIndex,
samplerYcbcrConversionComponents,
suggestedYcbcrModel,
suggestedYcbcrRange,
suggestedXChromaOffset,
suggestedYChromaOffset);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferCollectionPropertiesFUCHSIA const &) const = default;
# else
bool operator==(BufferCollectionPropertiesFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memoryTypeBits == rhs.memoryTypeBits) && (bufferCount == rhs.bufferCount) &&
(createInfoIndex == rhs.createInfoIndex) && (sysmemPixelFormat == rhs.sysmemPixelFormat) && (formatFeatures == rhs.formatFeatures) &&
(sysmemColorSpaceIndex == rhs.sysmemColorSpaceIndex) && (samplerYcbcrConversionComponents == rhs.samplerYcbcrConversionComponents) &&
(suggestedYcbcrModel == rhs.suggestedYcbcrModel) && (suggestedYcbcrRange == rhs.suggestedYcbcrRange) &&
(suggestedXChromaOffset == rhs.suggestedXChromaOffset) && (suggestedYChromaOffset == rhs.suggestedYChromaOffset);
# endif
}
bool operator!=(BufferCollectionPropertiesFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferCollectionPropertiesFUCHSIA;
void *pNext = {};
uint32_t memoryTypeBits = {};
uint32_t bufferCount = {};
uint32_t createInfoIndex = {};
uint64_t sysmemPixelFormat = {};
VULKAN_HPP_NAMESPACE::FormatFeatureFlags formatFeatures = {};
VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA sysmemColorSpaceIndex = {};
VULKAN_HPP_NAMESPACE::ComponentMapping samplerYcbcrConversionComponents = {};
VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion suggestedYcbcrModel = VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity;
VULKAN_HPP_NAMESPACE::SamplerYcbcrRange suggestedYcbcrRange = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull;
VULKAN_HPP_NAMESPACE::ChromaLocation suggestedXChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
VULKAN_HPP_NAMESPACE::ChromaLocation suggestedYChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferCollectionPropertiesFUCHSIA) == sizeof(VkBufferCollectionPropertiesFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferCollectionPropertiesFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferCollectionPropertiesFUCHSIA>::value,
"BufferCollectionPropertiesFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferCollectionPropertiesFUCHSIA>
{
using Type = BufferCollectionPropertiesFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
struct BufferCreateInfo
{
using NativeType = VkBufferCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferCreateInfo(VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_ = {},
VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive,
uint32_t queueFamilyIndexCount_ = {},
const uint32_t *pQueueFamilyIndices_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
size(size_),
usage(usage_),
sharingMode(sharingMode_),
queueFamilyIndexCount(queueFamilyIndexCount_),
pQueueFamilyIndices(pQueueFamilyIndices_)
{
}
VULKAN_HPP_CONSTEXPR BufferCreateInfo(BufferCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCreateInfo(VkBufferCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT : BufferCreateInfo(*reinterpret_cast<BufferCreateInfo const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BufferCreateInfo(VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_,
VULKAN_HPP_NAMESPACE::DeviceSize size_,
VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_,
VULKAN_HPP_NAMESPACE::SharingMode sharingMode_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &queueFamilyIndices_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, size(size_)
, usage(usage_)
, sharingMode(sharingMode_)
, queueFamilyIndexCount(static_cast<uint32_t>(queueFamilyIndices_.size()))
, pQueueFamilyIndices(queueFamilyIndices_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferCreateInfo &operator=(BufferCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCreateInfo &operator=(VkBufferCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCreateInfo &setSize(VULKAN_HPP_NAMESPACE::DeviceSize size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCreateInfo &setUsage(VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_) VULKAN_HPP_NOEXCEPT
{
usage = usage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCreateInfo &setSharingMode(VULKAN_HPP_NAMESPACE::SharingMode sharingMode_) VULKAN_HPP_NOEXCEPT
{
sharingMode = sharingMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCreateInfo &setQueueFamilyIndexCount(uint32_t queueFamilyIndexCount_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndexCount = queueFamilyIndexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCreateInfo &setPQueueFamilyIndices(const uint32_t *pQueueFamilyIndices_) VULKAN_HPP_NOEXCEPT
{
pQueueFamilyIndices = pQueueFamilyIndices_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
BufferCreateInfo &setQueueFamilyIndices(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &queueFamilyIndices_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndexCount = static_cast<uint32_t>(queueFamilyIndices_.size());
pQueueFamilyIndices = queueFamilyIndices_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferCreateInfo *>(this);
}
explicit operator VkBufferCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::BufferCreateFlags const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::BufferUsageFlags const &,
VULKAN_HPP_NAMESPACE::SharingMode const &,
uint32_t const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, size, usage, sharingMode, queueFamilyIndexCount, pQueueFamilyIndices);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferCreateInfo const &) const = default;
#else
bool operator==(BufferCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (size == rhs.size) && (usage == rhs.usage) &&
(sharingMode == rhs.sharingMode) && (queueFamilyIndexCount == rhs.queueFamilyIndexCount) && (pQueueFamilyIndices == rhs.pQueueFamilyIndices);
# endif
}
bool operator!=(BufferCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::BufferCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
VULKAN_HPP_NAMESPACE::BufferUsageFlags usage = {};
VULKAN_HPP_NAMESPACE::SharingMode sharingMode = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive;
uint32_t queueFamilyIndexCount = {};
const uint32_t *pQueueFamilyIndices = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferCreateInfo) == sizeof(VkBufferCreateInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferCreateInfo>::value,
"BufferCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferCreateInfo>
{
using Type = BufferCreateInfo;
};
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct BufferConstraintsInfoFUCHSIA
{
using NativeType = VkBufferConstraintsInfoFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferConstraintsInfoFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferConstraintsInfoFUCHSIA(VULKAN_HPP_NAMESPACE::BufferCreateInfo createInfo_ = {},
VULKAN_HPP_NAMESPACE::FormatFeatureFlags requiredFormatFeatures_ = {},
VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA bufferCollectionConstraints_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
createInfo(createInfo_),
requiredFormatFeatures(requiredFormatFeatures_),
bufferCollectionConstraints(bufferCollectionConstraints_)
{
}
VULKAN_HPP_CONSTEXPR BufferConstraintsInfoFUCHSIA(BufferConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferConstraintsInfoFUCHSIA(VkBufferConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: BufferConstraintsInfoFUCHSIA(*reinterpret_cast<BufferConstraintsInfoFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferConstraintsInfoFUCHSIA &operator=(BufferConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferConstraintsInfoFUCHSIA &operator=(VkBufferConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferConstraintsInfoFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferConstraintsInfoFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferConstraintsInfoFUCHSIA &setCreateInfo(VULKAN_HPP_NAMESPACE::BufferCreateInfo const &createInfo_) VULKAN_HPP_NOEXCEPT
{
createInfo = createInfo_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferConstraintsInfoFUCHSIA &
setRequiredFormatFeatures(VULKAN_HPP_NAMESPACE::FormatFeatureFlags requiredFormatFeatures_) VULKAN_HPP_NOEXCEPT
{
requiredFormatFeatures = requiredFormatFeatures_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferConstraintsInfoFUCHSIA &
setBufferCollectionConstraints(VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA const &bufferCollectionConstraints_) VULKAN_HPP_NOEXCEPT
{
bufferCollectionConstraints = bufferCollectionConstraints_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferConstraintsInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferConstraintsInfoFUCHSIA *>(this);
}
explicit operator VkBufferConstraintsInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferConstraintsInfoFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::BufferCreateInfo const &,
VULKAN_HPP_NAMESPACE::FormatFeatureFlags const &,
VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, createInfo, requiredFormatFeatures, bufferCollectionConstraints);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferConstraintsInfoFUCHSIA const &) const = default;
# else
bool operator==(BufferConstraintsInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (createInfo == rhs.createInfo) && (requiredFormatFeatures == rhs.requiredFormatFeatures) &&
(bufferCollectionConstraints == rhs.bufferCollectionConstraints);
# endif
}
bool operator!=(BufferConstraintsInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferConstraintsInfoFUCHSIA;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::BufferCreateInfo createInfo = {};
VULKAN_HPP_NAMESPACE::FormatFeatureFlags requiredFormatFeatures = {};
VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA bufferCollectionConstraints = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferConstraintsInfoFUCHSIA) == sizeof(VkBufferConstraintsInfoFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferConstraintsInfoFUCHSIA>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferConstraintsInfoFUCHSIA>::value,
"BufferConstraintsInfoFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferConstraintsInfoFUCHSIA>
{
using Type = BufferConstraintsInfoFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
struct BufferCopy
{
using NativeType = VkBufferCopy;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferCopy(VULKAN_HPP_NAMESPACE::DeviceSize srcOffset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize dstOffset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}) VULKAN_HPP_NOEXCEPT
: srcOffset(srcOffset_),
dstOffset(dstOffset_),
size(size_)
{
}
VULKAN_HPP_CONSTEXPR BufferCopy(BufferCopy const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCopy(VkBufferCopy const &rhs) VULKAN_HPP_NOEXCEPT : BufferCopy(*reinterpret_cast<BufferCopy const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferCopy &operator=(BufferCopy const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCopy &operator=(VkBufferCopy const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCopy const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferCopy &setSrcOffset(VULKAN_HPP_NAMESPACE::DeviceSize srcOffset_) VULKAN_HPP_NOEXCEPT
{
srcOffset = srcOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCopy &setDstOffset(VULKAN_HPP_NAMESPACE::DeviceSize dstOffset_) VULKAN_HPP_NOEXCEPT
{
dstOffset = dstOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCopy &setSize(VULKAN_HPP_NAMESPACE::DeviceSize size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferCopy const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferCopy *>(this);
}
explicit operator VkBufferCopy &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferCopy *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DeviceSize const &, VULKAN_HPP_NAMESPACE::DeviceSize const &, VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(srcOffset, dstOffset, size);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferCopy const &) const = default;
#else
bool operator==(BufferCopy const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (srcOffset == rhs.srcOffset) && (dstOffset == rhs.dstOffset) && (size == rhs.size);
# endif
}
bool operator!=(BufferCopy const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DeviceSize srcOffset = {};
VULKAN_HPP_NAMESPACE::DeviceSize dstOffset = {};
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferCopy) == sizeof(VkBufferCopy), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferCopy>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferCopy>::value, "BufferCopy is not nothrow_move_constructible!");
struct BufferCopy2
{
using NativeType = VkBufferCopy2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferCopy2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferCopy2(VULKAN_HPP_NAMESPACE::DeviceSize srcOffset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize dstOffset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcOffset(srcOffset_),
dstOffset(dstOffset_),
size(size_)
{
}
VULKAN_HPP_CONSTEXPR BufferCopy2(BufferCopy2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCopy2(VkBufferCopy2 const &rhs) VULKAN_HPP_NOEXCEPT : BufferCopy2(*reinterpret_cast<BufferCopy2 const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferCopy2 &operator=(BufferCopy2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferCopy2 &operator=(VkBufferCopy2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferCopy2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferCopy2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCopy2 &setSrcOffset(VULKAN_HPP_NAMESPACE::DeviceSize srcOffset_) VULKAN_HPP_NOEXCEPT
{
srcOffset = srcOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCopy2 &setDstOffset(VULKAN_HPP_NAMESPACE::DeviceSize dstOffset_) VULKAN_HPP_NOEXCEPT
{
dstOffset = dstOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferCopy2 &setSize(VULKAN_HPP_NAMESPACE::DeviceSize size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferCopy2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferCopy2 *>(this);
}
explicit operator VkBufferCopy2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferCopy2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcOffset, dstOffset, size);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferCopy2 const &) const = default;
#else
bool operator==(BufferCopy2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcOffset == rhs.srcOffset) && (dstOffset == rhs.dstOffset) && (size == rhs.size);
# endif
}
bool operator!=(BufferCopy2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferCopy2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceSize srcOffset = {};
VULKAN_HPP_NAMESPACE::DeviceSize dstOffset = {};
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferCopy2) == sizeof(VkBufferCopy2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferCopy2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferCopy2>::value, "BufferCopy2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferCopy2>
{
using Type = BufferCopy2;
};
using BufferCopy2KHR = BufferCopy2;
struct BufferDeviceAddressCreateInfoEXT
{
using NativeType = VkBufferDeviceAddressCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferDeviceAddressCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferDeviceAddressCreateInfoEXT(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
deviceAddress(deviceAddress_)
{
}
VULKAN_HPP_CONSTEXPR BufferDeviceAddressCreateInfoEXT(BufferDeviceAddressCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferDeviceAddressCreateInfoEXT(VkBufferDeviceAddressCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: BufferDeviceAddressCreateInfoEXT(*reinterpret_cast<BufferDeviceAddressCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferDeviceAddressCreateInfoEXT &operator=(BufferDeviceAddressCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferDeviceAddressCreateInfoEXT &operator=(VkBufferDeviceAddressCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferDeviceAddressCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferDeviceAddressCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferDeviceAddressCreateInfoEXT &setDeviceAddress(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_) VULKAN_HPP_NOEXCEPT
{
deviceAddress = deviceAddress_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferDeviceAddressCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferDeviceAddressCreateInfoEXT *>(this);
}
explicit operator VkBufferDeviceAddressCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferDeviceAddressCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::DeviceAddress const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, deviceAddress);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferDeviceAddressCreateInfoEXT const &) const = default;
#else
bool operator==(BufferDeviceAddressCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (deviceAddress == rhs.deviceAddress);
# endif
}
bool operator!=(BufferDeviceAddressCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferDeviceAddressCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferDeviceAddressCreateInfoEXT) == sizeof(VkBufferDeviceAddressCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferDeviceAddressCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferDeviceAddressCreateInfoEXT>::value,
"BufferDeviceAddressCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferDeviceAddressCreateInfoEXT>
{
using Type = BufferDeviceAddressCreateInfoEXT;
};
struct BufferDeviceAddressInfo
{
using NativeType = VkBufferDeviceAddressInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferDeviceAddressInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferDeviceAddressInfo(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
buffer(buffer_)
{
}
VULKAN_HPP_CONSTEXPR BufferDeviceAddressInfo(BufferDeviceAddressInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferDeviceAddressInfo(VkBufferDeviceAddressInfo const &rhs) VULKAN_HPP_NOEXCEPT
: BufferDeviceAddressInfo(*reinterpret_cast<BufferDeviceAddressInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferDeviceAddressInfo &operator=(BufferDeviceAddressInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferDeviceAddressInfo &operator=(VkBufferDeviceAddressInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferDeviceAddressInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferDeviceAddressInfo &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferDeviceAddressInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferDeviceAddressInfo *>(this);
}
explicit operator VkBufferDeviceAddressInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferDeviceAddressInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Buffer const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, buffer);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferDeviceAddressInfo const &) const = default;
#else
bool operator==(BufferDeviceAddressInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (buffer == rhs.buffer);
# endif
}
bool operator!=(BufferDeviceAddressInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferDeviceAddressInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo) == sizeof(VkBufferDeviceAddressInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferDeviceAddressInfo>::value,
"BufferDeviceAddressInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferDeviceAddressInfo>
{
using Type = BufferDeviceAddressInfo;
};
using BufferDeviceAddressInfoEXT = BufferDeviceAddressInfo;
using BufferDeviceAddressInfoKHR = BufferDeviceAddressInfo;
struct BufferImageCopy
{
using NativeType = VkBufferImageCopy;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferImageCopy(VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset_ = {},
uint32_t bufferRowLength_ = {},
uint32_t bufferImageHeight_ = {},
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers imageSubresource_ = {},
VULKAN_HPP_NAMESPACE::Offset3D imageOffset_ = {},
VULKAN_HPP_NAMESPACE::Extent3D imageExtent_ = {}) VULKAN_HPP_NOEXCEPT
: bufferOffset(bufferOffset_),
bufferRowLength(bufferRowLength_),
bufferImageHeight(bufferImageHeight_),
imageSubresource(imageSubresource_),
imageOffset(imageOffset_),
imageExtent(imageExtent_)
{
}
VULKAN_HPP_CONSTEXPR BufferImageCopy(BufferImageCopy const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferImageCopy(VkBufferImageCopy const &rhs) VULKAN_HPP_NOEXCEPT : BufferImageCopy(*reinterpret_cast<BufferImageCopy const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferImageCopy &operator=(BufferImageCopy const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferImageCopy &operator=(VkBufferImageCopy const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferImageCopy const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy &setBufferOffset(VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset_) VULKAN_HPP_NOEXCEPT
{
bufferOffset = bufferOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy &setBufferRowLength(uint32_t bufferRowLength_) VULKAN_HPP_NOEXCEPT
{
bufferRowLength = bufferRowLength_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy &setBufferImageHeight(uint32_t bufferImageHeight_) VULKAN_HPP_NOEXCEPT
{
bufferImageHeight = bufferImageHeight_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy &setImageSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &imageSubresource_) VULKAN_HPP_NOEXCEPT
{
imageSubresource = imageSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy &setImageOffset(VULKAN_HPP_NAMESPACE::Offset3D const &imageOffset_) VULKAN_HPP_NOEXCEPT
{
imageOffset = imageOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy &setImageExtent(VULKAN_HPP_NAMESPACE::Extent3D const &imageExtent_) VULKAN_HPP_NOEXCEPT
{
imageExtent = imageExtent_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferImageCopy const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferImageCopy *>(this);
}
explicit operator VkBufferImageCopy &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferImageCopy *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DeviceSize const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::Offset3D const &,
VULKAN_HPP_NAMESPACE::Extent3D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(bufferOffset, bufferRowLength, bufferImageHeight, imageSubresource, imageOffset, imageExtent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferImageCopy const &) const = default;
#else
bool operator==(BufferImageCopy const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (bufferOffset == rhs.bufferOffset) && (bufferRowLength == rhs.bufferRowLength) && (bufferImageHeight == rhs.bufferImageHeight) &&
(imageSubresource == rhs.imageSubresource) && (imageOffset == rhs.imageOffset) && (imageExtent == rhs.imageExtent);
# endif
}
bool operator!=(BufferImageCopy const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset = {};
uint32_t bufferRowLength = {};
uint32_t bufferImageHeight = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers imageSubresource = {};
VULKAN_HPP_NAMESPACE::Offset3D imageOffset = {};
VULKAN_HPP_NAMESPACE::Extent3D imageExtent = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferImageCopy) == sizeof(VkBufferImageCopy), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferImageCopy>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferImageCopy>::value,
"BufferImageCopy is not nothrow_move_constructible!");
struct BufferImageCopy2
{
using NativeType = VkBufferImageCopy2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferImageCopy2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferImageCopy2(VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset_ = {},
uint32_t bufferRowLength_ = {},
uint32_t bufferImageHeight_ = {},
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers imageSubresource_ = {},
VULKAN_HPP_NAMESPACE::Offset3D imageOffset_ = {},
VULKAN_HPP_NAMESPACE::Extent3D imageExtent_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
bufferOffset(bufferOffset_),
bufferRowLength(bufferRowLength_),
bufferImageHeight(bufferImageHeight_),
imageSubresource(imageSubresource_),
imageOffset(imageOffset_),
imageExtent(imageExtent_)
{
}
VULKAN_HPP_CONSTEXPR BufferImageCopy2(BufferImageCopy2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferImageCopy2(VkBufferImageCopy2 const &rhs) VULKAN_HPP_NOEXCEPT : BufferImageCopy2(*reinterpret_cast<BufferImageCopy2 const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferImageCopy2 &operator=(BufferImageCopy2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferImageCopy2 &operator=(VkBufferImageCopy2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferImageCopy2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy2 &setBufferOffset(VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset_) VULKAN_HPP_NOEXCEPT
{
bufferOffset = bufferOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy2 &setBufferRowLength(uint32_t bufferRowLength_) VULKAN_HPP_NOEXCEPT
{
bufferRowLength = bufferRowLength_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy2 &setBufferImageHeight(uint32_t bufferImageHeight_) VULKAN_HPP_NOEXCEPT
{
bufferImageHeight = bufferImageHeight_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy2 &setImageSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &imageSubresource_) VULKAN_HPP_NOEXCEPT
{
imageSubresource = imageSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy2 &setImageOffset(VULKAN_HPP_NAMESPACE::Offset3D const &imageOffset_) VULKAN_HPP_NOEXCEPT
{
imageOffset = imageOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferImageCopy2 &setImageExtent(VULKAN_HPP_NAMESPACE::Extent3D const &imageExtent_) VULKAN_HPP_NOEXCEPT
{
imageExtent = imageExtent_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferImageCopy2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferImageCopy2 *>(this);
}
explicit operator VkBufferImageCopy2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferImageCopy2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::Offset3D const &,
VULKAN_HPP_NAMESPACE::Extent3D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, bufferOffset, bufferRowLength, bufferImageHeight, imageSubresource, imageOffset, imageExtent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferImageCopy2 const &) const = default;
#else
bool operator==(BufferImageCopy2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (bufferOffset == rhs.bufferOffset) && (bufferRowLength == rhs.bufferRowLength) &&
(bufferImageHeight == rhs.bufferImageHeight) && (imageSubresource == rhs.imageSubresource) && (imageOffset == rhs.imageOffset) &&
(imageExtent == rhs.imageExtent);
# endif
}
bool operator!=(BufferImageCopy2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferImageCopy2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceSize bufferOffset = {};
uint32_t bufferRowLength = {};
uint32_t bufferImageHeight = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers imageSubresource = {};
VULKAN_HPP_NAMESPACE::Offset3D imageOffset = {};
VULKAN_HPP_NAMESPACE::Extent3D imageExtent = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferImageCopy2) == sizeof(VkBufferImageCopy2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferImageCopy2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferImageCopy2>::value,
"BufferImageCopy2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferImageCopy2>
{
using Type = BufferImageCopy2;
};
using BufferImageCopy2KHR = BufferImageCopy2;
struct BufferMemoryBarrier
{
using NativeType = VkBufferMemoryBarrier;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferMemoryBarrier;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferMemoryBarrier(VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {},
uint32_t srcQueueFamilyIndex_ = {},
uint32_t dstQueueFamilyIndex_ = {},
VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcAccessMask(srcAccessMask_),
dstAccessMask(dstAccessMask_),
srcQueueFamilyIndex(srcQueueFamilyIndex_),
dstQueueFamilyIndex(dstQueueFamilyIndex_),
buffer(buffer_),
offset(offset_),
size(size_)
{
}
VULKAN_HPP_CONSTEXPR BufferMemoryBarrier(BufferMemoryBarrier const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferMemoryBarrier(VkBufferMemoryBarrier const &rhs) VULKAN_HPP_NOEXCEPT : BufferMemoryBarrier(*reinterpret_cast<BufferMemoryBarrier const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferMemoryBarrier &operator=(BufferMemoryBarrier const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferMemoryBarrier &operator=(VkBufferMemoryBarrier const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferMemoryBarrier const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier &setSrcAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_) VULKAN_HPP_NOEXCEPT
{
srcAccessMask = srcAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier &setDstAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_) VULKAN_HPP_NOEXCEPT
{
dstAccessMask = dstAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier &setSrcQueueFamilyIndex(uint32_t srcQueueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
srcQueueFamilyIndex = srcQueueFamilyIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier &setDstQueueFamilyIndex(uint32_t dstQueueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
dstQueueFamilyIndex = dstQueueFamilyIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier &setOffset(VULKAN_HPP_NAMESPACE::DeviceSize offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier &setSize(VULKAN_HPP_NAMESPACE::DeviceSize size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferMemoryBarrier const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferMemoryBarrier *>(this);
}
explicit operator VkBufferMemoryBarrier &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferMemoryBarrier *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::AccessFlags const &,
VULKAN_HPP_NAMESPACE::AccessFlags const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcAccessMask, dstAccessMask, srcQueueFamilyIndex, dstQueueFamilyIndex, buffer, offset, size);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferMemoryBarrier const &) const = default;
#else
bool operator==(BufferMemoryBarrier const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcAccessMask == rhs.srcAccessMask) && (dstAccessMask == rhs.dstAccessMask) &&
(srcQueueFamilyIndex == rhs.srcQueueFamilyIndex) && (dstQueueFamilyIndex == rhs.dstQueueFamilyIndex) && (buffer == rhs.buffer) &&
(offset == rhs.offset) && (size == rhs.size);
# endif
}
bool operator!=(BufferMemoryBarrier const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferMemoryBarrier;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
uint32_t srcQueueFamilyIndex = {};
uint32_t dstQueueFamilyIndex = {};
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferMemoryBarrier) == sizeof(VkBufferMemoryBarrier), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferMemoryBarrier>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferMemoryBarrier>::value,
"BufferMemoryBarrier is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferMemoryBarrier>
{
using Type = BufferMemoryBarrier;
};
struct BufferMemoryBarrier2
{
using NativeType = VkBufferMemoryBarrier2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferMemoryBarrier2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferMemoryBarrier2(VULKAN_HPP_NAMESPACE::PipelineStageFlags2 srcStageMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags2 srcAccessMask_ = {},
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 dstStageMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags2 dstAccessMask_ = {},
uint32_t srcQueueFamilyIndex_ = {},
uint32_t dstQueueFamilyIndex_ = {},
VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcStageMask(srcStageMask_),
srcAccessMask(srcAccessMask_),
dstStageMask(dstStageMask_),
dstAccessMask(dstAccessMask_),
srcQueueFamilyIndex(srcQueueFamilyIndex_),
dstQueueFamilyIndex(dstQueueFamilyIndex_),
buffer(buffer_),
offset(offset_),
size(size_)
{
}
VULKAN_HPP_CONSTEXPR BufferMemoryBarrier2(BufferMemoryBarrier2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferMemoryBarrier2(VkBufferMemoryBarrier2 const &rhs) VULKAN_HPP_NOEXCEPT
: BufferMemoryBarrier2(*reinterpret_cast<BufferMemoryBarrier2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferMemoryBarrier2 &operator=(BufferMemoryBarrier2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferMemoryBarrier2 &operator=(VkBufferMemoryBarrier2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier2 &setSrcStageMask(VULKAN_HPP_NAMESPACE::PipelineStageFlags2 srcStageMask_) VULKAN_HPP_NOEXCEPT
{
srcStageMask = srcStageMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier2 &setSrcAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags2 srcAccessMask_) VULKAN_HPP_NOEXCEPT
{
srcAccessMask = srcAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier2 &setDstStageMask(VULKAN_HPP_NAMESPACE::PipelineStageFlags2 dstStageMask_) VULKAN_HPP_NOEXCEPT
{
dstStageMask = dstStageMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier2 &setDstAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags2 dstAccessMask_) VULKAN_HPP_NOEXCEPT
{
dstAccessMask = dstAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier2 &setSrcQueueFamilyIndex(uint32_t srcQueueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
srcQueueFamilyIndex = srcQueueFamilyIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier2 &setDstQueueFamilyIndex(uint32_t dstQueueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
dstQueueFamilyIndex = dstQueueFamilyIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier2 &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier2 &setOffset(VULKAN_HPP_NAMESPACE::DeviceSize offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryBarrier2 &setSize(VULKAN_HPP_NAMESPACE::DeviceSize size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferMemoryBarrier2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferMemoryBarrier2 *>(this);
}
explicit operator VkBufferMemoryBarrier2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferMemoryBarrier2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 const &,
VULKAN_HPP_NAMESPACE::AccessFlags2 const &,
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 const &,
VULKAN_HPP_NAMESPACE::AccessFlags2 const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcStageMask, srcAccessMask, dstStageMask, dstAccessMask, srcQueueFamilyIndex, dstQueueFamilyIndex, buffer, offset, size);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferMemoryBarrier2 const &) const = default;
#else
bool operator==(BufferMemoryBarrier2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcStageMask == rhs.srcStageMask) && (srcAccessMask == rhs.srcAccessMask) &&
(dstStageMask == rhs.dstStageMask) && (dstAccessMask == rhs.dstAccessMask) && (srcQueueFamilyIndex == rhs.srcQueueFamilyIndex) &&
(dstQueueFamilyIndex == rhs.dstQueueFamilyIndex) && (buffer == rhs.buffer) && (offset == rhs.offset) && (size == rhs.size);
# endif
}
bool operator!=(BufferMemoryBarrier2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferMemoryBarrier2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 srcStageMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags2 srcAccessMask = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 dstStageMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags2 dstAccessMask = {};
uint32_t srcQueueFamilyIndex = {};
uint32_t dstQueueFamilyIndex = {};
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2) == sizeof(VkBufferMemoryBarrier2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2>::value,
"BufferMemoryBarrier2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferMemoryBarrier2>
{
using Type = BufferMemoryBarrier2;
};
using BufferMemoryBarrier2KHR = BufferMemoryBarrier2;
struct BufferMemoryRequirementsInfo2
{
using NativeType = VkBufferMemoryRequirementsInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferMemoryRequirementsInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferMemoryRequirementsInfo2(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
buffer(buffer_)
{
}
VULKAN_HPP_CONSTEXPR BufferMemoryRequirementsInfo2(BufferMemoryRequirementsInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferMemoryRequirementsInfo2(VkBufferMemoryRequirementsInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
: BufferMemoryRequirementsInfo2(*reinterpret_cast<BufferMemoryRequirementsInfo2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferMemoryRequirementsInfo2 &operator=(BufferMemoryRequirementsInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferMemoryRequirementsInfo2 &operator=(VkBufferMemoryRequirementsInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferMemoryRequirementsInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferMemoryRequirementsInfo2 &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferMemoryRequirementsInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferMemoryRequirementsInfo2 *>(this);
}
explicit operator VkBufferMemoryRequirementsInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferMemoryRequirementsInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Buffer const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, buffer);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferMemoryRequirementsInfo2 const &) const = default;
#else
bool operator==(BufferMemoryRequirementsInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (buffer == rhs.buffer);
# endif
}
bool operator!=(BufferMemoryRequirementsInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferMemoryRequirementsInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2) == sizeof(VkBufferMemoryRequirementsInfo2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferMemoryRequirementsInfo2>::value,
"BufferMemoryRequirementsInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferMemoryRequirementsInfo2>
{
using Type = BufferMemoryRequirementsInfo2;
};
using BufferMemoryRequirementsInfo2KHR = BufferMemoryRequirementsInfo2;
struct BufferOpaqueCaptureAddressCreateInfo
{
using NativeType = VkBufferOpaqueCaptureAddressCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferOpaqueCaptureAddressCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferOpaqueCaptureAddressCreateInfo(uint64_t opaqueCaptureAddress_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
opaqueCaptureAddress(opaqueCaptureAddress_)
{
}
VULKAN_HPP_CONSTEXPR BufferOpaqueCaptureAddressCreateInfo(BufferOpaqueCaptureAddressCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferOpaqueCaptureAddressCreateInfo(VkBufferOpaqueCaptureAddressCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: BufferOpaqueCaptureAddressCreateInfo(*reinterpret_cast<BufferOpaqueCaptureAddressCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferOpaqueCaptureAddressCreateInfo &operator=(BufferOpaqueCaptureAddressCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferOpaqueCaptureAddressCreateInfo &operator=(VkBufferOpaqueCaptureAddressCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferOpaqueCaptureAddressCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferOpaqueCaptureAddressCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferOpaqueCaptureAddressCreateInfo &setOpaqueCaptureAddress(uint64_t opaqueCaptureAddress_) VULKAN_HPP_NOEXCEPT
{
opaqueCaptureAddress = opaqueCaptureAddress_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferOpaqueCaptureAddressCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferOpaqueCaptureAddressCreateInfo *>(this);
}
explicit operator VkBufferOpaqueCaptureAddressCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferOpaqueCaptureAddressCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, opaqueCaptureAddress);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferOpaqueCaptureAddressCreateInfo const &) const = default;
#else
bool operator==(BufferOpaqueCaptureAddressCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (opaqueCaptureAddress == rhs.opaqueCaptureAddress);
# endif
}
bool operator!=(BufferOpaqueCaptureAddressCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferOpaqueCaptureAddressCreateInfo;
const void *pNext = {};
uint64_t opaqueCaptureAddress = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferOpaqueCaptureAddressCreateInfo) == sizeof(VkBufferOpaqueCaptureAddressCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferOpaqueCaptureAddressCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferOpaqueCaptureAddressCreateInfo>::value,
"BufferOpaqueCaptureAddressCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferOpaqueCaptureAddressCreateInfo>
{
using Type = BufferOpaqueCaptureAddressCreateInfo;
};
using BufferOpaqueCaptureAddressCreateInfoKHR = BufferOpaqueCaptureAddressCreateInfo;
struct BufferViewCreateInfo
{
using NativeType = VkBufferViewCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eBufferViewCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR BufferViewCreateInfo(VULKAN_HPP_NAMESPACE::BufferViewCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize range_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
buffer(buffer_),
format(format_),
offset(offset_),
range(range_)
{
}
VULKAN_HPP_CONSTEXPR BufferViewCreateInfo(BufferViewCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferViewCreateInfo(VkBufferViewCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: BufferViewCreateInfo(*reinterpret_cast<BufferViewCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
BufferViewCreateInfo &operator=(BufferViewCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
BufferViewCreateInfo &operator=(VkBufferViewCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::BufferViewCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 BufferViewCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferViewCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::BufferViewCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferViewCreateInfo &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferViewCreateInfo &setFormat(VULKAN_HPP_NAMESPACE::Format format_) VULKAN_HPP_NOEXCEPT
{
format = format_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferViewCreateInfo &setOffset(VULKAN_HPP_NAMESPACE::DeviceSize offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 BufferViewCreateInfo &setRange(VULKAN_HPP_NAMESPACE::DeviceSize range_) VULKAN_HPP_NOEXCEPT
{
range = range_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkBufferViewCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkBufferViewCreateInfo *>(this);
}
explicit operator VkBufferViewCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkBufferViewCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::BufferViewCreateFlags const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, buffer, format, offset, range);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(BufferViewCreateInfo const &) const = default;
#else
bool operator==(BufferViewCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (buffer == rhs.buffer) && (format == rhs.format) &&
(offset == rhs.offset) && (range == rhs.range);
# endif
}
bool operator!=(BufferViewCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eBufferViewCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::BufferViewCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
VULKAN_HPP_NAMESPACE::DeviceSize range = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::BufferViewCreateInfo) == sizeof(VkBufferViewCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::BufferViewCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::BufferViewCreateInfo>::value,
"BufferViewCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eBufferViewCreateInfo>
{
using Type = BufferViewCreateInfo;
};
struct CalibratedTimestampInfoEXT
{
using NativeType = VkCalibratedTimestampInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCalibratedTimestampInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CalibratedTimestampInfoEXT(VULKAN_HPP_NAMESPACE::TimeDomainEXT timeDomain_ = VULKAN_HPP_NAMESPACE::TimeDomainEXT::eDevice,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
timeDomain(timeDomain_)
{
}
VULKAN_HPP_CONSTEXPR CalibratedTimestampInfoEXT(CalibratedTimestampInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
CalibratedTimestampInfoEXT(VkCalibratedTimestampInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: CalibratedTimestampInfoEXT(*reinterpret_cast<CalibratedTimestampInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CalibratedTimestampInfoEXT &operator=(CalibratedTimestampInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
CalibratedTimestampInfoEXT &operator=(VkCalibratedTimestampInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CalibratedTimestampInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CalibratedTimestampInfoEXT &setTimeDomain(VULKAN_HPP_NAMESPACE::TimeDomainEXT timeDomain_) VULKAN_HPP_NOEXCEPT
{
timeDomain = timeDomain_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCalibratedTimestampInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCalibratedTimestampInfoEXT *>(this);
}
explicit operator VkCalibratedTimestampInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCalibratedTimestampInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::TimeDomainEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, timeDomain);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CalibratedTimestampInfoEXT const &) const = default;
#else
bool operator==(CalibratedTimestampInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (timeDomain == rhs.timeDomain);
# endif
}
bool operator!=(CalibratedTimestampInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCalibratedTimestampInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::TimeDomainEXT timeDomain = VULKAN_HPP_NAMESPACE::TimeDomainEXT::eDevice;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT) == sizeof(VkCalibratedTimestampInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CalibratedTimestampInfoEXT>::value,
"CalibratedTimestampInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCalibratedTimestampInfoEXT>
{
using Type = CalibratedTimestampInfoEXT;
};
struct CheckpointData2NV
{
using NativeType = VkCheckpointData2NV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCheckpointData2NV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
CheckpointData2NV(VULKAN_HPP_NAMESPACE::PipelineStageFlags2 stage_ = {}, void *pCheckpointMarker_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
stage(stage_),
pCheckpointMarker(pCheckpointMarker_)
{
}
VULKAN_HPP_CONSTEXPR CheckpointData2NV(CheckpointData2NV const &rhs) VULKAN_HPP_NOEXCEPT = default;
CheckpointData2NV(VkCheckpointData2NV const &rhs) VULKAN_HPP_NOEXCEPT : CheckpointData2NV(*reinterpret_cast<CheckpointData2NV const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CheckpointData2NV &operator=(CheckpointData2NV const &rhs) VULKAN_HPP_NOEXCEPT = default;
CheckpointData2NV &operator=(VkCheckpointData2NV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CheckpointData2NV const *>(&rhs);
return *this;
}
explicit operator VkCheckpointData2NV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCheckpointData2NV *>(this);
}
explicit operator VkCheckpointData2NV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCheckpointData2NV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::PipelineStageFlags2 const &, void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, stage, pCheckpointMarker);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CheckpointData2NV const &) const = default;
#else
bool operator==(CheckpointData2NV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (stage == rhs.stage) && (pCheckpointMarker == rhs.pCheckpointMarker);
# endif
}
bool operator!=(CheckpointData2NV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCheckpointData2NV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 stage = {};
void *pCheckpointMarker = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CheckpointData2NV) == sizeof(VkCheckpointData2NV), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CheckpointData2NV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CheckpointData2NV>::value,
"CheckpointData2NV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCheckpointData2NV>
{
using Type = CheckpointData2NV;
};
struct CheckpointDataNV
{
using NativeType = VkCheckpointDataNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCheckpointDataNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CheckpointDataNV(VULKAN_HPP_NAMESPACE::PipelineStageFlagBits stage_ = VULKAN_HPP_NAMESPACE::PipelineStageFlagBits::eTopOfPipe,
void *pCheckpointMarker_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
stage(stage_),
pCheckpointMarker(pCheckpointMarker_)
{
}
VULKAN_HPP_CONSTEXPR CheckpointDataNV(CheckpointDataNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
CheckpointDataNV(VkCheckpointDataNV const &rhs) VULKAN_HPP_NOEXCEPT : CheckpointDataNV(*reinterpret_cast<CheckpointDataNV const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CheckpointDataNV &operator=(CheckpointDataNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
CheckpointDataNV &operator=(VkCheckpointDataNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CheckpointDataNV const *>(&rhs);
return *this;
}
explicit operator VkCheckpointDataNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCheckpointDataNV *>(this);
}
explicit operator VkCheckpointDataNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCheckpointDataNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::PipelineStageFlagBits const &, void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, stage, pCheckpointMarker);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CheckpointDataNV const &) const = default;
#else
bool operator==(CheckpointDataNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (stage == rhs.stage) && (pCheckpointMarker == rhs.pCheckpointMarker);
# endif
}
bool operator!=(CheckpointDataNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCheckpointDataNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlagBits stage = VULKAN_HPP_NAMESPACE::PipelineStageFlagBits::eTopOfPipe;
void *pCheckpointMarker = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CheckpointDataNV) == sizeof(VkCheckpointDataNV), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CheckpointDataNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CheckpointDataNV>::value,
"CheckpointDataNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCheckpointDataNV>
{
using Type = CheckpointDataNV;
};
union ClearColorValue
{
using NativeType = VkClearColorValue;
#if !defined(VULKAN_HPP_NO_UNION_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 ClearColorValue(const std::array<float, 4> &float32_ = {})
: float32(float32_)
{}
VULKAN_HPP_CONSTEXPR_14 ClearColorValue(const std::array<int32_t, 4> &int32_)
: int32(int32_)
{}
VULKAN_HPP_CONSTEXPR_14 ClearColorValue(const std::array<uint32_t, 4> &uint32_)
: uint32(uint32_)
{}
#endif /*VULKAN_HPP_NO_UNION_CONSTRUCTORS*/
#if !defined(VULKAN_HPP_NO_UNION_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ClearColorValue &setFloat32(std::array<float, 4> float32_) VULKAN_HPP_NOEXCEPT
{
float32 = float32_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ClearColorValue &setInt32(std::array<int32_t, 4> int32_) VULKAN_HPP_NOEXCEPT
{
int32 = int32_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ClearColorValue &setUint32(std::array<uint32_t, 4> uint32_) VULKAN_HPP_NOEXCEPT
{
uint32 = uint32_;
return *this;
}
#endif /*VULKAN_HPP_NO_UNION_SETTERS*/
operator VkClearColorValue const &() const
{
return *reinterpret_cast<const VkClearColorValue *>(this);
}
operator VkClearColorValue &()
{
return *reinterpret_cast<VkClearColorValue *>(this);
}
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> float32;
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int32_t, 4> int32;
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 4> uint32;
};
struct ClearDepthStencilValue
{
using NativeType = VkClearDepthStencilValue;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ClearDepthStencilValue(float depth_ = {}, uint32_t stencil_ = {}) VULKAN_HPP_NOEXCEPT
: depth(depth_),
stencil(stencil_)
{
}
VULKAN_HPP_CONSTEXPR ClearDepthStencilValue(ClearDepthStencilValue const &rhs) VULKAN_HPP_NOEXCEPT = default;
ClearDepthStencilValue(VkClearDepthStencilValue const &rhs) VULKAN_HPP_NOEXCEPT
: ClearDepthStencilValue(*reinterpret_cast<ClearDepthStencilValue const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ClearDepthStencilValue &operator=(ClearDepthStencilValue const &rhs) VULKAN_HPP_NOEXCEPT = default;
ClearDepthStencilValue &operator=(VkClearDepthStencilValue const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ClearDepthStencilValue const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ClearDepthStencilValue &setDepth(float depth_) VULKAN_HPP_NOEXCEPT
{
depth = depth_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ClearDepthStencilValue &setStencil(uint32_t stencil_) VULKAN_HPP_NOEXCEPT
{
stencil = stencil_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkClearDepthStencilValue const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkClearDepthStencilValue *>(this);
}
explicit operator VkClearDepthStencilValue &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkClearDepthStencilValue *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<float const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(depth, stencil);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ClearDepthStencilValue const &) const = default;
#else
bool operator==(ClearDepthStencilValue const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (depth == rhs.depth) && (stencil == rhs.stencil);
# endif
}
bool operator!=(ClearDepthStencilValue const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
float depth = {};
uint32_t stencil = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ClearDepthStencilValue) == sizeof(VkClearDepthStencilValue),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ClearDepthStencilValue>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ClearDepthStencilValue>::value,
"ClearDepthStencilValue is not nothrow_move_constructible!");
union ClearValue
{
using NativeType = VkClearValue;
#if !defined(VULKAN_HPP_NO_UNION_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 ClearValue(VULKAN_HPP_NAMESPACE::ClearColorValue color_ = {})
: color(color_)
{}
VULKAN_HPP_CONSTEXPR_14 ClearValue(VULKAN_HPP_NAMESPACE::ClearDepthStencilValue depthStencil_)
: depthStencil(depthStencil_)
{}
#endif /*VULKAN_HPP_NO_UNION_CONSTRUCTORS*/
#if !defined(VULKAN_HPP_NO_UNION_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ClearValue &setColor(VULKAN_HPP_NAMESPACE::ClearColorValue const &color_) VULKAN_HPP_NOEXCEPT
{
color = color_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ClearValue &setDepthStencil(VULKAN_HPP_NAMESPACE::ClearDepthStencilValue const &depthStencil_) VULKAN_HPP_NOEXCEPT
{
depthStencil = depthStencil_;
return *this;
}
#endif /*VULKAN_HPP_NO_UNION_SETTERS*/
operator VkClearValue const &() const
{
return *reinterpret_cast<const VkClearValue *>(this);
}
operator VkClearValue &()
{
return *reinterpret_cast<VkClearValue *>(this);
}
#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
VULKAN_HPP_NAMESPACE::ClearColorValue color;
VULKAN_HPP_NAMESPACE::ClearDepthStencilValue depthStencil;
#else
VkClearColorValue color;
VkClearDepthStencilValue depthStencil;
#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
};
struct ClearAttachment
{
using NativeType = VkClearAttachment;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 ClearAttachment(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {},
uint32_t colorAttachment_ = {},
VULKAN_HPP_NAMESPACE::ClearValue clearValue_ = {}) VULKAN_HPP_NOEXCEPT
: aspectMask(aspectMask_),
colorAttachment(colorAttachment_),
clearValue(clearValue_)
{
}
VULKAN_HPP_CONSTEXPR_14 ClearAttachment(ClearAttachment const &rhs) VULKAN_HPP_NOEXCEPT = default;
ClearAttachment(VkClearAttachment const &rhs) VULKAN_HPP_NOEXCEPT : ClearAttachment(*reinterpret_cast<ClearAttachment const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ClearAttachment &operator=(ClearAttachment const &rhs) VULKAN_HPP_NOEXCEPT = default;
ClearAttachment &operator=(VkClearAttachment const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ClearAttachment const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ClearAttachment &setAspectMask(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_) VULKAN_HPP_NOEXCEPT
{
aspectMask = aspectMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ClearAttachment &setColorAttachment(uint32_t colorAttachment_) VULKAN_HPP_NOEXCEPT
{
colorAttachment = colorAttachment_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ClearAttachment &setClearValue(VULKAN_HPP_NAMESPACE::ClearValue const &clearValue_) VULKAN_HPP_NOEXCEPT
{
clearValue = clearValue_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkClearAttachment const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkClearAttachment *>(this);
}
explicit operator VkClearAttachment &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkClearAttachment *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ImageAspectFlags const &, uint32_t const &, VULKAN_HPP_NAMESPACE::ClearValue const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(aspectMask, colorAttachment, clearValue);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
uint32_t colorAttachment = {};
VULKAN_HPP_NAMESPACE::ClearValue clearValue = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ClearAttachment) == sizeof(VkClearAttachment), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ClearAttachment>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ClearAttachment>::value,
"ClearAttachment is not nothrow_move_constructible!");
struct ClearRect
{
using NativeType = VkClearRect;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ClearRect(VULKAN_HPP_NAMESPACE::Rect2D rect_ = {}, uint32_t baseArrayLayer_ = {}, uint32_t layerCount_ = {}) VULKAN_HPP_NOEXCEPT
: rect(rect_),
baseArrayLayer(baseArrayLayer_),
layerCount(layerCount_)
{
}
VULKAN_HPP_CONSTEXPR ClearRect(ClearRect const &rhs) VULKAN_HPP_NOEXCEPT = default;
ClearRect(VkClearRect const &rhs) VULKAN_HPP_NOEXCEPT : ClearRect(*reinterpret_cast<ClearRect const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ClearRect &operator=(ClearRect const &rhs) VULKAN_HPP_NOEXCEPT = default;
ClearRect &operator=(VkClearRect const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ClearRect const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ClearRect &setRect(VULKAN_HPP_NAMESPACE::Rect2D const &rect_) VULKAN_HPP_NOEXCEPT
{
rect = rect_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ClearRect &setBaseArrayLayer(uint32_t baseArrayLayer_) VULKAN_HPP_NOEXCEPT
{
baseArrayLayer = baseArrayLayer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ClearRect &setLayerCount(uint32_t layerCount_) VULKAN_HPP_NOEXCEPT
{
layerCount = layerCount_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkClearRect const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkClearRect *>(this);
}
explicit operator VkClearRect &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkClearRect *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Rect2D const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(rect, baseArrayLayer, layerCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ClearRect const &) const = default;
#else
bool operator==(ClearRect const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (rect == rhs.rect) && (baseArrayLayer == rhs.baseArrayLayer) && (layerCount == rhs.layerCount);
# endif
}
bool operator!=(ClearRect const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Rect2D rect = {};
uint32_t baseArrayLayer = {};
uint32_t layerCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ClearRect) == sizeof(VkClearRect), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ClearRect>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ClearRect>::value, "ClearRect is not nothrow_move_constructible!");
struct CoarseSampleLocationNV
{
using NativeType = VkCoarseSampleLocationNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CoarseSampleLocationNV(uint32_t pixelX_ = {}, uint32_t pixelY_ = {}, uint32_t sample_ = {}) VULKAN_HPP_NOEXCEPT
: pixelX(pixelX_),
pixelY(pixelY_),
sample(sample_)
{
}
VULKAN_HPP_CONSTEXPR CoarseSampleLocationNV(CoarseSampleLocationNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
CoarseSampleLocationNV(VkCoarseSampleLocationNV const &rhs) VULKAN_HPP_NOEXCEPT
: CoarseSampleLocationNV(*reinterpret_cast<CoarseSampleLocationNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CoarseSampleLocationNV &operator=(CoarseSampleLocationNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
CoarseSampleLocationNV &operator=(VkCoarseSampleLocationNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CoarseSampleLocationNV &setPixelX(uint32_t pixelX_) VULKAN_HPP_NOEXCEPT
{
pixelX = pixelX_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CoarseSampleLocationNV &setPixelY(uint32_t pixelY_) VULKAN_HPP_NOEXCEPT
{
pixelY = pixelY_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CoarseSampleLocationNV &setSample(uint32_t sample_) VULKAN_HPP_NOEXCEPT
{
sample = sample_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCoarseSampleLocationNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCoarseSampleLocationNV *>(this);
}
explicit operator VkCoarseSampleLocationNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCoarseSampleLocationNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(pixelX, pixelY, sample);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CoarseSampleLocationNV const &) const = default;
#else
bool operator==(CoarseSampleLocationNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (pixelX == rhs.pixelX) && (pixelY == rhs.pixelY) && (sample == rhs.sample);
# endif
}
bool operator!=(CoarseSampleLocationNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t pixelX = {};
uint32_t pixelY = {};
uint32_t sample = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV) == sizeof(VkCoarseSampleLocationNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV>::value,
"CoarseSampleLocationNV is not nothrow_move_constructible!");
struct CoarseSampleOrderCustomNV
{
using NativeType = VkCoarseSampleOrderCustomNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
CoarseSampleOrderCustomNV(VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV shadingRate_ = VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV::eNoInvocations,
uint32_t sampleCount_ = {},
uint32_t sampleLocationCount_ = {},
const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV *pSampleLocations_ = {}) VULKAN_HPP_NOEXCEPT
: shadingRate(shadingRate_),
sampleCount(sampleCount_),
sampleLocationCount(sampleLocationCount_),
pSampleLocations(pSampleLocations_)
{
}
VULKAN_HPP_CONSTEXPR CoarseSampleOrderCustomNV(CoarseSampleOrderCustomNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
CoarseSampleOrderCustomNV(VkCoarseSampleOrderCustomNV const &rhs) VULKAN_HPP_NOEXCEPT
: CoarseSampleOrderCustomNV(*reinterpret_cast<CoarseSampleOrderCustomNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CoarseSampleOrderCustomNV(VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV shadingRate_,
uint32_t sampleCount_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV> const &sampleLocations_)
: shadingRate(shadingRate_)
, sampleCount(sampleCount_)
, sampleLocationCount(static_cast<uint32_t>(sampleLocations_.size()))
, pSampleLocations(sampleLocations_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CoarseSampleOrderCustomNV &operator=(CoarseSampleOrderCustomNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
CoarseSampleOrderCustomNV &operator=(VkCoarseSampleOrderCustomNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CoarseSampleOrderCustomNV &setShadingRate(VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV shadingRate_) VULKAN_HPP_NOEXCEPT
{
shadingRate = shadingRate_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CoarseSampleOrderCustomNV &setSampleCount(uint32_t sampleCount_) VULKAN_HPP_NOEXCEPT
{
sampleCount = sampleCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CoarseSampleOrderCustomNV &setSampleLocationCount(uint32_t sampleLocationCount_) VULKAN_HPP_NOEXCEPT
{
sampleLocationCount = sampleLocationCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CoarseSampleOrderCustomNV &
setPSampleLocations(const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV *pSampleLocations_) VULKAN_HPP_NOEXCEPT
{
pSampleLocations = pSampleLocations_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CoarseSampleOrderCustomNV &setSampleLocations(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV> const &sampleLocations_) VULKAN_HPP_NOEXCEPT
{
sampleLocationCount = static_cast<uint32_t>(sampleLocations_.size());
pSampleLocations = sampleLocations_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCoarseSampleOrderCustomNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCoarseSampleOrderCustomNV *>(this);
}
explicit operator VkCoarseSampleOrderCustomNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCoarseSampleOrderCustomNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(shadingRate, sampleCount, sampleLocationCount, pSampleLocations);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CoarseSampleOrderCustomNV const &) const = default;
#else
bool operator==(CoarseSampleOrderCustomNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (shadingRate == rhs.shadingRate) && (sampleCount == rhs.sampleCount) && (sampleLocationCount == rhs.sampleLocationCount) &&
(pSampleLocations == rhs.pSampleLocations);
# endif
}
bool operator!=(CoarseSampleOrderCustomNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV shadingRate = VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV::eNoInvocations;
uint32_t sampleCount = {};
uint32_t sampleLocationCount = {};
const VULKAN_HPP_NAMESPACE::CoarseSampleLocationNV *pSampleLocations = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV) == sizeof(VkCoarseSampleOrderCustomNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV>::value,
"CoarseSampleOrderCustomNV is not nothrow_move_constructible!");
struct CommandBufferAllocateInfo
{
using NativeType = VkCommandBufferAllocateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferAllocateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CommandBufferAllocateInfo(VULKAN_HPP_NAMESPACE::CommandPool commandPool_ = {},
VULKAN_HPP_NAMESPACE::CommandBufferLevel level_ = VULKAN_HPP_NAMESPACE::CommandBufferLevel::ePrimary,
uint32_t commandBufferCount_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
commandPool(commandPool_),
level(level_),
commandBufferCount(commandBufferCount_)
{
}
VULKAN_HPP_CONSTEXPR CommandBufferAllocateInfo(CommandBufferAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferAllocateInfo(VkCommandBufferAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: CommandBufferAllocateInfo(*reinterpret_cast<CommandBufferAllocateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CommandBufferAllocateInfo &operator=(CommandBufferAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferAllocateInfo &operator=(VkCommandBufferAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferAllocateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CommandBufferAllocateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferAllocateInfo &setCommandPool(VULKAN_HPP_NAMESPACE::CommandPool commandPool_) VULKAN_HPP_NOEXCEPT
{
commandPool = commandPool_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferAllocateInfo &setLevel(VULKAN_HPP_NAMESPACE::CommandBufferLevel level_) VULKAN_HPP_NOEXCEPT
{
level = level_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferAllocateInfo &setCommandBufferCount(uint32_t commandBufferCount_) VULKAN_HPP_NOEXCEPT
{
commandBufferCount = commandBufferCount_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCommandBufferAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCommandBufferAllocateInfo *>(this);
}
explicit operator VkCommandBufferAllocateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCommandBufferAllocateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::CommandPool const &,
VULKAN_HPP_NAMESPACE::CommandBufferLevel const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, commandPool, level, commandBufferCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CommandBufferAllocateInfo const &) const = default;
#else
bool operator==(CommandBufferAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (commandPool == rhs.commandPool) && (level == rhs.level) &&
(commandBufferCount == rhs.commandBufferCount);
# endif
}
bool operator!=(CommandBufferAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferAllocateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::CommandPool commandPool = {};
VULKAN_HPP_NAMESPACE::CommandBufferLevel level = VULKAN_HPP_NAMESPACE::CommandBufferLevel::ePrimary;
uint32_t commandBufferCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CommandBufferAllocateInfo) == sizeof(VkCommandBufferAllocateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CommandBufferAllocateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CommandBufferAllocateInfo>::value,
"CommandBufferAllocateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCommandBufferAllocateInfo>
{
using Type = CommandBufferAllocateInfo;
};
struct CommandBufferInheritanceInfo
{
using NativeType = VkCommandBufferInheritanceInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferInheritanceInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CommandBufferInheritanceInfo(VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {},
uint32_t subpass_ = {},
VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_ = {},
VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryEnable_ = {},
VULKAN_HPP_NAMESPACE::QueryControlFlags queryFlags_ = {},
VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
renderPass(renderPass_),
subpass(subpass_),
framebuffer(framebuffer_),
occlusionQueryEnable(occlusionQueryEnable_),
queryFlags(queryFlags_),
pipelineStatistics(pipelineStatistics_)
{
}
VULKAN_HPP_CONSTEXPR CommandBufferInheritanceInfo(CommandBufferInheritanceInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferInheritanceInfo(VkCommandBufferInheritanceInfo const &rhs) VULKAN_HPP_NOEXCEPT
: CommandBufferInheritanceInfo(*reinterpret_cast<CommandBufferInheritanceInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CommandBufferInheritanceInfo &operator=(CommandBufferInheritanceInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferInheritanceInfo &operator=(VkCommandBufferInheritanceInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceInfo &setRenderPass(VULKAN_HPP_NAMESPACE::RenderPass renderPass_) VULKAN_HPP_NOEXCEPT
{
renderPass = renderPass_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceInfo &setSubpass(uint32_t subpass_) VULKAN_HPP_NOEXCEPT
{
subpass = subpass_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceInfo &setFramebuffer(VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_) VULKAN_HPP_NOEXCEPT
{
framebuffer = framebuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceInfo &setOcclusionQueryEnable(VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryEnable_) VULKAN_HPP_NOEXCEPT
{
occlusionQueryEnable = occlusionQueryEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceInfo &setQueryFlags(VULKAN_HPP_NAMESPACE::QueryControlFlags queryFlags_) VULKAN_HPP_NOEXCEPT
{
queryFlags = queryFlags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceInfo &
setPipelineStatistics(VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics_) VULKAN_HPP_NOEXCEPT
{
pipelineStatistics = pipelineStatistics_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCommandBufferInheritanceInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCommandBufferInheritanceInfo *>(this);
}
explicit operator VkCommandBufferInheritanceInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCommandBufferInheritanceInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::RenderPass const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Framebuffer const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::QueryControlFlags const &,
VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, renderPass, subpass, framebuffer, occlusionQueryEnable, queryFlags, pipelineStatistics);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CommandBufferInheritanceInfo const &) const = default;
#else
bool operator==(CommandBufferInheritanceInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (renderPass == rhs.renderPass) && (subpass == rhs.subpass) &&
(framebuffer == rhs.framebuffer) && (occlusionQueryEnable == rhs.occlusionQueryEnable) && (queryFlags == rhs.queryFlags) &&
(pipelineStatistics == rhs.pipelineStatistics);
# endif
}
bool operator!=(CommandBufferInheritanceInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferInheritanceInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
uint32_t subpass = {};
VULKAN_HPP_NAMESPACE::Framebuffer framebuffer = {};
VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryEnable = {};
VULKAN_HPP_NAMESPACE::QueryControlFlags queryFlags = {};
VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo) == sizeof(VkCommandBufferInheritanceInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo>::value,
"CommandBufferInheritanceInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCommandBufferInheritanceInfo>
{
using Type = CommandBufferInheritanceInfo;
};
struct CommandBufferBeginInfo
{
using NativeType = VkCommandBufferBeginInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferBeginInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CommandBufferBeginInfo(VULKAN_HPP_NAMESPACE::CommandBufferUsageFlags flags_ = {},
const VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo *pInheritanceInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
pInheritanceInfo(pInheritanceInfo_)
{
}
VULKAN_HPP_CONSTEXPR CommandBufferBeginInfo(CommandBufferBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferBeginInfo(VkCommandBufferBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT
: CommandBufferBeginInfo(*reinterpret_cast<CommandBufferBeginInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CommandBufferBeginInfo &operator=(CommandBufferBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferBeginInfo &operator=(VkCommandBufferBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferBeginInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CommandBufferBeginInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferBeginInfo &setFlags(VULKAN_HPP_NAMESPACE::CommandBufferUsageFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferBeginInfo &
setPInheritanceInfo(const VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo *pInheritanceInfo_) VULKAN_HPP_NOEXCEPT
{
pInheritanceInfo = pInheritanceInfo_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCommandBufferBeginInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCommandBufferBeginInfo *>(this);
}
explicit operator VkCommandBufferBeginInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCommandBufferBeginInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::CommandBufferUsageFlags const &,
const VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, pInheritanceInfo);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CommandBufferBeginInfo const &) const = default;
#else
bool operator==(CommandBufferBeginInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (pInheritanceInfo == rhs.pInheritanceInfo);
# endif
}
bool operator!=(CommandBufferBeginInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferBeginInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::CommandBufferUsageFlags flags = {};
const VULKAN_HPP_NAMESPACE::CommandBufferInheritanceInfo *pInheritanceInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CommandBufferBeginInfo) == sizeof(VkCommandBufferBeginInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CommandBufferBeginInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CommandBufferBeginInfo>::value,
"CommandBufferBeginInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCommandBufferBeginInfo>
{
using Type = CommandBufferBeginInfo;
};
struct CommandBufferInheritanceConditionalRenderingInfoEXT
{
using NativeType = VkCommandBufferInheritanceConditionalRenderingInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferInheritanceConditionalRenderingInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CommandBufferInheritanceConditionalRenderingInfoEXT(VULKAN_HPP_NAMESPACE::Bool32 conditionalRenderingEnable_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
conditionalRenderingEnable(conditionalRenderingEnable_)
{
}
VULKAN_HPP_CONSTEXPR
CommandBufferInheritanceConditionalRenderingInfoEXT(CommandBufferInheritanceConditionalRenderingInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferInheritanceConditionalRenderingInfoEXT(VkCommandBufferInheritanceConditionalRenderingInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: CommandBufferInheritanceConditionalRenderingInfoEXT(*reinterpret_cast<CommandBufferInheritanceConditionalRenderingInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CommandBufferInheritanceConditionalRenderingInfoEXT &
operator=(CommandBufferInheritanceConditionalRenderingInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferInheritanceConditionalRenderingInfoEXT &operator=(VkCommandBufferInheritanceConditionalRenderingInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceConditionalRenderingInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceConditionalRenderingInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceConditionalRenderingInfoEXT &
setConditionalRenderingEnable(VULKAN_HPP_NAMESPACE::Bool32 conditionalRenderingEnable_) VULKAN_HPP_NOEXCEPT
{
conditionalRenderingEnable = conditionalRenderingEnable_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCommandBufferInheritanceConditionalRenderingInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCommandBufferInheritanceConditionalRenderingInfoEXT *>(this);
}
explicit operator VkCommandBufferInheritanceConditionalRenderingInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCommandBufferInheritanceConditionalRenderingInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, conditionalRenderingEnable);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CommandBufferInheritanceConditionalRenderingInfoEXT const &) const = default;
#else
bool operator==(CommandBufferInheritanceConditionalRenderingInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (conditionalRenderingEnable == rhs.conditionalRenderingEnable);
# endif
}
bool operator!=(CommandBufferInheritanceConditionalRenderingInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferInheritanceConditionalRenderingInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 conditionalRenderingEnable = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CommandBufferInheritanceConditionalRenderingInfoEXT) ==
sizeof(VkCommandBufferInheritanceConditionalRenderingInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceConditionalRenderingInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceConditionalRenderingInfoEXT>::value,
"CommandBufferInheritanceConditionalRenderingInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCommandBufferInheritanceConditionalRenderingInfoEXT>
{
using Type = CommandBufferInheritanceConditionalRenderingInfoEXT;
};
struct CommandBufferInheritanceRenderPassTransformInfoQCOM
{
using NativeType = VkCommandBufferInheritanceRenderPassTransformInfoQCOM;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferInheritanceRenderPassTransformInfoQCOM;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CommandBufferInheritanceRenderPassTransformInfoQCOM(
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
VULKAN_HPP_NAMESPACE::Rect2D renderArea_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
transform(transform_),
renderArea(renderArea_)
{
}
VULKAN_HPP_CONSTEXPR
CommandBufferInheritanceRenderPassTransformInfoQCOM(CommandBufferInheritanceRenderPassTransformInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferInheritanceRenderPassTransformInfoQCOM(VkCommandBufferInheritanceRenderPassTransformInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT
: CommandBufferInheritanceRenderPassTransformInfoQCOM(*reinterpret_cast<CommandBufferInheritanceRenderPassTransformInfoQCOM const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CommandBufferInheritanceRenderPassTransformInfoQCOM &
operator=(CommandBufferInheritanceRenderPassTransformInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferInheritanceRenderPassTransformInfoQCOM &operator=(VkCommandBufferInheritanceRenderPassTransformInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceRenderPassTransformInfoQCOM const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceRenderPassTransformInfoQCOM &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceRenderPassTransformInfoQCOM &
setTransform(VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_) VULKAN_HPP_NOEXCEPT
{
transform = transform_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceRenderPassTransformInfoQCOM &
setRenderArea(VULKAN_HPP_NAMESPACE::Rect2D const &renderArea_) VULKAN_HPP_NOEXCEPT
{
renderArea = renderArea_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCommandBufferInheritanceRenderPassTransformInfoQCOM const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCommandBufferInheritanceRenderPassTransformInfoQCOM *>(this);
}
explicit operator VkCommandBufferInheritanceRenderPassTransformInfoQCOM &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCommandBufferInheritanceRenderPassTransformInfoQCOM *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR const &,
VULKAN_HPP_NAMESPACE::Rect2D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, transform, renderArea);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CommandBufferInheritanceRenderPassTransformInfoQCOM const &) const = default;
#else
bool operator==(CommandBufferInheritanceRenderPassTransformInfoQCOM const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (transform == rhs.transform) && (renderArea == rhs.renderArea);
# endif
}
bool operator!=(CommandBufferInheritanceRenderPassTransformInfoQCOM const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferInheritanceRenderPassTransformInfoQCOM;
void *pNext = {};
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
VULKAN_HPP_NAMESPACE::Rect2D renderArea = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CommandBufferInheritanceRenderPassTransformInfoQCOM) ==
sizeof(VkCommandBufferInheritanceRenderPassTransformInfoQCOM),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceRenderPassTransformInfoQCOM>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceRenderPassTransformInfoQCOM>::value,
"CommandBufferInheritanceRenderPassTransformInfoQCOM is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCommandBufferInheritanceRenderPassTransformInfoQCOM>
{
using Type = CommandBufferInheritanceRenderPassTransformInfoQCOM;
};
struct CommandBufferInheritanceRenderingInfo
{
using NativeType = VkCommandBufferInheritanceRenderingInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferInheritanceRenderingInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
CommandBufferInheritanceRenderingInfo(VULKAN_HPP_NAMESPACE::RenderingFlags flags_ = {},
uint32_t viewMask_ = {},
uint32_t colorAttachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::Format *pColorAttachmentFormats_ = {},
VULKAN_HPP_NAMESPACE::Format depthAttachmentFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::Format stencilAttachmentFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
viewMask(viewMask_),
colorAttachmentCount(colorAttachmentCount_),
pColorAttachmentFormats(pColorAttachmentFormats_),
depthAttachmentFormat(depthAttachmentFormat_),
stencilAttachmentFormat(stencilAttachmentFormat_),
rasterizationSamples(rasterizationSamples_)
{
}
VULKAN_HPP_CONSTEXPR CommandBufferInheritanceRenderingInfo(CommandBufferInheritanceRenderingInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferInheritanceRenderingInfo(VkCommandBufferInheritanceRenderingInfo const &rhs) VULKAN_HPP_NOEXCEPT
: CommandBufferInheritanceRenderingInfo(*reinterpret_cast<CommandBufferInheritanceRenderingInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CommandBufferInheritanceRenderingInfo(VULKAN_HPP_NAMESPACE::RenderingFlags flags_,
uint32_t viewMask_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const &colorAttachmentFormats_,
VULKAN_HPP_NAMESPACE::Format depthAttachmentFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::Format stencilAttachmentFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, viewMask(viewMask_)
, colorAttachmentCount(static_cast<uint32_t>(colorAttachmentFormats_.size()))
, pColorAttachmentFormats(colorAttachmentFormats_.data())
, depthAttachmentFormat(depthAttachmentFormat_)
, stencilAttachmentFormat(stencilAttachmentFormat_)
, rasterizationSamples(rasterizationSamples_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CommandBufferInheritanceRenderingInfo &operator=(CommandBufferInheritanceRenderingInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferInheritanceRenderingInfo &operator=(VkCommandBufferInheritanceRenderingInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceRenderingInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceRenderingInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceRenderingInfo &setFlags(VULKAN_HPP_NAMESPACE::RenderingFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceRenderingInfo &setViewMask(uint32_t viewMask_) VULKAN_HPP_NOEXCEPT
{
viewMask = viewMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceRenderingInfo &setColorAttachmentCount(uint32_t colorAttachmentCount_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = colorAttachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceRenderingInfo &
setPColorAttachmentFormats(const VULKAN_HPP_NAMESPACE::Format *pColorAttachmentFormats_) VULKAN_HPP_NOEXCEPT
{
pColorAttachmentFormats = pColorAttachmentFormats_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CommandBufferInheritanceRenderingInfo &setColorAttachmentFormats(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const &colorAttachmentFormats_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = static_cast<uint32_t>(colorAttachmentFormats_.size());
pColorAttachmentFormats = colorAttachmentFormats_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceRenderingInfo &
setDepthAttachmentFormat(VULKAN_HPP_NAMESPACE::Format depthAttachmentFormat_) VULKAN_HPP_NOEXCEPT
{
depthAttachmentFormat = depthAttachmentFormat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceRenderingInfo &
setStencilAttachmentFormat(VULKAN_HPP_NAMESPACE::Format stencilAttachmentFormat_) VULKAN_HPP_NOEXCEPT
{
stencilAttachmentFormat = stencilAttachmentFormat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceRenderingInfo &
setRasterizationSamples(VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples_) VULKAN_HPP_NOEXCEPT
{
rasterizationSamples = rasterizationSamples_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCommandBufferInheritanceRenderingInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCommandBufferInheritanceRenderingInfo *>(this);
}
explicit operator VkCommandBufferInheritanceRenderingInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCommandBufferInheritanceRenderingInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::RenderingFlags const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Format *const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, flags, viewMask, colorAttachmentCount, pColorAttachmentFormats, depthAttachmentFormat, stencilAttachmentFormat, rasterizationSamples);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CommandBufferInheritanceRenderingInfo const &) const = default;
#else
bool operator==(CommandBufferInheritanceRenderingInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (viewMask == rhs.viewMask) &&
(colorAttachmentCount == rhs.colorAttachmentCount) && (pColorAttachmentFormats == rhs.pColorAttachmentFormats) &&
(depthAttachmentFormat == rhs.depthAttachmentFormat) && (stencilAttachmentFormat == rhs.stencilAttachmentFormat) &&
(rasterizationSamples == rhs.rasterizationSamples);
# endif
}
bool operator!=(CommandBufferInheritanceRenderingInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferInheritanceRenderingInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::RenderingFlags flags = {};
uint32_t viewMask = {};
uint32_t colorAttachmentCount = {};
const VULKAN_HPP_NAMESPACE::Format *pColorAttachmentFormats = {};
VULKAN_HPP_NAMESPACE::Format depthAttachmentFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::Format stencilAttachmentFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CommandBufferInheritanceRenderingInfo) == sizeof(VkCommandBufferInheritanceRenderingInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceRenderingInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceRenderingInfo>::value,
"CommandBufferInheritanceRenderingInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCommandBufferInheritanceRenderingInfo>
{
using Type = CommandBufferInheritanceRenderingInfo;
};
using CommandBufferInheritanceRenderingInfoKHR = CommandBufferInheritanceRenderingInfo;
struct Viewport
{
using NativeType = VkViewport;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
Viewport(float x_ = {}, float y_ = {}, float width_ = {}, float height_ = {}, float minDepth_ = {}, float maxDepth_ = {}) VULKAN_HPP_NOEXCEPT
: x(x_),
y(y_),
width(width_),
height(height_),
minDepth(minDepth_),
maxDepth(maxDepth_)
{
}
VULKAN_HPP_CONSTEXPR Viewport(Viewport const &rhs) VULKAN_HPP_NOEXCEPT = default;
Viewport(VkViewport const &rhs) VULKAN_HPP_NOEXCEPT : Viewport(*reinterpret_cast<Viewport const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
Viewport &operator=(Viewport const &rhs) VULKAN_HPP_NOEXCEPT = default;
Viewport &operator=(VkViewport const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Viewport const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 Viewport &setX(float x_) VULKAN_HPP_NOEXCEPT
{
x = x_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Viewport &setY(float y_) VULKAN_HPP_NOEXCEPT
{
y = y_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Viewport &setWidth(float width_) VULKAN_HPP_NOEXCEPT
{
width = width_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Viewport &setHeight(float height_) VULKAN_HPP_NOEXCEPT
{
height = height_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Viewport &setMinDepth(float minDepth_) VULKAN_HPP_NOEXCEPT
{
minDepth = minDepth_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Viewport &setMaxDepth(float maxDepth_) VULKAN_HPP_NOEXCEPT
{
maxDepth = maxDepth_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkViewport const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkViewport *>(this);
}
explicit operator VkViewport &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkViewport *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<float const &, float const &, float const &, float const &, float const &, float const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(x, y, width, height, minDepth, maxDepth);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(Viewport const &) const = default;
#else
bool operator==(Viewport const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (x == rhs.x) && (y == rhs.y) && (width == rhs.width) && (height == rhs.height) && (minDepth == rhs.minDepth) &&
(maxDepth == rhs.maxDepth);
# endif
}
bool operator!=(Viewport const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
float x = {};
float y = {};
float width = {};
float height = {};
float minDepth = {};
float maxDepth = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::Viewport) == sizeof(VkViewport), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::Viewport>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::Viewport>::value, "Viewport is not nothrow_move_constructible!");
struct CommandBufferInheritanceViewportScissorInfoNV
{
using NativeType = VkCommandBufferInheritanceViewportScissorInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferInheritanceViewportScissorInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CommandBufferInheritanceViewportScissorInfoNV(VULKAN_HPP_NAMESPACE::Bool32 viewportScissor2D_ = {},
uint32_t viewportDepthCount_ = {},
const VULKAN_HPP_NAMESPACE::Viewport *pViewportDepths_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
viewportScissor2D(viewportScissor2D_),
viewportDepthCount(viewportDepthCount_),
pViewportDepths(pViewportDepths_)
{
}
VULKAN_HPP_CONSTEXPR
CommandBufferInheritanceViewportScissorInfoNV(CommandBufferInheritanceViewportScissorInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferInheritanceViewportScissorInfoNV(VkCommandBufferInheritanceViewportScissorInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: CommandBufferInheritanceViewportScissorInfoNV(*reinterpret_cast<CommandBufferInheritanceViewportScissorInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CommandBufferInheritanceViewportScissorInfoNV &operator=(CommandBufferInheritanceViewportScissorInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferInheritanceViewportScissorInfoNV &operator=(VkCommandBufferInheritanceViewportScissorInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceViewportScissorInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceViewportScissorInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceViewportScissorInfoNV &
setViewportScissor2D(VULKAN_HPP_NAMESPACE::Bool32 viewportScissor2D_) VULKAN_HPP_NOEXCEPT
{
viewportScissor2D = viewportScissor2D_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceViewportScissorInfoNV &setViewportDepthCount(uint32_t viewportDepthCount_) VULKAN_HPP_NOEXCEPT
{
viewportDepthCount = viewportDepthCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferInheritanceViewportScissorInfoNV &
setPViewportDepths(const VULKAN_HPP_NAMESPACE::Viewport *pViewportDepths_) VULKAN_HPP_NOEXCEPT
{
pViewportDepths = pViewportDepths_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCommandBufferInheritanceViewportScissorInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCommandBufferInheritanceViewportScissorInfoNV *>(this);
}
explicit operator VkCommandBufferInheritanceViewportScissorInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCommandBufferInheritanceViewportScissorInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Viewport *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, viewportScissor2D, viewportDepthCount, pViewportDepths);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CommandBufferInheritanceViewportScissorInfoNV const &) const = default;
#else
bool operator==(CommandBufferInheritanceViewportScissorInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (viewportScissor2D == rhs.viewportScissor2D) &&
(viewportDepthCount == rhs.viewportDepthCount) && (pViewportDepths == rhs.pViewportDepths);
# endif
}
bool operator!=(CommandBufferInheritanceViewportScissorInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferInheritanceViewportScissorInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 viewportScissor2D = {};
uint32_t viewportDepthCount = {};
const VULKAN_HPP_NAMESPACE::Viewport *pViewportDepths = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CommandBufferInheritanceViewportScissorInfoNV) ==
sizeof(VkCommandBufferInheritanceViewportScissorInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceViewportScissorInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CommandBufferInheritanceViewportScissorInfoNV>::value,
"CommandBufferInheritanceViewportScissorInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCommandBufferInheritanceViewportScissorInfoNV>
{
using Type = CommandBufferInheritanceViewportScissorInfoNV;
};
struct CommandBufferSubmitInfo
{
using NativeType = VkCommandBufferSubmitInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandBufferSubmitInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CommandBufferSubmitInfo(VULKAN_HPP_NAMESPACE::CommandBuffer commandBuffer_ = {},
uint32_t deviceMask_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
commandBuffer(commandBuffer_),
deviceMask(deviceMask_)
{
}
VULKAN_HPP_CONSTEXPR CommandBufferSubmitInfo(CommandBufferSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferSubmitInfo(VkCommandBufferSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT
: CommandBufferSubmitInfo(*reinterpret_cast<CommandBufferSubmitInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CommandBufferSubmitInfo &operator=(CommandBufferSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandBufferSubmitInfo &operator=(VkCommandBufferSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CommandBufferSubmitInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferSubmitInfo &setCommandBuffer(VULKAN_HPP_NAMESPACE::CommandBuffer commandBuffer_) VULKAN_HPP_NOEXCEPT
{
commandBuffer = commandBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandBufferSubmitInfo &setDeviceMask(uint32_t deviceMask_) VULKAN_HPP_NOEXCEPT
{
deviceMask = deviceMask_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCommandBufferSubmitInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCommandBufferSubmitInfo *>(this);
}
explicit operator VkCommandBufferSubmitInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCommandBufferSubmitInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::CommandBuffer const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, commandBuffer, deviceMask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CommandBufferSubmitInfo const &) const = default;
#else
bool operator==(CommandBufferSubmitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (commandBuffer == rhs.commandBuffer) && (deviceMask == rhs.deviceMask);
# endif
}
bool operator!=(CommandBufferSubmitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandBufferSubmitInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::CommandBuffer commandBuffer = {};
uint32_t deviceMask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfo) == sizeof(VkCommandBufferSubmitInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfo>::value,
"CommandBufferSubmitInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCommandBufferSubmitInfo>
{
using Type = CommandBufferSubmitInfo;
};
using CommandBufferSubmitInfoKHR = CommandBufferSubmitInfo;
struct CommandPoolCreateInfo
{
using NativeType = VkCommandPoolCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCommandPoolCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CommandPoolCreateInfo(VULKAN_HPP_NAMESPACE::CommandPoolCreateFlags flags_ = {},
uint32_t queueFamilyIndex_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
queueFamilyIndex(queueFamilyIndex_)
{
}
VULKAN_HPP_CONSTEXPR CommandPoolCreateInfo(CommandPoolCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandPoolCreateInfo(VkCommandPoolCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: CommandPoolCreateInfo(*reinterpret_cast<CommandPoolCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CommandPoolCreateInfo &operator=(CommandPoolCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
CommandPoolCreateInfo &operator=(VkCommandPoolCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CommandPoolCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CommandPoolCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandPoolCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::CommandPoolCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CommandPoolCreateInfo &setQueueFamilyIndex(uint32_t queueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndex = queueFamilyIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCommandPoolCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCommandPoolCreateInfo *>(this);
}
explicit operator VkCommandPoolCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCommandPoolCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::CommandPoolCreateFlags const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, queueFamilyIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CommandPoolCreateInfo const &) const = default;
#else
bool operator==(CommandPoolCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (queueFamilyIndex == rhs.queueFamilyIndex);
# endif
}
bool operator!=(CommandPoolCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCommandPoolCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::CommandPoolCreateFlags flags = {};
uint32_t queueFamilyIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CommandPoolCreateInfo) == sizeof(VkCommandPoolCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CommandPoolCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CommandPoolCreateInfo>::value,
"CommandPoolCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCommandPoolCreateInfo>
{
using Type = CommandPoolCreateInfo;
};
struct SpecializationMapEntry
{
using NativeType = VkSpecializationMapEntry;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SpecializationMapEntry(uint32_t constantID_ = {}, uint32_t offset_ = {}, size_t size_ = {}) VULKAN_HPP_NOEXCEPT
: constantID(constantID_),
offset(offset_),
size(size_)
{
}
VULKAN_HPP_CONSTEXPR SpecializationMapEntry(SpecializationMapEntry const &rhs) VULKAN_HPP_NOEXCEPT = default;
SpecializationMapEntry(VkSpecializationMapEntry const &rhs) VULKAN_HPP_NOEXCEPT
: SpecializationMapEntry(*reinterpret_cast<SpecializationMapEntry const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SpecializationMapEntry &operator=(SpecializationMapEntry const &rhs) VULKAN_HPP_NOEXCEPT = default;
SpecializationMapEntry &operator=(VkSpecializationMapEntry const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SpecializationMapEntry const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SpecializationMapEntry &setConstantID(uint32_t constantID_) VULKAN_HPP_NOEXCEPT
{
constantID = constantID_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SpecializationMapEntry &setOffset(uint32_t offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SpecializationMapEntry &setSize(size_t size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSpecializationMapEntry const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSpecializationMapEntry *>(this);
}
explicit operator VkSpecializationMapEntry &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSpecializationMapEntry *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, size_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(constantID, offset, size);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SpecializationMapEntry const &) const = default;
#else
bool operator==(SpecializationMapEntry const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (constantID == rhs.constantID) && (offset == rhs.offset) && (size == rhs.size);
# endif
}
bool operator!=(SpecializationMapEntry const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t constantID = {};
uint32_t offset = {};
size_t size = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SpecializationMapEntry) == sizeof(VkSpecializationMapEntry),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SpecializationMapEntry>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SpecializationMapEntry>::value,
"SpecializationMapEntry is not nothrow_move_constructible!");
struct SpecializationInfo
{
using NativeType = VkSpecializationInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SpecializationInfo(uint32_t mapEntryCount_ = {},
const VULKAN_HPP_NAMESPACE::SpecializationMapEntry *pMapEntries_ = {},
size_t dataSize_ = {},
const void *pData_ = {}) VULKAN_HPP_NOEXCEPT
: mapEntryCount(mapEntryCount_),
pMapEntries(pMapEntries_),
dataSize(dataSize_),
pData(pData_)
{
}
VULKAN_HPP_CONSTEXPR SpecializationInfo(SpecializationInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SpecializationInfo(VkSpecializationInfo const &rhs) VULKAN_HPP_NOEXCEPT : SpecializationInfo(*reinterpret_cast<SpecializationInfo const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
SpecializationInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SpecializationMapEntry> const &mapEntries_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &data_ = {})
: mapEntryCount(static_cast<uint32_t>(mapEntries_.size()))
, pMapEntries(mapEntries_.data())
, dataSize(data_.size() * sizeof(T))
, pData(data_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SpecializationInfo &operator=(SpecializationInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SpecializationInfo &operator=(VkSpecializationInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SpecializationInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SpecializationInfo &setMapEntryCount(uint32_t mapEntryCount_) VULKAN_HPP_NOEXCEPT
{
mapEntryCount = mapEntryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SpecializationInfo &setPMapEntries(const VULKAN_HPP_NAMESPACE::SpecializationMapEntry *pMapEntries_) VULKAN_HPP_NOEXCEPT
{
pMapEntries = pMapEntries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SpecializationInfo &
setMapEntries(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SpecializationMapEntry> const &mapEntries_) VULKAN_HPP_NOEXCEPT
{
mapEntryCount = static_cast<uint32_t>(mapEntries_.size());
pMapEntries = mapEntries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SpecializationInfo &setDataSize(size_t dataSize_) VULKAN_HPP_NOEXCEPT
{
dataSize = dataSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SpecializationInfo &setPData(const void *pData_) VULKAN_HPP_NOEXCEPT
{
pData = pData_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
SpecializationInfo &setData(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &data_) VULKAN_HPP_NOEXCEPT
{
dataSize = data_.size() * sizeof(T);
pData = data_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSpecializationInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSpecializationInfo *>(this);
}
explicit operator VkSpecializationInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSpecializationInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, const VULKAN_HPP_NAMESPACE::SpecializationMapEntry *const &, size_t const &, const void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(mapEntryCount, pMapEntries, dataSize, pData);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SpecializationInfo const &) const = default;
#else
bool operator==(SpecializationInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (mapEntryCount == rhs.mapEntryCount) && (pMapEntries == rhs.pMapEntries) && (dataSize == rhs.dataSize) && (pData == rhs.pData);
# endif
}
bool operator!=(SpecializationInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t mapEntryCount = {};
const VULKAN_HPP_NAMESPACE::SpecializationMapEntry *pMapEntries = {};
size_t dataSize = {};
const void *pData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SpecializationInfo) == sizeof(VkSpecializationInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SpecializationInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SpecializationInfo>::value,
"SpecializationInfo is not nothrow_move_constructible!");
struct PipelineShaderStageCreateInfo
{
using NativeType = VkPipelineShaderStageCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineShaderStageCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateInfo(VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::ShaderStageFlagBits stage_ = VULKAN_HPP_NAMESPACE::ShaderStageFlagBits::eVertex,
VULKAN_HPP_NAMESPACE::ShaderModule module_ = {},
const char *pName_ = {},
const VULKAN_HPP_NAMESPACE::SpecializationInfo *pSpecializationInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
stage(stage_),
module(module_),
pName(pName_),
pSpecializationInfo(pSpecializationInfo_)
{
}
VULKAN_HPP_CONSTEXPR PipelineShaderStageCreateInfo(PipelineShaderStageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineShaderStageCreateInfo(VkPipelineShaderStageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineShaderStageCreateInfo(*reinterpret_cast<PipelineShaderStageCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineShaderStageCreateInfo &operator=(PipelineShaderStageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineShaderStageCreateInfo &operator=(VkPipelineShaderStageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineShaderStageCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineShaderStageCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineShaderStageCreateInfo &setStage(VULKAN_HPP_NAMESPACE::ShaderStageFlagBits stage_) VULKAN_HPP_NOEXCEPT
{
stage = stage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineShaderStageCreateInfo &setModule(VULKAN_HPP_NAMESPACE::ShaderModule module_) VULKAN_HPP_NOEXCEPT
{
module = module_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineShaderStageCreateInfo &setPName(const char *pName_) VULKAN_HPP_NOEXCEPT
{
pName = pName_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineShaderStageCreateInfo &
setPSpecializationInfo(const VULKAN_HPP_NAMESPACE::SpecializationInfo *pSpecializationInfo_) VULKAN_HPP_NOEXCEPT
{
pSpecializationInfo = pSpecializationInfo_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineShaderStageCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineShaderStageCreateInfo *>(this);
}
explicit operator VkPipelineShaderStageCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineShaderStageCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateFlags const &,
VULKAN_HPP_NAMESPACE::ShaderStageFlagBits const &,
VULKAN_HPP_NAMESPACE::ShaderModule const &,
const char *const &,
const VULKAN_HPP_NAMESPACE::SpecializationInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, stage, module, pName, pSpecializationInfo);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(PipelineShaderStageCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = flags <=> rhs.flags; cmp != 0)
return cmp;
if(auto cmp = stage <=> rhs.stage; cmp != 0)
return cmp;
if(auto cmp = module <=> rhs.module; cmp != 0)
return cmp;
if(pName != rhs.pName)
if(auto cmp = strcmp(pName, rhs.pName); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
if(auto cmp = pSpecializationInfo <=> rhs.pSpecializationInfo; cmp != 0)
return cmp;
return std::strong_ordering::equivalent;
}
#endif
bool operator==(PipelineShaderStageCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (stage == rhs.stage) && (module == rhs.module) &&
((pName == rhs.pName) || (strcmp(pName, rhs.pName) == 0)) && (pSpecializationInfo == rhs.pSpecializationInfo);
}
bool operator!=(PipelineShaderStageCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineShaderStageCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::ShaderStageFlagBits stage = VULKAN_HPP_NAMESPACE::ShaderStageFlagBits::eVertex;
VULKAN_HPP_NAMESPACE::ShaderModule module = {};
const char *pName = {};
const VULKAN_HPP_NAMESPACE::SpecializationInfo *pSpecializationInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo) == sizeof(VkPipelineShaderStageCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo>::value,
"PipelineShaderStageCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineShaderStageCreateInfo>
{
using Type = PipelineShaderStageCreateInfo;
};
struct ComputePipelineCreateInfo
{
using NativeType = VkComputePipelineCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eComputePipelineCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ComputePipelineCreateInfo(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo stage_ = {},
VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
int32_t basePipelineIndex_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
stage(stage_),
layout(layout_),
basePipelineHandle(basePipelineHandle_),
basePipelineIndex(basePipelineIndex_)
{
}
VULKAN_HPP_CONSTEXPR ComputePipelineCreateInfo(ComputePipelineCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ComputePipelineCreateInfo(VkComputePipelineCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: ComputePipelineCreateInfo(*reinterpret_cast<ComputePipelineCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ComputePipelineCreateInfo &operator=(ComputePipelineCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ComputePipelineCreateInfo &operator=(VkComputePipelineCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ComputePipelineCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ComputePipelineCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ComputePipelineCreateInfo &setStage(VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo const &stage_) VULKAN_HPP_NOEXCEPT
{
stage = stage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ComputePipelineCreateInfo &setLayout(VULKAN_HPP_NAMESPACE::PipelineLayout layout_) VULKAN_HPP_NOEXCEPT
{
layout = layout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ComputePipelineCreateInfo &setBasePipelineHandle(VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_) VULKAN_HPP_NOEXCEPT
{
basePipelineHandle = basePipelineHandle_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ComputePipelineCreateInfo &setBasePipelineIndex(int32_t basePipelineIndex_) VULKAN_HPP_NOEXCEPT
{
basePipelineIndex = basePipelineIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkComputePipelineCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkComputePipelineCreateInfo *>(this);
}
explicit operator VkComputePipelineCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkComputePipelineCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineCreateFlags const &,
VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo const &,
VULKAN_HPP_NAMESPACE::PipelineLayout const &,
VULKAN_HPP_NAMESPACE::Pipeline const &,
int32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, stage, layout, basePipelineHandle, basePipelineIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ComputePipelineCreateInfo const &) const = default;
#else
bool operator==(ComputePipelineCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (stage == rhs.stage) && (layout == rhs.layout) &&
(basePipelineHandle == rhs.basePipelineHandle) && (basePipelineIndex == rhs.basePipelineIndex);
# endif
}
bool operator!=(ComputePipelineCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eComputePipelineCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo stage = {};
VULKAN_HPP_NAMESPACE::PipelineLayout layout = {};
VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle = {};
int32_t basePipelineIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo) == sizeof(VkComputePipelineCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ComputePipelineCreateInfo>::value,
"ComputePipelineCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eComputePipelineCreateInfo>
{
using Type = ComputePipelineCreateInfo;
};
struct ConditionalRenderingBeginInfoEXT
{
using NativeType = VkConditionalRenderingBeginInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eConditionalRenderingBeginInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ConditionalRenderingBeginInfoEXT(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
VULKAN_HPP_NAMESPACE::ConditionalRenderingFlagsEXT flags_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
buffer(buffer_),
offset(offset_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR ConditionalRenderingBeginInfoEXT(ConditionalRenderingBeginInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ConditionalRenderingBeginInfoEXT(VkConditionalRenderingBeginInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: ConditionalRenderingBeginInfoEXT(*reinterpret_cast<ConditionalRenderingBeginInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ConditionalRenderingBeginInfoEXT &operator=(ConditionalRenderingBeginInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ConditionalRenderingBeginInfoEXT &operator=(VkConditionalRenderingBeginInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ConditionalRenderingBeginInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ConditionalRenderingBeginInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ConditionalRenderingBeginInfoEXT &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ConditionalRenderingBeginInfoEXT &setOffset(VULKAN_HPP_NAMESPACE::DeviceSize offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ConditionalRenderingBeginInfoEXT &setFlags(VULKAN_HPP_NAMESPACE::ConditionalRenderingFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkConditionalRenderingBeginInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkConditionalRenderingBeginInfoEXT *>(this);
}
explicit operator VkConditionalRenderingBeginInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkConditionalRenderingBeginInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::ConditionalRenderingFlagsEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, buffer, offset, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ConditionalRenderingBeginInfoEXT const &) const = default;
#else
bool operator==(ConditionalRenderingBeginInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (buffer == rhs.buffer) && (offset == rhs.offset) && (flags == rhs.flags);
# endif
}
bool operator!=(ConditionalRenderingBeginInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eConditionalRenderingBeginInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
VULKAN_HPP_NAMESPACE::ConditionalRenderingFlagsEXT flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ConditionalRenderingBeginInfoEXT) == sizeof(VkConditionalRenderingBeginInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ConditionalRenderingBeginInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ConditionalRenderingBeginInfoEXT>::value,
"ConditionalRenderingBeginInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eConditionalRenderingBeginInfoEXT>
{
using Type = ConditionalRenderingBeginInfoEXT;
};
struct ConformanceVersion
{
using NativeType = VkConformanceVersion;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ConformanceVersion(uint8_t major_ = {}, uint8_t minor_ = {}, uint8_t subminor_ = {}, uint8_t patch_ = {}) VULKAN_HPP_NOEXCEPT
: major(major_),
minor(minor_),
subminor(subminor_),
patch(patch_)
{
}
VULKAN_HPP_CONSTEXPR ConformanceVersion(ConformanceVersion const &rhs) VULKAN_HPP_NOEXCEPT = default;
ConformanceVersion(VkConformanceVersion const &rhs) VULKAN_HPP_NOEXCEPT : ConformanceVersion(*reinterpret_cast<ConformanceVersion const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ConformanceVersion &operator=(ConformanceVersion const &rhs) VULKAN_HPP_NOEXCEPT = default;
ConformanceVersion &operator=(VkConformanceVersion const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ConformanceVersion const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ConformanceVersion &setMajor(uint8_t major_) VULKAN_HPP_NOEXCEPT
{
major = major_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ConformanceVersion &setMinor(uint8_t minor_) VULKAN_HPP_NOEXCEPT
{
minor = minor_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ConformanceVersion &setSubminor(uint8_t subminor_) VULKAN_HPP_NOEXCEPT
{
subminor = subminor_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ConformanceVersion &setPatch(uint8_t patch_) VULKAN_HPP_NOEXCEPT
{
patch = patch_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkConformanceVersion const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkConformanceVersion *>(this);
}
explicit operator VkConformanceVersion &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkConformanceVersion *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint8_t const &, uint8_t const &, uint8_t const &, uint8_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(major, minor, subminor, patch);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ConformanceVersion const &) const = default;
#else
bool operator==(ConformanceVersion const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (major == rhs.major) && (minor == rhs.minor) && (subminor == rhs.subminor) && (patch == rhs.patch);
# endif
}
bool operator!=(ConformanceVersion const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint8_t major = {};
uint8_t minor = {};
uint8_t subminor = {};
uint8_t patch = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ConformanceVersion) == sizeof(VkConformanceVersion), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ConformanceVersion>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ConformanceVersion>::value,
"ConformanceVersion is not nothrow_move_constructible!");
using ConformanceVersionKHR = ConformanceVersion;
struct CooperativeMatrixPropertiesNV
{
using NativeType = VkCooperativeMatrixPropertiesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCooperativeMatrixPropertiesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CooperativeMatrixPropertiesNV(uint32_t MSize_ = {},
uint32_t NSize_ = {},
uint32_t KSize_ = {},
VULKAN_HPP_NAMESPACE::ComponentTypeNV AType_ = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16,
VULKAN_HPP_NAMESPACE::ComponentTypeNV BType_ = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16,
VULKAN_HPP_NAMESPACE::ComponentTypeNV CType_ = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16,
VULKAN_HPP_NAMESPACE::ComponentTypeNV DType_ = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16,
VULKAN_HPP_NAMESPACE::ScopeNV scope_ = VULKAN_HPP_NAMESPACE::ScopeNV::eDevice,
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
MSize(MSize_),
NSize(NSize_),
KSize(KSize_),
AType(AType_),
BType(BType_),
CType(CType_),
DType(DType_),
scope(scope_)
{
}
VULKAN_HPP_CONSTEXPR CooperativeMatrixPropertiesNV(CooperativeMatrixPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
CooperativeMatrixPropertiesNV(VkCooperativeMatrixPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
: CooperativeMatrixPropertiesNV(*reinterpret_cast<CooperativeMatrixPropertiesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CooperativeMatrixPropertiesNV &operator=(CooperativeMatrixPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
CooperativeMatrixPropertiesNV &operator=(VkCooperativeMatrixPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CooperativeMatrixPropertiesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CooperativeMatrixPropertiesNV &setMSize(uint32_t MSize_) VULKAN_HPP_NOEXCEPT
{
MSize = MSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CooperativeMatrixPropertiesNV &setNSize(uint32_t NSize_) VULKAN_HPP_NOEXCEPT
{
NSize = NSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CooperativeMatrixPropertiesNV &setKSize(uint32_t KSize_) VULKAN_HPP_NOEXCEPT
{
KSize = KSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CooperativeMatrixPropertiesNV &setAType(VULKAN_HPP_NAMESPACE::ComponentTypeNV AType_) VULKAN_HPP_NOEXCEPT
{
AType = AType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CooperativeMatrixPropertiesNV &setBType(VULKAN_HPP_NAMESPACE::ComponentTypeNV BType_) VULKAN_HPP_NOEXCEPT
{
BType = BType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CooperativeMatrixPropertiesNV &setCType(VULKAN_HPP_NAMESPACE::ComponentTypeNV CType_) VULKAN_HPP_NOEXCEPT
{
CType = CType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CooperativeMatrixPropertiesNV &setDType(VULKAN_HPP_NAMESPACE::ComponentTypeNV DType_) VULKAN_HPP_NOEXCEPT
{
DType = DType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CooperativeMatrixPropertiesNV &setScope(VULKAN_HPP_NAMESPACE::ScopeNV scope_) VULKAN_HPP_NOEXCEPT
{
scope = scope_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCooperativeMatrixPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCooperativeMatrixPropertiesNV *>(this);
}
explicit operator VkCooperativeMatrixPropertiesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCooperativeMatrixPropertiesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ComponentTypeNV const &,
VULKAN_HPP_NAMESPACE::ComponentTypeNV const &,
VULKAN_HPP_NAMESPACE::ComponentTypeNV const &,
VULKAN_HPP_NAMESPACE::ComponentTypeNV const &,
VULKAN_HPP_NAMESPACE::ScopeNV const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, MSize, NSize, KSize, AType, BType, CType, DType, scope);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CooperativeMatrixPropertiesNV const &) const = default;
#else
bool operator==(CooperativeMatrixPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (MSize == rhs.MSize) && (NSize == rhs.NSize) && (KSize == rhs.KSize) &&
(AType == rhs.AType) && (BType == rhs.BType) && (CType == rhs.CType) && (DType == rhs.DType) && (scope == rhs.scope);
# endif
}
bool operator!=(CooperativeMatrixPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCooperativeMatrixPropertiesNV;
void *pNext = {};
uint32_t MSize = {};
uint32_t NSize = {};
uint32_t KSize = {};
VULKAN_HPP_NAMESPACE::ComponentTypeNV AType = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16;
VULKAN_HPP_NAMESPACE::ComponentTypeNV BType = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16;
VULKAN_HPP_NAMESPACE::ComponentTypeNV CType = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16;
VULKAN_HPP_NAMESPACE::ComponentTypeNV DType = VULKAN_HPP_NAMESPACE::ComponentTypeNV::eFloat16;
VULKAN_HPP_NAMESPACE::ScopeNV scope = VULKAN_HPP_NAMESPACE::ScopeNV::eDevice;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV) == sizeof(VkCooperativeMatrixPropertiesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CooperativeMatrixPropertiesNV>::value,
"CooperativeMatrixPropertiesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCooperativeMatrixPropertiesNV>
{
using Type = CooperativeMatrixPropertiesNV;
};
struct CopyAccelerationStructureInfoKHR
{
using NativeType = VkCopyAccelerationStructureInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyAccelerationStructureInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CopyAccelerationStructureInfoKHR(
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src_ = {},
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst_ = {},
VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ = VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
src(src_),
dst(dst_),
mode(mode_)
{
}
VULKAN_HPP_CONSTEXPR CopyAccelerationStructureInfoKHR(CopyAccelerationStructureInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyAccelerationStructureInfoKHR(VkCopyAccelerationStructureInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: CopyAccelerationStructureInfoKHR(*reinterpret_cast<CopyAccelerationStructureInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CopyAccelerationStructureInfoKHR &operator=(CopyAccelerationStructureInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyAccelerationStructureInfoKHR &operator=(VkCopyAccelerationStructureInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CopyAccelerationStructureInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyAccelerationStructureInfoKHR &setSrc(VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src_) VULKAN_HPP_NOEXCEPT
{
src = src_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyAccelerationStructureInfoKHR &setDst(VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst_) VULKAN_HPP_NOEXCEPT
{
dst = dst_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyAccelerationStructureInfoKHR &setMode(VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_) VULKAN_HPP_NOEXCEPT
{
mode = mode_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCopyAccelerationStructureInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCopyAccelerationStructureInfoKHR *>(this);
}
explicit operator VkCopyAccelerationStructureInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCopyAccelerationStructureInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR const &,
VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, src, dst, mode);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CopyAccelerationStructureInfoKHR const &) const = default;
#else
bool operator==(CopyAccelerationStructureInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (src == rhs.src) && (dst == rhs.dst) && (mode == rhs.mode);
# endif
}
bool operator!=(CopyAccelerationStructureInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyAccelerationStructureInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst = {};
VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode = VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR) == sizeof(VkCopyAccelerationStructureInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CopyAccelerationStructureInfoKHR>::value,
"CopyAccelerationStructureInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCopyAccelerationStructureInfoKHR>
{
using Type = CopyAccelerationStructureInfoKHR;
};
struct CopyAccelerationStructureToMemoryInfoKHR
{
using NativeType = VkCopyAccelerationStructureToMemoryInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyAccelerationStructureToMemoryInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 CopyAccelerationStructureToMemoryInfoKHR(
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src_ = {},
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR dst_ = {},
VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ = VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
src(src_),
dst(dst_),
mode(mode_)
{
}
VULKAN_HPP_CONSTEXPR_14 CopyAccelerationStructureToMemoryInfoKHR(CopyAccelerationStructureToMemoryInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyAccelerationStructureToMemoryInfoKHR(VkCopyAccelerationStructureToMemoryInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: CopyAccelerationStructureToMemoryInfoKHR(*reinterpret_cast<CopyAccelerationStructureToMemoryInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CopyAccelerationStructureToMemoryInfoKHR &operator=(CopyAccelerationStructureToMemoryInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyAccelerationStructureToMemoryInfoKHR &operator=(VkCopyAccelerationStructureToMemoryInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CopyAccelerationStructureToMemoryInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyAccelerationStructureToMemoryInfoKHR &setSrc(VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src_) VULKAN_HPP_NOEXCEPT
{
src = src_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyAccelerationStructureToMemoryInfoKHR &setDst(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR const &dst_) VULKAN_HPP_NOEXCEPT
{
dst = dst_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyAccelerationStructureToMemoryInfoKHR &
setMode(VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_) VULKAN_HPP_NOEXCEPT
{
mode = mode_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCopyAccelerationStructureToMemoryInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCopyAccelerationStructureToMemoryInfoKHR *>(this);
}
explicit operator VkCopyAccelerationStructureToMemoryInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCopyAccelerationStructureToMemoryInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR const &,
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR const &,
VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, src, dst, mode);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyAccelerationStructureToMemoryInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR src = {};
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressKHR dst = {};
VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode = VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR) == sizeof(VkCopyAccelerationStructureToMemoryInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CopyAccelerationStructureToMemoryInfoKHR>::value,
"CopyAccelerationStructureToMemoryInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCopyAccelerationStructureToMemoryInfoKHR>
{
using Type = CopyAccelerationStructureToMemoryInfoKHR;
};
struct CopyBufferInfo2
{
using NativeType = VkCopyBufferInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyBufferInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CopyBufferInfo2(VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ = {},
VULKAN_HPP_NAMESPACE::Buffer dstBuffer_ = {},
uint32_t regionCount_ = {},
const VULKAN_HPP_NAMESPACE::BufferCopy2 *pRegions_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcBuffer(srcBuffer_),
dstBuffer(dstBuffer_),
regionCount(regionCount_),
pRegions(pRegions_)
{
}
VULKAN_HPP_CONSTEXPR CopyBufferInfo2(CopyBufferInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyBufferInfo2(VkCopyBufferInfo2 const &rhs) VULKAN_HPP_NOEXCEPT : CopyBufferInfo2(*reinterpret_cast<CopyBufferInfo2 const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CopyBufferInfo2(VULKAN_HPP_NAMESPACE::Buffer srcBuffer_,
VULKAN_HPP_NAMESPACE::Buffer dstBuffer_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferCopy2> const &regions_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, srcBuffer(srcBuffer_)
, dstBuffer(dstBuffer_)
, regionCount(static_cast<uint32_t>(regions_.size()))
, pRegions(regions_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CopyBufferInfo2 &operator=(CopyBufferInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyBufferInfo2 &operator=(VkCopyBufferInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyBufferInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CopyBufferInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyBufferInfo2 &setSrcBuffer(VULKAN_HPP_NAMESPACE::Buffer srcBuffer_) VULKAN_HPP_NOEXCEPT
{
srcBuffer = srcBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyBufferInfo2 &setDstBuffer(VULKAN_HPP_NAMESPACE::Buffer dstBuffer_) VULKAN_HPP_NOEXCEPT
{
dstBuffer = dstBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyBufferInfo2 &setRegionCount(uint32_t regionCount_) VULKAN_HPP_NOEXCEPT
{
regionCount = regionCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyBufferInfo2 &setPRegions(const VULKAN_HPP_NAMESPACE::BufferCopy2 *pRegions_) VULKAN_HPP_NOEXCEPT
{
pRegions = pRegions_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CopyBufferInfo2 &setRegions(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferCopy2> const &regions_) VULKAN_HPP_NOEXCEPT
{
regionCount = static_cast<uint32_t>(regions_.size());
pRegions = regions_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCopyBufferInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCopyBufferInfo2 *>(this);
}
explicit operator VkCopyBufferInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCopyBufferInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::BufferCopy2 *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcBuffer, dstBuffer, regionCount, pRegions);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CopyBufferInfo2 const &) const = default;
#else
bool operator==(CopyBufferInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcBuffer == rhs.srcBuffer) && (dstBuffer == rhs.dstBuffer) &&
(regionCount == rhs.regionCount) && (pRegions == rhs.pRegions);
# endif
}
bool operator!=(CopyBufferInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyBufferInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Buffer srcBuffer = {};
VULKAN_HPP_NAMESPACE::Buffer dstBuffer = {};
uint32_t regionCount = {};
const VULKAN_HPP_NAMESPACE::BufferCopy2 *pRegions = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CopyBufferInfo2) == sizeof(VkCopyBufferInfo2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CopyBufferInfo2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CopyBufferInfo2>::value,
"CopyBufferInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCopyBufferInfo2>
{
using Type = CopyBufferInfo2;
};
using CopyBufferInfo2KHR = CopyBufferInfo2;
struct CopyBufferToImageInfo2
{
using NativeType = VkCopyBufferToImageInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyBufferToImageInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CopyBufferToImageInfo2(VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ = {},
VULKAN_HPP_NAMESPACE::Image dstImage_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
uint32_t regionCount_ = {},
const VULKAN_HPP_NAMESPACE::BufferImageCopy2 *pRegions_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcBuffer(srcBuffer_),
dstImage(dstImage_),
dstImageLayout(dstImageLayout_),
regionCount(regionCount_),
pRegions(pRegions_)
{
}
VULKAN_HPP_CONSTEXPR CopyBufferToImageInfo2(CopyBufferToImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyBufferToImageInfo2(VkCopyBufferToImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
: CopyBufferToImageInfo2(*reinterpret_cast<CopyBufferToImageInfo2 const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CopyBufferToImageInfo2(VULKAN_HPP_NAMESPACE::Buffer srcBuffer_,
VULKAN_HPP_NAMESPACE::Image dstImage_,
VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferImageCopy2> const &regions_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, srcBuffer(srcBuffer_)
, dstImage(dstImage_)
, dstImageLayout(dstImageLayout_)
, regionCount(static_cast<uint32_t>(regions_.size()))
, pRegions(regions_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CopyBufferToImageInfo2 &operator=(CopyBufferToImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyBufferToImageInfo2 &operator=(VkCopyBufferToImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyBufferToImageInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CopyBufferToImageInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyBufferToImageInfo2 &setSrcBuffer(VULKAN_HPP_NAMESPACE::Buffer srcBuffer_) VULKAN_HPP_NOEXCEPT
{
srcBuffer = srcBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyBufferToImageInfo2 &setDstImage(VULKAN_HPP_NAMESPACE::Image dstImage_) VULKAN_HPP_NOEXCEPT
{
dstImage = dstImage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyBufferToImageInfo2 &setDstImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_) VULKAN_HPP_NOEXCEPT
{
dstImageLayout = dstImageLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyBufferToImageInfo2 &setRegionCount(uint32_t regionCount_) VULKAN_HPP_NOEXCEPT
{
regionCount = regionCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyBufferToImageInfo2 &setPRegions(const VULKAN_HPP_NAMESPACE::BufferImageCopy2 *pRegions_) VULKAN_HPP_NOEXCEPT
{
pRegions = pRegions_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CopyBufferToImageInfo2 &
setRegions(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferImageCopy2> const &regions_) VULKAN_HPP_NOEXCEPT
{
regionCount = static_cast<uint32_t>(regions_.size());
pRegions = regions_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCopyBufferToImageInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCopyBufferToImageInfo2 *>(this);
}
explicit operator VkCopyBufferToImageInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCopyBufferToImageInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::Image const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::BufferImageCopy2 *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcBuffer, dstImage, dstImageLayout, regionCount, pRegions);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CopyBufferToImageInfo2 const &) const = default;
#else
bool operator==(CopyBufferToImageInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcBuffer == rhs.srcBuffer) && (dstImage == rhs.dstImage) &&
(dstImageLayout == rhs.dstImageLayout) && (regionCount == rhs.regionCount) && (pRegions == rhs.pRegions);
# endif
}
bool operator!=(CopyBufferToImageInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyBufferToImageInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Buffer srcBuffer = {};
VULKAN_HPP_NAMESPACE::Image dstImage = {};
VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
uint32_t regionCount = {};
const VULKAN_HPP_NAMESPACE::BufferImageCopy2 *pRegions = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CopyBufferToImageInfo2) == sizeof(VkCopyBufferToImageInfo2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CopyBufferToImageInfo2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CopyBufferToImageInfo2>::value,
"CopyBufferToImageInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCopyBufferToImageInfo2>
{
using Type = CopyBufferToImageInfo2;
};
using CopyBufferToImageInfo2KHR = CopyBufferToImageInfo2;
struct CopyCommandTransformInfoQCOM
{
using NativeType = VkCopyCommandTransformInfoQCOM;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyCommandTransformInfoQCOM;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
CopyCommandTransformInfoQCOM(VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
transform(transform_)
{
}
VULKAN_HPP_CONSTEXPR CopyCommandTransformInfoQCOM(CopyCommandTransformInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyCommandTransformInfoQCOM(VkCopyCommandTransformInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT
: CopyCommandTransformInfoQCOM(*reinterpret_cast<CopyCommandTransformInfoQCOM const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CopyCommandTransformInfoQCOM &operator=(CopyCommandTransformInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyCommandTransformInfoQCOM &operator=(VkCopyCommandTransformInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyCommandTransformInfoQCOM const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CopyCommandTransformInfoQCOM &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyCommandTransformInfoQCOM &setTransform(VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_) VULKAN_HPP_NOEXCEPT
{
transform = transform_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCopyCommandTransformInfoQCOM const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCopyCommandTransformInfoQCOM *>(this);
}
explicit operator VkCopyCommandTransformInfoQCOM &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCopyCommandTransformInfoQCOM *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, transform);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CopyCommandTransformInfoQCOM const &) const = default;
#else
bool operator==(CopyCommandTransformInfoQCOM const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (transform == rhs.transform);
# endif
}
bool operator!=(CopyCommandTransformInfoQCOM const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyCommandTransformInfoQCOM;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CopyCommandTransformInfoQCOM) == sizeof(VkCopyCommandTransformInfoQCOM),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CopyCommandTransformInfoQCOM>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CopyCommandTransformInfoQCOM>::value,
"CopyCommandTransformInfoQCOM is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCopyCommandTransformInfoQCOM>
{
using Type = CopyCommandTransformInfoQCOM;
};
struct CopyDescriptorSet
{
using NativeType = VkCopyDescriptorSet;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyDescriptorSet;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CopyDescriptorSet(VULKAN_HPP_NAMESPACE::DescriptorSet srcSet_ = {},
uint32_t srcBinding_ = {},
uint32_t srcArrayElement_ = {},
VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_ = {},
uint32_t dstBinding_ = {},
uint32_t dstArrayElement_ = {},
uint32_t descriptorCount_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcSet(srcSet_),
srcBinding(srcBinding_),
srcArrayElement(srcArrayElement_),
dstSet(dstSet_),
dstBinding(dstBinding_),
dstArrayElement(dstArrayElement_),
descriptorCount(descriptorCount_)
{
}
VULKAN_HPP_CONSTEXPR CopyDescriptorSet(CopyDescriptorSet const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyDescriptorSet(VkCopyDescriptorSet const &rhs) VULKAN_HPP_NOEXCEPT : CopyDescriptorSet(*reinterpret_cast<CopyDescriptorSet const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CopyDescriptorSet &operator=(CopyDescriptorSet const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyDescriptorSet &operator=(VkCopyDescriptorSet const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyDescriptorSet const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CopyDescriptorSet &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyDescriptorSet &setSrcSet(VULKAN_HPP_NAMESPACE::DescriptorSet srcSet_) VULKAN_HPP_NOEXCEPT
{
srcSet = srcSet_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyDescriptorSet &setSrcBinding(uint32_t srcBinding_) VULKAN_HPP_NOEXCEPT
{
srcBinding = srcBinding_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyDescriptorSet &setSrcArrayElement(uint32_t srcArrayElement_) VULKAN_HPP_NOEXCEPT
{
srcArrayElement = srcArrayElement_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyDescriptorSet &setDstSet(VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_) VULKAN_HPP_NOEXCEPT
{
dstSet = dstSet_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyDescriptorSet &setDstBinding(uint32_t dstBinding_) VULKAN_HPP_NOEXCEPT
{
dstBinding = dstBinding_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyDescriptorSet &setDstArrayElement(uint32_t dstArrayElement_) VULKAN_HPP_NOEXCEPT
{
dstArrayElement = dstArrayElement_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyDescriptorSet &setDescriptorCount(uint32_t descriptorCount_) VULKAN_HPP_NOEXCEPT
{
descriptorCount = descriptorCount_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCopyDescriptorSet const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCopyDescriptorSet *>(this);
}
explicit operator VkCopyDescriptorSet &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCopyDescriptorSet *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DescriptorSet const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::DescriptorSet const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcSet, srcBinding, srcArrayElement, dstSet, dstBinding, dstArrayElement, descriptorCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CopyDescriptorSet const &) const = default;
#else
bool operator==(CopyDescriptorSet const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcSet == rhs.srcSet) && (srcBinding == rhs.srcBinding) &&
(srcArrayElement == rhs.srcArrayElement) && (dstSet == rhs.dstSet) && (dstBinding == rhs.dstBinding) &&
(dstArrayElement == rhs.dstArrayElement) && (descriptorCount == rhs.descriptorCount);
# endif
}
bool operator!=(CopyDescriptorSet const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyDescriptorSet;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DescriptorSet srcSet = {};
uint32_t srcBinding = {};
uint32_t srcArrayElement = {};
VULKAN_HPP_NAMESPACE::DescriptorSet dstSet = {};
uint32_t dstBinding = {};
uint32_t dstArrayElement = {};
uint32_t descriptorCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CopyDescriptorSet) == sizeof(VkCopyDescriptorSet), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CopyDescriptorSet>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CopyDescriptorSet>::value,
"CopyDescriptorSet is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCopyDescriptorSet>
{
using Type = CopyDescriptorSet;
};
struct ImageCopy2
{
using NativeType = VkImageCopy2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageCopy2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageCopy2(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {},
VULKAN_HPP_NAMESPACE::Offset3D srcOffset_ = {},
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {},
VULKAN_HPP_NAMESPACE::Offset3D dstOffset_ = {},
VULKAN_HPP_NAMESPACE::Extent3D extent_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcSubresource(srcSubresource_),
srcOffset(srcOffset_),
dstSubresource(dstSubresource_),
dstOffset(dstOffset_),
extent(extent_)
{
}
VULKAN_HPP_CONSTEXPR ImageCopy2(ImageCopy2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageCopy2(VkImageCopy2 const &rhs) VULKAN_HPP_NOEXCEPT : ImageCopy2(*reinterpret_cast<ImageCopy2 const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageCopy2 &operator=(ImageCopy2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageCopy2 &operator=(VkImageCopy2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageCopy2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageCopy2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCopy2 &setSrcSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &srcSubresource_) VULKAN_HPP_NOEXCEPT
{
srcSubresource = srcSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCopy2 &setSrcOffset(VULKAN_HPP_NAMESPACE::Offset3D const &srcOffset_) VULKAN_HPP_NOEXCEPT
{
srcOffset = srcOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCopy2 &setDstSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &dstSubresource_) VULKAN_HPP_NOEXCEPT
{
dstSubresource = dstSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCopy2 &setDstOffset(VULKAN_HPP_NAMESPACE::Offset3D const &dstOffset_) VULKAN_HPP_NOEXCEPT
{
dstOffset = dstOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCopy2 &setExtent(VULKAN_HPP_NAMESPACE::Extent3D const &extent_) VULKAN_HPP_NOEXCEPT
{
extent = extent_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageCopy2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageCopy2 *>(this);
}
explicit operator VkImageCopy2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageCopy2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::Offset3D const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::Offset3D const &,
VULKAN_HPP_NAMESPACE::Extent3D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcSubresource, srcOffset, dstSubresource, dstOffset, extent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageCopy2 const &) const = default;
#else
bool operator==(ImageCopy2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcSubresource == rhs.srcSubresource) && (srcOffset == rhs.srcOffset) &&
(dstSubresource == rhs.dstSubresource) && (dstOffset == rhs.dstOffset) && (extent == rhs.extent);
# endif
}
bool operator!=(ImageCopy2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageCopy2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
VULKAN_HPP_NAMESPACE::Offset3D srcOffset = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
VULKAN_HPP_NAMESPACE::Offset3D dstOffset = {};
VULKAN_HPP_NAMESPACE::Extent3D extent = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageCopy2) == sizeof(VkImageCopy2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageCopy2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageCopy2>::value, "ImageCopy2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageCopy2>
{
using Type = ImageCopy2;
};
using ImageCopy2KHR = ImageCopy2;
struct CopyImageInfo2
{
using NativeType = VkCopyImageInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyImageInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CopyImageInfo2(VULKAN_HPP_NAMESPACE::Image srcImage_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::Image dstImage_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
uint32_t regionCount_ = {},
const VULKAN_HPP_NAMESPACE::ImageCopy2 *pRegions_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcImage(srcImage_),
srcImageLayout(srcImageLayout_),
dstImage(dstImage_),
dstImageLayout(dstImageLayout_),
regionCount(regionCount_),
pRegions(pRegions_)
{
}
VULKAN_HPP_CONSTEXPR CopyImageInfo2(CopyImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyImageInfo2(VkCopyImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT : CopyImageInfo2(*reinterpret_cast<CopyImageInfo2 const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CopyImageInfo2(VULKAN_HPP_NAMESPACE::Image srcImage_,
VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_,
VULKAN_HPP_NAMESPACE::Image dstImage_,
VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageCopy2> const &regions_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, srcImage(srcImage_)
, srcImageLayout(srcImageLayout_)
, dstImage(dstImage_)
, dstImageLayout(dstImageLayout_)
, regionCount(static_cast<uint32_t>(regions_.size()))
, pRegions(regions_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CopyImageInfo2 &operator=(CopyImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyImageInfo2 &operator=(VkCopyImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyImageInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CopyImageInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyImageInfo2 &setSrcImage(VULKAN_HPP_NAMESPACE::Image srcImage_) VULKAN_HPP_NOEXCEPT
{
srcImage = srcImage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyImageInfo2 &setSrcImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_) VULKAN_HPP_NOEXCEPT
{
srcImageLayout = srcImageLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyImageInfo2 &setDstImage(VULKAN_HPP_NAMESPACE::Image dstImage_) VULKAN_HPP_NOEXCEPT
{
dstImage = dstImage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyImageInfo2 &setDstImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_) VULKAN_HPP_NOEXCEPT
{
dstImageLayout = dstImageLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyImageInfo2 &setRegionCount(uint32_t regionCount_) VULKAN_HPP_NOEXCEPT
{
regionCount = regionCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyImageInfo2 &setPRegions(const VULKAN_HPP_NAMESPACE::ImageCopy2 *pRegions_) VULKAN_HPP_NOEXCEPT
{
pRegions = pRegions_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CopyImageInfo2 &setRegions(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageCopy2> const &regions_) VULKAN_HPP_NOEXCEPT
{
regionCount = static_cast<uint32_t>(regions_.size());
pRegions = regions_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCopyImageInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCopyImageInfo2 *>(this);
}
explicit operator VkCopyImageInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCopyImageInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Image const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
VULKAN_HPP_NAMESPACE::Image const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ImageCopy2 *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CopyImageInfo2 const &) const = default;
#else
bool operator==(CopyImageInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcImage == rhs.srcImage) && (srcImageLayout == rhs.srcImageLayout) &&
(dstImage == rhs.dstImage) && (dstImageLayout == rhs.dstImageLayout) && (regionCount == rhs.regionCount) && (pRegions == rhs.pRegions);
# endif
}
bool operator!=(CopyImageInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyImageInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Image srcImage = {};
VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::Image dstImage = {};
VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
uint32_t regionCount = {};
const VULKAN_HPP_NAMESPACE::ImageCopy2 *pRegions = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CopyImageInfo2) == sizeof(VkCopyImageInfo2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CopyImageInfo2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CopyImageInfo2>::value,
"CopyImageInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCopyImageInfo2>
{
using Type = CopyImageInfo2;
};
using CopyImageInfo2KHR = CopyImageInfo2;
struct CopyImageToBufferInfo2
{
using NativeType = VkCopyImageToBufferInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyImageToBufferInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CopyImageToBufferInfo2(VULKAN_HPP_NAMESPACE::Image srcImage_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::Buffer dstBuffer_ = {},
uint32_t regionCount_ = {},
const VULKAN_HPP_NAMESPACE::BufferImageCopy2 *pRegions_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcImage(srcImage_),
srcImageLayout(srcImageLayout_),
dstBuffer(dstBuffer_),
regionCount(regionCount_),
pRegions(pRegions_)
{
}
VULKAN_HPP_CONSTEXPR CopyImageToBufferInfo2(CopyImageToBufferInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyImageToBufferInfo2(VkCopyImageToBufferInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
: CopyImageToBufferInfo2(*reinterpret_cast<CopyImageToBufferInfo2 const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CopyImageToBufferInfo2(VULKAN_HPP_NAMESPACE::Image srcImage_,
VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_,
VULKAN_HPP_NAMESPACE::Buffer dstBuffer_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferImageCopy2> const &regions_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, srcImage(srcImage_)
, srcImageLayout(srcImageLayout_)
, dstBuffer(dstBuffer_)
, regionCount(static_cast<uint32_t>(regions_.size()))
, pRegions(regions_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CopyImageToBufferInfo2 &operator=(CopyImageToBufferInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyImageToBufferInfo2 &operator=(VkCopyImageToBufferInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyImageToBufferInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CopyImageToBufferInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyImageToBufferInfo2 &setSrcImage(VULKAN_HPP_NAMESPACE::Image srcImage_) VULKAN_HPP_NOEXCEPT
{
srcImage = srcImage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyImageToBufferInfo2 &setSrcImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_) VULKAN_HPP_NOEXCEPT
{
srcImageLayout = srcImageLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyImageToBufferInfo2 &setDstBuffer(VULKAN_HPP_NAMESPACE::Buffer dstBuffer_) VULKAN_HPP_NOEXCEPT
{
dstBuffer = dstBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyImageToBufferInfo2 &setRegionCount(uint32_t regionCount_) VULKAN_HPP_NOEXCEPT
{
regionCount = regionCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyImageToBufferInfo2 &setPRegions(const VULKAN_HPP_NAMESPACE::BufferImageCopy2 *pRegions_) VULKAN_HPP_NOEXCEPT
{
pRegions = pRegions_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CopyImageToBufferInfo2 &
setRegions(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferImageCopy2> const &regions_) VULKAN_HPP_NOEXCEPT
{
regionCount = static_cast<uint32_t>(regions_.size());
pRegions = regions_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCopyImageToBufferInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCopyImageToBufferInfo2 *>(this);
}
explicit operator VkCopyImageToBufferInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCopyImageToBufferInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Image const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::BufferImageCopy2 *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcImage, srcImageLayout, dstBuffer, regionCount, pRegions);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CopyImageToBufferInfo2 const &) const = default;
#else
bool operator==(CopyImageToBufferInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcImage == rhs.srcImage) && (srcImageLayout == rhs.srcImageLayout) &&
(dstBuffer == rhs.dstBuffer) && (regionCount == rhs.regionCount) && (pRegions == rhs.pRegions);
# endif
}
bool operator!=(CopyImageToBufferInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyImageToBufferInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Image srcImage = {};
VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::Buffer dstBuffer = {};
uint32_t regionCount = {};
const VULKAN_HPP_NAMESPACE::BufferImageCopy2 *pRegions = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CopyImageToBufferInfo2) == sizeof(VkCopyImageToBufferInfo2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CopyImageToBufferInfo2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CopyImageToBufferInfo2>::value,
"CopyImageToBufferInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCopyImageToBufferInfo2>
{
using Type = CopyImageToBufferInfo2;
};
using CopyImageToBufferInfo2KHR = CopyImageToBufferInfo2;
struct CopyMemoryToAccelerationStructureInfoKHR
{
using NativeType = VkCopyMemoryToAccelerationStructureInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCopyMemoryToAccelerationStructureInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 CopyMemoryToAccelerationStructureInfoKHR(
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR src_ = {},
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst_ = {},
VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_ = VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
src(src_),
dst(dst_),
mode(mode_)
{
}
VULKAN_HPP_CONSTEXPR_14 CopyMemoryToAccelerationStructureInfoKHR(CopyMemoryToAccelerationStructureInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyMemoryToAccelerationStructureInfoKHR(VkCopyMemoryToAccelerationStructureInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: CopyMemoryToAccelerationStructureInfoKHR(*reinterpret_cast<CopyMemoryToAccelerationStructureInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CopyMemoryToAccelerationStructureInfoKHR &operator=(CopyMemoryToAccelerationStructureInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
CopyMemoryToAccelerationStructureInfoKHR &operator=(VkCopyMemoryToAccelerationStructureInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CopyMemoryToAccelerationStructureInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyMemoryToAccelerationStructureInfoKHR &
setSrc(VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &src_) VULKAN_HPP_NOEXCEPT
{
src = src_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyMemoryToAccelerationStructureInfoKHR &setDst(VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst_) VULKAN_HPP_NOEXCEPT
{
dst = dst_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CopyMemoryToAccelerationStructureInfoKHR &
setMode(VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode_) VULKAN_HPP_NOEXCEPT
{
mode = mode_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCopyMemoryToAccelerationStructureInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCopyMemoryToAccelerationStructureInfoKHR *>(this);
}
explicit operator VkCopyMemoryToAccelerationStructureInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCopyMemoryToAccelerationStructureInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR const &,
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR const &,
VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, src, dst, mode);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCopyMemoryToAccelerationStructureInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceOrHostAddressConstKHR src = {};
VULKAN_HPP_NAMESPACE::AccelerationStructureKHR dst = {};
VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR mode = VULKAN_HPP_NAMESPACE::CopyAccelerationStructureModeKHR::eClone;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR) == sizeof(VkCopyMemoryToAccelerationStructureInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CopyMemoryToAccelerationStructureInfoKHR>::value,
"CopyMemoryToAccelerationStructureInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCopyMemoryToAccelerationStructureInfoKHR>
{
using Type = CopyMemoryToAccelerationStructureInfoKHR;
};
struct CuFunctionCreateInfoNVX
{
using NativeType = VkCuFunctionCreateInfoNVX;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCuFunctionCreateInfoNVX;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
CuFunctionCreateInfoNVX(VULKAN_HPP_NAMESPACE::CuModuleNVX module_ = {}, const char *pName_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
module(module_),
pName(pName_)
{
}
VULKAN_HPP_CONSTEXPR CuFunctionCreateInfoNVX(CuFunctionCreateInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
CuFunctionCreateInfoNVX(VkCuFunctionCreateInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT
: CuFunctionCreateInfoNVX(*reinterpret_cast<CuFunctionCreateInfoNVX const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CuFunctionCreateInfoNVX &operator=(CuFunctionCreateInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
CuFunctionCreateInfoNVX &operator=(VkCuFunctionCreateInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CuFunctionCreateInfoNVX const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CuFunctionCreateInfoNVX &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuFunctionCreateInfoNVX &setModule(VULKAN_HPP_NAMESPACE::CuModuleNVX module_) VULKAN_HPP_NOEXCEPT
{
module = module_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuFunctionCreateInfoNVX &setPName(const char *pName_) VULKAN_HPP_NOEXCEPT
{
pName = pName_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCuFunctionCreateInfoNVX const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCuFunctionCreateInfoNVX *>(this);
}
explicit operator VkCuFunctionCreateInfoNVX &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCuFunctionCreateInfoNVX *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::CuModuleNVX const &, const char *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, module, pName);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(CuFunctionCreateInfoNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = module <=> rhs.module; cmp != 0)
return cmp;
if(pName != rhs.pName)
if(auto cmp = strcmp(pName, rhs.pName); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
#endif
bool operator==(CuFunctionCreateInfoNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (module == rhs.module) && ((pName == rhs.pName) || (strcmp(pName, rhs.pName) == 0));
}
bool operator!=(CuFunctionCreateInfoNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCuFunctionCreateInfoNVX;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::CuModuleNVX module = {};
const char *pName = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CuFunctionCreateInfoNVX) == sizeof(VkCuFunctionCreateInfoNVX),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CuFunctionCreateInfoNVX>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CuFunctionCreateInfoNVX>::value,
"CuFunctionCreateInfoNVX is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCuFunctionCreateInfoNVX>
{
using Type = CuFunctionCreateInfoNVX;
};
struct CuLaunchInfoNVX
{
using NativeType = VkCuLaunchInfoNVX;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCuLaunchInfoNVX;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CuLaunchInfoNVX(VULKAN_HPP_NAMESPACE::CuFunctionNVX function_ = {},
uint32_t gridDimX_ = {},
uint32_t gridDimY_ = {},
uint32_t gridDimZ_ = {},
uint32_t blockDimX_ = {},
uint32_t blockDimY_ = {},
uint32_t blockDimZ_ = {},
uint32_t sharedMemBytes_ = {},
size_t paramCount_ = {},
const void *const *pParams_ = {},
size_t extraCount_ = {},
const void *const *pExtras_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
function(function_),
gridDimX(gridDimX_),
gridDimY(gridDimY_),
gridDimZ(gridDimZ_),
blockDimX(blockDimX_),
blockDimY(blockDimY_),
blockDimZ(blockDimZ_),
sharedMemBytes(sharedMemBytes_),
paramCount(paramCount_),
pParams(pParams_),
extraCount(extraCount_),
pExtras(pExtras_)
{
}
VULKAN_HPP_CONSTEXPR CuLaunchInfoNVX(CuLaunchInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
CuLaunchInfoNVX(VkCuLaunchInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT : CuLaunchInfoNVX(*reinterpret_cast<CuLaunchInfoNVX const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CuLaunchInfoNVX(VULKAN_HPP_NAMESPACE::CuFunctionNVX function_,
uint32_t gridDimX_,
uint32_t gridDimY_,
uint32_t gridDimZ_,
uint32_t blockDimX_,
uint32_t blockDimY_,
uint32_t blockDimZ_,
uint32_t sharedMemBytes_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const void *const> const &params_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const void *const> const &extras_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, function(function_)
, gridDimX(gridDimX_)
, gridDimY(gridDimY_)
, gridDimZ(gridDimZ_)
, blockDimX(blockDimX_)
, blockDimY(blockDimY_)
, blockDimZ(blockDimZ_)
, sharedMemBytes(sharedMemBytes_)
, paramCount(params_.size())
, pParams(params_.data())
, extraCount(extras_.size())
, pExtras(extras_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CuLaunchInfoNVX &operator=(CuLaunchInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
CuLaunchInfoNVX &operator=(VkCuLaunchInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CuLaunchInfoNVX const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setFunction(VULKAN_HPP_NAMESPACE::CuFunctionNVX function_) VULKAN_HPP_NOEXCEPT
{
function = function_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setGridDimX(uint32_t gridDimX_) VULKAN_HPP_NOEXCEPT
{
gridDimX = gridDimX_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setGridDimY(uint32_t gridDimY_) VULKAN_HPP_NOEXCEPT
{
gridDimY = gridDimY_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setGridDimZ(uint32_t gridDimZ_) VULKAN_HPP_NOEXCEPT
{
gridDimZ = gridDimZ_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setBlockDimX(uint32_t blockDimX_) VULKAN_HPP_NOEXCEPT
{
blockDimX = blockDimX_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setBlockDimY(uint32_t blockDimY_) VULKAN_HPP_NOEXCEPT
{
blockDimY = blockDimY_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setBlockDimZ(uint32_t blockDimZ_) VULKAN_HPP_NOEXCEPT
{
blockDimZ = blockDimZ_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setSharedMemBytes(uint32_t sharedMemBytes_) VULKAN_HPP_NOEXCEPT
{
sharedMemBytes = sharedMemBytes_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setParamCount(size_t paramCount_) VULKAN_HPP_NOEXCEPT
{
paramCount = paramCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setPParams(const void *const *pParams_) VULKAN_HPP_NOEXCEPT
{
pParams = pParams_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CuLaunchInfoNVX &setParams(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const void *const> const &params_) VULKAN_HPP_NOEXCEPT
{
paramCount = params_.size();
pParams = params_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setExtraCount(size_t extraCount_) VULKAN_HPP_NOEXCEPT
{
extraCount = extraCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuLaunchInfoNVX &setPExtras(const void *const *pExtras_) VULKAN_HPP_NOEXCEPT
{
pExtras = pExtras_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
CuLaunchInfoNVX &setExtras(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const void *const> const &extras_) VULKAN_HPP_NOEXCEPT
{
extraCount = extras_.size();
pExtras = extras_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCuLaunchInfoNVX const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCuLaunchInfoNVX *>(this);
}
explicit operator VkCuLaunchInfoNVX &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCuLaunchInfoNVX *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::CuFunctionNVX const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
size_t const &,
const void *const *const &,
size_t const &,
const void *const *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, function, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, paramCount, pParams, extraCount, pExtras);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CuLaunchInfoNVX const &) const = default;
#else
bool operator==(CuLaunchInfoNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (function == rhs.function) && (gridDimX == rhs.gridDimX) && (gridDimY == rhs.gridDimY) &&
(gridDimZ == rhs.gridDimZ) && (blockDimX == rhs.blockDimX) && (blockDimY == rhs.blockDimY) && (blockDimZ == rhs.blockDimZ) &&
(sharedMemBytes == rhs.sharedMemBytes) && (paramCount == rhs.paramCount) && (pParams == rhs.pParams) && (extraCount == rhs.extraCount) &&
(pExtras == rhs.pExtras);
# endif
}
bool operator!=(CuLaunchInfoNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCuLaunchInfoNVX;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::CuFunctionNVX function = {};
uint32_t gridDimX = {};
uint32_t gridDimY = {};
uint32_t gridDimZ = {};
uint32_t blockDimX = {};
uint32_t blockDimY = {};
uint32_t blockDimZ = {};
uint32_t sharedMemBytes = {};
size_t paramCount = {};
const void *const *pParams = {};
size_t extraCount = {};
const void *const *pExtras = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CuLaunchInfoNVX) == sizeof(VkCuLaunchInfoNVX), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CuLaunchInfoNVX>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CuLaunchInfoNVX>::value,
"CuLaunchInfoNVX is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCuLaunchInfoNVX>
{
using Type = CuLaunchInfoNVX;
};
struct CuModuleCreateInfoNVX
{
using NativeType = VkCuModuleCreateInfoNVX;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eCuModuleCreateInfoNVX;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR CuModuleCreateInfoNVX(size_t dataSize_ = {}, const void *pData_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
dataSize(dataSize_),
pData(pData_)
{
}
VULKAN_HPP_CONSTEXPR CuModuleCreateInfoNVX(CuModuleCreateInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
CuModuleCreateInfoNVX(VkCuModuleCreateInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT
: CuModuleCreateInfoNVX(*reinterpret_cast<CuModuleCreateInfoNVX const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
CuModuleCreateInfoNVX(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &data_, const void *pNext_ = nullptr)
: pNext(pNext_)
, dataSize(data_.size() * sizeof(T))
, pData(data_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
CuModuleCreateInfoNVX &operator=(CuModuleCreateInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
CuModuleCreateInfoNVX &operator=(VkCuModuleCreateInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::CuModuleCreateInfoNVX const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 CuModuleCreateInfoNVX &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuModuleCreateInfoNVX &setDataSize(size_t dataSize_) VULKAN_HPP_NOEXCEPT
{
dataSize = dataSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 CuModuleCreateInfoNVX &setPData(const void *pData_) VULKAN_HPP_NOEXCEPT
{
pData = pData_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
CuModuleCreateInfoNVX &setData(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &data_) VULKAN_HPP_NOEXCEPT
{
dataSize = data_.size() * sizeof(T);
pData = data_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkCuModuleCreateInfoNVX const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkCuModuleCreateInfoNVX *>(this);
}
explicit operator VkCuModuleCreateInfoNVX &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkCuModuleCreateInfoNVX *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, size_t const &, const void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, dataSize, pData);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(CuModuleCreateInfoNVX const &) const = default;
#else
bool operator==(CuModuleCreateInfoNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (dataSize == rhs.dataSize) && (pData == rhs.pData);
# endif
}
bool operator!=(CuModuleCreateInfoNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eCuModuleCreateInfoNVX;
const void *pNext = {};
size_t dataSize = {};
const void *pData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::CuModuleCreateInfoNVX) == sizeof(VkCuModuleCreateInfoNVX),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::CuModuleCreateInfoNVX>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CuModuleCreateInfoNVX>::value,
"CuModuleCreateInfoNVX is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eCuModuleCreateInfoNVX>
{
using Type = CuModuleCreateInfoNVX;
};
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct D3D12FenceSubmitInfoKHR
{
using NativeType = VkD3D12FenceSubmitInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eD3D12FenceSubmitInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR D3D12FenceSubmitInfoKHR(uint32_t waitSemaphoreValuesCount_ = {},
const uint64_t *pWaitSemaphoreValues_ = {},
uint32_t signalSemaphoreValuesCount_ = {},
const uint64_t *pSignalSemaphoreValues_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
waitSemaphoreValuesCount(waitSemaphoreValuesCount_),
pWaitSemaphoreValues(pWaitSemaphoreValues_),
signalSemaphoreValuesCount(signalSemaphoreValuesCount_),
pSignalSemaphoreValues(pSignalSemaphoreValues_)
{
}
VULKAN_HPP_CONSTEXPR D3D12FenceSubmitInfoKHR(D3D12FenceSubmitInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
D3D12FenceSubmitInfoKHR(VkD3D12FenceSubmitInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: D3D12FenceSubmitInfoKHR(*reinterpret_cast<D3D12FenceSubmitInfoKHR const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
D3D12FenceSubmitInfoKHR(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &waitSemaphoreValues_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &signalSemaphoreValues_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, waitSemaphoreValuesCount(static_cast<uint32_t>(waitSemaphoreValues_.size()))
, pWaitSemaphoreValues(waitSemaphoreValues_.data())
, signalSemaphoreValuesCount(static_cast<uint32_t>(signalSemaphoreValues_.size()))
, pSignalSemaphoreValues(signalSemaphoreValues_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
D3D12FenceSubmitInfoKHR &operator=(D3D12FenceSubmitInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
D3D12FenceSubmitInfoKHR &operator=(VkD3D12FenceSubmitInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::D3D12FenceSubmitInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 D3D12FenceSubmitInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 D3D12FenceSubmitInfoKHR &setWaitSemaphoreValuesCount(uint32_t waitSemaphoreValuesCount_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreValuesCount = waitSemaphoreValuesCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 D3D12FenceSubmitInfoKHR &setPWaitSemaphoreValues(const uint64_t *pWaitSemaphoreValues_) VULKAN_HPP_NOEXCEPT
{
pWaitSemaphoreValues = pWaitSemaphoreValues_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
D3D12FenceSubmitInfoKHR &
setWaitSemaphoreValues(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &waitSemaphoreValues_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreValuesCount = static_cast<uint32_t>(waitSemaphoreValues_.size());
pWaitSemaphoreValues = waitSemaphoreValues_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 D3D12FenceSubmitInfoKHR &setSignalSemaphoreValuesCount(uint32_t signalSemaphoreValuesCount_) VULKAN_HPP_NOEXCEPT
{
signalSemaphoreValuesCount = signalSemaphoreValuesCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 D3D12FenceSubmitInfoKHR &setPSignalSemaphoreValues(const uint64_t *pSignalSemaphoreValues_) VULKAN_HPP_NOEXCEPT
{
pSignalSemaphoreValues = pSignalSemaphoreValues_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
D3D12FenceSubmitInfoKHR &
setSignalSemaphoreValues(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &signalSemaphoreValues_) VULKAN_HPP_NOEXCEPT
{
signalSemaphoreValuesCount = static_cast<uint32_t>(signalSemaphoreValues_.size());
pSignalSemaphoreValues = signalSemaphoreValues_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkD3D12FenceSubmitInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkD3D12FenceSubmitInfoKHR *>(this);
}
explicit operator VkD3D12FenceSubmitInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkD3D12FenceSubmitInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const uint64_t *const &,
uint32_t const &,
const uint64_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, waitSemaphoreValuesCount, pWaitSemaphoreValues, signalSemaphoreValuesCount, pSignalSemaphoreValues);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(D3D12FenceSubmitInfoKHR const &) const = default;
# else
bool operator==(D3D12FenceSubmitInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (waitSemaphoreValuesCount == rhs.waitSemaphoreValuesCount) &&
(pWaitSemaphoreValues == rhs.pWaitSemaphoreValues) && (signalSemaphoreValuesCount == rhs.signalSemaphoreValuesCount) &&
(pSignalSemaphoreValues == rhs.pSignalSemaphoreValues);
# endif
}
bool operator!=(D3D12FenceSubmitInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eD3D12FenceSubmitInfoKHR;
const void *pNext = {};
uint32_t waitSemaphoreValuesCount = {};
const uint64_t *pWaitSemaphoreValues = {};
uint32_t signalSemaphoreValuesCount = {};
const uint64_t *pSignalSemaphoreValues = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::D3D12FenceSubmitInfoKHR) == sizeof(VkD3D12FenceSubmitInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::D3D12FenceSubmitInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::D3D12FenceSubmitInfoKHR>::value,
"D3D12FenceSubmitInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eD3D12FenceSubmitInfoKHR>
{
using Type = D3D12FenceSubmitInfoKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
struct DebugMarkerMarkerInfoEXT
{
using NativeType = VkDebugMarkerMarkerInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugMarkerMarkerInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14
DebugMarkerMarkerInfoEXT(const char *pMarkerName_ = {}, std::array<float, 4> const &color_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pMarkerName(pMarkerName_),
color(color_)
{
}
VULKAN_HPP_CONSTEXPR_14 DebugMarkerMarkerInfoEXT(DebugMarkerMarkerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugMarkerMarkerInfoEXT(VkDebugMarkerMarkerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DebugMarkerMarkerInfoEXT(*reinterpret_cast<DebugMarkerMarkerInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DebugMarkerMarkerInfoEXT &operator=(DebugMarkerMarkerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugMarkerMarkerInfoEXT &operator=(VkDebugMarkerMarkerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DebugMarkerMarkerInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugMarkerMarkerInfoEXT &setPMarkerName(const char *pMarkerName_) VULKAN_HPP_NOEXCEPT
{
pMarkerName = pMarkerName_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugMarkerMarkerInfoEXT &setColor(std::array<float, 4> color_) VULKAN_HPP_NOEXCEPT
{
color = color_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDebugMarkerMarkerInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDebugMarkerMarkerInfoEXT *>(this);
}
explicit operator VkDebugMarkerMarkerInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDebugMarkerMarkerInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, const char *const &, VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pMarkerName, color);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::partial_ordering operator<=>(DebugMarkerMarkerInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(pMarkerName != rhs.pMarkerName)
if(auto cmp = strcmp(pMarkerName, rhs.pMarkerName); cmp != 0)
return (cmp < 0) ? std::partial_ordering::less : std::partial_ordering::greater;
if(auto cmp = color <=> rhs.color; cmp != 0)
return cmp;
return std::partial_ordering::equivalent;
}
#endif
bool operator==(DebugMarkerMarkerInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && ((pMarkerName == rhs.pMarkerName) || (strcmp(pMarkerName, rhs.pMarkerName) == 0)) &&
(color == rhs.color);
}
bool operator!=(DebugMarkerMarkerInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugMarkerMarkerInfoEXT;
const void *pNext = {};
const char *pMarkerName = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> color = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT) == sizeof(VkDebugMarkerMarkerInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DebugMarkerMarkerInfoEXT>::value,
"DebugMarkerMarkerInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDebugMarkerMarkerInfoEXT>
{
using Type = DebugMarkerMarkerInfoEXT;
};
struct DebugMarkerObjectNameInfoEXT
{
using NativeType = VkDebugMarkerObjectNameInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugMarkerObjectNameInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
DebugMarkerObjectNameInfoEXT(VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_ = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown,
uint64_t object_ = {},
const char *pObjectName_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
objectType(objectType_),
object(object_),
pObjectName(pObjectName_)
{
}
VULKAN_HPP_CONSTEXPR DebugMarkerObjectNameInfoEXT(DebugMarkerObjectNameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugMarkerObjectNameInfoEXT(VkDebugMarkerObjectNameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DebugMarkerObjectNameInfoEXT(*reinterpret_cast<DebugMarkerObjectNameInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DebugMarkerObjectNameInfoEXT &operator=(DebugMarkerObjectNameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugMarkerObjectNameInfoEXT &operator=(VkDebugMarkerObjectNameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugMarkerObjectNameInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DebugMarkerObjectNameInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugMarkerObjectNameInfoEXT &setObjectType(VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_) VULKAN_HPP_NOEXCEPT
{
objectType = objectType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugMarkerObjectNameInfoEXT &setObject(uint64_t object_) VULKAN_HPP_NOEXCEPT
{
object = object_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugMarkerObjectNameInfoEXT &setPObjectName(const char *pObjectName_) VULKAN_HPP_NOEXCEPT
{
pObjectName = pObjectName_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDebugMarkerObjectNameInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDebugMarkerObjectNameInfoEXT *>(this);
}
explicit operator VkDebugMarkerObjectNameInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDebugMarkerObjectNameInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT const &,
uint64_t const &,
const char *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, objectType, object, pObjectName);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(DebugMarkerObjectNameInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = objectType <=> rhs.objectType; cmp != 0)
return cmp;
if(auto cmp = object <=> rhs.object; cmp != 0)
return cmp;
if(pObjectName != rhs.pObjectName)
if(auto cmp = strcmp(pObjectName, rhs.pObjectName); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
#endif
bool operator==(DebugMarkerObjectNameInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (objectType == rhs.objectType) && (object == rhs.object) &&
((pObjectName == rhs.pObjectName) || (strcmp(pObjectName, rhs.pObjectName) == 0));
}
bool operator!=(DebugMarkerObjectNameInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugMarkerObjectNameInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
uint64_t object = {};
const char *pObjectName = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DebugMarkerObjectNameInfoEXT) == sizeof(VkDebugMarkerObjectNameInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DebugMarkerObjectNameInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DebugMarkerObjectNameInfoEXT>::value,
"DebugMarkerObjectNameInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDebugMarkerObjectNameInfoEXT>
{
using Type = DebugMarkerObjectNameInfoEXT;
};
struct DebugMarkerObjectTagInfoEXT
{
using NativeType = VkDebugMarkerObjectTagInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugMarkerObjectTagInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
DebugMarkerObjectTagInfoEXT(VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_ = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown,
uint64_t object_ = {},
uint64_t tagName_ = {},
size_t tagSize_ = {},
const void *pTag_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
objectType(objectType_),
object(object_),
tagName(tagName_),
tagSize(tagSize_),
pTag(pTag_)
{
}
VULKAN_HPP_CONSTEXPR DebugMarkerObjectTagInfoEXT(DebugMarkerObjectTagInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugMarkerObjectTagInfoEXT(VkDebugMarkerObjectTagInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DebugMarkerObjectTagInfoEXT(*reinterpret_cast<DebugMarkerObjectTagInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
DebugMarkerObjectTagInfoEXT(VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_,
uint64_t object_,
uint64_t tagName_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &tag_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, objectType(objectType_)
, object(object_)
, tagName(tagName_)
, tagSize(tag_.size() * sizeof(T))
, pTag(tag_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DebugMarkerObjectTagInfoEXT &operator=(DebugMarkerObjectTagInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugMarkerObjectTagInfoEXT &operator=(VkDebugMarkerObjectTagInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugMarkerObjectTagInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DebugMarkerObjectTagInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugMarkerObjectTagInfoEXT &setObjectType(VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType_) VULKAN_HPP_NOEXCEPT
{
objectType = objectType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugMarkerObjectTagInfoEXT &setObject(uint64_t object_) VULKAN_HPP_NOEXCEPT
{
object = object_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugMarkerObjectTagInfoEXT &setTagName(uint64_t tagName_) VULKAN_HPP_NOEXCEPT
{
tagName = tagName_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugMarkerObjectTagInfoEXT &setTagSize(size_t tagSize_) VULKAN_HPP_NOEXCEPT
{
tagSize = tagSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugMarkerObjectTagInfoEXT &setPTag(const void *pTag_) VULKAN_HPP_NOEXCEPT
{
pTag = pTag_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
DebugMarkerObjectTagInfoEXT &setTag(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &tag_) VULKAN_HPP_NOEXCEPT
{
tagSize = tag_.size() * sizeof(T);
pTag = tag_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDebugMarkerObjectTagInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDebugMarkerObjectTagInfoEXT *>(this);
}
explicit operator VkDebugMarkerObjectTagInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDebugMarkerObjectTagInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT const &,
uint64_t const &,
uint64_t const &,
size_t const &,
const void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, objectType, object, tagName, tagSize, pTag);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DebugMarkerObjectTagInfoEXT const &) const = default;
#else
bool operator==(DebugMarkerObjectTagInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (objectType == rhs.objectType) && (object == rhs.object) && (tagName == rhs.tagName) &&
(tagSize == rhs.tagSize) && (pTag == rhs.pTag);
# endif
}
bool operator!=(DebugMarkerObjectTagInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugMarkerObjectTagInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT objectType = VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
uint64_t object = {};
uint64_t tagName = {};
size_t tagSize = {};
const void *pTag = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DebugMarkerObjectTagInfoEXT) == sizeof(VkDebugMarkerObjectTagInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DebugMarkerObjectTagInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DebugMarkerObjectTagInfoEXT>::value,
"DebugMarkerObjectTagInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDebugMarkerObjectTagInfoEXT>
{
using Type = DebugMarkerObjectTagInfoEXT;
};
struct DebugReportCallbackCreateInfoEXT
{
using NativeType = VkDebugReportCallbackCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugReportCallbackCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DebugReportCallbackCreateInfoEXT(VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags_ = {},
PFN_vkDebugReportCallbackEXT pfnCallback_ = {},
void *pUserData_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
pfnCallback(pfnCallback_),
pUserData(pUserData_)
{
}
VULKAN_HPP_CONSTEXPR DebugReportCallbackCreateInfoEXT(DebugReportCallbackCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugReportCallbackCreateInfoEXT(VkDebugReportCallbackCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DebugReportCallbackCreateInfoEXT(*reinterpret_cast<DebugReportCallbackCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DebugReportCallbackCreateInfoEXT &operator=(DebugReportCallbackCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugReportCallbackCreateInfoEXT &operator=(VkDebugReportCallbackCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugReportCallbackCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DebugReportCallbackCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugReportCallbackCreateInfoEXT &setFlags(VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugReportCallbackCreateInfoEXT &setPfnCallback(PFN_vkDebugReportCallbackEXT pfnCallback_) VULKAN_HPP_NOEXCEPT
{
pfnCallback = pfnCallback_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugReportCallbackCreateInfoEXT &setPUserData(void *pUserData_) VULKAN_HPP_NOEXCEPT
{
pUserData = pUserData_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDebugReportCallbackCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDebugReportCallbackCreateInfoEXT *>(this);
}
explicit operator VkDebugReportCallbackCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDebugReportCallbackCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT const &,
PFN_vkDebugReportCallbackEXT const &,
void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, pfnCallback, pUserData);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DebugReportCallbackCreateInfoEXT const &) const = default;
#else
bool operator==(DebugReportCallbackCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (pfnCallback == rhs.pfnCallback) && (pUserData == rhs.pUserData);
# endif
}
bool operator!=(DebugReportCallbackCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugReportCallbackCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DebugReportFlagsEXT flags = {};
PFN_vkDebugReportCallbackEXT pfnCallback = {};
void *pUserData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DebugReportCallbackCreateInfoEXT) == sizeof(VkDebugReportCallbackCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DebugReportCallbackCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DebugReportCallbackCreateInfoEXT>::value,
"DebugReportCallbackCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDebugReportCallbackCreateInfoEXT>
{
using Type = DebugReportCallbackCreateInfoEXT;
};
struct DebugUtilsLabelEXT
{
using NativeType = VkDebugUtilsLabelEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsLabelEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14
DebugUtilsLabelEXT(const char *pLabelName_ = {}, std::array<float, 4> const &color_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pLabelName(pLabelName_),
color(color_)
{
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsLabelEXT(DebugUtilsLabelEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugUtilsLabelEXT(VkDebugUtilsLabelEXT const &rhs) VULKAN_HPP_NOEXCEPT : DebugUtilsLabelEXT(*reinterpret_cast<DebugUtilsLabelEXT const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DebugUtilsLabelEXT &operator=(DebugUtilsLabelEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugUtilsLabelEXT &operator=(VkDebugUtilsLabelEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DebugUtilsLabelEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsLabelEXT &setPLabelName(const char *pLabelName_) VULKAN_HPP_NOEXCEPT
{
pLabelName = pLabelName_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsLabelEXT &setColor(std::array<float, 4> color_) VULKAN_HPP_NOEXCEPT
{
color = color_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDebugUtilsLabelEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDebugUtilsLabelEXT *>(this);
}
explicit operator VkDebugUtilsLabelEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDebugUtilsLabelEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, const char *const &, VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pLabelName, color);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::partial_ordering operator<=>(DebugUtilsLabelEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(pLabelName != rhs.pLabelName)
if(auto cmp = strcmp(pLabelName, rhs.pLabelName); cmp != 0)
return (cmp < 0) ? std::partial_ordering::less : std::partial_ordering::greater;
if(auto cmp = color <=> rhs.color; cmp != 0)
return cmp;
return std::partial_ordering::equivalent;
}
#endif
bool operator==(DebugUtilsLabelEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && ((pLabelName == rhs.pLabelName) || (strcmp(pLabelName, rhs.pLabelName) == 0)) &&
(color == rhs.color);
}
bool operator!=(DebugUtilsLabelEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsLabelEXT;
const void *pNext = {};
const char *pLabelName = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> color = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT) == sizeof(VkDebugUtilsLabelEXT), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT>::value,
"DebugUtilsLabelEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDebugUtilsLabelEXT>
{
using Type = DebugUtilsLabelEXT;
};
struct DebugUtilsObjectNameInfoEXT
{
using NativeType = VkDebugUtilsObjectNameInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsObjectNameInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DebugUtilsObjectNameInfoEXT(VULKAN_HPP_NAMESPACE::ObjectType objectType_ = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown,
uint64_t objectHandle_ = {},
const char *pObjectName_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
objectType(objectType_),
objectHandle(objectHandle_),
pObjectName(pObjectName_)
{
}
VULKAN_HPP_CONSTEXPR DebugUtilsObjectNameInfoEXT(DebugUtilsObjectNameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugUtilsObjectNameInfoEXT(VkDebugUtilsObjectNameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DebugUtilsObjectNameInfoEXT(*reinterpret_cast<DebugUtilsObjectNameInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DebugUtilsObjectNameInfoEXT &operator=(DebugUtilsObjectNameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugUtilsObjectNameInfoEXT &operator=(VkDebugUtilsObjectNameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DebugUtilsObjectNameInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsObjectNameInfoEXT &setObjectType(VULKAN_HPP_NAMESPACE::ObjectType objectType_) VULKAN_HPP_NOEXCEPT
{
objectType = objectType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsObjectNameInfoEXT &setObjectHandle(uint64_t objectHandle_) VULKAN_HPP_NOEXCEPT
{
objectHandle = objectHandle_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsObjectNameInfoEXT &setPObjectName(const char *pObjectName_) VULKAN_HPP_NOEXCEPT
{
pObjectName = pObjectName_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDebugUtilsObjectNameInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDebugUtilsObjectNameInfoEXT *>(this);
}
explicit operator VkDebugUtilsObjectNameInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDebugUtilsObjectNameInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::
tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ObjectType const &, uint64_t const &, const char *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, objectType, objectHandle, pObjectName);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(DebugUtilsObjectNameInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = objectType <=> rhs.objectType; cmp != 0)
return cmp;
if(auto cmp = objectHandle <=> rhs.objectHandle; cmp != 0)
return cmp;
if(pObjectName != rhs.pObjectName)
if(auto cmp = strcmp(pObjectName, rhs.pObjectName); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
#endif
bool operator==(DebugUtilsObjectNameInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (objectType == rhs.objectType) && (objectHandle == rhs.objectHandle) &&
((pObjectName == rhs.pObjectName) || (strcmp(pObjectName, rhs.pObjectName) == 0));
}
bool operator!=(DebugUtilsObjectNameInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsObjectNameInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown;
uint64_t objectHandle = {};
const char *pObjectName = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT) == sizeof(VkDebugUtilsObjectNameInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT>::value,
"DebugUtilsObjectNameInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDebugUtilsObjectNameInfoEXT>
{
using Type = DebugUtilsObjectNameInfoEXT;
};
struct DebugUtilsMessengerCallbackDataEXT
{
using NativeType = VkDebugUtilsMessengerCallbackDataEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsMessengerCallbackDataEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT(VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT flags_ = {},
const char *pMessageIdName_ = {},
int32_t messageIdNumber_ = {},
const char *pMessage_ = {},
uint32_t queueLabelCount_ = {},
const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT *pQueueLabels_ = {},
uint32_t cmdBufLabelCount_ = {},
const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT *pCmdBufLabels_ = {},
uint32_t objectCount_ = {},
const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT *pObjects_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
pMessageIdName(pMessageIdName_),
messageIdNumber(messageIdNumber_),
pMessage(pMessage_),
queueLabelCount(queueLabelCount_),
pQueueLabels(pQueueLabels_),
cmdBufLabelCount(cmdBufLabelCount_),
pCmdBufLabels(pCmdBufLabels_),
objectCount(objectCount_),
pObjects(pObjects_)
{
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT(DebugUtilsMessengerCallbackDataEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugUtilsMessengerCallbackDataEXT(VkDebugUtilsMessengerCallbackDataEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DebugUtilsMessengerCallbackDataEXT(*reinterpret_cast<DebugUtilsMessengerCallbackDataEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DebugUtilsMessengerCallbackDataEXT(
VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT flags_,
const char *pMessageIdName_,
int32_t messageIdNumber_,
const char *pMessage_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT> const &queueLabels_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT> const &cmdBufLabels_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT> const &objects_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, pMessageIdName(pMessageIdName_)
, messageIdNumber(messageIdNumber_)
, pMessage(pMessage_)
, queueLabelCount(static_cast<uint32_t>(queueLabels_.size()))
, pQueueLabels(queueLabels_.data())
, cmdBufLabelCount(static_cast<uint32_t>(cmdBufLabels_.size()))
, pCmdBufLabels(cmdBufLabels_.data())
, objectCount(static_cast<uint32_t>(objects_.size()))
, pObjects(objects_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DebugUtilsMessengerCallbackDataEXT &operator=(DebugUtilsMessengerCallbackDataEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugUtilsMessengerCallbackDataEXT &operator=(VkDebugUtilsMessengerCallbackDataEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT &
setFlags(VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT &setPMessageIdName(const char *pMessageIdName_) VULKAN_HPP_NOEXCEPT
{
pMessageIdName = pMessageIdName_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT &setMessageIdNumber(int32_t messageIdNumber_) VULKAN_HPP_NOEXCEPT
{
messageIdNumber = messageIdNumber_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT &setPMessage(const char *pMessage_) VULKAN_HPP_NOEXCEPT
{
pMessage = pMessage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT &setQueueLabelCount(uint32_t queueLabelCount_) VULKAN_HPP_NOEXCEPT
{
queueLabelCount = queueLabelCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT &
setPQueueLabels(const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT *pQueueLabels_) VULKAN_HPP_NOEXCEPT
{
pQueueLabels = pQueueLabels_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DebugUtilsMessengerCallbackDataEXT &
setQueueLabels(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT> const &queueLabels_) VULKAN_HPP_NOEXCEPT
{
queueLabelCount = static_cast<uint32_t>(queueLabels_.size());
pQueueLabels = queueLabels_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT &setCmdBufLabelCount(uint32_t cmdBufLabelCount_) VULKAN_HPP_NOEXCEPT
{
cmdBufLabelCount = cmdBufLabelCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT &
setPCmdBufLabels(const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT *pCmdBufLabels_) VULKAN_HPP_NOEXCEPT
{
pCmdBufLabels = pCmdBufLabels_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DebugUtilsMessengerCallbackDataEXT &
setCmdBufLabels(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT> const &cmdBufLabels_) VULKAN_HPP_NOEXCEPT
{
cmdBufLabelCount = static_cast<uint32_t>(cmdBufLabels_.size());
pCmdBufLabels = cmdBufLabels_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT &setObjectCount(uint32_t objectCount_) VULKAN_HPP_NOEXCEPT
{
objectCount = objectCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCallbackDataEXT &
setPObjects(const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT *pObjects_) VULKAN_HPP_NOEXCEPT
{
pObjects = pObjects_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DebugUtilsMessengerCallbackDataEXT &
setObjects(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT> const &objects_) VULKAN_HPP_NOEXCEPT
{
objectCount = static_cast<uint32_t>(objects_.size());
pObjects = objects_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDebugUtilsMessengerCallbackDataEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDebugUtilsMessengerCallbackDataEXT *>(this);
}
explicit operator VkDebugUtilsMessengerCallbackDataEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDebugUtilsMessengerCallbackDataEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT const &,
const char *const &,
int32_t const &,
const char *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, flags, pMessageIdName, messageIdNumber, pMessage, queueLabelCount, pQueueLabels, cmdBufLabelCount, pCmdBufLabels, objectCount, pObjects);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(DebugUtilsMessengerCallbackDataEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = flags <=> rhs.flags; cmp != 0)
return cmp;
if(pMessageIdName != rhs.pMessageIdName)
if(auto cmp = strcmp(pMessageIdName, rhs.pMessageIdName); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
if(auto cmp = messageIdNumber <=> rhs.messageIdNumber; cmp != 0)
return cmp;
if(pMessage != rhs.pMessage)
if(auto cmp = strcmp(pMessage, rhs.pMessage); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
if(auto cmp = queueLabelCount <=> rhs.queueLabelCount; cmp != 0)
return cmp;
if(auto cmp = pQueueLabels <=> rhs.pQueueLabels; cmp != 0)
return cmp;
if(auto cmp = cmdBufLabelCount <=> rhs.cmdBufLabelCount; cmp != 0)
return cmp;
if(auto cmp = pCmdBufLabels <=> rhs.pCmdBufLabels; cmp != 0)
return cmp;
if(auto cmp = objectCount <=> rhs.objectCount; cmp != 0)
return cmp;
if(auto cmp = pObjects <=> rhs.pObjects; cmp != 0)
return cmp;
return std::strong_ordering::equivalent;
}
#endif
bool operator==(DebugUtilsMessengerCallbackDataEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) &&
((pMessageIdName == rhs.pMessageIdName) || (strcmp(pMessageIdName, rhs.pMessageIdName) == 0)) &&
(messageIdNumber == rhs.messageIdNumber) && ((pMessage == rhs.pMessage) || (strcmp(pMessage, rhs.pMessage) == 0)) &&
(queueLabelCount == rhs.queueLabelCount) && (pQueueLabels == rhs.pQueueLabels) && (cmdBufLabelCount == rhs.cmdBufLabelCount) &&
(pCmdBufLabels == rhs.pCmdBufLabels) && (objectCount == rhs.objectCount) && (pObjects == rhs.pObjects);
}
bool operator!=(DebugUtilsMessengerCallbackDataEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsMessengerCallbackDataEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataFlagsEXT flags = {};
const char *pMessageIdName = {};
int32_t messageIdNumber = {};
const char *pMessage = {};
uint32_t queueLabelCount = {};
const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT *pQueueLabels = {};
uint32_t cmdBufLabelCount = {};
const VULKAN_HPP_NAMESPACE::DebugUtilsLabelEXT *pCmdBufLabels = {};
uint32_t objectCount = {};
const VULKAN_HPP_NAMESPACE::DebugUtilsObjectNameInfoEXT *pObjects = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataEXT) == sizeof(VkDebugUtilsMessengerCallbackDataEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCallbackDataEXT>::value,
"DebugUtilsMessengerCallbackDataEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDebugUtilsMessengerCallbackDataEXT>
{
using Type = DebugUtilsMessengerCallbackDataEXT;
};
struct DebugUtilsMessengerCreateInfoEXT
{
using NativeType = VkDebugUtilsMessengerCreateInfoEXT;
static const bool allowDuplicate = true;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsMessengerCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DebugUtilsMessengerCreateInfoEXT(VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateFlagsEXT flags_ = {},
VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagsEXT messageSeverity_ = {},
VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageType_ = {},
PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback_ = {},
void *pUserData_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
messageSeverity(messageSeverity_),
messageType(messageType_),
pfnUserCallback(pfnUserCallback_),
pUserData(pUserData_)
{
}
VULKAN_HPP_CONSTEXPR DebugUtilsMessengerCreateInfoEXT(DebugUtilsMessengerCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugUtilsMessengerCreateInfoEXT(VkDebugUtilsMessengerCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DebugUtilsMessengerCreateInfoEXT(*reinterpret_cast<DebugUtilsMessengerCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DebugUtilsMessengerCreateInfoEXT &operator=(DebugUtilsMessengerCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugUtilsMessengerCreateInfoEXT &operator=(VkDebugUtilsMessengerCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCreateInfoEXT &setFlags(VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCreateInfoEXT &
setMessageSeverity(VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagsEXT messageSeverity_) VULKAN_HPP_NOEXCEPT
{
messageSeverity = messageSeverity_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCreateInfoEXT &
setMessageType(VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageType_) VULKAN_HPP_NOEXCEPT
{
messageType = messageType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCreateInfoEXT &setPfnUserCallback(PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback_) VULKAN_HPP_NOEXCEPT
{
pfnUserCallback = pfnUserCallback_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsMessengerCreateInfoEXT &setPUserData(void *pUserData_) VULKAN_HPP_NOEXCEPT
{
pUserData = pUserData_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDebugUtilsMessengerCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDebugUtilsMessengerCreateInfoEXT *>(this);
}
explicit operator VkDebugUtilsMessengerCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDebugUtilsMessengerCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateFlagsEXT const &,
VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagsEXT const &,
VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT const &,
PFN_vkDebugUtilsMessengerCallbackEXT const &,
void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, messageSeverity, messageType, pfnUserCallback, pUserData);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DebugUtilsMessengerCreateInfoEXT const &) const = default;
#else
bool operator==(DebugUtilsMessengerCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (messageSeverity == rhs.messageSeverity) &&
(messageType == rhs.messageType) && (pfnUserCallback == rhs.pfnUserCallback) && (pUserData == rhs.pUserData);
# endif
}
bool operator!=(DebugUtilsMessengerCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsMessengerCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateFlagsEXT flags = {};
VULKAN_HPP_NAMESPACE::DebugUtilsMessageSeverityFlagsEXT messageSeverity = {};
VULKAN_HPP_NAMESPACE::DebugUtilsMessageTypeFlagsEXT messageType = {};
PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback = {};
void *pUserData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateInfoEXT) == sizeof(VkDebugUtilsMessengerCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerCreateInfoEXT>::value,
"DebugUtilsMessengerCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDebugUtilsMessengerCreateInfoEXT>
{
using Type = DebugUtilsMessengerCreateInfoEXT;
};
struct DebugUtilsObjectTagInfoEXT
{
using NativeType = VkDebugUtilsObjectTagInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDebugUtilsObjectTagInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DebugUtilsObjectTagInfoEXT(VULKAN_HPP_NAMESPACE::ObjectType objectType_ = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown,
uint64_t objectHandle_ = {},
uint64_t tagName_ = {},
size_t tagSize_ = {},
const void *pTag_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
objectType(objectType_),
objectHandle(objectHandle_),
tagName(tagName_),
tagSize(tagSize_),
pTag(pTag_)
{
}
VULKAN_HPP_CONSTEXPR DebugUtilsObjectTagInfoEXT(DebugUtilsObjectTagInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugUtilsObjectTagInfoEXT(VkDebugUtilsObjectTagInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DebugUtilsObjectTagInfoEXT(*reinterpret_cast<DebugUtilsObjectTagInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
DebugUtilsObjectTagInfoEXT(VULKAN_HPP_NAMESPACE::ObjectType objectType_,
uint64_t objectHandle_,
uint64_t tagName_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &tag_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, objectType(objectType_)
, objectHandle(objectHandle_)
, tagName(tagName_)
, tagSize(tag_.size() * sizeof(T))
, pTag(tag_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DebugUtilsObjectTagInfoEXT &operator=(DebugUtilsObjectTagInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DebugUtilsObjectTagInfoEXT &operator=(VkDebugUtilsObjectTagInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DebugUtilsObjectTagInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DebugUtilsObjectTagInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsObjectTagInfoEXT &setObjectType(VULKAN_HPP_NAMESPACE::ObjectType objectType_) VULKAN_HPP_NOEXCEPT
{
objectType = objectType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsObjectTagInfoEXT &setObjectHandle(uint64_t objectHandle_) VULKAN_HPP_NOEXCEPT
{
objectHandle = objectHandle_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsObjectTagInfoEXT &setTagName(uint64_t tagName_) VULKAN_HPP_NOEXCEPT
{
tagName = tagName_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsObjectTagInfoEXT &setTagSize(size_t tagSize_) VULKAN_HPP_NOEXCEPT
{
tagSize = tagSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DebugUtilsObjectTagInfoEXT &setPTag(const void *pTag_) VULKAN_HPP_NOEXCEPT
{
pTag = pTag_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
DebugUtilsObjectTagInfoEXT &setTag(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &tag_) VULKAN_HPP_NOEXCEPT
{
tagSize = tag_.size() * sizeof(T);
pTag = tag_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDebugUtilsObjectTagInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDebugUtilsObjectTagInfoEXT *>(this);
}
explicit operator VkDebugUtilsObjectTagInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDebugUtilsObjectTagInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ObjectType const &,
uint64_t const &,
uint64_t const &,
size_t const &,
const void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, objectType, objectHandle, tagName, tagSize, pTag);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DebugUtilsObjectTagInfoEXT const &) const = default;
#else
bool operator==(DebugUtilsObjectTagInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (objectType == rhs.objectType) && (objectHandle == rhs.objectHandle) &&
(tagName == rhs.tagName) && (tagSize == rhs.tagSize) && (pTag == rhs.pTag);
# endif
}
bool operator!=(DebugUtilsObjectTagInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDebugUtilsObjectTagInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown;
uint64_t objectHandle = {};
uint64_t tagName = {};
size_t tagSize = {};
const void *pTag = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DebugUtilsObjectTagInfoEXT) == sizeof(VkDebugUtilsObjectTagInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DebugUtilsObjectTagInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DebugUtilsObjectTagInfoEXT>::value,
"DebugUtilsObjectTagInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDebugUtilsObjectTagInfoEXT>
{
using Type = DebugUtilsObjectTagInfoEXT;
};
struct DedicatedAllocationBufferCreateInfoNV
{
using NativeType = VkDedicatedAllocationBufferCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDedicatedAllocationBufferCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DedicatedAllocationBufferCreateInfoNV(VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
dedicatedAllocation(dedicatedAllocation_)
{
}
VULKAN_HPP_CONSTEXPR DedicatedAllocationBufferCreateInfoNV(DedicatedAllocationBufferCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
DedicatedAllocationBufferCreateInfoNV(VkDedicatedAllocationBufferCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: DedicatedAllocationBufferCreateInfoNV(*reinterpret_cast<DedicatedAllocationBufferCreateInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DedicatedAllocationBufferCreateInfoNV &operator=(DedicatedAllocationBufferCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
DedicatedAllocationBufferCreateInfoNV &operator=(VkDedicatedAllocationBufferCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DedicatedAllocationBufferCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DedicatedAllocationBufferCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DedicatedAllocationBufferCreateInfoNV &
setDedicatedAllocation(VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation_) VULKAN_HPP_NOEXCEPT
{
dedicatedAllocation = dedicatedAllocation_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDedicatedAllocationBufferCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDedicatedAllocationBufferCreateInfoNV *>(this);
}
explicit operator VkDedicatedAllocationBufferCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDedicatedAllocationBufferCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, dedicatedAllocation);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DedicatedAllocationBufferCreateInfoNV const &) const = default;
#else
bool operator==(DedicatedAllocationBufferCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (dedicatedAllocation == rhs.dedicatedAllocation);
# endif
}
bool operator!=(DedicatedAllocationBufferCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDedicatedAllocationBufferCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DedicatedAllocationBufferCreateInfoNV) == sizeof(VkDedicatedAllocationBufferCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DedicatedAllocationBufferCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DedicatedAllocationBufferCreateInfoNV>::value,
"DedicatedAllocationBufferCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDedicatedAllocationBufferCreateInfoNV>
{
using Type = DedicatedAllocationBufferCreateInfoNV;
};
struct DedicatedAllocationImageCreateInfoNV
{
using NativeType = VkDedicatedAllocationImageCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDedicatedAllocationImageCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DedicatedAllocationImageCreateInfoNV(VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
dedicatedAllocation(dedicatedAllocation_)
{
}
VULKAN_HPP_CONSTEXPR DedicatedAllocationImageCreateInfoNV(DedicatedAllocationImageCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
DedicatedAllocationImageCreateInfoNV(VkDedicatedAllocationImageCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: DedicatedAllocationImageCreateInfoNV(*reinterpret_cast<DedicatedAllocationImageCreateInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DedicatedAllocationImageCreateInfoNV &operator=(DedicatedAllocationImageCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
DedicatedAllocationImageCreateInfoNV &operator=(VkDedicatedAllocationImageCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DedicatedAllocationImageCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DedicatedAllocationImageCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DedicatedAllocationImageCreateInfoNV &
setDedicatedAllocation(VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation_) VULKAN_HPP_NOEXCEPT
{
dedicatedAllocation = dedicatedAllocation_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDedicatedAllocationImageCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDedicatedAllocationImageCreateInfoNV *>(this);
}
explicit operator VkDedicatedAllocationImageCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDedicatedAllocationImageCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, dedicatedAllocation);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DedicatedAllocationImageCreateInfoNV const &) const = default;
#else
bool operator==(DedicatedAllocationImageCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (dedicatedAllocation == rhs.dedicatedAllocation);
# endif
}
bool operator!=(DedicatedAllocationImageCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDedicatedAllocationImageCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocation = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DedicatedAllocationImageCreateInfoNV) == sizeof(VkDedicatedAllocationImageCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DedicatedAllocationImageCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DedicatedAllocationImageCreateInfoNV>::value,
"DedicatedAllocationImageCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDedicatedAllocationImageCreateInfoNV>
{
using Type = DedicatedAllocationImageCreateInfoNV;
};
struct DedicatedAllocationMemoryAllocateInfoNV
{
using NativeType = VkDedicatedAllocationMemoryAllocateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDedicatedAllocationMemoryAllocateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DedicatedAllocationMemoryAllocateInfoNV(VULKAN_HPP_NAMESPACE::Image image_ = {},
VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
image(image_),
buffer(buffer_)
{
}
VULKAN_HPP_CONSTEXPR DedicatedAllocationMemoryAllocateInfoNV(DedicatedAllocationMemoryAllocateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
DedicatedAllocationMemoryAllocateInfoNV(VkDedicatedAllocationMemoryAllocateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: DedicatedAllocationMemoryAllocateInfoNV(*reinterpret_cast<DedicatedAllocationMemoryAllocateInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DedicatedAllocationMemoryAllocateInfoNV &operator=(DedicatedAllocationMemoryAllocateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
DedicatedAllocationMemoryAllocateInfoNV &operator=(VkDedicatedAllocationMemoryAllocateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DedicatedAllocationMemoryAllocateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DedicatedAllocationMemoryAllocateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DedicatedAllocationMemoryAllocateInfoNV &setImage(VULKAN_HPP_NAMESPACE::Image image_) VULKAN_HPP_NOEXCEPT
{
image = image_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DedicatedAllocationMemoryAllocateInfoNV &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDedicatedAllocationMemoryAllocateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDedicatedAllocationMemoryAllocateInfoNV *>(this);
}
explicit operator VkDedicatedAllocationMemoryAllocateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDedicatedAllocationMemoryAllocateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Image const &, VULKAN_HPP_NAMESPACE::Buffer const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, image, buffer);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DedicatedAllocationMemoryAllocateInfoNV const &) const = default;
#else
bool operator==(DedicatedAllocationMemoryAllocateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (image == rhs.image) && (buffer == rhs.buffer);
# endif
}
bool operator!=(DedicatedAllocationMemoryAllocateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDedicatedAllocationMemoryAllocateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Image image = {};
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DedicatedAllocationMemoryAllocateInfoNV) == sizeof(VkDedicatedAllocationMemoryAllocateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DedicatedAllocationMemoryAllocateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DedicatedAllocationMemoryAllocateInfoNV>::value,
"DedicatedAllocationMemoryAllocateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDedicatedAllocationMemoryAllocateInfoNV>
{
using Type = DedicatedAllocationMemoryAllocateInfoNV;
};
struct MemoryBarrier2
{
using NativeType = VkMemoryBarrier2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryBarrier2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryBarrier2(VULKAN_HPP_NAMESPACE::PipelineStageFlags2 srcStageMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags2 srcAccessMask_ = {},
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 dstStageMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags2 dstAccessMask_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcStageMask(srcStageMask_),
srcAccessMask(srcAccessMask_),
dstStageMask(dstStageMask_),
dstAccessMask(dstAccessMask_)
{
}
VULKAN_HPP_CONSTEXPR MemoryBarrier2(MemoryBarrier2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryBarrier2(VkMemoryBarrier2 const &rhs) VULKAN_HPP_NOEXCEPT : MemoryBarrier2(*reinterpret_cast<MemoryBarrier2 const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryBarrier2 &operator=(MemoryBarrier2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryBarrier2 &operator=(VkMemoryBarrier2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryBarrier2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MemoryBarrier2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryBarrier2 &setSrcStageMask(VULKAN_HPP_NAMESPACE::PipelineStageFlags2 srcStageMask_) VULKAN_HPP_NOEXCEPT
{
srcStageMask = srcStageMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryBarrier2 &setSrcAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags2 srcAccessMask_) VULKAN_HPP_NOEXCEPT
{
srcAccessMask = srcAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryBarrier2 &setDstStageMask(VULKAN_HPP_NAMESPACE::PipelineStageFlags2 dstStageMask_) VULKAN_HPP_NOEXCEPT
{
dstStageMask = dstStageMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryBarrier2 &setDstAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags2 dstAccessMask_) VULKAN_HPP_NOEXCEPT
{
dstAccessMask = dstAccessMask_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMemoryBarrier2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryBarrier2 *>(this);
}
explicit operator VkMemoryBarrier2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryBarrier2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 const &,
VULKAN_HPP_NAMESPACE::AccessFlags2 const &,
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 const &,
VULKAN_HPP_NAMESPACE::AccessFlags2 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcStageMask, srcAccessMask, dstStageMask, dstAccessMask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryBarrier2 const &) const = default;
#else
bool operator==(MemoryBarrier2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcStageMask == rhs.srcStageMask) && (srcAccessMask == rhs.srcAccessMask) &&
(dstStageMask == rhs.dstStageMask) && (dstAccessMask == rhs.dstAccessMask);
# endif
}
bool operator!=(MemoryBarrier2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryBarrier2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 srcStageMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags2 srcAccessMask = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 dstStageMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags2 dstAccessMask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryBarrier2) == sizeof(VkMemoryBarrier2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryBarrier2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryBarrier2>::value,
"MemoryBarrier2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryBarrier2>
{
using Type = MemoryBarrier2;
};
using MemoryBarrier2KHR = MemoryBarrier2;
struct ImageSubresourceRange
{
using NativeType = VkImageSubresourceRange;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageSubresourceRange(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {},
uint32_t baseMipLevel_ = {},
uint32_t levelCount_ = {},
uint32_t baseArrayLayer_ = {},
uint32_t layerCount_ = {}) VULKAN_HPP_NOEXCEPT
: aspectMask(aspectMask_),
baseMipLevel(baseMipLevel_),
levelCount(levelCount_),
baseArrayLayer(baseArrayLayer_),
layerCount(layerCount_)
{
}
VULKAN_HPP_CONSTEXPR ImageSubresourceRange(ImageSubresourceRange const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageSubresourceRange(VkImageSubresourceRange const &rhs) VULKAN_HPP_NOEXCEPT
: ImageSubresourceRange(*reinterpret_cast<ImageSubresourceRange const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageSubresourceRange &operator=(ImageSubresourceRange const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageSubresourceRange &operator=(VkImageSubresourceRange const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSubresourceRange const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageSubresourceRange &setAspectMask(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_) VULKAN_HPP_NOEXCEPT
{
aspectMask = aspectMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageSubresourceRange &setBaseMipLevel(uint32_t baseMipLevel_) VULKAN_HPP_NOEXCEPT
{
baseMipLevel = baseMipLevel_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageSubresourceRange &setLevelCount(uint32_t levelCount_) VULKAN_HPP_NOEXCEPT
{
levelCount = levelCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageSubresourceRange &setBaseArrayLayer(uint32_t baseArrayLayer_) VULKAN_HPP_NOEXCEPT
{
baseArrayLayer = baseArrayLayer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageSubresourceRange &setLayerCount(uint32_t layerCount_) VULKAN_HPP_NOEXCEPT
{
layerCount = layerCount_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageSubresourceRange const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageSubresourceRange *>(this);
}
explicit operator VkImageSubresourceRange &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageSubresourceRange *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ImageAspectFlags const &, uint32_t const &, uint32_t const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(aspectMask, baseMipLevel, levelCount, baseArrayLayer, layerCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageSubresourceRange const &) const = default;
#else
bool operator==(ImageSubresourceRange const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (aspectMask == rhs.aspectMask) && (baseMipLevel == rhs.baseMipLevel) && (levelCount == rhs.levelCount) &&
(baseArrayLayer == rhs.baseArrayLayer) && (layerCount == rhs.layerCount);
# endif
}
bool operator!=(ImageSubresourceRange const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
uint32_t baseMipLevel = {};
uint32_t levelCount = {};
uint32_t baseArrayLayer = {};
uint32_t layerCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageSubresourceRange) == sizeof(VkImageSubresourceRange),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageSubresourceRange>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageSubresourceRange>::value,
"ImageSubresourceRange is not nothrow_move_constructible!");
struct ImageMemoryBarrier2
{
using NativeType = VkImageMemoryBarrier2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageMemoryBarrier2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageMemoryBarrier2(VULKAN_HPP_NAMESPACE::PipelineStageFlags2 srcStageMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags2 srcAccessMask_ = {},
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 dstStageMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags2 dstAccessMask_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout oldLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::ImageLayout newLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
uint32_t srcQueueFamilyIndex_ = {},
uint32_t dstQueueFamilyIndex_ = {},
VULKAN_HPP_NAMESPACE::Image image_ = {},
VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcStageMask(srcStageMask_),
srcAccessMask(srcAccessMask_),
dstStageMask(dstStageMask_),
dstAccessMask(dstAccessMask_),
oldLayout(oldLayout_),
newLayout(newLayout_),
srcQueueFamilyIndex(srcQueueFamilyIndex_),
dstQueueFamilyIndex(dstQueueFamilyIndex_),
image(image_),
subresourceRange(subresourceRange_)
{
}
VULKAN_HPP_CONSTEXPR ImageMemoryBarrier2(ImageMemoryBarrier2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageMemoryBarrier2(VkImageMemoryBarrier2 const &rhs) VULKAN_HPP_NOEXCEPT : ImageMemoryBarrier2(*reinterpret_cast<ImageMemoryBarrier2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageMemoryBarrier2 &operator=(ImageMemoryBarrier2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageMemoryBarrier2 &operator=(VkImageMemoryBarrier2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier2 &setSrcStageMask(VULKAN_HPP_NAMESPACE::PipelineStageFlags2 srcStageMask_) VULKAN_HPP_NOEXCEPT
{
srcStageMask = srcStageMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier2 &setSrcAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags2 srcAccessMask_) VULKAN_HPP_NOEXCEPT
{
srcAccessMask = srcAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier2 &setDstStageMask(VULKAN_HPP_NAMESPACE::PipelineStageFlags2 dstStageMask_) VULKAN_HPP_NOEXCEPT
{
dstStageMask = dstStageMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier2 &setDstAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags2 dstAccessMask_) VULKAN_HPP_NOEXCEPT
{
dstAccessMask = dstAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier2 &setOldLayout(VULKAN_HPP_NAMESPACE::ImageLayout oldLayout_) VULKAN_HPP_NOEXCEPT
{
oldLayout = oldLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier2 &setNewLayout(VULKAN_HPP_NAMESPACE::ImageLayout newLayout_) VULKAN_HPP_NOEXCEPT
{
newLayout = newLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier2 &setSrcQueueFamilyIndex(uint32_t srcQueueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
srcQueueFamilyIndex = srcQueueFamilyIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier2 &setDstQueueFamilyIndex(uint32_t dstQueueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
dstQueueFamilyIndex = dstQueueFamilyIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier2 &setImage(VULKAN_HPP_NAMESPACE::Image image_) VULKAN_HPP_NOEXCEPT
{
image = image_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier2 &
setSubresourceRange(VULKAN_HPP_NAMESPACE::ImageSubresourceRange const &subresourceRange_) VULKAN_HPP_NOEXCEPT
{
subresourceRange = subresourceRange_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageMemoryBarrier2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageMemoryBarrier2 *>(this);
}
explicit operator VkImageMemoryBarrier2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageMemoryBarrier2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 const &,
VULKAN_HPP_NAMESPACE::AccessFlags2 const &,
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 const &,
VULKAN_HPP_NAMESPACE::AccessFlags2 const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Image const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceRange const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
srcStageMask,
srcAccessMask,
dstStageMask,
dstAccessMask,
oldLayout,
newLayout,
srcQueueFamilyIndex,
dstQueueFamilyIndex,
image,
subresourceRange);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageMemoryBarrier2 const &) const = default;
#else
bool operator==(ImageMemoryBarrier2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcStageMask == rhs.srcStageMask) && (srcAccessMask == rhs.srcAccessMask) &&
(dstStageMask == rhs.dstStageMask) && (dstAccessMask == rhs.dstAccessMask) && (oldLayout == rhs.oldLayout) &&
(newLayout == rhs.newLayout) && (srcQueueFamilyIndex == rhs.srcQueueFamilyIndex) && (dstQueueFamilyIndex == rhs.dstQueueFamilyIndex) &&
(image == rhs.image) && (subresourceRange == rhs.subresourceRange);
# endif
}
bool operator!=(ImageMemoryBarrier2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageMemoryBarrier2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 srcStageMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags2 srcAccessMask = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 dstStageMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags2 dstAccessMask = {};
VULKAN_HPP_NAMESPACE::ImageLayout oldLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::ImageLayout newLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
uint32_t srcQueueFamilyIndex = {};
uint32_t dstQueueFamilyIndex = {};
VULKAN_HPP_NAMESPACE::Image image = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2) == sizeof(VkImageMemoryBarrier2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2>::value,
"ImageMemoryBarrier2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageMemoryBarrier2>
{
using Type = ImageMemoryBarrier2;
};
using ImageMemoryBarrier2KHR = ImageMemoryBarrier2;
struct DependencyInfo
{
using NativeType = VkDependencyInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDependencyInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DependencyInfo(VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ = {},
uint32_t memoryBarrierCount_ = {},
const VULKAN_HPP_NAMESPACE::MemoryBarrier2 *pMemoryBarriers_ = {},
uint32_t bufferMemoryBarrierCount_ = {},
const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2 *pBufferMemoryBarriers_ = {},
uint32_t imageMemoryBarrierCount_ = {},
const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2 *pImageMemoryBarriers_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
dependencyFlags(dependencyFlags_),
memoryBarrierCount(memoryBarrierCount_),
pMemoryBarriers(pMemoryBarriers_),
bufferMemoryBarrierCount(bufferMemoryBarrierCount_),
pBufferMemoryBarriers(pBufferMemoryBarriers_),
imageMemoryBarrierCount(imageMemoryBarrierCount_),
pImageMemoryBarriers(pImageMemoryBarriers_)
{
}
VULKAN_HPP_CONSTEXPR DependencyInfo(DependencyInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DependencyInfo(VkDependencyInfo const &rhs) VULKAN_HPP_NOEXCEPT : DependencyInfo(*reinterpret_cast<DependencyInfo const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DependencyInfo(VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::MemoryBarrier2> const &memoryBarriers_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2> const &bufferMemoryBarriers_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2> const &imageMemoryBarriers_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, dependencyFlags(dependencyFlags_)
, memoryBarrierCount(static_cast<uint32_t>(memoryBarriers_.size()))
, pMemoryBarriers(memoryBarriers_.data())
, bufferMemoryBarrierCount(static_cast<uint32_t>(bufferMemoryBarriers_.size()))
, pBufferMemoryBarriers(bufferMemoryBarriers_.data())
, imageMemoryBarrierCount(static_cast<uint32_t>(imageMemoryBarriers_.size()))
, pImageMemoryBarriers(imageMemoryBarriers_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DependencyInfo &operator=(DependencyInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DependencyInfo &operator=(VkDependencyInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DependencyInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DependencyInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DependencyInfo &setDependencyFlags(VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_) VULKAN_HPP_NOEXCEPT
{
dependencyFlags = dependencyFlags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DependencyInfo &setMemoryBarrierCount(uint32_t memoryBarrierCount_) VULKAN_HPP_NOEXCEPT
{
memoryBarrierCount = memoryBarrierCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DependencyInfo &setPMemoryBarriers(const VULKAN_HPP_NAMESPACE::MemoryBarrier2 *pMemoryBarriers_) VULKAN_HPP_NOEXCEPT
{
pMemoryBarriers = pMemoryBarriers_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DependencyInfo &
setMemoryBarriers(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::MemoryBarrier2> const &memoryBarriers_) VULKAN_HPP_NOEXCEPT
{
memoryBarrierCount = static_cast<uint32_t>(memoryBarriers_.size());
pMemoryBarriers = memoryBarriers_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 DependencyInfo &setBufferMemoryBarrierCount(uint32_t bufferMemoryBarrierCount_) VULKAN_HPP_NOEXCEPT
{
bufferMemoryBarrierCount = bufferMemoryBarrierCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DependencyInfo &
setPBufferMemoryBarriers(const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2 *pBufferMemoryBarriers_) VULKAN_HPP_NOEXCEPT
{
pBufferMemoryBarriers = pBufferMemoryBarriers_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DependencyInfo &setBufferMemoryBarriers(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2> const &bufferMemoryBarriers_) VULKAN_HPP_NOEXCEPT
{
bufferMemoryBarrierCount = static_cast<uint32_t>(bufferMemoryBarriers_.size());
pBufferMemoryBarriers = bufferMemoryBarriers_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 DependencyInfo &setImageMemoryBarrierCount(uint32_t imageMemoryBarrierCount_) VULKAN_HPP_NOEXCEPT
{
imageMemoryBarrierCount = imageMemoryBarrierCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DependencyInfo &
setPImageMemoryBarriers(const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2 *pImageMemoryBarriers_) VULKAN_HPP_NOEXCEPT
{
pImageMemoryBarriers = pImageMemoryBarriers_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DependencyInfo &setImageMemoryBarriers(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2> const &imageMemoryBarriers_) VULKAN_HPP_NOEXCEPT
{
imageMemoryBarrierCount = static_cast<uint32_t>(imageMemoryBarriers_.size());
pImageMemoryBarriers = imageMemoryBarriers_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDependencyInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDependencyInfo *>(this);
}
explicit operator VkDependencyInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDependencyInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DependencyFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::MemoryBarrier2 *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2 *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2 *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
dependencyFlags,
memoryBarrierCount,
pMemoryBarriers,
bufferMemoryBarrierCount,
pBufferMemoryBarriers,
imageMemoryBarrierCount,
pImageMemoryBarriers);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DependencyInfo const &) const = default;
#else
bool operator==(DependencyInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (dependencyFlags == rhs.dependencyFlags) &&
(memoryBarrierCount == rhs.memoryBarrierCount) && (pMemoryBarriers == rhs.pMemoryBarriers) &&
(bufferMemoryBarrierCount == rhs.bufferMemoryBarrierCount) && (pBufferMemoryBarriers == rhs.pBufferMemoryBarriers) &&
(imageMemoryBarrierCount == rhs.imageMemoryBarrierCount) && (pImageMemoryBarriers == rhs.pImageMemoryBarriers);
# endif
}
bool operator!=(DependencyInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDependencyInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags = {};
uint32_t memoryBarrierCount = {};
const VULKAN_HPP_NAMESPACE::MemoryBarrier2 *pMemoryBarriers = {};
uint32_t bufferMemoryBarrierCount = {};
const VULKAN_HPP_NAMESPACE::BufferMemoryBarrier2 *pBufferMemoryBarriers = {};
uint32_t imageMemoryBarrierCount = {};
const VULKAN_HPP_NAMESPACE::ImageMemoryBarrier2 *pImageMemoryBarriers = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DependencyInfo) == sizeof(VkDependencyInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DependencyInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DependencyInfo>::value,
"DependencyInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDependencyInfo>
{
using Type = DependencyInfo;
};
using DependencyInfoKHR = DependencyInfo;
struct DescriptorBufferInfo
{
using NativeType = VkDescriptorBufferInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorBufferInfo(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize range_ = {}) VULKAN_HPP_NOEXCEPT
: buffer(buffer_),
offset(offset_),
range(range_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorBufferInfo(DescriptorBufferInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorBufferInfo(VkDescriptorBufferInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorBufferInfo(*reinterpret_cast<DescriptorBufferInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorBufferInfo &operator=(DescriptorBufferInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorBufferInfo &operator=(VkDescriptorBufferInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorBufferInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorBufferInfo &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorBufferInfo &setOffset(VULKAN_HPP_NAMESPACE::DeviceSize offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorBufferInfo &setRange(VULKAN_HPP_NAMESPACE::DeviceSize range_) VULKAN_HPP_NOEXCEPT
{
range = range_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorBufferInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorBufferInfo *>(this);
}
explicit operator VkDescriptorBufferInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorBufferInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Buffer const &, VULKAN_HPP_NAMESPACE::DeviceSize const &, VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(buffer, offset, range);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorBufferInfo const &) const = default;
#else
bool operator==(DescriptorBufferInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (buffer == rhs.buffer) && (offset == rhs.offset) && (range == rhs.range);
# endif
}
bool operator!=(DescriptorBufferInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
VULKAN_HPP_NAMESPACE::DeviceSize range = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorBufferInfo) == sizeof(VkDescriptorBufferInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorBufferInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorBufferInfo>::value,
"DescriptorBufferInfo is not nothrow_move_constructible!");
struct DescriptorImageInfo
{
using NativeType = VkDescriptorImageInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
DescriptorImageInfo(VULKAN_HPP_NAMESPACE::Sampler sampler_ = {},
VULKAN_HPP_NAMESPACE::ImageView imageView_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout imageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined) VULKAN_HPP_NOEXCEPT
: sampler(sampler_),
imageView(imageView_),
imageLayout(imageLayout_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorImageInfo(DescriptorImageInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorImageInfo(VkDescriptorImageInfo const &rhs) VULKAN_HPP_NOEXCEPT : DescriptorImageInfo(*reinterpret_cast<DescriptorImageInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorImageInfo &operator=(DescriptorImageInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorImageInfo &operator=(VkDescriptorImageInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorImageInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorImageInfo &setSampler(VULKAN_HPP_NAMESPACE::Sampler sampler_) VULKAN_HPP_NOEXCEPT
{
sampler = sampler_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorImageInfo &setImageView(VULKAN_HPP_NAMESPACE::ImageView imageView_) VULKAN_HPP_NOEXCEPT
{
imageView = imageView_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorImageInfo &setImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout imageLayout_) VULKAN_HPP_NOEXCEPT
{
imageLayout = imageLayout_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorImageInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorImageInfo *>(this);
}
explicit operator VkDescriptorImageInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorImageInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Sampler const &, VULKAN_HPP_NAMESPACE::ImageView const &, VULKAN_HPP_NAMESPACE::ImageLayout const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sampler, imageView, imageLayout);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorImageInfo const &) const = default;
#else
bool operator==(DescriptorImageInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sampler == rhs.sampler) && (imageView == rhs.imageView) && (imageLayout == rhs.imageLayout);
# endif
}
bool operator!=(DescriptorImageInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Sampler sampler = {};
VULKAN_HPP_NAMESPACE::ImageView imageView = {};
VULKAN_HPP_NAMESPACE::ImageLayout imageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorImageInfo) == sizeof(VkDescriptorImageInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorImageInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorImageInfo>::value,
"DescriptorImageInfo is not nothrow_move_constructible!");
struct DescriptorPoolSize
{
using NativeType = VkDescriptorPoolSize;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorPoolSize(VULKAN_HPP_NAMESPACE::DescriptorType type_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler,
uint32_t descriptorCount_ = {}) VULKAN_HPP_NOEXCEPT
: type(type_),
descriptorCount(descriptorCount_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorPoolSize(DescriptorPoolSize const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorPoolSize(VkDescriptorPoolSize const &rhs) VULKAN_HPP_NOEXCEPT : DescriptorPoolSize(*reinterpret_cast<DescriptorPoolSize const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorPoolSize &operator=(DescriptorPoolSize const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorPoolSize &operator=(VkDescriptorPoolSize const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorPoolSize const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorPoolSize &setType(VULKAN_HPP_NAMESPACE::DescriptorType type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorPoolSize &setDescriptorCount(uint32_t descriptorCount_) VULKAN_HPP_NOEXCEPT
{
descriptorCount = descriptorCount_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorPoolSize const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorPoolSize *>(this);
}
explicit operator VkDescriptorPoolSize &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorPoolSize *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DescriptorType const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(type, descriptorCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorPoolSize const &) const = default;
#else
bool operator==(DescriptorPoolSize const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (type == rhs.type) && (descriptorCount == rhs.descriptorCount);
# endif
}
bool operator!=(DescriptorPoolSize const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DescriptorType type = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
uint32_t descriptorCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorPoolSize) == sizeof(VkDescriptorPoolSize), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorPoolSize>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorPoolSize>::value,
"DescriptorPoolSize is not nothrow_move_constructible!");
struct DescriptorPoolCreateInfo
{
using NativeType = VkDescriptorPoolCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorPoolCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorPoolCreateInfo(VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags flags_ = {},
uint32_t maxSets_ = {},
uint32_t poolSizeCount_ = {},
const VULKAN_HPP_NAMESPACE::DescriptorPoolSize *pPoolSizes_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
maxSets(maxSets_),
poolSizeCount(poolSizeCount_),
pPoolSizes(pPoolSizes_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorPoolCreateInfo(DescriptorPoolCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorPoolCreateInfo(VkDescriptorPoolCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorPoolCreateInfo(*reinterpret_cast<DescriptorPoolCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorPoolCreateInfo(VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags flags_,
uint32_t maxSets_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorPoolSize> const &poolSizes_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, maxSets(maxSets_)
, poolSizeCount(static_cast<uint32_t>(poolSizes_.size()))
, pPoolSizes(poolSizes_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorPoolCreateInfo &operator=(DescriptorPoolCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorPoolCreateInfo &operator=(VkDescriptorPoolCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorPoolCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorPoolCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorPoolCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorPoolCreateInfo &setMaxSets(uint32_t maxSets_) VULKAN_HPP_NOEXCEPT
{
maxSets = maxSets_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorPoolCreateInfo &setPoolSizeCount(uint32_t poolSizeCount_) VULKAN_HPP_NOEXCEPT
{
poolSizeCount = poolSizeCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorPoolCreateInfo &setPPoolSizes(const VULKAN_HPP_NAMESPACE::DescriptorPoolSize *pPoolSizes_) VULKAN_HPP_NOEXCEPT
{
pPoolSizes = pPoolSizes_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorPoolCreateInfo &
setPoolSizes(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorPoolSize> const &poolSizes_) VULKAN_HPP_NOEXCEPT
{
poolSizeCount = static_cast<uint32_t>(poolSizes_.size());
pPoolSizes = poolSizes_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorPoolCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorPoolCreateInfo *>(this);
}
explicit operator VkDescriptorPoolCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorPoolCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DescriptorPoolSize *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, maxSets, poolSizeCount, pPoolSizes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorPoolCreateInfo const &) const = default;
#else
bool operator==(DescriptorPoolCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (maxSets == rhs.maxSets) &&
(poolSizeCount == rhs.poolSizeCount) && (pPoolSizes == rhs.pPoolSizes);
# endif
}
bool operator!=(DescriptorPoolCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorPoolCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DescriptorPoolCreateFlags flags = {};
uint32_t maxSets = {};
uint32_t poolSizeCount = {};
const VULKAN_HPP_NAMESPACE::DescriptorPoolSize *pPoolSizes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorPoolCreateInfo) == sizeof(VkDescriptorPoolCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorPoolCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorPoolCreateInfo>::value,
"DescriptorPoolCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDescriptorPoolCreateInfo>
{
using Type = DescriptorPoolCreateInfo;
};
struct DescriptorPoolInlineUniformBlockCreateInfo
{
using NativeType = VkDescriptorPoolInlineUniformBlockCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorPoolInlineUniformBlockCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorPoolInlineUniformBlockCreateInfo(uint32_t maxInlineUniformBlockBindings_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxInlineUniformBlockBindings(maxInlineUniformBlockBindings_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorPoolInlineUniformBlockCreateInfo(DescriptorPoolInlineUniformBlockCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorPoolInlineUniformBlockCreateInfo(VkDescriptorPoolInlineUniformBlockCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorPoolInlineUniformBlockCreateInfo(*reinterpret_cast<DescriptorPoolInlineUniformBlockCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorPoolInlineUniformBlockCreateInfo &operator=(DescriptorPoolInlineUniformBlockCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorPoolInlineUniformBlockCreateInfo &operator=(VkDescriptorPoolInlineUniformBlockCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorPoolInlineUniformBlockCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorPoolInlineUniformBlockCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorPoolInlineUniformBlockCreateInfo &
setMaxInlineUniformBlockBindings(uint32_t maxInlineUniformBlockBindings_) VULKAN_HPP_NOEXCEPT
{
maxInlineUniformBlockBindings = maxInlineUniformBlockBindings_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorPoolInlineUniformBlockCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorPoolInlineUniformBlockCreateInfo *>(this);
}
explicit operator VkDescriptorPoolInlineUniformBlockCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorPoolInlineUniformBlockCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxInlineUniformBlockBindings);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorPoolInlineUniformBlockCreateInfo const &) const = default;
#else
bool operator==(DescriptorPoolInlineUniformBlockCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxInlineUniformBlockBindings == rhs.maxInlineUniformBlockBindings);
# endif
}
bool operator!=(DescriptorPoolInlineUniformBlockCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorPoolInlineUniformBlockCreateInfo;
const void *pNext = {};
uint32_t maxInlineUniformBlockBindings = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorPoolInlineUniformBlockCreateInfo) ==
sizeof(VkDescriptorPoolInlineUniformBlockCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorPoolInlineUniformBlockCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorPoolInlineUniformBlockCreateInfo>::value,
"DescriptorPoolInlineUniformBlockCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDescriptorPoolInlineUniformBlockCreateInfo>
{
using Type = DescriptorPoolInlineUniformBlockCreateInfo;
};
using DescriptorPoolInlineUniformBlockCreateInfoEXT = DescriptorPoolInlineUniformBlockCreateInfo;
struct DescriptorSetAllocateInfo
{
using NativeType = VkDescriptorSetAllocateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetAllocateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorSetAllocateInfo(VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool_ = {},
uint32_t descriptorSetCount_ = {},
const VULKAN_HPP_NAMESPACE::DescriptorSetLayout *pSetLayouts_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
descriptorPool(descriptorPool_),
descriptorSetCount(descriptorSetCount_),
pSetLayouts(pSetLayouts_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorSetAllocateInfo(DescriptorSetAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetAllocateInfo(VkDescriptorSetAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorSetAllocateInfo(*reinterpret_cast<DescriptorSetAllocateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorSetAllocateInfo(VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayout> const &setLayouts_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, descriptorPool(descriptorPool_)
, descriptorSetCount(static_cast<uint32_t>(setLayouts_.size()))
, pSetLayouts(setLayouts_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorSetAllocateInfo &operator=(DescriptorSetAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetAllocateInfo &operator=(VkDescriptorSetAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetAllocateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorSetAllocateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetAllocateInfo &setDescriptorPool(VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool_) VULKAN_HPP_NOEXCEPT
{
descriptorPool = descriptorPool_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetAllocateInfo &setDescriptorSetCount(uint32_t descriptorSetCount_) VULKAN_HPP_NOEXCEPT
{
descriptorSetCount = descriptorSetCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetAllocateInfo &setPSetLayouts(const VULKAN_HPP_NAMESPACE::DescriptorSetLayout *pSetLayouts_) VULKAN_HPP_NOEXCEPT
{
pSetLayouts = pSetLayouts_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorSetAllocateInfo &
setSetLayouts(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayout> const &setLayouts_) VULKAN_HPP_NOEXCEPT
{
descriptorSetCount = static_cast<uint32_t>(setLayouts_.size());
pSetLayouts = setLayouts_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorSetAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorSetAllocateInfo *>(this);
}
explicit operator VkDescriptorSetAllocateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorSetAllocateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DescriptorPool const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DescriptorSetLayout *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, descriptorPool, descriptorSetCount, pSetLayouts);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorSetAllocateInfo const &) const = default;
#else
bool operator==(DescriptorSetAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (descriptorPool == rhs.descriptorPool) && (descriptorSetCount == rhs.descriptorSetCount) &&
(pSetLayouts == rhs.pSetLayouts);
# endif
}
bool operator!=(DescriptorSetAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetAllocateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DescriptorPool descriptorPool = {};
uint32_t descriptorSetCount = {};
const VULKAN_HPP_NAMESPACE::DescriptorSetLayout *pSetLayouts = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorSetAllocateInfo) == sizeof(VkDescriptorSetAllocateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorSetAllocateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorSetAllocateInfo>::value,
"DescriptorSetAllocateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDescriptorSetAllocateInfo>
{
using Type = DescriptorSetAllocateInfo;
};
struct DescriptorSetBindingReferenceVALVE
{
using NativeType = VkDescriptorSetBindingReferenceVALVE;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetBindingReferenceVALVE;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorSetBindingReferenceVALVE(VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout_ = {},
uint32_t binding_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
descriptorSetLayout(descriptorSetLayout_),
binding(binding_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorSetBindingReferenceVALVE(DescriptorSetBindingReferenceVALVE const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetBindingReferenceVALVE(VkDescriptorSetBindingReferenceVALVE const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorSetBindingReferenceVALVE(*reinterpret_cast<DescriptorSetBindingReferenceVALVE const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorSetBindingReferenceVALVE &operator=(DescriptorSetBindingReferenceVALVE const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetBindingReferenceVALVE &operator=(VkDescriptorSetBindingReferenceVALVE const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetBindingReferenceVALVE const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorSetBindingReferenceVALVE &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetBindingReferenceVALVE &
setDescriptorSetLayout(VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout_) VULKAN_HPP_NOEXCEPT
{
descriptorSetLayout = descriptorSetLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetBindingReferenceVALVE &setBinding(uint32_t binding_) VULKAN_HPP_NOEXCEPT
{
binding = binding_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorSetBindingReferenceVALVE const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorSetBindingReferenceVALVE *>(this);
}
explicit operator VkDescriptorSetBindingReferenceVALVE &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorSetBindingReferenceVALVE *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::DescriptorSetLayout const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, descriptorSetLayout, binding);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorSetBindingReferenceVALVE const &) const = default;
#else
bool operator==(DescriptorSetBindingReferenceVALVE const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (descriptorSetLayout == rhs.descriptorSetLayout) && (binding == rhs.binding);
# endif
}
bool operator!=(DescriptorSetBindingReferenceVALVE const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetBindingReferenceVALVE;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout = {};
uint32_t binding = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorSetBindingReferenceVALVE) == sizeof(VkDescriptorSetBindingReferenceVALVE),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorSetBindingReferenceVALVE>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorSetBindingReferenceVALVE>::value,
"DescriptorSetBindingReferenceVALVE is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDescriptorSetBindingReferenceVALVE>
{
using Type = DescriptorSetBindingReferenceVALVE;
};
struct DescriptorSetLayoutBinding
{
using NativeType = VkDescriptorSetLayoutBinding;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorSetLayoutBinding(uint32_t binding_ = {},
VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler,
uint32_t descriptorCount_ = {},
VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_ = {},
const VULKAN_HPP_NAMESPACE::Sampler *pImmutableSamplers_ = {}) VULKAN_HPP_NOEXCEPT
: binding(binding_),
descriptorType(descriptorType_),
descriptorCount(descriptorCount_),
stageFlags(stageFlags_),
pImmutableSamplers(pImmutableSamplers_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorSetLayoutBinding(DescriptorSetLayoutBinding const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetLayoutBinding(VkDescriptorSetLayoutBinding const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorSetLayoutBinding(*reinterpret_cast<DescriptorSetLayoutBinding const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorSetLayoutBinding(uint32_t binding_,
VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_,
VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Sampler> const &immutableSamplers_)
: binding(binding_)
, descriptorType(descriptorType_)
, descriptorCount(static_cast<uint32_t>(immutableSamplers_.size()))
, stageFlags(stageFlags_)
, pImmutableSamplers(immutableSamplers_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorSetLayoutBinding &operator=(DescriptorSetLayoutBinding const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetLayoutBinding &operator=(VkDescriptorSetLayoutBinding const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutBinding &setBinding(uint32_t binding_) VULKAN_HPP_NOEXCEPT
{
binding = binding_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutBinding &setDescriptorType(VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_) VULKAN_HPP_NOEXCEPT
{
descriptorType = descriptorType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutBinding &setDescriptorCount(uint32_t descriptorCount_) VULKAN_HPP_NOEXCEPT
{
descriptorCount = descriptorCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutBinding &setStageFlags(VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_) VULKAN_HPP_NOEXCEPT
{
stageFlags = stageFlags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutBinding &setPImmutableSamplers(const VULKAN_HPP_NAMESPACE::Sampler *pImmutableSamplers_) VULKAN_HPP_NOEXCEPT
{
pImmutableSamplers = pImmutableSamplers_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorSetLayoutBinding &
setImmutableSamplers(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Sampler> const &immutableSamplers_) VULKAN_HPP_NOEXCEPT
{
descriptorCount = static_cast<uint32_t>(immutableSamplers_.size());
pImmutableSamplers = immutableSamplers_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorSetLayoutBinding const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorSetLayoutBinding *>(this);
}
explicit operator VkDescriptorSetLayoutBinding &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorSetLayoutBinding *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &,
VULKAN_HPP_NAMESPACE::DescriptorType const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ShaderStageFlags const &,
const VULKAN_HPP_NAMESPACE::Sampler *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(binding, descriptorType, descriptorCount, stageFlags, pImmutableSamplers);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorSetLayoutBinding const &) const = default;
#else
bool operator==(DescriptorSetLayoutBinding const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (binding == rhs.binding) && (descriptorType == rhs.descriptorType) && (descriptorCount == rhs.descriptorCount) &&
(stageFlags == rhs.stageFlags) && (pImmutableSamplers == rhs.pImmutableSamplers);
# endif
}
bool operator!=(DescriptorSetLayoutBinding const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t binding = {};
VULKAN_HPP_NAMESPACE::DescriptorType descriptorType = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
uint32_t descriptorCount = {};
VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags = {};
const VULKAN_HPP_NAMESPACE::Sampler *pImmutableSamplers = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding) == sizeof(VkDescriptorSetLayoutBinding),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding>::value,
"DescriptorSetLayoutBinding is not nothrow_move_constructible!");
struct DescriptorSetLayoutBindingFlagsCreateInfo
{
using NativeType = VkDescriptorSetLayoutBindingFlagsCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetLayoutBindingFlagsCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorSetLayoutBindingFlagsCreateInfo(uint32_t bindingCount_ = {},
const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags *pBindingFlags_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
bindingCount(bindingCount_),
pBindingFlags(pBindingFlags_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorSetLayoutBindingFlagsCreateInfo(DescriptorSetLayoutBindingFlagsCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetLayoutBindingFlagsCreateInfo(VkDescriptorSetLayoutBindingFlagsCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorSetLayoutBindingFlagsCreateInfo(*reinterpret_cast<DescriptorSetLayoutBindingFlagsCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorSetLayoutBindingFlagsCreateInfo(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags> const &bindingFlags_, const void *pNext_ = nullptr)
: pNext(pNext_)
, bindingCount(static_cast<uint32_t>(bindingFlags_.size()))
, pBindingFlags(bindingFlags_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorSetLayoutBindingFlagsCreateInfo &operator=(DescriptorSetLayoutBindingFlagsCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetLayoutBindingFlagsCreateInfo &operator=(VkDescriptorSetLayoutBindingFlagsCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBindingFlagsCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutBindingFlagsCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutBindingFlagsCreateInfo &setBindingCount(uint32_t bindingCount_) VULKAN_HPP_NOEXCEPT
{
bindingCount = bindingCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutBindingFlagsCreateInfo &
setPBindingFlags(const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags *pBindingFlags_) VULKAN_HPP_NOEXCEPT
{
pBindingFlags = pBindingFlags_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorSetLayoutBindingFlagsCreateInfo &setBindingFlags(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags> const &bindingFlags_) VULKAN_HPP_NOEXCEPT
{
bindingCount = static_cast<uint32_t>(bindingFlags_.size());
pBindingFlags = bindingFlags_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorSetLayoutBindingFlagsCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorSetLayoutBindingFlagsCreateInfo *>(this);
}
explicit operator VkDescriptorSetLayoutBindingFlagsCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorSetLayoutBindingFlagsCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::
tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, bindingCount, pBindingFlags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorSetLayoutBindingFlagsCreateInfo const &) const = default;
#else
bool operator==(DescriptorSetLayoutBindingFlagsCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (bindingCount == rhs.bindingCount) && (pBindingFlags == rhs.pBindingFlags);
# endif
}
bool operator!=(DescriptorSetLayoutBindingFlagsCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetLayoutBindingFlagsCreateInfo;
const void *pNext = {};
uint32_t bindingCount = {};
const VULKAN_HPP_NAMESPACE::DescriptorBindingFlags *pBindingFlags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBindingFlagsCreateInfo) == sizeof(VkDescriptorSetLayoutBindingFlagsCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBindingFlagsCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBindingFlagsCreateInfo>::value,
"DescriptorSetLayoutBindingFlagsCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDescriptorSetLayoutBindingFlagsCreateInfo>
{
using Type = DescriptorSetLayoutBindingFlagsCreateInfo;
};
using DescriptorSetLayoutBindingFlagsCreateInfoEXT = DescriptorSetLayoutBindingFlagsCreateInfo;
struct DescriptorSetLayoutCreateInfo
{
using NativeType = VkDescriptorSetLayoutCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetLayoutCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateInfo(VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags flags_ = {},
uint32_t bindingCount_ = {},
const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding *pBindings_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
bindingCount(bindingCount_),
pBindings(pBindings_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorSetLayoutCreateInfo(DescriptorSetLayoutCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetLayoutCreateInfo(VkDescriptorSetLayoutCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorSetLayoutCreateInfo(*reinterpret_cast<DescriptorSetLayoutCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorSetLayoutCreateInfo(VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding> const &bindings_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, bindingCount(static_cast<uint32_t>(bindings_.size()))
, pBindings(bindings_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorSetLayoutCreateInfo &operator=(DescriptorSetLayoutCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetLayoutCreateInfo &operator=(VkDescriptorSetLayoutCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutCreateInfo &setBindingCount(uint32_t bindingCount_) VULKAN_HPP_NOEXCEPT
{
bindingCount = bindingCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutCreateInfo &
setPBindings(const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding *pBindings_) VULKAN_HPP_NOEXCEPT
{
pBindings = pBindings_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorSetLayoutCreateInfo &
setBindings(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding> const &bindings_) VULKAN_HPP_NOEXCEPT
{
bindingCount = static_cast<uint32_t>(bindings_.size());
pBindings = bindings_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorSetLayoutCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorSetLayoutCreateInfo *>(this);
}
explicit operator VkDescriptorSetLayoutCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorSetLayoutCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, bindingCount, pBindings);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorSetLayoutCreateInfo const &) const = default;
#else
bool operator==(DescriptorSetLayoutCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (bindingCount == rhs.bindingCount) &&
(pBindings == rhs.pBindings);
# endif
}
bool operator!=(DescriptorSetLayoutCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetLayoutCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateFlags flags = {};
uint32_t bindingCount = {};
const VULKAN_HPP_NAMESPACE::DescriptorSetLayoutBinding *pBindings = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo) == sizeof(VkDescriptorSetLayoutCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutCreateInfo>::value,
"DescriptorSetLayoutCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDescriptorSetLayoutCreateInfo>
{
using Type = DescriptorSetLayoutCreateInfo;
};
struct DescriptorSetLayoutHostMappingInfoVALVE
{
using NativeType = VkDescriptorSetLayoutHostMappingInfoVALVE;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetLayoutHostMappingInfoVALVE;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
DescriptorSetLayoutHostMappingInfoVALVE(size_t descriptorOffset_ = {}, uint32_t descriptorSize_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
descriptorOffset(descriptorOffset_),
descriptorSize(descriptorSize_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorSetLayoutHostMappingInfoVALVE(DescriptorSetLayoutHostMappingInfoVALVE const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetLayoutHostMappingInfoVALVE(VkDescriptorSetLayoutHostMappingInfoVALVE const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorSetLayoutHostMappingInfoVALVE(*reinterpret_cast<DescriptorSetLayoutHostMappingInfoVALVE const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorSetLayoutHostMappingInfoVALVE &operator=(DescriptorSetLayoutHostMappingInfoVALVE const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetLayoutHostMappingInfoVALVE &operator=(VkDescriptorSetLayoutHostMappingInfoVALVE const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutHostMappingInfoVALVE const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutHostMappingInfoVALVE &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutHostMappingInfoVALVE &setDescriptorOffset(size_t descriptorOffset_) VULKAN_HPP_NOEXCEPT
{
descriptorOffset = descriptorOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetLayoutHostMappingInfoVALVE &setDescriptorSize(uint32_t descriptorSize_) VULKAN_HPP_NOEXCEPT
{
descriptorSize = descriptorSize_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorSetLayoutHostMappingInfoVALVE const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorSetLayoutHostMappingInfoVALVE *>(this);
}
explicit operator VkDescriptorSetLayoutHostMappingInfoVALVE &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorSetLayoutHostMappingInfoVALVE *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, size_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, descriptorOffset, descriptorSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorSetLayoutHostMappingInfoVALVE const &) const = default;
#else
bool operator==(DescriptorSetLayoutHostMappingInfoVALVE const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (descriptorOffset == rhs.descriptorOffset) && (descriptorSize == rhs.descriptorSize);
# endif
}
bool operator!=(DescriptorSetLayoutHostMappingInfoVALVE const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetLayoutHostMappingInfoVALVE;
void *pNext = {};
size_t descriptorOffset = {};
uint32_t descriptorSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorSetLayoutHostMappingInfoVALVE) == sizeof(VkDescriptorSetLayoutHostMappingInfoVALVE),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutHostMappingInfoVALVE>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutHostMappingInfoVALVE>::value,
"DescriptorSetLayoutHostMappingInfoVALVE is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDescriptorSetLayoutHostMappingInfoVALVE>
{
using Type = DescriptorSetLayoutHostMappingInfoVALVE;
};
struct DescriptorSetLayoutSupport
{
using NativeType = VkDescriptorSetLayoutSupport;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetLayoutSupport;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorSetLayoutSupport(VULKAN_HPP_NAMESPACE::Bool32 supported_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
supported(supported_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorSetLayoutSupport(DescriptorSetLayoutSupport const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetLayoutSupport(VkDescriptorSetLayoutSupport const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorSetLayoutSupport(*reinterpret_cast<DescriptorSetLayoutSupport const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorSetLayoutSupport &operator=(DescriptorSetLayoutSupport const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetLayoutSupport &operator=(VkDescriptorSetLayoutSupport const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport const *>(&rhs);
return *this;
}
explicit operator VkDescriptorSetLayoutSupport const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorSetLayoutSupport *>(this);
}
explicit operator VkDescriptorSetLayoutSupport &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorSetLayoutSupport *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, supported);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorSetLayoutSupport const &) const = default;
#else
bool operator==(DescriptorSetLayoutSupport const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (supported == rhs.supported);
# endif
}
bool operator!=(DescriptorSetLayoutSupport const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetLayoutSupport;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 supported = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport) == sizeof(VkDescriptorSetLayoutSupport),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorSetLayoutSupport>::value,
"DescriptorSetLayoutSupport is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDescriptorSetLayoutSupport>
{
using Type = DescriptorSetLayoutSupport;
};
using DescriptorSetLayoutSupportKHR = DescriptorSetLayoutSupport;
struct DescriptorSetVariableDescriptorCountAllocateInfo
{
using NativeType = VkDescriptorSetVariableDescriptorCountAllocateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetVariableDescriptorCountAllocateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorSetVariableDescriptorCountAllocateInfo(uint32_t descriptorSetCount_ = {},
const uint32_t *pDescriptorCounts_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
descriptorSetCount(descriptorSetCount_),
pDescriptorCounts(pDescriptorCounts_)
{
}
VULKAN_HPP_CONSTEXPR
DescriptorSetVariableDescriptorCountAllocateInfo(DescriptorSetVariableDescriptorCountAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetVariableDescriptorCountAllocateInfo(VkDescriptorSetVariableDescriptorCountAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorSetVariableDescriptorCountAllocateInfo(*reinterpret_cast<DescriptorSetVariableDescriptorCountAllocateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorSetVariableDescriptorCountAllocateInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &descriptorCounts_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, descriptorSetCount(static_cast<uint32_t>(descriptorCounts_.size()))
, pDescriptorCounts(descriptorCounts_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorSetVariableDescriptorCountAllocateInfo &operator=(DescriptorSetVariableDescriptorCountAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetVariableDescriptorCountAllocateInfo &operator=(VkDescriptorSetVariableDescriptorCountAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetVariableDescriptorCountAllocateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorSetVariableDescriptorCountAllocateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetVariableDescriptorCountAllocateInfo &setDescriptorSetCount(uint32_t descriptorSetCount_) VULKAN_HPP_NOEXCEPT
{
descriptorSetCount = descriptorSetCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorSetVariableDescriptorCountAllocateInfo &setPDescriptorCounts(const uint32_t *pDescriptorCounts_) VULKAN_HPP_NOEXCEPT
{
pDescriptorCounts = pDescriptorCounts_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorSetVariableDescriptorCountAllocateInfo &
setDescriptorCounts(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &descriptorCounts_) VULKAN_HPP_NOEXCEPT
{
descriptorSetCount = static_cast<uint32_t>(descriptorCounts_.size());
pDescriptorCounts = descriptorCounts_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorSetVariableDescriptorCountAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorSetVariableDescriptorCountAllocateInfo *>(this);
}
explicit operator VkDescriptorSetVariableDescriptorCountAllocateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorSetVariableDescriptorCountAllocateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, descriptorSetCount, pDescriptorCounts);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorSetVariableDescriptorCountAllocateInfo const &) const = default;
#else
bool operator==(DescriptorSetVariableDescriptorCountAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (descriptorSetCount == rhs.descriptorSetCount) &&
(pDescriptorCounts == rhs.pDescriptorCounts);
# endif
}
bool operator!=(DescriptorSetVariableDescriptorCountAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetVariableDescriptorCountAllocateInfo;
const void *pNext = {};
uint32_t descriptorSetCount = {};
const uint32_t *pDescriptorCounts = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorSetVariableDescriptorCountAllocateInfo) ==
sizeof(VkDescriptorSetVariableDescriptorCountAllocateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorSetVariableDescriptorCountAllocateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorSetVariableDescriptorCountAllocateInfo>::value,
"DescriptorSetVariableDescriptorCountAllocateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDescriptorSetVariableDescriptorCountAllocateInfo>
{
using Type = DescriptorSetVariableDescriptorCountAllocateInfo;
};
using DescriptorSetVariableDescriptorCountAllocateInfoEXT = DescriptorSetVariableDescriptorCountAllocateInfo;
struct DescriptorSetVariableDescriptorCountLayoutSupport
{
using NativeType = VkDescriptorSetVariableDescriptorCountLayoutSupport;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorSetVariableDescriptorCountLayoutSupport;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorSetVariableDescriptorCountLayoutSupport(uint32_t maxVariableDescriptorCount_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxVariableDescriptorCount(maxVariableDescriptorCount_)
{
}
VULKAN_HPP_CONSTEXPR
DescriptorSetVariableDescriptorCountLayoutSupport(DescriptorSetVariableDescriptorCountLayoutSupport const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetVariableDescriptorCountLayoutSupport(VkDescriptorSetVariableDescriptorCountLayoutSupport const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorSetVariableDescriptorCountLayoutSupport(*reinterpret_cast<DescriptorSetVariableDescriptorCountLayoutSupport const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorSetVariableDescriptorCountLayoutSupport &
operator=(DescriptorSetVariableDescriptorCountLayoutSupport const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorSetVariableDescriptorCountLayoutSupport &operator=(VkDescriptorSetVariableDescriptorCountLayoutSupport const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorSetVariableDescriptorCountLayoutSupport const *>(&rhs);
return *this;
}
explicit operator VkDescriptorSetVariableDescriptorCountLayoutSupport const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorSetVariableDescriptorCountLayoutSupport *>(this);
}
explicit operator VkDescriptorSetVariableDescriptorCountLayoutSupport &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorSetVariableDescriptorCountLayoutSupport *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxVariableDescriptorCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorSetVariableDescriptorCountLayoutSupport const &) const = default;
#else
bool operator==(DescriptorSetVariableDescriptorCountLayoutSupport const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxVariableDescriptorCount == rhs.maxVariableDescriptorCount);
# endif
}
bool operator!=(DescriptorSetVariableDescriptorCountLayoutSupport const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorSetVariableDescriptorCountLayoutSupport;
void *pNext = {};
uint32_t maxVariableDescriptorCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorSetVariableDescriptorCountLayoutSupport) ==
sizeof(VkDescriptorSetVariableDescriptorCountLayoutSupport),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorSetVariableDescriptorCountLayoutSupport>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorSetVariableDescriptorCountLayoutSupport>::value,
"DescriptorSetVariableDescriptorCountLayoutSupport is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDescriptorSetVariableDescriptorCountLayoutSupport>
{
using Type = DescriptorSetVariableDescriptorCountLayoutSupport;
};
using DescriptorSetVariableDescriptorCountLayoutSupportEXT = DescriptorSetVariableDescriptorCountLayoutSupport;
struct DescriptorUpdateTemplateEntry
{
using NativeType = VkDescriptorUpdateTemplateEntry;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplateEntry(uint32_t dstBinding_ = {},
uint32_t dstArrayElement_ = {},
uint32_t descriptorCount_ = {},
VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler,
size_t offset_ = {},
size_t stride_ = {}) VULKAN_HPP_NOEXCEPT
: dstBinding(dstBinding_),
dstArrayElement(dstArrayElement_),
descriptorCount(descriptorCount_),
descriptorType(descriptorType_),
offset(offset_),
stride(stride_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplateEntry(DescriptorUpdateTemplateEntry const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorUpdateTemplateEntry(VkDescriptorUpdateTemplateEntry const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorUpdateTemplateEntry(*reinterpret_cast<DescriptorUpdateTemplateEntry const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorUpdateTemplateEntry &operator=(DescriptorUpdateTemplateEntry const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorUpdateTemplateEntry &operator=(VkDescriptorUpdateTemplateEntry const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateEntry &setDstBinding(uint32_t dstBinding_) VULKAN_HPP_NOEXCEPT
{
dstBinding = dstBinding_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateEntry &setDstArrayElement(uint32_t dstArrayElement_) VULKAN_HPP_NOEXCEPT
{
dstArrayElement = dstArrayElement_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateEntry &setDescriptorCount(uint32_t descriptorCount_) VULKAN_HPP_NOEXCEPT
{
descriptorCount = descriptorCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateEntry &setDescriptorType(VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_) VULKAN_HPP_NOEXCEPT
{
descriptorType = descriptorType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateEntry &setOffset(size_t offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateEntry &setStride(size_t stride_) VULKAN_HPP_NOEXCEPT
{
stride = stride_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorUpdateTemplateEntry const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorUpdateTemplateEntry *>(this);
}
explicit operator VkDescriptorUpdateTemplateEntry &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorUpdateTemplateEntry *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, uint32_t const &, VULKAN_HPP_NAMESPACE::DescriptorType const &, size_t const &, size_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(dstBinding, dstArrayElement, descriptorCount, descriptorType, offset, stride);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorUpdateTemplateEntry const &) const = default;
#else
bool operator==(DescriptorUpdateTemplateEntry const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (dstBinding == rhs.dstBinding) && (dstArrayElement == rhs.dstArrayElement) && (descriptorCount == rhs.descriptorCount) &&
(descriptorType == rhs.descriptorType) && (offset == rhs.offset) && (stride == rhs.stride);
# endif
}
bool operator!=(DescriptorUpdateTemplateEntry const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t dstBinding = {};
uint32_t dstArrayElement = {};
uint32_t descriptorCount = {};
VULKAN_HPP_NAMESPACE::DescriptorType descriptorType = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
size_t offset = {};
size_t stride = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry) == sizeof(VkDescriptorUpdateTemplateEntry),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry>::value,
"DescriptorUpdateTemplateEntry is not nothrow_move_constructible!");
using DescriptorUpdateTemplateEntryKHR = DescriptorUpdateTemplateEntry;
struct DescriptorUpdateTemplateCreateInfo
{
using NativeType = VkDescriptorUpdateTemplateCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDescriptorUpdateTemplateCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplateCreateInfo(
VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags flags_ = {},
uint32_t descriptorUpdateEntryCount_ = {},
const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry *pDescriptorUpdateEntries_ = {},
VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType templateType_ = VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType::eDescriptorSet,
VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout_ = {},
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout_ = {},
uint32_t set_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
descriptorUpdateEntryCount(descriptorUpdateEntryCount_),
pDescriptorUpdateEntries(pDescriptorUpdateEntries_),
templateType(templateType_),
descriptorSetLayout(descriptorSetLayout_),
pipelineBindPoint(pipelineBindPoint_),
pipelineLayout(pipelineLayout_),
set(set_)
{
}
VULKAN_HPP_CONSTEXPR DescriptorUpdateTemplateCreateInfo(DescriptorUpdateTemplateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorUpdateTemplateCreateInfo(VkDescriptorUpdateTemplateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DescriptorUpdateTemplateCreateInfo(*reinterpret_cast<DescriptorUpdateTemplateCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorUpdateTemplateCreateInfo(
VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry> const &descriptorUpdateEntries_,
VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType templateType_ = VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType::eDescriptorSet,
VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout_ = {},
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout_ = {},
uint32_t set_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, descriptorUpdateEntryCount(static_cast<uint32_t>(descriptorUpdateEntries_.size()))
, pDescriptorUpdateEntries(descriptorUpdateEntries_.data())
, templateType(templateType_)
, descriptorSetLayout(descriptorSetLayout_)
, pipelineBindPoint(pipelineBindPoint_)
, pipelineLayout(pipelineLayout_)
, set(set_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DescriptorUpdateTemplateCreateInfo &operator=(DescriptorUpdateTemplateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DescriptorUpdateTemplateCreateInfo &operator=(VkDescriptorUpdateTemplateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateCreateInfo &
setFlags(VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateCreateInfo &setDescriptorUpdateEntryCount(uint32_t descriptorUpdateEntryCount_) VULKAN_HPP_NOEXCEPT
{
descriptorUpdateEntryCount = descriptorUpdateEntryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateCreateInfo &
setPDescriptorUpdateEntries(const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry *pDescriptorUpdateEntries_) VULKAN_HPP_NOEXCEPT
{
pDescriptorUpdateEntries = pDescriptorUpdateEntries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DescriptorUpdateTemplateCreateInfo &setDescriptorUpdateEntries(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry> const &descriptorUpdateEntries_)
VULKAN_HPP_NOEXCEPT
{
descriptorUpdateEntryCount = static_cast<uint32_t>(descriptorUpdateEntries_.size());
pDescriptorUpdateEntries = descriptorUpdateEntries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateCreateInfo &
setTemplateType(VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType templateType_) VULKAN_HPP_NOEXCEPT
{
templateType = templateType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateCreateInfo &
setDescriptorSetLayout(VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout_) VULKAN_HPP_NOEXCEPT
{
descriptorSetLayout = descriptorSetLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateCreateInfo &
setPipelineBindPoint(VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_) VULKAN_HPP_NOEXCEPT
{
pipelineBindPoint = pipelineBindPoint_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateCreateInfo &setPipelineLayout(VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout_) VULKAN_HPP_NOEXCEPT
{
pipelineLayout = pipelineLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DescriptorUpdateTemplateCreateInfo &setSet(uint32_t set_) VULKAN_HPP_NOEXCEPT
{
set = set_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDescriptorUpdateTemplateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDescriptorUpdateTemplateCreateInfo *>(this);
}
explicit operator VkDescriptorUpdateTemplateCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDescriptorUpdateTemplateCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry *const &,
VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType const &,
VULKAN_HPP_NAMESPACE::DescriptorSetLayout const &,
VULKAN_HPP_NAMESPACE::PipelineBindPoint const &,
VULKAN_HPP_NAMESPACE::PipelineLayout const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, flags, descriptorUpdateEntryCount, pDescriptorUpdateEntries, templateType, descriptorSetLayout, pipelineBindPoint, pipelineLayout, set);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DescriptorUpdateTemplateCreateInfo const &) const = default;
#else
bool operator==(DescriptorUpdateTemplateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (descriptorUpdateEntryCount == rhs.descriptorUpdateEntryCount) &&
(pDescriptorUpdateEntries == rhs.pDescriptorUpdateEntries) && (templateType == rhs.templateType) &&
(descriptorSetLayout == rhs.descriptorSetLayout) && (pipelineBindPoint == rhs.pipelineBindPoint) && (pipelineLayout == rhs.pipelineLayout) &&
(set == rhs.set);
# endif
}
bool operator!=(DescriptorUpdateTemplateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDescriptorUpdateTemplateCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateFlags flags = {};
uint32_t descriptorUpdateEntryCount = {};
const VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateEntry *pDescriptorUpdateEntries = {};
VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType templateType = VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateType::eDescriptorSet;
VULKAN_HPP_NAMESPACE::DescriptorSetLayout descriptorSetLayout = {};
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
VULKAN_HPP_NAMESPACE::PipelineLayout pipelineLayout = {};
uint32_t set = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo) == sizeof(VkDescriptorUpdateTemplateCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplateCreateInfo>::value,
"DescriptorUpdateTemplateCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDescriptorUpdateTemplateCreateInfo>
{
using Type = DescriptorUpdateTemplateCreateInfo;
};
using DescriptorUpdateTemplateCreateInfoKHR = DescriptorUpdateTemplateCreateInfo;
struct DeviceBufferMemoryRequirements
{
using NativeType = VkDeviceBufferMemoryRequirements;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceBufferMemoryRequirements;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceBufferMemoryRequirements(const VULKAN_HPP_NAMESPACE::BufferCreateInfo *pCreateInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pCreateInfo(pCreateInfo_)
{
}
VULKAN_HPP_CONSTEXPR DeviceBufferMemoryRequirements(DeviceBufferMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceBufferMemoryRequirements(VkDeviceBufferMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceBufferMemoryRequirements(*reinterpret_cast<DeviceBufferMemoryRequirements const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceBufferMemoryRequirements &operator=(DeviceBufferMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceBufferMemoryRequirements &operator=(VkDeviceBufferMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceBufferMemoryRequirements const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceBufferMemoryRequirements &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceBufferMemoryRequirements &setPCreateInfo(const VULKAN_HPP_NAMESPACE::BufferCreateInfo *pCreateInfo_) VULKAN_HPP_NOEXCEPT
{
pCreateInfo = pCreateInfo_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceBufferMemoryRequirements const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceBufferMemoryRequirements *>(this);
}
explicit operator VkDeviceBufferMemoryRequirements &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceBufferMemoryRequirements *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, const VULKAN_HPP_NAMESPACE::BufferCreateInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pCreateInfo);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceBufferMemoryRequirements const &) const = default;
#else
bool operator==(DeviceBufferMemoryRequirements const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pCreateInfo == rhs.pCreateInfo);
# endif
}
bool operator!=(DeviceBufferMemoryRequirements const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceBufferMemoryRequirements;
const void *pNext = {};
const VULKAN_HPP_NAMESPACE::BufferCreateInfo *pCreateInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceBufferMemoryRequirements) == sizeof(VkDeviceBufferMemoryRequirements),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceBufferMemoryRequirements>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceBufferMemoryRequirements>::value,
"DeviceBufferMemoryRequirements is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceBufferMemoryRequirements>
{
using Type = DeviceBufferMemoryRequirements;
};
using DeviceBufferMemoryRequirementsKHR = DeviceBufferMemoryRequirements;
struct DeviceQueueCreateInfo
{
using NativeType = VkDeviceQueueCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceQueueCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceQueueCreateInfo(VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_ = {},
uint32_t queueFamilyIndex_ = {},
uint32_t queueCount_ = {},
const float *pQueuePriorities_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
queueFamilyIndex(queueFamilyIndex_),
queueCount(queueCount_),
pQueuePriorities(pQueuePriorities_)
{
}
VULKAN_HPP_CONSTEXPR DeviceQueueCreateInfo(DeviceQueueCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceQueueCreateInfo(VkDeviceQueueCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceQueueCreateInfo(*reinterpret_cast<DeviceQueueCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceQueueCreateInfo(VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_,
uint32_t queueFamilyIndex_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const float> const &queuePriorities_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, queueFamilyIndex(queueFamilyIndex_)
, queueCount(static_cast<uint32_t>(queuePriorities_.size()))
, pQueuePriorities(queuePriorities_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceQueueCreateInfo &operator=(DeviceQueueCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceQueueCreateInfo &operator=(VkDeviceQueueCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceQueueCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceQueueCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceQueueCreateInfo &setQueueFamilyIndex(uint32_t queueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndex = queueFamilyIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceQueueCreateInfo &setQueueCount(uint32_t queueCount_) VULKAN_HPP_NOEXCEPT
{
queueCount = queueCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceQueueCreateInfo &setPQueuePriorities(const float *pQueuePriorities_) VULKAN_HPP_NOEXCEPT
{
pQueuePriorities = pQueuePriorities_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceQueueCreateInfo &setQueuePriorities(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const float> const &queuePriorities_) VULKAN_HPP_NOEXCEPT
{
queueCount = static_cast<uint32_t>(queuePriorities_.size());
pQueuePriorities = queuePriorities_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceQueueCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceQueueCreateInfo *>(this);
}
explicit operator VkDeviceQueueCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceQueueCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags const &,
uint32_t const &,
uint32_t const &,
const float *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, queueFamilyIndex, queueCount, pQueuePriorities);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceQueueCreateInfo const &) const = default;
#else
bool operator==(DeviceQueueCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (queueFamilyIndex == rhs.queueFamilyIndex) &&
(queueCount == rhs.queueCount) && (pQueuePriorities == rhs.pQueuePriorities);
# endif
}
bool operator!=(DeviceQueueCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceQueueCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags = {};
uint32_t queueFamilyIndex = {};
uint32_t queueCount = {};
const float *pQueuePriorities = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo) == sizeof(VkDeviceQueueCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo>::value,
"DeviceQueueCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceQueueCreateInfo>
{
using Type = DeviceQueueCreateInfo;
};
struct PhysicalDeviceFeatures
{
using NativeType = VkPhysicalDeviceFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFeatures(VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fullDrawIndexUint32_ = {},
VULKAN_HPP_NAMESPACE::Bool32 imageCubeArray_ = {},
VULKAN_HPP_NAMESPACE::Bool32 independentBlend_ = {},
VULKAN_HPP_NAMESPACE::Bool32 geometryShader_ = {},
VULKAN_HPP_NAMESPACE::Bool32 tessellationShader_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sampleRateShading_ = {},
VULKAN_HPP_NAMESPACE::Bool32 dualSrcBlend_ = {},
VULKAN_HPP_NAMESPACE::Bool32 logicOp_ = {},
VULKAN_HPP_NAMESPACE::Bool32 multiDrawIndirect_ = {},
VULKAN_HPP_NAMESPACE::Bool32 drawIndirectFirstInstance_ = {},
VULKAN_HPP_NAMESPACE::Bool32 depthClamp_ = {},
VULKAN_HPP_NAMESPACE::Bool32 depthBiasClamp_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fillModeNonSolid_ = {},
VULKAN_HPP_NAMESPACE::Bool32 depthBounds_ = {},
VULKAN_HPP_NAMESPACE::Bool32 wideLines_ = {},
VULKAN_HPP_NAMESPACE::Bool32 largePoints_ = {},
VULKAN_HPP_NAMESPACE::Bool32 alphaToOne_ = {},
VULKAN_HPP_NAMESPACE::Bool32 multiViewport_ = {},
VULKAN_HPP_NAMESPACE::Bool32 samplerAnisotropy_ = {},
VULKAN_HPP_NAMESPACE::Bool32 textureCompressionETC2_ = {},
VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_LDR_ = {},
VULKAN_HPP_NAMESPACE::Bool32 textureCompressionBC_ = {},
VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryPrecise_ = {},
VULKAN_HPP_NAMESPACE::Bool32 pipelineStatisticsQuery_ = {},
VULKAN_HPP_NAMESPACE::Bool32 vertexPipelineStoresAndAtomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentStoresAndAtomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderTessellationAndGeometryPointSize_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderImageGatherExtended_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageExtendedFormats_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageMultisample_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageReadWithoutFormat_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageWriteWithoutFormat_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayDynamicIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayDynamicIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayDynamicIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayDynamicIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderClipDistance_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderCullDistance_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderFloat64_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderInt64_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderInt16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderResourceResidency_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderResourceMinLod_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseBinding_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyBuffer_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage2D_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage3D_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseResidency2Samples_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseResidency4Samples_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseResidency8Samples_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseResidency16Samples_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyAliased_ = {},
VULKAN_HPP_NAMESPACE::Bool32 variableMultisampleRate_ = {},
VULKAN_HPP_NAMESPACE::Bool32 inheritedQueries_ = {}) VULKAN_HPP_NOEXCEPT
: robustBufferAccess(robustBufferAccess_),
fullDrawIndexUint32(fullDrawIndexUint32_),
imageCubeArray(imageCubeArray_),
independentBlend(independentBlend_),
geometryShader(geometryShader_),
tessellationShader(tessellationShader_),
sampleRateShading(sampleRateShading_),
dualSrcBlend(dualSrcBlend_),
logicOp(logicOp_),
multiDrawIndirect(multiDrawIndirect_),
drawIndirectFirstInstance(drawIndirectFirstInstance_),
depthClamp(depthClamp_),
depthBiasClamp(depthBiasClamp_),
fillModeNonSolid(fillModeNonSolid_),
depthBounds(depthBounds_),
wideLines(wideLines_),
largePoints(largePoints_),
alphaToOne(alphaToOne_),
multiViewport(multiViewport_),
samplerAnisotropy(samplerAnisotropy_),
textureCompressionETC2(textureCompressionETC2_),
textureCompressionASTC_LDR(textureCompressionASTC_LDR_),
textureCompressionBC(textureCompressionBC_),
occlusionQueryPrecise(occlusionQueryPrecise_),
pipelineStatisticsQuery(pipelineStatisticsQuery_),
vertexPipelineStoresAndAtomics(vertexPipelineStoresAndAtomics_),
fragmentStoresAndAtomics(fragmentStoresAndAtomics_),
shaderTessellationAndGeometryPointSize(shaderTessellationAndGeometryPointSize_),
shaderImageGatherExtended(shaderImageGatherExtended_),
shaderStorageImageExtendedFormats(shaderStorageImageExtendedFormats_),
shaderStorageImageMultisample(shaderStorageImageMultisample_),
shaderStorageImageReadWithoutFormat(shaderStorageImageReadWithoutFormat_),
shaderStorageImageWriteWithoutFormat(shaderStorageImageWriteWithoutFormat_),
shaderUniformBufferArrayDynamicIndexing(shaderUniformBufferArrayDynamicIndexing_),
shaderSampledImageArrayDynamicIndexing(shaderSampledImageArrayDynamicIndexing_),
shaderStorageBufferArrayDynamicIndexing(shaderStorageBufferArrayDynamicIndexing_),
shaderStorageImageArrayDynamicIndexing(shaderStorageImageArrayDynamicIndexing_),
shaderClipDistance(shaderClipDistance_),
shaderCullDistance(shaderCullDistance_),
shaderFloat64(shaderFloat64_),
shaderInt64(shaderInt64_),
shaderInt16(shaderInt16_),
shaderResourceResidency(shaderResourceResidency_),
shaderResourceMinLod(shaderResourceMinLod_),
sparseBinding(sparseBinding_),
sparseResidencyBuffer(sparseResidencyBuffer_),
sparseResidencyImage2D(sparseResidencyImage2D_),
sparseResidencyImage3D(sparseResidencyImage3D_),
sparseResidency2Samples(sparseResidency2Samples_),
sparseResidency4Samples(sparseResidency4Samples_),
sparseResidency8Samples(sparseResidency8Samples_),
sparseResidency16Samples(sparseResidency16Samples_),
sparseResidencyAliased(sparseResidencyAliased_),
variableMultisampleRate(variableMultisampleRate_),
inheritedQueries(inheritedQueries_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceFeatures(PhysicalDeviceFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFeatures(VkPhysicalDeviceFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFeatures(*reinterpret_cast<PhysicalDeviceFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFeatures &operator=(PhysicalDeviceFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFeatures &operator=(VkPhysicalDeviceFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setRobustBufferAccess(VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess_) VULKAN_HPP_NOEXCEPT
{
robustBufferAccess = robustBufferAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setFullDrawIndexUint32(VULKAN_HPP_NAMESPACE::Bool32 fullDrawIndexUint32_) VULKAN_HPP_NOEXCEPT
{
fullDrawIndexUint32 = fullDrawIndexUint32_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setImageCubeArray(VULKAN_HPP_NAMESPACE::Bool32 imageCubeArray_) VULKAN_HPP_NOEXCEPT
{
imageCubeArray = imageCubeArray_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setIndependentBlend(VULKAN_HPP_NAMESPACE::Bool32 independentBlend_) VULKAN_HPP_NOEXCEPT
{
independentBlend = independentBlend_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setGeometryShader(VULKAN_HPP_NAMESPACE::Bool32 geometryShader_) VULKAN_HPP_NOEXCEPT
{
geometryShader = geometryShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setTessellationShader(VULKAN_HPP_NAMESPACE::Bool32 tessellationShader_) VULKAN_HPP_NOEXCEPT
{
tessellationShader = tessellationShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setSampleRateShading(VULKAN_HPP_NAMESPACE::Bool32 sampleRateShading_) VULKAN_HPP_NOEXCEPT
{
sampleRateShading = sampleRateShading_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setDualSrcBlend(VULKAN_HPP_NAMESPACE::Bool32 dualSrcBlend_) VULKAN_HPP_NOEXCEPT
{
dualSrcBlend = dualSrcBlend_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setLogicOp(VULKAN_HPP_NAMESPACE::Bool32 logicOp_) VULKAN_HPP_NOEXCEPT
{
logicOp = logicOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setMultiDrawIndirect(VULKAN_HPP_NAMESPACE::Bool32 multiDrawIndirect_) VULKAN_HPP_NOEXCEPT
{
multiDrawIndirect = multiDrawIndirect_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setDrawIndirectFirstInstance(VULKAN_HPP_NAMESPACE::Bool32 drawIndirectFirstInstance_) VULKAN_HPP_NOEXCEPT
{
drawIndirectFirstInstance = drawIndirectFirstInstance_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setDepthClamp(VULKAN_HPP_NAMESPACE::Bool32 depthClamp_) VULKAN_HPP_NOEXCEPT
{
depthClamp = depthClamp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setDepthBiasClamp(VULKAN_HPP_NAMESPACE::Bool32 depthBiasClamp_) VULKAN_HPP_NOEXCEPT
{
depthBiasClamp = depthBiasClamp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setFillModeNonSolid(VULKAN_HPP_NAMESPACE::Bool32 fillModeNonSolid_) VULKAN_HPP_NOEXCEPT
{
fillModeNonSolid = fillModeNonSolid_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setDepthBounds(VULKAN_HPP_NAMESPACE::Bool32 depthBounds_) VULKAN_HPP_NOEXCEPT
{
depthBounds = depthBounds_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setWideLines(VULKAN_HPP_NAMESPACE::Bool32 wideLines_) VULKAN_HPP_NOEXCEPT
{
wideLines = wideLines_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setLargePoints(VULKAN_HPP_NAMESPACE::Bool32 largePoints_) VULKAN_HPP_NOEXCEPT
{
largePoints = largePoints_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setAlphaToOne(VULKAN_HPP_NAMESPACE::Bool32 alphaToOne_) VULKAN_HPP_NOEXCEPT
{
alphaToOne = alphaToOne_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setMultiViewport(VULKAN_HPP_NAMESPACE::Bool32 multiViewport_) VULKAN_HPP_NOEXCEPT
{
multiViewport = multiViewport_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setSamplerAnisotropy(VULKAN_HPP_NAMESPACE::Bool32 samplerAnisotropy_) VULKAN_HPP_NOEXCEPT
{
samplerAnisotropy = samplerAnisotropy_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setTextureCompressionETC2(VULKAN_HPP_NAMESPACE::Bool32 textureCompressionETC2_) VULKAN_HPP_NOEXCEPT
{
textureCompressionETC2 = textureCompressionETC2_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &
setTextureCompressionASTC_LDR(VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_LDR_) VULKAN_HPP_NOEXCEPT
{
textureCompressionASTC_LDR = textureCompressionASTC_LDR_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setTextureCompressionBC(VULKAN_HPP_NAMESPACE::Bool32 textureCompressionBC_) VULKAN_HPP_NOEXCEPT
{
textureCompressionBC = textureCompressionBC_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setOcclusionQueryPrecise(VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryPrecise_) VULKAN_HPP_NOEXCEPT
{
occlusionQueryPrecise = occlusionQueryPrecise_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setPipelineStatisticsQuery(VULKAN_HPP_NAMESPACE::Bool32 pipelineStatisticsQuery_) VULKAN_HPP_NOEXCEPT
{
pipelineStatisticsQuery = pipelineStatisticsQuery_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &
setVertexPipelineStoresAndAtomics(VULKAN_HPP_NAMESPACE::Bool32 vertexPipelineStoresAndAtomics_) VULKAN_HPP_NOEXCEPT
{
vertexPipelineStoresAndAtomics = vertexPipelineStoresAndAtomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setFragmentStoresAndAtomics(VULKAN_HPP_NAMESPACE::Bool32 fragmentStoresAndAtomics_) VULKAN_HPP_NOEXCEPT
{
fragmentStoresAndAtomics = fragmentStoresAndAtomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &
setShaderTessellationAndGeometryPointSize(VULKAN_HPP_NAMESPACE::Bool32 shaderTessellationAndGeometryPointSize_) VULKAN_HPP_NOEXCEPT
{
shaderTessellationAndGeometryPointSize = shaderTessellationAndGeometryPointSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setShaderImageGatherExtended(VULKAN_HPP_NAMESPACE::Bool32 shaderImageGatherExtended_) VULKAN_HPP_NOEXCEPT
{
shaderImageGatherExtended = shaderImageGatherExtended_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &
setShaderStorageImageExtendedFormats(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageExtendedFormats_) VULKAN_HPP_NOEXCEPT
{
shaderStorageImageExtendedFormats = shaderStorageImageExtendedFormats_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &
setShaderStorageImageMultisample(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageMultisample_) VULKAN_HPP_NOEXCEPT
{
shaderStorageImageMultisample = shaderStorageImageMultisample_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &
setShaderStorageImageReadWithoutFormat(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageReadWithoutFormat_) VULKAN_HPP_NOEXCEPT
{
shaderStorageImageReadWithoutFormat = shaderStorageImageReadWithoutFormat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &
setShaderStorageImageWriteWithoutFormat(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageWriteWithoutFormat_) VULKAN_HPP_NOEXCEPT
{
shaderStorageImageWriteWithoutFormat = shaderStorageImageWriteWithoutFormat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &
setShaderUniformBufferArrayDynamicIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayDynamicIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderUniformBufferArrayDynamicIndexing = shaderUniformBufferArrayDynamicIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &
setShaderSampledImageArrayDynamicIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayDynamicIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderSampledImageArrayDynamicIndexing = shaderSampledImageArrayDynamicIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &
setShaderStorageBufferArrayDynamicIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayDynamicIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderStorageBufferArrayDynamicIndexing = shaderStorageBufferArrayDynamicIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &
setShaderStorageImageArrayDynamicIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayDynamicIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderStorageImageArrayDynamicIndexing = shaderStorageImageArrayDynamicIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setShaderClipDistance(VULKAN_HPP_NAMESPACE::Bool32 shaderClipDistance_) VULKAN_HPP_NOEXCEPT
{
shaderClipDistance = shaderClipDistance_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setShaderCullDistance(VULKAN_HPP_NAMESPACE::Bool32 shaderCullDistance_) VULKAN_HPP_NOEXCEPT
{
shaderCullDistance = shaderCullDistance_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setShaderFloat64(VULKAN_HPP_NAMESPACE::Bool32 shaderFloat64_) VULKAN_HPP_NOEXCEPT
{
shaderFloat64 = shaderFloat64_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setShaderInt64(VULKAN_HPP_NAMESPACE::Bool32 shaderInt64_) VULKAN_HPP_NOEXCEPT
{
shaderInt64 = shaderInt64_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setShaderInt16(VULKAN_HPP_NAMESPACE::Bool32 shaderInt16_) VULKAN_HPP_NOEXCEPT
{
shaderInt16 = shaderInt16_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setShaderResourceResidency(VULKAN_HPP_NAMESPACE::Bool32 shaderResourceResidency_) VULKAN_HPP_NOEXCEPT
{
shaderResourceResidency = shaderResourceResidency_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setShaderResourceMinLod(VULKAN_HPP_NAMESPACE::Bool32 shaderResourceMinLod_) VULKAN_HPP_NOEXCEPT
{
shaderResourceMinLod = shaderResourceMinLod_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setSparseBinding(VULKAN_HPP_NAMESPACE::Bool32 sparseBinding_) VULKAN_HPP_NOEXCEPT
{
sparseBinding = sparseBinding_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setSparseResidencyBuffer(VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyBuffer_) VULKAN_HPP_NOEXCEPT
{
sparseResidencyBuffer = sparseResidencyBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setSparseResidencyImage2D(VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage2D_) VULKAN_HPP_NOEXCEPT
{
sparseResidencyImage2D = sparseResidencyImage2D_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setSparseResidencyImage3D(VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage3D_) VULKAN_HPP_NOEXCEPT
{
sparseResidencyImage3D = sparseResidencyImage3D_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setSparseResidency2Samples(VULKAN_HPP_NAMESPACE::Bool32 sparseResidency2Samples_) VULKAN_HPP_NOEXCEPT
{
sparseResidency2Samples = sparseResidency2Samples_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setSparseResidency4Samples(VULKAN_HPP_NAMESPACE::Bool32 sparseResidency4Samples_) VULKAN_HPP_NOEXCEPT
{
sparseResidency4Samples = sparseResidency4Samples_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setSparseResidency8Samples(VULKAN_HPP_NAMESPACE::Bool32 sparseResidency8Samples_) VULKAN_HPP_NOEXCEPT
{
sparseResidency8Samples = sparseResidency8Samples_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setSparseResidency16Samples(VULKAN_HPP_NAMESPACE::Bool32 sparseResidency16Samples_) VULKAN_HPP_NOEXCEPT
{
sparseResidency16Samples = sparseResidency16Samples_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setSparseResidencyAliased(VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyAliased_) VULKAN_HPP_NOEXCEPT
{
sparseResidencyAliased = sparseResidencyAliased_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setVariableMultisampleRate(VULKAN_HPP_NAMESPACE::Bool32 variableMultisampleRate_) VULKAN_HPP_NOEXCEPT
{
variableMultisampleRate = variableMultisampleRate_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures &setInheritedQueries(VULKAN_HPP_NAMESPACE::Bool32 inheritedQueries_) VULKAN_HPP_NOEXCEPT
{
inheritedQueries = inheritedQueries_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFeatures *>(this);
}
explicit operator VkPhysicalDeviceFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(robustBufferAccess,
fullDrawIndexUint32,
imageCubeArray,
independentBlend,
geometryShader,
tessellationShader,
sampleRateShading,
dualSrcBlend,
logicOp,
multiDrawIndirect,
drawIndirectFirstInstance,
depthClamp,
depthBiasClamp,
fillModeNonSolid,
depthBounds,
wideLines,
largePoints,
alphaToOne,
multiViewport,
samplerAnisotropy,
textureCompressionETC2,
textureCompressionASTC_LDR,
textureCompressionBC,
occlusionQueryPrecise,
pipelineStatisticsQuery,
vertexPipelineStoresAndAtomics,
fragmentStoresAndAtomics,
shaderTessellationAndGeometryPointSize,
shaderImageGatherExtended,
shaderStorageImageExtendedFormats,
shaderStorageImageMultisample,
shaderStorageImageReadWithoutFormat,
shaderStorageImageWriteWithoutFormat,
shaderUniformBufferArrayDynamicIndexing,
shaderSampledImageArrayDynamicIndexing,
shaderStorageBufferArrayDynamicIndexing,
shaderStorageImageArrayDynamicIndexing,
shaderClipDistance,
shaderCullDistance,
shaderFloat64,
shaderInt64,
shaderInt16,
shaderResourceResidency,
shaderResourceMinLod,
sparseBinding,
sparseResidencyBuffer,
sparseResidencyImage2D,
sparseResidencyImage3D,
sparseResidency2Samples,
sparseResidency4Samples,
sparseResidency8Samples,
sparseResidency16Samples,
sparseResidencyAliased,
variableMultisampleRate,
inheritedQueries);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (robustBufferAccess == rhs.robustBufferAccess) && (fullDrawIndexUint32 == rhs.fullDrawIndexUint32) &&
(imageCubeArray == rhs.imageCubeArray) && (independentBlend == rhs.independentBlend) && (geometryShader == rhs.geometryShader) &&
(tessellationShader == rhs.tessellationShader) && (sampleRateShading == rhs.sampleRateShading) && (dualSrcBlend == rhs.dualSrcBlend) &&
(logicOp == rhs.logicOp) && (multiDrawIndirect == rhs.multiDrawIndirect) && (drawIndirectFirstInstance == rhs.drawIndirectFirstInstance) &&
(depthClamp == rhs.depthClamp) && (depthBiasClamp == rhs.depthBiasClamp) && (fillModeNonSolid == rhs.fillModeNonSolid) &&
(depthBounds == rhs.depthBounds) && (wideLines == rhs.wideLines) && (largePoints == rhs.largePoints) && (alphaToOne == rhs.alphaToOne) &&
(multiViewport == rhs.multiViewport) && (samplerAnisotropy == rhs.samplerAnisotropy) &&
(textureCompressionETC2 == rhs.textureCompressionETC2) && (textureCompressionASTC_LDR == rhs.textureCompressionASTC_LDR) &&
(textureCompressionBC == rhs.textureCompressionBC) && (occlusionQueryPrecise == rhs.occlusionQueryPrecise) &&
(pipelineStatisticsQuery == rhs.pipelineStatisticsQuery) && (vertexPipelineStoresAndAtomics == rhs.vertexPipelineStoresAndAtomics) &&
(fragmentStoresAndAtomics == rhs.fragmentStoresAndAtomics) &&
(shaderTessellationAndGeometryPointSize == rhs.shaderTessellationAndGeometryPointSize) &&
(shaderImageGatherExtended == rhs.shaderImageGatherExtended) && (shaderStorageImageExtendedFormats == rhs.shaderStorageImageExtendedFormats) &&
(shaderStorageImageMultisample == rhs.shaderStorageImageMultisample) &&
(shaderStorageImageReadWithoutFormat == rhs.shaderStorageImageReadWithoutFormat) &&
(shaderStorageImageWriteWithoutFormat == rhs.shaderStorageImageWriteWithoutFormat) &&
(shaderUniformBufferArrayDynamicIndexing == rhs.shaderUniformBufferArrayDynamicIndexing) &&
(shaderSampledImageArrayDynamicIndexing == rhs.shaderSampledImageArrayDynamicIndexing) &&
(shaderStorageBufferArrayDynamicIndexing == rhs.shaderStorageBufferArrayDynamicIndexing) &&
(shaderStorageImageArrayDynamicIndexing == rhs.shaderStorageImageArrayDynamicIndexing) && (shaderClipDistance == rhs.shaderClipDistance) &&
(shaderCullDistance == rhs.shaderCullDistance) && (shaderFloat64 == rhs.shaderFloat64) && (shaderInt64 == rhs.shaderInt64) &&
(shaderInt16 == rhs.shaderInt16) && (shaderResourceResidency == rhs.shaderResourceResidency) &&
(shaderResourceMinLod == rhs.shaderResourceMinLod) && (sparseBinding == rhs.sparseBinding) &&
(sparseResidencyBuffer == rhs.sparseResidencyBuffer) && (sparseResidencyImage2D == rhs.sparseResidencyImage2D) &&
(sparseResidencyImage3D == rhs.sparseResidencyImage3D) && (sparseResidency2Samples == rhs.sparseResidency2Samples) &&
(sparseResidency4Samples == rhs.sparseResidency4Samples) && (sparseResidency8Samples == rhs.sparseResidency8Samples) &&
(sparseResidency16Samples == rhs.sparseResidency16Samples) && (sparseResidencyAliased == rhs.sparseResidencyAliased) &&
(variableMultisampleRate == rhs.variableMultisampleRate) && (inheritedQueries == rhs.inheritedQueries);
# endif
}
bool operator!=(PhysicalDeviceFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 fullDrawIndexUint32 = {};
VULKAN_HPP_NAMESPACE::Bool32 imageCubeArray = {};
VULKAN_HPP_NAMESPACE::Bool32 independentBlend = {};
VULKAN_HPP_NAMESPACE::Bool32 geometryShader = {};
VULKAN_HPP_NAMESPACE::Bool32 tessellationShader = {};
VULKAN_HPP_NAMESPACE::Bool32 sampleRateShading = {};
VULKAN_HPP_NAMESPACE::Bool32 dualSrcBlend = {};
VULKAN_HPP_NAMESPACE::Bool32 logicOp = {};
VULKAN_HPP_NAMESPACE::Bool32 multiDrawIndirect = {};
VULKAN_HPP_NAMESPACE::Bool32 drawIndirectFirstInstance = {};
VULKAN_HPP_NAMESPACE::Bool32 depthClamp = {};
VULKAN_HPP_NAMESPACE::Bool32 depthBiasClamp = {};
VULKAN_HPP_NAMESPACE::Bool32 fillModeNonSolid = {};
VULKAN_HPP_NAMESPACE::Bool32 depthBounds = {};
VULKAN_HPP_NAMESPACE::Bool32 wideLines = {};
VULKAN_HPP_NAMESPACE::Bool32 largePoints = {};
VULKAN_HPP_NAMESPACE::Bool32 alphaToOne = {};
VULKAN_HPP_NAMESPACE::Bool32 multiViewport = {};
VULKAN_HPP_NAMESPACE::Bool32 samplerAnisotropy = {};
VULKAN_HPP_NAMESPACE::Bool32 textureCompressionETC2 = {};
VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_LDR = {};
VULKAN_HPP_NAMESPACE::Bool32 textureCompressionBC = {};
VULKAN_HPP_NAMESPACE::Bool32 occlusionQueryPrecise = {};
VULKAN_HPP_NAMESPACE::Bool32 pipelineStatisticsQuery = {};
VULKAN_HPP_NAMESPACE::Bool32 vertexPipelineStoresAndAtomics = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentStoresAndAtomics = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderTessellationAndGeometryPointSize = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderImageGatherExtended = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageExtendedFormats = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageMultisample = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageReadWithoutFormat = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageWriteWithoutFormat = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayDynamicIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayDynamicIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayDynamicIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayDynamicIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderClipDistance = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderCullDistance = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderFloat64 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderInt64 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderInt16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderResourceResidency = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderResourceMinLod = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseBinding = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyBuffer = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage2D = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyImage3D = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseResidency2Samples = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseResidency4Samples = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseResidency8Samples = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseResidency16Samples = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseResidencyAliased = {};
VULKAN_HPP_NAMESPACE::Bool32 variableMultisampleRate = {};
VULKAN_HPP_NAMESPACE::Bool32 inheritedQueries = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures) == sizeof(VkPhysicalDeviceFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures>::value,
"PhysicalDeviceFeatures is not nothrow_move_constructible!");
struct DeviceCreateInfo
{
using NativeType = VkDeviceCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceCreateInfo(VULKAN_HPP_NAMESPACE::DeviceCreateFlags flags_ = {},
uint32_t queueCreateInfoCount_ = {},
const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo *pQueueCreateInfos_ = {},
uint32_t enabledLayerCount_ = {},
const char *const *ppEnabledLayerNames_ = {},
uint32_t enabledExtensionCount_ = {},
const char *const *ppEnabledExtensionNames_ = {},
const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures *pEnabledFeatures_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
queueCreateInfoCount(queueCreateInfoCount_),
pQueueCreateInfos(pQueueCreateInfos_),
enabledLayerCount(enabledLayerCount_),
ppEnabledLayerNames(ppEnabledLayerNames_),
enabledExtensionCount(enabledExtensionCount_),
ppEnabledExtensionNames(ppEnabledExtensionNames_),
pEnabledFeatures(pEnabledFeatures_)
{
}
VULKAN_HPP_CONSTEXPR DeviceCreateInfo(DeviceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceCreateInfo(VkDeviceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT : DeviceCreateInfo(*reinterpret_cast<DeviceCreateInfo const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceCreateInfo(VULKAN_HPP_NAMESPACE::DeviceCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo> const &queueCreateInfos_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char *const> const &pEnabledLayerNames_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char *const> const &pEnabledExtensionNames_ = {},
const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures *pEnabledFeatures_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, queueCreateInfoCount(static_cast<uint32_t>(queueCreateInfos_.size()))
, pQueueCreateInfos(queueCreateInfos_.data())
, enabledLayerCount(static_cast<uint32_t>(pEnabledLayerNames_.size()))
, ppEnabledLayerNames(pEnabledLayerNames_.data())
, enabledExtensionCount(static_cast<uint32_t>(pEnabledExtensionNames_.size()))
, ppEnabledExtensionNames(pEnabledExtensionNames_.data())
, pEnabledFeatures(pEnabledFeatures_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceCreateInfo &operator=(DeviceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceCreateInfo &operator=(VkDeviceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::DeviceCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceCreateInfo &setQueueCreateInfoCount(uint32_t queueCreateInfoCount_) VULKAN_HPP_NOEXCEPT
{
queueCreateInfoCount = queueCreateInfoCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceCreateInfo &
setPQueueCreateInfos(const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo *pQueueCreateInfos_) VULKAN_HPP_NOEXCEPT
{
pQueueCreateInfos = pQueueCreateInfos_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceCreateInfo &setQueueCreateInfos(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo> const &queueCreateInfos_) VULKAN_HPP_NOEXCEPT
{
queueCreateInfoCount = static_cast<uint32_t>(queueCreateInfos_.size());
pQueueCreateInfos = queueCreateInfos_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 DeviceCreateInfo &setEnabledLayerCount(uint32_t enabledLayerCount_) VULKAN_HPP_NOEXCEPT
{
enabledLayerCount = enabledLayerCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceCreateInfo &setPpEnabledLayerNames(const char *const *ppEnabledLayerNames_) VULKAN_HPP_NOEXCEPT
{
ppEnabledLayerNames = ppEnabledLayerNames_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceCreateInfo &
setPEnabledLayerNames(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char *const> const &pEnabledLayerNames_) VULKAN_HPP_NOEXCEPT
{
enabledLayerCount = static_cast<uint32_t>(pEnabledLayerNames_.size());
ppEnabledLayerNames = pEnabledLayerNames_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 DeviceCreateInfo &setEnabledExtensionCount(uint32_t enabledExtensionCount_) VULKAN_HPP_NOEXCEPT
{
enabledExtensionCount = enabledExtensionCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceCreateInfo &setPpEnabledExtensionNames(const char *const *ppEnabledExtensionNames_) VULKAN_HPP_NOEXCEPT
{
ppEnabledExtensionNames = ppEnabledExtensionNames_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceCreateInfo &
setPEnabledExtensionNames(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char *const> const &pEnabledExtensionNames_) VULKAN_HPP_NOEXCEPT
{
enabledExtensionCount = static_cast<uint32_t>(pEnabledExtensionNames_.size());
ppEnabledExtensionNames = pEnabledExtensionNames_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 DeviceCreateInfo &setPEnabledFeatures(const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures *pEnabledFeatures_) VULKAN_HPP_NOEXCEPT
{
pEnabledFeatures = pEnabledFeatures_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceCreateInfo *>(this);
}
explicit operator VkDeviceCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceCreateFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo *const &,
uint32_t const &,
const char *const *const &,
uint32_t const &,
const char *const *const &,
const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
queueCreateInfoCount,
pQueueCreateInfos,
enabledLayerCount,
ppEnabledLayerNames,
enabledExtensionCount,
ppEnabledExtensionNames,
pEnabledFeatures);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(DeviceCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = flags <=> rhs.flags; cmp != 0)
return cmp;
if(auto cmp = queueCreateInfoCount <=> rhs.queueCreateInfoCount; cmp != 0)
return cmp;
if(auto cmp = pQueueCreateInfos <=> rhs.pQueueCreateInfos; cmp != 0)
return cmp;
if(auto cmp = enabledLayerCount <=> rhs.enabledLayerCount; cmp != 0)
return cmp;
for(size_t i = 0; i < enabledLayerCount; ++i)
{
if(ppEnabledLayerNames[i] != rhs.ppEnabledLayerNames[i])
if(auto cmp = strcmp(ppEnabledLayerNames[i], rhs.ppEnabledLayerNames[i]); cmp != 0)
return cmp < 0 ? std::strong_ordering::less : std::strong_ordering::greater;
}
if(auto cmp = enabledExtensionCount <=> rhs.enabledExtensionCount; cmp != 0)
return cmp;
for(size_t i = 0; i < enabledExtensionCount; ++i)
{
if(ppEnabledExtensionNames[i] != rhs.ppEnabledExtensionNames[i])
if(auto cmp = strcmp(ppEnabledExtensionNames[i], rhs.ppEnabledExtensionNames[i]); cmp != 0)
return cmp < 0 ? std::strong_ordering::less : std::strong_ordering::greater;
}
if(auto cmp = pEnabledFeatures <=> rhs.pEnabledFeatures; cmp != 0)
return cmp;
return std::strong_ordering::equivalent;
}
#endif
bool operator==(DeviceCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (queueCreateInfoCount == rhs.queueCreateInfoCount) &&
(pQueueCreateInfos == rhs.pQueueCreateInfos) && (enabledLayerCount == rhs.enabledLayerCount) &&
[this, rhs] {
bool equal = true;
for(size_t i = 0; equal && (i < enabledLayerCount); ++i)
{
equal = ((ppEnabledLayerNames[i] == rhs.ppEnabledLayerNames[i]) || (strcmp(ppEnabledLayerNames[i], rhs.ppEnabledLayerNames[i]) == 0));
}
return equal;
}() &&
(enabledExtensionCount == rhs.enabledExtensionCount) &&
[this, rhs] {
bool equal = true;
for(size_t i = 0; equal && (i < enabledExtensionCount); ++i)
{
equal = ((ppEnabledExtensionNames[i] == rhs.ppEnabledExtensionNames[i]) ||
(strcmp(ppEnabledExtensionNames[i], rhs.ppEnabledExtensionNames[i]) == 0));
}
return equal;
}() &&
(pEnabledFeatures == rhs.pEnabledFeatures);
}
bool operator!=(DeviceCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceCreateFlags flags = {};
uint32_t queueCreateInfoCount = {};
const VULKAN_HPP_NAMESPACE::DeviceQueueCreateInfo *pQueueCreateInfos = {};
uint32_t enabledLayerCount = {};
const char *const *ppEnabledLayerNames = {};
uint32_t enabledExtensionCount = {};
const char *const *ppEnabledExtensionNames = {};
const VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures *pEnabledFeatures = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceCreateInfo) == sizeof(VkDeviceCreateInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceCreateInfo>::value,
"DeviceCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceCreateInfo>
{
using Type = DeviceCreateInfo;
};
struct DeviceDeviceMemoryReportCreateInfoEXT
{
using NativeType = VkDeviceDeviceMemoryReportCreateInfoEXT;
static const bool allowDuplicate = true;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceDeviceMemoryReportCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceDeviceMemoryReportCreateInfoEXT(VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags_ = {},
PFN_vkDeviceMemoryReportCallbackEXT pfnUserCallback_ = {},
void *pUserData_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
pfnUserCallback(pfnUserCallback_),
pUserData(pUserData_)
{
}
VULKAN_HPP_CONSTEXPR DeviceDeviceMemoryReportCreateInfoEXT(DeviceDeviceMemoryReportCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceDeviceMemoryReportCreateInfoEXT(VkDeviceDeviceMemoryReportCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceDeviceMemoryReportCreateInfoEXT(*reinterpret_cast<DeviceDeviceMemoryReportCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceDeviceMemoryReportCreateInfoEXT &operator=(DeviceDeviceMemoryReportCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceDeviceMemoryReportCreateInfoEXT &operator=(VkDeviceDeviceMemoryReportCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceDeviceMemoryReportCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceDeviceMemoryReportCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceDeviceMemoryReportCreateInfoEXT &setFlags(VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceDeviceMemoryReportCreateInfoEXT &
setPfnUserCallback(PFN_vkDeviceMemoryReportCallbackEXT pfnUserCallback_) VULKAN_HPP_NOEXCEPT
{
pfnUserCallback = pfnUserCallback_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceDeviceMemoryReportCreateInfoEXT &setPUserData(void *pUserData_) VULKAN_HPP_NOEXCEPT
{
pUserData = pUserData_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceDeviceMemoryReportCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceDeviceMemoryReportCreateInfoEXT *>(this);
}
explicit operator VkDeviceDeviceMemoryReportCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceDeviceMemoryReportCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT const &,
PFN_vkDeviceMemoryReportCallbackEXT const &,
void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, pfnUserCallback, pUserData);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceDeviceMemoryReportCreateInfoEXT const &) const = default;
#else
bool operator==(DeviceDeviceMemoryReportCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (pfnUserCallback == rhs.pfnUserCallback) &&
(pUserData == rhs.pUserData);
# endif
}
bool operator!=(DeviceDeviceMemoryReportCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceDeviceMemoryReportCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags = {};
PFN_vkDeviceMemoryReportCallbackEXT pfnUserCallback = {};
void *pUserData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceDeviceMemoryReportCreateInfoEXT) == sizeof(VkDeviceDeviceMemoryReportCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceDeviceMemoryReportCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceDeviceMemoryReportCreateInfoEXT>::value,
"DeviceDeviceMemoryReportCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceDeviceMemoryReportCreateInfoEXT>
{
using Type = DeviceDeviceMemoryReportCreateInfoEXT;
};
struct DeviceDiagnosticsConfigCreateInfoNV
{
using NativeType = VkDeviceDiagnosticsConfigCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceDiagnosticsConfigCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigCreateInfoNV(VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigFlagsNV flags_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR DeviceDiagnosticsConfigCreateInfoNV(DeviceDiagnosticsConfigCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceDiagnosticsConfigCreateInfoNV(VkDeviceDiagnosticsConfigCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceDiagnosticsConfigCreateInfoNV(*reinterpret_cast<DeviceDiagnosticsConfigCreateInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceDiagnosticsConfigCreateInfoNV &operator=(DeviceDiagnosticsConfigCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceDiagnosticsConfigCreateInfoNV &operator=(VkDeviceDiagnosticsConfigCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceDiagnosticsConfigCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceDiagnosticsConfigCreateInfoNV &setFlags(VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigFlagsNV flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceDiagnosticsConfigCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceDiagnosticsConfigCreateInfoNV *>(this);
}
explicit operator VkDeviceDiagnosticsConfigCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceDiagnosticsConfigCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigFlagsNV const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceDiagnosticsConfigCreateInfoNV const &) const = default;
#else
bool operator==(DeviceDiagnosticsConfigCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags);
# endif
}
bool operator!=(DeviceDiagnosticsConfigCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceDiagnosticsConfigCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigFlagsNV flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigCreateInfoNV) == sizeof(VkDeviceDiagnosticsConfigCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigCreateInfoNV>::value,
"DeviceDiagnosticsConfigCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceDiagnosticsConfigCreateInfoNV>
{
using Type = DeviceDiagnosticsConfigCreateInfoNV;
};
struct DeviceEventInfoEXT
{
using NativeType = VkDeviceEventInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceEventInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceEventInfoEXT(VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT deviceEvent_ = VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT::eDisplayHotplug,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
deviceEvent(deviceEvent_)
{
}
VULKAN_HPP_CONSTEXPR DeviceEventInfoEXT(DeviceEventInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceEventInfoEXT(VkDeviceEventInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT : DeviceEventInfoEXT(*reinterpret_cast<DeviceEventInfoEXT const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceEventInfoEXT &operator=(DeviceEventInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceEventInfoEXT &operator=(VkDeviceEventInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceEventInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceEventInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceEventInfoEXT &setDeviceEvent(VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT deviceEvent_) VULKAN_HPP_NOEXCEPT
{
deviceEvent = deviceEvent_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceEventInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceEventInfoEXT *>(this);
}
explicit operator VkDeviceEventInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceEventInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, deviceEvent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceEventInfoEXT const &) const = default;
#else
bool operator==(DeviceEventInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (deviceEvent == rhs.deviceEvent);
# endif
}
bool operator!=(DeviceEventInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceEventInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT deviceEvent = VULKAN_HPP_NAMESPACE::DeviceEventTypeEXT::eDisplayHotplug;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceEventInfoEXT) == sizeof(VkDeviceEventInfoEXT), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceEventInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceEventInfoEXT>::value,
"DeviceEventInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceEventInfoEXT>
{
using Type = DeviceEventInfoEXT;
};
struct DeviceGroupBindSparseInfo
{
using NativeType = VkDeviceGroupBindSparseInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupBindSparseInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
DeviceGroupBindSparseInfo(uint32_t resourceDeviceIndex_ = {}, uint32_t memoryDeviceIndex_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
resourceDeviceIndex(resourceDeviceIndex_),
memoryDeviceIndex(memoryDeviceIndex_)
{
}
VULKAN_HPP_CONSTEXPR DeviceGroupBindSparseInfo(DeviceGroupBindSparseInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupBindSparseInfo(VkDeviceGroupBindSparseInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceGroupBindSparseInfo(*reinterpret_cast<DeviceGroupBindSparseInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceGroupBindSparseInfo &operator=(DeviceGroupBindSparseInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupBindSparseInfo &operator=(VkDeviceGroupBindSparseInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupBindSparseInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceGroupBindSparseInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupBindSparseInfo &setResourceDeviceIndex(uint32_t resourceDeviceIndex_) VULKAN_HPP_NOEXCEPT
{
resourceDeviceIndex = resourceDeviceIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupBindSparseInfo &setMemoryDeviceIndex(uint32_t memoryDeviceIndex_) VULKAN_HPP_NOEXCEPT
{
memoryDeviceIndex = memoryDeviceIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceGroupBindSparseInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceGroupBindSparseInfo *>(this);
}
explicit operator VkDeviceGroupBindSparseInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceGroupBindSparseInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, resourceDeviceIndex, memoryDeviceIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceGroupBindSparseInfo const &) const = default;
#else
bool operator==(DeviceGroupBindSparseInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (resourceDeviceIndex == rhs.resourceDeviceIndex) &&
(memoryDeviceIndex == rhs.memoryDeviceIndex);
# endif
}
bool operator!=(DeviceGroupBindSparseInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupBindSparseInfo;
const void *pNext = {};
uint32_t resourceDeviceIndex = {};
uint32_t memoryDeviceIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceGroupBindSparseInfo) == sizeof(VkDeviceGroupBindSparseInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceGroupBindSparseInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceGroupBindSparseInfo>::value,
"DeviceGroupBindSparseInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceGroupBindSparseInfo>
{
using Type = DeviceGroupBindSparseInfo;
};
using DeviceGroupBindSparseInfoKHR = DeviceGroupBindSparseInfo;
struct DeviceGroupCommandBufferBeginInfo
{
using NativeType = VkDeviceGroupCommandBufferBeginInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupCommandBufferBeginInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceGroupCommandBufferBeginInfo(uint32_t deviceMask_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
deviceMask(deviceMask_)
{
}
VULKAN_HPP_CONSTEXPR DeviceGroupCommandBufferBeginInfo(DeviceGroupCommandBufferBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupCommandBufferBeginInfo(VkDeviceGroupCommandBufferBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceGroupCommandBufferBeginInfo(*reinterpret_cast<DeviceGroupCommandBufferBeginInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceGroupCommandBufferBeginInfo &operator=(DeviceGroupCommandBufferBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupCommandBufferBeginInfo &operator=(VkDeviceGroupCommandBufferBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupCommandBufferBeginInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceGroupCommandBufferBeginInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupCommandBufferBeginInfo &setDeviceMask(uint32_t deviceMask_) VULKAN_HPP_NOEXCEPT
{
deviceMask = deviceMask_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceGroupCommandBufferBeginInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceGroupCommandBufferBeginInfo *>(this);
}
explicit operator VkDeviceGroupCommandBufferBeginInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceGroupCommandBufferBeginInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, deviceMask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceGroupCommandBufferBeginInfo const &) const = default;
#else
bool operator==(DeviceGroupCommandBufferBeginInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (deviceMask == rhs.deviceMask);
# endif
}
bool operator!=(DeviceGroupCommandBufferBeginInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupCommandBufferBeginInfo;
const void *pNext = {};
uint32_t deviceMask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceGroupCommandBufferBeginInfo) == sizeof(VkDeviceGroupCommandBufferBeginInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceGroupCommandBufferBeginInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceGroupCommandBufferBeginInfo>::value,
"DeviceGroupCommandBufferBeginInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceGroupCommandBufferBeginInfo>
{
using Type = DeviceGroupCommandBufferBeginInfo;
};
using DeviceGroupCommandBufferBeginInfoKHR = DeviceGroupCommandBufferBeginInfo;
struct DeviceGroupDeviceCreateInfo
{
using NativeType = VkDeviceGroupDeviceCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupDeviceCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceGroupDeviceCreateInfo(uint32_t physicalDeviceCount_ = {},
const VULKAN_HPP_NAMESPACE::PhysicalDevice *pPhysicalDevices_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
physicalDeviceCount(physicalDeviceCount_),
pPhysicalDevices(pPhysicalDevices_)
{
}
VULKAN_HPP_CONSTEXPR DeviceGroupDeviceCreateInfo(DeviceGroupDeviceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupDeviceCreateInfo(VkDeviceGroupDeviceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceGroupDeviceCreateInfo(*reinterpret_cast<DeviceGroupDeviceCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceGroupDeviceCreateInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PhysicalDevice> const &physicalDevices_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, physicalDeviceCount(static_cast<uint32_t>(physicalDevices_.size()))
, pPhysicalDevices(physicalDevices_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceGroupDeviceCreateInfo &operator=(DeviceGroupDeviceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupDeviceCreateInfo &operator=(VkDeviceGroupDeviceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupDeviceCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceGroupDeviceCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupDeviceCreateInfo &setPhysicalDeviceCount(uint32_t physicalDeviceCount_) VULKAN_HPP_NOEXCEPT
{
physicalDeviceCount = physicalDeviceCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupDeviceCreateInfo &
setPPhysicalDevices(const VULKAN_HPP_NAMESPACE::PhysicalDevice *pPhysicalDevices_) VULKAN_HPP_NOEXCEPT
{
pPhysicalDevices = pPhysicalDevices_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceGroupDeviceCreateInfo &setPhysicalDevices(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PhysicalDevice> const &physicalDevices_) VULKAN_HPP_NOEXCEPT
{
physicalDeviceCount = static_cast<uint32_t>(physicalDevices_.size());
pPhysicalDevices = physicalDevices_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceGroupDeviceCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceGroupDeviceCreateInfo *>(this);
}
explicit operator VkDeviceGroupDeviceCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceGroupDeviceCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::PhysicalDevice *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, physicalDeviceCount, pPhysicalDevices);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceGroupDeviceCreateInfo const &) const = default;
#else
bool operator==(DeviceGroupDeviceCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (physicalDeviceCount == rhs.physicalDeviceCount) &&
(pPhysicalDevices == rhs.pPhysicalDevices);
# endif
}
bool operator!=(DeviceGroupDeviceCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupDeviceCreateInfo;
const void *pNext = {};
uint32_t physicalDeviceCount = {};
const VULKAN_HPP_NAMESPACE::PhysicalDevice *pPhysicalDevices = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceGroupDeviceCreateInfo) == sizeof(VkDeviceGroupDeviceCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceGroupDeviceCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceGroupDeviceCreateInfo>::value,
"DeviceGroupDeviceCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceGroupDeviceCreateInfo>
{
using Type = DeviceGroupDeviceCreateInfo;
};
using DeviceGroupDeviceCreateInfoKHR = DeviceGroupDeviceCreateInfo;
struct DeviceGroupPresentCapabilitiesKHR
{
using NativeType = VkDeviceGroupPresentCapabilitiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupPresentCapabilitiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 DeviceGroupPresentCapabilitiesKHR(std::array<uint32_t, VK_MAX_DEVICE_GROUP_SIZE> const &presentMask_ = {},
VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
presentMask(presentMask_),
modes(modes_)
{
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupPresentCapabilitiesKHR(DeviceGroupPresentCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupPresentCapabilitiesKHR(VkDeviceGroupPresentCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceGroupPresentCapabilitiesKHR(*reinterpret_cast<DeviceGroupPresentCapabilitiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceGroupPresentCapabilitiesKHR &operator=(DeviceGroupPresentCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupPresentCapabilitiesKHR &operator=(VkDeviceGroupPresentCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR const *>(&rhs);
return *this;
}
explicit operator VkDeviceGroupPresentCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceGroupPresentCapabilitiesKHR *>(this);
}
explicit operator VkDeviceGroupPresentCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceGroupPresentCapabilitiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, VK_MAX_DEVICE_GROUP_SIZE> const &,
VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, presentMask, modes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceGroupPresentCapabilitiesKHR const &) const = default;
#else
bool operator==(DeviceGroupPresentCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (presentMask == rhs.presentMask) && (modes == rhs.modes);
# endif
}
bool operator!=(DeviceGroupPresentCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupPresentCapabilitiesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, VK_MAX_DEVICE_GROUP_SIZE> presentMask = {};
VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR) == sizeof(VkDeviceGroupPresentCapabilitiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceGroupPresentCapabilitiesKHR>::value,
"DeviceGroupPresentCapabilitiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceGroupPresentCapabilitiesKHR>
{
using Type = DeviceGroupPresentCapabilitiesKHR;
};
struct DeviceGroupPresentInfoKHR
{
using NativeType = VkDeviceGroupPresentInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupPresentInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceGroupPresentInfoKHR(
uint32_t swapchainCount_ = {},
const uint32_t *pDeviceMasks_ = {},
VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR mode_ = VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR::eLocal,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
swapchainCount(swapchainCount_),
pDeviceMasks(pDeviceMasks_),
mode(mode_)
{
}
VULKAN_HPP_CONSTEXPR DeviceGroupPresentInfoKHR(DeviceGroupPresentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupPresentInfoKHR(VkDeviceGroupPresentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceGroupPresentInfoKHR(*reinterpret_cast<DeviceGroupPresentInfoKHR const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceGroupPresentInfoKHR(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &deviceMasks_,
VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR mode_ = VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR::eLocal,
const void *pNext_ = nullptr)
: pNext(pNext_)
, swapchainCount(static_cast<uint32_t>(deviceMasks_.size()))
, pDeviceMasks(deviceMasks_.data())
, mode(mode_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceGroupPresentInfoKHR &operator=(DeviceGroupPresentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupPresentInfoKHR &operator=(VkDeviceGroupPresentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupPresentInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceGroupPresentInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupPresentInfoKHR &setSwapchainCount(uint32_t swapchainCount_) VULKAN_HPP_NOEXCEPT
{
swapchainCount = swapchainCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupPresentInfoKHR &setPDeviceMasks(const uint32_t *pDeviceMasks_) VULKAN_HPP_NOEXCEPT
{
pDeviceMasks = pDeviceMasks_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceGroupPresentInfoKHR &setDeviceMasks(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &deviceMasks_) VULKAN_HPP_NOEXCEPT
{
swapchainCount = static_cast<uint32_t>(deviceMasks_.size());
pDeviceMasks = deviceMasks_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 DeviceGroupPresentInfoKHR &setMode(VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR mode_) VULKAN_HPP_NOEXCEPT
{
mode = mode_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceGroupPresentInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceGroupPresentInfoKHR *>(this);
}
explicit operator VkDeviceGroupPresentInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceGroupPresentInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const uint32_t *const &,
VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, swapchainCount, pDeviceMasks, mode);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceGroupPresentInfoKHR const &) const = default;
#else
bool operator==(DeviceGroupPresentInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (swapchainCount == rhs.swapchainCount) && (pDeviceMasks == rhs.pDeviceMasks) &&
(mode == rhs.mode);
# endif
}
bool operator!=(DeviceGroupPresentInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupPresentInfoKHR;
const void *pNext = {};
uint32_t swapchainCount = {};
const uint32_t *pDeviceMasks = {};
VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR mode = VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagBitsKHR::eLocal;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceGroupPresentInfoKHR) == sizeof(VkDeviceGroupPresentInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceGroupPresentInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceGroupPresentInfoKHR>::value,
"DeviceGroupPresentInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceGroupPresentInfoKHR>
{
using Type = DeviceGroupPresentInfoKHR;
};
struct DeviceGroupRenderPassBeginInfo
{
using NativeType = VkDeviceGroupRenderPassBeginInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupRenderPassBeginInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceGroupRenderPassBeginInfo(uint32_t deviceMask_ = {},
uint32_t deviceRenderAreaCount_ = {},
const VULKAN_HPP_NAMESPACE::Rect2D *pDeviceRenderAreas_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
deviceMask(deviceMask_),
deviceRenderAreaCount(deviceRenderAreaCount_),
pDeviceRenderAreas(pDeviceRenderAreas_)
{
}
VULKAN_HPP_CONSTEXPR DeviceGroupRenderPassBeginInfo(DeviceGroupRenderPassBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupRenderPassBeginInfo(VkDeviceGroupRenderPassBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceGroupRenderPassBeginInfo(*reinterpret_cast<DeviceGroupRenderPassBeginInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceGroupRenderPassBeginInfo(uint32_t deviceMask_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const &deviceRenderAreas_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, deviceMask(deviceMask_)
, deviceRenderAreaCount(static_cast<uint32_t>(deviceRenderAreas_.size()))
, pDeviceRenderAreas(deviceRenderAreas_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceGroupRenderPassBeginInfo &operator=(DeviceGroupRenderPassBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupRenderPassBeginInfo &operator=(VkDeviceGroupRenderPassBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupRenderPassBeginInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceGroupRenderPassBeginInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupRenderPassBeginInfo &setDeviceMask(uint32_t deviceMask_) VULKAN_HPP_NOEXCEPT
{
deviceMask = deviceMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupRenderPassBeginInfo &setDeviceRenderAreaCount(uint32_t deviceRenderAreaCount_) VULKAN_HPP_NOEXCEPT
{
deviceRenderAreaCount = deviceRenderAreaCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupRenderPassBeginInfo &
setPDeviceRenderAreas(const VULKAN_HPP_NAMESPACE::Rect2D *pDeviceRenderAreas_) VULKAN_HPP_NOEXCEPT
{
pDeviceRenderAreas = pDeviceRenderAreas_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceGroupRenderPassBeginInfo &
setDeviceRenderAreas(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const &deviceRenderAreas_) VULKAN_HPP_NOEXCEPT
{
deviceRenderAreaCount = static_cast<uint32_t>(deviceRenderAreas_.size());
pDeviceRenderAreas = deviceRenderAreas_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceGroupRenderPassBeginInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceGroupRenderPassBeginInfo *>(this);
}
explicit operator VkDeviceGroupRenderPassBeginInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceGroupRenderPassBeginInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::
tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::Rect2D *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, deviceMask, deviceRenderAreaCount, pDeviceRenderAreas);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceGroupRenderPassBeginInfo const &) const = default;
#else
bool operator==(DeviceGroupRenderPassBeginInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (deviceMask == rhs.deviceMask) && (deviceRenderAreaCount == rhs.deviceRenderAreaCount) &&
(pDeviceRenderAreas == rhs.pDeviceRenderAreas);
# endif
}
bool operator!=(DeviceGroupRenderPassBeginInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupRenderPassBeginInfo;
const void *pNext = {};
uint32_t deviceMask = {};
uint32_t deviceRenderAreaCount = {};
const VULKAN_HPP_NAMESPACE::Rect2D *pDeviceRenderAreas = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceGroupRenderPassBeginInfo) == sizeof(VkDeviceGroupRenderPassBeginInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceGroupRenderPassBeginInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceGroupRenderPassBeginInfo>::value,
"DeviceGroupRenderPassBeginInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceGroupRenderPassBeginInfo>
{
using Type = DeviceGroupRenderPassBeginInfo;
};
using DeviceGroupRenderPassBeginInfoKHR = DeviceGroupRenderPassBeginInfo;
struct DeviceGroupSubmitInfo
{
using NativeType = VkDeviceGroupSubmitInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupSubmitInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceGroupSubmitInfo(uint32_t waitSemaphoreCount_ = {},
const uint32_t *pWaitSemaphoreDeviceIndices_ = {},
uint32_t commandBufferCount_ = {},
const uint32_t *pCommandBufferDeviceMasks_ = {},
uint32_t signalSemaphoreCount_ = {},
const uint32_t *pSignalSemaphoreDeviceIndices_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
waitSemaphoreCount(waitSemaphoreCount_),
pWaitSemaphoreDeviceIndices(pWaitSemaphoreDeviceIndices_),
commandBufferCount(commandBufferCount_),
pCommandBufferDeviceMasks(pCommandBufferDeviceMasks_),
signalSemaphoreCount(signalSemaphoreCount_),
pSignalSemaphoreDeviceIndices(pSignalSemaphoreDeviceIndices_)
{
}
VULKAN_HPP_CONSTEXPR DeviceGroupSubmitInfo(DeviceGroupSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupSubmitInfo(VkDeviceGroupSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceGroupSubmitInfo(*reinterpret_cast<DeviceGroupSubmitInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceGroupSubmitInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &waitSemaphoreDeviceIndices_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &commandBufferDeviceMasks_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &signalSemaphoreDeviceIndices_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, waitSemaphoreCount(static_cast<uint32_t>(waitSemaphoreDeviceIndices_.size()))
, pWaitSemaphoreDeviceIndices(waitSemaphoreDeviceIndices_.data())
, commandBufferCount(static_cast<uint32_t>(commandBufferDeviceMasks_.size()))
, pCommandBufferDeviceMasks(commandBufferDeviceMasks_.data())
, signalSemaphoreCount(static_cast<uint32_t>(signalSemaphoreDeviceIndices_.size()))
, pSignalSemaphoreDeviceIndices(signalSemaphoreDeviceIndices_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceGroupSubmitInfo &operator=(DeviceGroupSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupSubmitInfo &operator=(VkDeviceGroupSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupSubmitInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceGroupSubmitInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupSubmitInfo &setWaitSemaphoreCount(uint32_t waitSemaphoreCount_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreCount = waitSemaphoreCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupSubmitInfo &setPWaitSemaphoreDeviceIndices(const uint32_t *pWaitSemaphoreDeviceIndices_) VULKAN_HPP_NOEXCEPT
{
pWaitSemaphoreDeviceIndices = pWaitSemaphoreDeviceIndices_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceGroupSubmitInfo &
setWaitSemaphoreDeviceIndices(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &waitSemaphoreDeviceIndices_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreCount = static_cast<uint32_t>(waitSemaphoreDeviceIndices_.size());
pWaitSemaphoreDeviceIndices = waitSemaphoreDeviceIndices_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 DeviceGroupSubmitInfo &setCommandBufferCount(uint32_t commandBufferCount_) VULKAN_HPP_NOEXCEPT
{
commandBufferCount = commandBufferCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupSubmitInfo &setPCommandBufferDeviceMasks(const uint32_t *pCommandBufferDeviceMasks_) VULKAN_HPP_NOEXCEPT
{
pCommandBufferDeviceMasks = pCommandBufferDeviceMasks_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceGroupSubmitInfo &
setCommandBufferDeviceMasks(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &commandBufferDeviceMasks_) VULKAN_HPP_NOEXCEPT
{
commandBufferCount = static_cast<uint32_t>(commandBufferDeviceMasks_.size());
pCommandBufferDeviceMasks = commandBufferDeviceMasks_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 DeviceGroupSubmitInfo &setSignalSemaphoreCount(uint32_t signalSemaphoreCount_) VULKAN_HPP_NOEXCEPT
{
signalSemaphoreCount = signalSemaphoreCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupSubmitInfo &setPSignalSemaphoreDeviceIndices(const uint32_t *pSignalSemaphoreDeviceIndices_) VULKAN_HPP_NOEXCEPT
{
pSignalSemaphoreDeviceIndices = pSignalSemaphoreDeviceIndices_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DeviceGroupSubmitInfo &
setSignalSemaphoreDeviceIndices(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &signalSemaphoreDeviceIndices_) VULKAN_HPP_NOEXCEPT
{
signalSemaphoreCount = static_cast<uint32_t>(signalSemaphoreDeviceIndices_.size());
pSignalSemaphoreDeviceIndices = signalSemaphoreDeviceIndices_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceGroupSubmitInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceGroupSubmitInfo *>(this);
}
explicit operator VkDeviceGroupSubmitInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceGroupSubmitInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const uint32_t *const &,
uint32_t const &,
const uint32_t *const &,
uint32_t const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
waitSemaphoreCount,
pWaitSemaphoreDeviceIndices,
commandBufferCount,
pCommandBufferDeviceMasks,
signalSemaphoreCount,
pSignalSemaphoreDeviceIndices);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceGroupSubmitInfo const &) const = default;
#else
bool operator==(DeviceGroupSubmitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (waitSemaphoreCount == rhs.waitSemaphoreCount) &&
(pWaitSemaphoreDeviceIndices == rhs.pWaitSemaphoreDeviceIndices) && (commandBufferCount == rhs.commandBufferCount) &&
(pCommandBufferDeviceMasks == rhs.pCommandBufferDeviceMasks) && (signalSemaphoreCount == rhs.signalSemaphoreCount) &&
(pSignalSemaphoreDeviceIndices == rhs.pSignalSemaphoreDeviceIndices);
# endif
}
bool operator!=(DeviceGroupSubmitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupSubmitInfo;
const void *pNext = {};
uint32_t waitSemaphoreCount = {};
const uint32_t *pWaitSemaphoreDeviceIndices = {};
uint32_t commandBufferCount = {};
const uint32_t *pCommandBufferDeviceMasks = {};
uint32_t signalSemaphoreCount = {};
const uint32_t *pSignalSemaphoreDeviceIndices = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceGroupSubmitInfo) == sizeof(VkDeviceGroupSubmitInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceGroupSubmitInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceGroupSubmitInfo>::value,
"DeviceGroupSubmitInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceGroupSubmitInfo>
{
using Type = DeviceGroupSubmitInfo;
};
using DeviceGroupSubmitInfoKHR = DeviceGroupSubmitInfo;
struct DeviceGroupSwapchainCreateInfoKHR
{
using NativeType = VkDeviceGroupSwapchainCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceGroupSwapchainCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceGroupSwapchainCreateInfoKHR(VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
modes(modes_)
{
}
VULKAN_HPP_CONSTEXPR DeviceGroupSwapchainCreateInfoKHR(DeviceGroupSwapchainCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupSwapchainCreateInfoKHR(VkDeviceGroupSwapchainCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceGroupSwapchainCreateInfoKHR(*reinterpret_cast<DeviceGroupSwapchainCreateInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceGroupSwapchainCreateInfoKHR &operator=(DeviceGroupSwapchainCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceGroupSwapchainCreateInfoKHR &operator=(VkDeviceGroupSwapchainCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceGroupSwapchainCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceGroupSwapchainCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceGroupSwapchainCreateInfoKHR &setModes(VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes_) VULKAN_HPP_NOEXCEPT
{
modes = modes_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceGroupSwapchainCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceGroupSwapchainCreateInfoKHR *>(this);
}
explicit operator VkDeviceGroupSwapchainCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceGroupSwapchainCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, modes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceGroupSwapchainCreateInfoKHR const &) const = default;
#else
bool operator==(DeviceGroupSwapchainCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (modes == rhs.modes);
# endif
}
bool operator!=(DeviceGroupSwapchainCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceGroupSwapchainCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceGroupPresentModeFlagsKHR modes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceGroupSwapchainCreateInfoKHR) == sizeof(VkDeviceGroupSwapchainCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceGroupSwapchainCreateInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceGroupSwapchainCreateInfoKHR>::value,
"DeviceGroupSwapchainCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceGroupSwapchainCreateInfoKHR>
{
using Type = DeviceGroupSwapchainCreateInfoKHR;
};
struct ImageCreateInfo
{
using NativeType = VkImageCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageCreateInfo(VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::ImageType imageType_ = VULKAN_HPP_NAMESPACE::ImageType::e1D,
VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::Extent3D extent_ = {},
uint32_t mipLevels_ = {},
uint32_t arrayLayers_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
VULKAN_HPP_NAMESPACE::ImageTiling tiling_ = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal,
VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {},
VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive,
uint32_t queueFamilyIndexCount_ = {},
const uint32_t *pQueueFamilyIndices_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
imageType(imageType_),
format(format_),
extent(extent_),
mipLevels(mipLevels_),
arrayLayers(arrayLayers_),
samples(samples_),
tiling(tiling_),
usage(usage_),
sharingMode(sharingMode_),
queueFamilyIndexCount(queueFamilyIndexCount_),
pQueueFamilyIndices(pQueueFamilyIndices_),
initialLayout(initialLayout_)
{
}
VULKAN_HPP_CONSTEXPR ImageCreateInfo(ImageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageCreateInfo(VkImageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT : ImageCreateInfo(*reinterpret_cast<ImageCreateInfo const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ImageCreateInfo(VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ImageType imageType_,
VULKAN_HPP_NAMESPACE::Format format_,
VULKAN_HPP_NAMESPACE::Extent3D extent_,
uint32_t mipLevels_,
uint32_t arrayLayers_,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_,
VULKAN_HPP_NAMESPACE::ImageTiling tiling_,
VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_,
VULKAN_HPP_NAMESPACE::SharingMode sharingMode_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &queueFamilyIndices_,
VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, imageType(imageType_)
, format(format_)
, extent(extent_)
, mipLevels(mipLevels_)
, arrayLayers(arrayLayers_)
, samples(samples_)
, tiling(tiling_)
, usage(usage_)
, sharingMode(sharingMode_)
, queueFamilyIndexCount(static_cast<uint32_t>(queueFamilyIndices_.size()))
, pQueueFamilyIndices(queueFamilyIndices_.data())
, initialLayout(initialLayout_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageCreateInfo &operator=(ImageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageCreateInfo &operator=(VkImageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setImageType(VULKAN_HPP_NAMESPACE::ImageType imageType_) VULKAN_HPP_NOEXCEPT
{
imageType = imageType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setFormat(VULKAN_HPP_NAMESPACE::Format format_) VULKAN_HPP_NOEXCEPT
{
format = format_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setExtent(VULKAN_HPP_NAMESPACE::Extent3D const &extent_) VULKAN_HPP_NOEXCEPT
{
extent = extent_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setMipLevels(uint32_t mipLevels_) VULKAN_HPP_NOEXCEPT
{
mipLevels = mipLevels_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setArrayLayers(uint32_t arrayLayers_) VULKAN_HPP_NOEXCEPT
{
arrayLayers = arrayLayers_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setSamples(VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_) VULKAN_HPP_NOEXCEPT
{
samples = samples_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setTiling(VULKAN_HPP_NAMESPACE::ImageTiling tiling_) VULKAN_HPP_NOEXCEPT
{
tiling = tiling_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setUsage(VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_) VULKAN_HPP_NOEXCEPT
{
usage = usage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setSharingMode(VULKAN_HPP_NAMESPACE::SharingMode sharingMode_) VULKAN_HPP_NOEXCEPT
{
sharingMode = sharingMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setQueueFamilyIndexCount(uint32_t queueFamilyIndexCount_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndexCount = queueFamilyIndexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setPQueueFamilyIndices(const uint32_t *pQueueFamilyIndices_) VULKAN_HPP_NOEXCEPT
{
pQueueFamilyIndices = pQueueFamilyIndices_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ImageCreateInfo &setQueueFamilyIndices(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &queueFamilyIndices_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndexCount = static_cast<uint32_t>(queueFamilyIndices_.size());
pQueueFamilyIndices = queueFamilyIndices_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 ImageCreateInfo &setInitialLayout(VULKAN_HPP_NAMESPACE::ImageLayout initialLayout_) VULKAN_HPP_NOEXCEPT
{
initialLayout = initialLayout_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageCreateInfo *>(this);
}
explicit operator VkImageCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ImageCreateFlags const &,
VULKAN_HPP_NAMESPACE::ImageType const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::Extent3D const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits const &,
VULKAN_HPP_NAMESPACE::ImageTiling const &,
VULKAN_HPP_NAMESPACE::ImageUsageFlags const &,
VULKAN_HPP_NAMESPACE::SharingMode const &,
uint32_t const &,
const uint32_t *const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
imageType,
format,
extent,
mipLevels,
arrayLayers,
samples,
tiling,
usage,
sharingMode,
queueFamilyIndexCount,
pQueueFamilyIndices,
initialLayout);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageCreateInfo const &) const = default;
#else
bool operator==(ImageCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (imageType == rhs.imageType) && (format == rhs.format) &&
(extent == rhs.extent) && (mipLevels == rhs.mipLevels) && (arrayLayers == rhs.arrayLayers) && (samples == rhs.samples) &&
(tiling == rhs.tiling) && (usage == rhs.usage) && (sharingMode == rhs.sharingMode) &&
(queueFamilyIndexCount == rhs.queueFamilyIndexCount) && (pQueueFamilyIndices == rhs.pQueueFamilyIndices) &&
(initialLayout == rhs.initialLayout);
# endif
}
bool operator!=(ImageCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::ImageType imageType = VULKAN_HPP_NAMESPACE::ImageType::e1D;
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::Extent3D extent = {};
uint32_t mipLevels = {};
uint32_t arrayLayers = {};
VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
VULKAN_HPP_NAMESPACE::ImageTiling tiling = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal;
VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
VULKAN_HPP_NAMESPACE::SharingMode sharingMode = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive;
uint32_t queueFamilyIndexCount = {};
const uint32_t *pQueueFamilyIndices = {};
VULKAN_HPP_NAMESPACE::ImageLayout initialLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageCreateInfo) == sizeof(VkImageCreateInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageCreateInfo>::value,
"ImageCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageCreateInfo>
{
using Type = ImageCreateInfo;
};
struct DeviceImageMemoryRequirements
{
using NativeType = VkDeviceImageMemoryRequirements;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceImageMemoryRequirements;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
DeviceImageMemoryRequirements(const VULKAN_HPP_NAMESPACE::ImageCreateInfo *pCreateInfo_ = {},
VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_ = VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pCreateInfo(pCreateInfo_),
planeAspect(planeAspect_)
{
}
VULKAN_HPP_CONSTEXPR DeviceImageMemoryRequirements(DeviceImageMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceImageMemoryRequirements(VkDeviceImageMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceImageMemoryRequirements(*reinterpret_cast<DeviceImageMemoryRequirements const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceImageMemoryRequirements &operator=(DeviceImageMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceImageMemoryRequirements &operator=(VkDeviceImageMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceImageMemoryRequirements const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceImageMemoryRequirements &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceImageMemoryRequirements &setPCreateInfo(const VULKAN_HPP_NAMESPACE::ImageCreateInfo *pCreateInfo_) VULKAN_HPP_NOEXCEPT
{
pCreateInfo = pCreateInfo_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceImageMemoryRequirements &setPlaneAspect(VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_) VULKAN_HPP_NOEXCEPT
{
planeAspect = planeAspect_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceImageMemoryRequirements const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceImageMemoryRequirements *>(this);
}
explicit operator VkDeviceImageMemoryRequirements &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceImageMemoryRequirements *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
const VULKAN_HPP_NAMESPACE::ImageCreateInfo *const &,
VULKAN_HPP_NAMESPACE::ImageAspectFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pCreateInfo, planeAspect);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceImageMemoryRequirements const &) const = default;
#else
bool operator==(DeviceImageMemoryRequirements const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pCreateInfo == rhs.pCreateInfo) && (planeAspect == rhs.planeAspect);
# endif
}
bool operator!=(DeviceImageMemoryRequirements const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceImageMemoryRequirements;
const void *pNext = {};
const VULKAN_HPP_NAMESPACE::ImageCreateInfo *pCreateInfo = {};
VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect = VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceImageMemoryRequirements) == sizeof(VkDeviceImageMemoryRequirements),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceImageMemoryRequirements>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceImageMemoryRequirements>::value,
"DeviceImageMemoryRequirements is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceImageMemoryRequirements>
{
using Type = DeviceImageMemoryRequirements;
};
using DeviceImageMemoryRequirementsKHR = DeviceImageMemoryRequirements;
struct DeviceMemoryOpaqueCaptureAddressInfo
{
using NativeType = VkDeviceMemoryOpaqueCaptureAddressInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceMemoryOpaqueCaptureAddressInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceMemoryOpaqueCaptureAddressInfo(VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memory(memory_)
{
}
VULKAN_HPP_CONSTEXPR DeviceMemoryOpaqueCaptureAddressInfo(DeviceMemoryOpaqueCaptureAddressInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceMemoryOpaqueCaptureAddressInfo(VkDeviceMemoryOpaqueCaptureAddressInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceMemoryOpaqueCaptureAddressInfo(*reinterpret_cast<DeviceMemoryOpaqueCaptureAddressInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceMemoryOpaqueCaptureAddressInfo &operator=(DeviceMemoryOpaqueCaptureAddressInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceMemoryOpaqueCaptureAddressInfo &operator=(VkDeviceMemoryOpaqueCaptureAddressInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceMemoryOpaqueCaptureAddressInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceMemoryOpaqueCaptureAddressInfo &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceMemoryOpaqueCaptureAddressInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceMemoryOpaqueCaptureAddressInfo *>(this);
}
explicit operator VkDeviceMemoryOpaqueCaptureAddressInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceMemoryOpaqueCaptureAddressInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::DeviceMemory const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memory);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceMemoryOpaqueCaptureAddressInfo const &) const = default;
#else
bool operator==(DeviceMemoryOpaqueCaptureAddressInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memory == rhs.memory);
# endif
}
bool operator!=(DeviceMemoryOpaqueCaptureAddressInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceMemoryOpaqueCaptureAddressInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo) == sizeof(VkDeviceMemoryOpaqueCaptureAddressInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceMemoryOpaqueCaptureAddressInfo>::value,
"DeviceMemoryOpaqueCaptureAddressInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceMemoryOpaqueCaptureAddressInfo>
{
using Type = DeviceMemoryOpaqueCaptureAddressInfo;
};
using DeviceMemoryOpaqueCaptureAddressInfoKHR = DeviceMemoryOpaqueCaptureAddressInfo;
struct DeviceMemoryOverallocationCreateInfoAMD
{
using NativeType = VkDeviceMemoryOverallocationCreateInfoAMD;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceMemoryOverallocationCreateInfoAMD;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceMemoryOverallocationCreateInfoAMD(
VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD overallocationBehavior_ = VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD::eDefault,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
overallocationBehavior(overallocationBehavior_)
{
}
VULKAN_HPP_CONSTEXPR DeviceMemoryOverallocationCreateInfoAMD(DeviceMemoryOverallocationCreateInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceMemoryOverallocationCreateInfoAMD(VkDeviceMemoryOverallocationCreateInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceMemoryOverallocationCreateInfoAMD(*reinterpret_cast<DeviceMemoryOverallocationCreateInfoAMD const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceMemoryOverallocationCreateInfoAMD &operator=(DeviceMemoryOverallocationCreateInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceMemoryOverallocationCreateInfoAMD &operator=(VkDeviceMemoryOverallocationCreateInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceMemoryOverallocationCreateInfoAMD const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceMemoryOverallocationCreateInfoAMD &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceMemoryOverallocationCreateInfoAMD &
setOverallocationBehavior(VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD overallocationBehavior_) VULKAN_HPP_NOEXCEPT
{
overallocationBehavior = overallocationBehavior_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceMemoryOverallocationCreateInfoAMD const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceMemoryOverallocationCreateInfoAMD *>(this);
}
explicit operator VkDeviceMemoryOverallocationCreateInfoAMD &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceMemoryOverallocationCreateInfoAMD *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, overallocationBehavior);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceMemoryOverallocationCreateInfoAMD const &) const = default;
#else
bool operator==(DeviceMemoryOverallocationCreateInfoAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (overallocationBehavior == rhs.overallocationBehavior);
# endif
}
bool operator!=(DeviceMemoryOverallocationCreateInfoAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceMemoryOverallocationCreateInfoAMD;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD overallocationBehavior = VULKAN_HPP_NAMESPACE::MemoryOverallocationBehaviorAMD::eDefault;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceMemoryOverallocationCreateInfoAMD) == sizeof(VkDeviceMemoryOverallocationCreateInfoAMD),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceMemoryOverallocationCreateInfoAMD>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceMemoryOverallocationCreateInfoAMD>::value,
"DeviceMemoryOverallocationCreateInfoAMD is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceMemoryOverallocationCreateInfoAMD>
{
using Type = DeviceMemoryOverallocationCreateInfoAMD;
};
struct DeviceMemoryReportCallbackDataEXT
{
using NativeType = VkDeviceMemoryReportCallbackDataEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceMemoryReportCallbackDataEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceMemoryReportCallbackDataEXT(
VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags_ = {},
VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT type_ = VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT::eAllocate,
uint64_t memoryObjectId_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
VULKAN_HPP_NAMESPACE::ObjectType objectType_ = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown,
uint64_t objectHandle_ = {},
uint32_t heapIndex_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
type(type_),
memoryObjectId(memoryObjectId_),
size(size_),
objectType(objectType_),
objectHandle(objectHandle_),
heapIndex(heapIndex_)
{
}
VULKAN_HPP_CONSTEXPR DeviceMemoryReportCallbackDataEXT(DeviceMemoryReportCallbackDataEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceMemoryReportCallbackDataEXT(VkDeviceMemoryReportCallbackDataEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceMemoryReportCallbackDataEXT(*reinterpret_cast<DeviceMemoryReportCallbackDataEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceMemoryReportCallbackDataEXT &operator=(DeviceMemoryReportCallbackDataEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceMemoryReportCallbackDataEXT &operator=(VkDeviceMemoryReportCallbackDataEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceMemoryReportCallbackDataEXT const *>(&rhs);
return *this;
}
explicit operator VkDeviceMemoryReportCallbackDataEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceMemoryReportCallbackDataEXT *>(this);
}
explicit operator VkDeviceMemoryReportCallbackDataEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceMemoryReportCallbackDataEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT const &,
VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT const &,
uint64_t const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::ObjectType const &,
uint64_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, type, memoryObjectId, size, objectType, objectHandle, heapIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceMemoryReportCallbackDataEXT const &) const = default;
#else
bool operator==(DeviceMemoryReportCallbackDataEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (type == rhs.type) && (memoryObjectId == rhs.memoryObjectId) &&
(size == rhs.size) && (objectType == rhs.objectType) && (objectHandle == rhs.objectHandle) && (heapIndex == rhs.heapIndex);
# endif
}
bool operator!=(DeviceMemoryReportCallbackDataEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceMemoryReportCallbackDataEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceMemoryReportFlagsEXT flags = {};
VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT type = VULKAN_HPP_NAMESPACE::DeviceMemoryReportEventTypeEXT::eAllocate;
uint64_t memoryObjectId = {};
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eUnknown;
uint64_t objectHandle = {};
uint32_t heapIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceMemoryReportCallbackDataEXT) == sizeof(VkDeviceMemoryReportCallbackDataEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceMemoryReportCallbackDataEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceMemoryReportCallbackDataEXT>::value,
"DeviceMemoryReportCallbackDataEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceMemoryReportCallbackDataEXT>
{
using Type = DeviceMemoryReportCallbackDataEXT;
};
struct DevicePrivateDataCreateInfo
{
using NativeType = VkDevicePrivateDataCreateInfo;
static const bool allowDuplicate = true;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDevicePrivateDataCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DevicePrivateDataCreateInfo(uint32_t privateDataSlotRequestCount_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
privateDataSlotRequestCount(privateDataSlotRequestCount_)
{
}
VULKAN_HPP_CONSTEXPR DevicePrivateDataCreateInfo(DevicePrivateDataCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DevicePrivateDataCreateInfo(VkDevicePrivateDataCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: DevicePrivateDataCreateInfo(*reinterpret_cast<DevicePrivateDataCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DevicePrivateDataCreateInfo &operator=(DevicePrivateDataCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
DevicePrivateDataCreateInfo &operator=(VkDevicePrivateDataCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DevicePrivateDataCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DevicePrivateDataCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DevicePrivateDataCreateInfo &setPrivateDataSlotRequestCount(uint32_t privateDataSlotRequestCount_) VULKAN_HPP_NOEXCEPT
{
privateDataSlotRequestCount = privateDataSlotRequestCount_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDevicePrivateDataCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDevicePrivateDataCreateInfo *>(this);
}
explicit operator VkDevicePrivateDataCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDevicePrivateDataCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, privateDataSlotRequestCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DevicePrivateDataCreateInfo const &) const = default;
#else
bool operator==(DevicePrivateDataCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (privateDataSlotRequestCount == rhs.privateDataSlotRequestCount);
# endif
}
bool operator!=(DevicePrivateDataCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDevicePrivateDataCreateInfo;
const void *pNext = {};
uint32_t privateDataSlotRequestCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DevicePrivateDataCreateInfo) == sizeof(VkDevicePrivateDataCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DevicePrivateDataCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DevicePrivateDataCreateInfo>::value,
"DevicePrivateDataCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDevicePrivateDataCreateInfo>
{
using Type = DevicePrivateDataCreateInfo;
};
using DevicePrivateDataCreateInfoEXT = DevicePrivateDataCreateInfo;
struct DeviceQueueGlobalPriorityCreateInfoKHR
{
using NativeType = VkDeviceQueueGlobalPriorityCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceQueueGlobalPriorityCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
DeviceQueueGlobalPriorityCreateInfoKHR(VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR globalPriority_ = VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
globalPriority(globalPriority_)
{
}
VULKAN_HPP_CONSTEXPR DeviceQueueGlobalPriorityCreateInfoKHR(DeviceQueueGlobalPriorityCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceQueueGlobalPriorityCreateInfoKHR(VkDeviceQueueGlobalPriorityCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: DeviceQueueGlobalPriorityCreateInfoKHR(*reinterpret_cast<DeviceQueueGlobalPriorityCreateInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceQueueGlobalPriorityCreateInfoKHR &operator=(DeviceQueueGlobalPriorityCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceQueueGlobalPriorityCreateInfoKHR &operator=(VkDeviceQueueGlobalPriorityCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceQueueGlobalPriorityCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceQueueGlobalPriorityCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceQueueGlobalPriorityCreateInfoKHR &
setGlobalPriority(VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR globalPriority_) VULKAN_HPP_NOEXCEPT
{
globalPriority = globalPriority_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceQueueGlobalPriorityCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceQueueGlobalPriorityCreateInfoKHR *>(this);
}
explicit operator VkDeviceQueueGlobalPriorityCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceQueueGlobalPriorityCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, globalPriority);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceQueueGlobalPriorityCreateInfoKHR const &) const = default;
#else
bool operator==(DeviceQueueGlobalPriorityCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (globalPriority == rhs.globalPriority);
# endif
}
bool operator!=(DeviceQueueGlobalPriorityCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceQueueGlobalPriorityCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR globalPriority = VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceQueueGlobalPriorityCreateInfoKHR) == sizeof(VkDeviceQueueGlobalPriorityCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceQueueGlobalPriorityCreateInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceQueueGlobalPriorityCreateInfoKHR>::value,
"DeviceQueueGlobalPriorityCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceQueueGlobalPriorityCreateInfoKHR>
{
using Type = DeviceQueueGlobalPriorityCreateInfoKHR;
};
using DeviceQueueGlobalPriorityCreateInfoEXT = DeviceQueueGlobalPriorityCreateInfoKHR;
struct DeviceQueueInfo2
{
using NativeType = VkDeviceQueueInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDeviceQueueInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DeviceQueueInfo2(VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_ = {},
uint32_t queueFamilyIndex_ = {},
uint32_t queueIndex_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
queueFamilyIndex(queueFamilyIndex_),
queueIndex(queueIndex_)
{
}
VULKAN_HPP_CONSTEXPR DeviceQueueInfo2(DeviceQueueInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceQueueInfo2(VkDeviceQueueInfo2 const &rhs) VULKAN_HPP_NOEXCEPT : DeviceQueueInfo2(*reinterpret_cast<DeviceQueueInfo2 const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DeviceQueueInfo2 &operator=(DeviceQueueInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
DeviceQueueInfo2 &operator=(VkDeviceQueueInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DeviceQueueInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DeviceQueueInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceQueueInfo2 &setFlags(VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceQueueInfo2 &setQueueFamilyIndex(uint32_t queueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndex = queueFamilyIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DeviceQueueInfo2 &setQueueIndex(uint32_t queueIndex_) VULKAN_HPP_NOEXCEPT
{
queueIndex = queueIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDeviceQueueInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDeviceQueueInfo2 *>(this);
}
explicit operator VkDeviceQueueInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDeviceQueueInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, queueFamilyIndex, queueIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DeviceQueueInfo2 const &) const = default;
#else
bool operator==(DeviceQueueInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (queueFamilyIndex == rhs.queueFamilyIndex) &&
(queueIndex == rhs.queueIndex);
# endif
}
bool operator!=(DeviceQueueInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDeviceQueueInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceQueueCreateFlags flags = {};
uint32_t queueFamilyIndex = {};
uint32_t queueIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DeviceQueueInfo2) == sizeof(VkDeviceQueueInfo2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceQueueInfo2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceQueueInfo2>::value,
"DeviceQueueInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDeviceQueueInfo2>
{
using Type = DeviceQueueInfo2;
};
#if defined(VK_USE_PLATFORM_DIRECTFB_EXT)
struct DirectFBSurfaceCreateInfoEXT
{
using NativeType = VkDirectFBSurfaceCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDirectfbSurfaceCreateInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DirectFBSurfaceCreateInfoEXT(VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateFlagsEXT flags_ = {},
IDirectFB *dfb_ = {},
IDirectFBSurface *surface_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
dfb(dfb_),
surface(surface_)
{
}
VULKAN_HPP_CONSTEXPR DirectFBSurfaceCreateInfoEXT(DirectFBSurfaceCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DirectFBSurfaceCreateInfoEXT(VkDirectFBSurfaceCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DirectFBSurfaceCreateInfoEXT(*reinterpret_cast<DirectFBSurfaceCreateInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DirectFBSurfaceCreateInfoEXT &operator=(DirectFBSurfaceCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DirectFBSurfaceCreateInfoEXT &operator=(VkDirectFBSurfaceCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DirectFBSurfaceCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DirectFBSurfaceCreateInfoEXT &setFlags(VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DirectFBSurfaceCreateInfoEXT &setDfb(IDirectFB *dfb_) VULKAN_HPP_NOEXCEPT
{
dfb = dfb_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DirectFBSurfaceCreateInfoEXT &setSurface(IDirectFBSurface *surface_) VULKAN_HPP_NOEXCEPT
{
surface = surface_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDirectFBSurfaceCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDirectFBSurfaceCreateInfoEXT *>(this);
}
explicit operator VkDirectFBSurfaceCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDirectFBSurfaceCreateInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateFlagsEXT const &,
IDirectFB *const &,
IDirectFBSurface *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, dfb, surface);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DirectFBSurfaceCreateInfoEXT const &) const = default;
# else
bool operator==(DirectFBSurfaceCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (dfb == rhs.dfb) && (surface == rhs.surface);
# endif
}
bool operator!=(DirectFBSurfaceCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDirectfbSurfaceCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateFlagsEXT flags = {};
IDirectFB *dfb = {};
IDirectFBSurface *surface = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateInfoEXT) == sizeof(VkDirectFBSurfaceCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DirectFBSurfaceCreateInfoEXT>::value,
"DirectFBSurfaceCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDirectfbSurfaceCreateInfoEXT>
{
using Type = DirectFBSurfaceCreateInfoEXT;
};
#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
struct DispatchIndirectCommand
{
using NativeType = VkDispatchIndirectCommand;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DispatchIndirectCommand(uint32_t x_ = {}, uint32_t y_ = {}, uint32_t z_ = {}) VULKAN_HPP_NOEXCEPT
: x(x_),
y(y_),
z(z_)
{
}
VULKAN_HPP_CONSTEXPR DispatchIndirectCommand(DispatchIndirectCommand const &rhs) VULKAN_HPP_NOEXCEPT = default;
DispatchIndirectCommand(VkDispatchIndirectCommand const &rhs) VULKAN_HPP_NOEXCEPT
: DispatchIndirectCommand(*reinterpret_cast<DispatchIndirectCommand const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DispatchIndirectCommand &operator=(DispatchIndirectCommand const &rhs) VULKAN_HPP_NOEXCEPT = default;
DispatchIndirectCommand &operator=(VkDispatchIndirectCommand const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DispatchIndirectCommand const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DispatchIndirectCommand &setX(uint32_t x_) VULKAN_HPP_NOEXCEPT
{
x = x_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DispatchIndirectCommand &setY(uint32_t y_) VULKAN_HPP_NOEXCEPT
{
y = y_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DispatchIndirectCommand &setZ(uint32_t z_) VULKAN_HPP_NOEXCEPT
{
z = z_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDispatchIndirectCommand const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDispatchIndirectCommand *>(this);
}
explicit operator VkDispatchIndirectCommand &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDispatchIndirectCommand *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(x, y, z);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DispatchIndirectCommand const &) const = default;
#else
bool operator==(DispatchIndirectCommand const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (x == rhs.x) && (y == rhs.y) && (z == rhs.z);
# endif
}
bool operator!=(DispatchIndirectCommand const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t x = {};
uint32_t y = {};
uint32_t z = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DispatchIndirectCommand) == sizeof(VkDispatchIndirectCommand),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DispatchIndirectCommand>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DispatchIndirectCommand>::value,
"DispatchIndirectCommand is not nothrow_move_constructible!");
struct DisplayEventInfoEXT
{
using NativeType = VkDisplayEventInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayEventInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
DisplayEventInfoEXT(VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT displayEvent_ = VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT::eFirstPixelOut,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
displayEvent(displayEvent_)
{
}
VULKAN_HPP_CONSTEXPR DisplayEventInfoEXT(DisplayEventInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayEventInfoEXT(VkDisplayEventInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT : DisplayEventInfoEXT(*reinterpret_cast<DisplayEventInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayEventInfoEXT &operator=(DisplayEventInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayEventInfoEXT &operator=(VkDisplayEventInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayEventInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DisplayEventInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplayEventInfoEXT &setDisplayEvent(VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT displayEvent_) VULKAN_HPP_NOEXCEPT
{
displayEvent = displayEvent_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDisplayEventInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayEventInfoEXT *>(this);
}
explicit operator VkDisplayEventInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayEventInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, displayEvent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayEventInfoEXT const &) const = default;
#else
bool operator==(DisplayEventInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (displayEvent == rhs.displayEvent);
# endif
}
bool operator!=(DisplayEventInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayEventInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT displayEvent = VULKAN_HPP_NAMESPACE::DisplayEventTypeEXT::eFirstPixelOut;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayEventInfoEXT) == sizeof(VkDisplayEventInfoEXT), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayEventInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayEventInfoEXT>::value,
"DisplayEventInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDisplayEventInfoEXT>
{
using Type = DisplayEventInfoEXT;
};
struct DisplayModeParametersKHR
{
using NativeType = VkDisplayModeParametersKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayModeParametersKHR(VULKAN_HPP_NAMESPACE::Extent2D visibleRegion_ = {}, uint32_t refreshRate_ = {}) VULKAN_HPP_NOEXCEPT
: visibleRegion(visibleRegion_),
refreshRate(refreshRate_)
{
}
VULKAN_HPP_CONSTEXPR DisplayModeParametersKHR(DisplayModeParametersKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayModeParametersKHR(VkDisplayModeParametersKHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayModeParametersKHR(*reinterpret_cast<DisplayModeParametersKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayModeParametersKHR &operator=(DisplayModeParametersKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayModeParametersKHR &operator=(VkDisplayModeParametersKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DisplayModeParametersKHR &setVisibleRegion(VULKAN_HPP_NAMESPACE::Extent2D const &visibleRegion_) VULKAN_HPP_NOEXCEPT
{
visibleRegion = visibleRegion_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplayModeParametersKHR &setRefreshRate(uint32_t refreshRate_) VULKAN_HPP_NOEXCEPT
{
refreshRate = refreshRate_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDisplayModeParametersKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayModeParametersKHR *>(this);
}
explicit operator VkDisplayModeParametersKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayModeParametersKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Extent2D const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(visibleRegion, refreshRate);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayModeParametersKHR const &) const = default;
#else
bool operator==(DisplayModeParametersKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (visibleRegion == rhs.visibleRegion) && (refreshRate == rhs.refreshRate);
# endif
}
bool operator!=(DisplayModeParametersKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Extent2D visibleRegion = {};
uint32_t refreshRate = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR) == sizeof(VkDisplayModeParametersKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR>::value,
"DisplayModeParametersKHR is not nothrow_move_constructible!");
struct DisplayModeCreateInfoKHR
{
using NativeType = VkDisplayModeCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayModeCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayModeCreateInfoKHR(VULKAN_HPP_NAMESPACE::DisplayModeCreateFlagsKHR flags_ = {},
VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR parameters_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
parameters(parameters_)
{
}
VULKAN_HPP_CONSTEXPR DisplayModeCreateInfoKHR(DisplayModeCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayModeCreateInfoKHR(VkDisplayModeCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayModeCreateInfoKHR(*reinterpret_cast<DisplayModeCreateInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayModeCreateInfoKHR &operator=(DisplayModeCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayModeCreateInfoKHR &operator=(VkDisplayModeCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayModeCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DisplayModeCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplayModeCreateInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::DisplayModeCreateFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplayModeCreateInfoKHR &setParameters(VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR const &parameters_) VULKAN_HPP_NOEXCEPT
{
parameters = parameters_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDisplayModeCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayModeCreateInfoKHR *>(this);
}
explicit operator VkDisplayModeCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayModeCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DisplayModeCreateFlagsKHR const &,
VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, parameters);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayModeCreateInfoKHR const &) const = default;
#else
bool operator==(DisplayModeCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (parameters == rhs.parameters);
# endif
}
bool operator!=(DisplayModeCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayModeCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DisplayModeCreateFlagsKHR flags = {};
VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR parameters = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayModeCreateInfoKHR) == sizeof(VkDisplayModeCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayModeCreateInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayModeCreateInfoKHR>::value,
"DisplayModeCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDisplayModeCreateInfoKHR>
{
using Type = DisplayModeCreateInfoKHR;
};
struct DisplayModePropertiesKHR
{
using NativeType = VkDisplayModePropertiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayModePropertiesKHR(VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode_ = {},
VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR parameters_ = {}) VULKAN_HPP_NOEXCEPT
: displayMode(displayMode_),
parameters(parameters_)
{
}
VULKAN_HPP_CONSTEXPR DisplayModePropertiesKHR(DisplayModePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayModePropertiesKHR(VkDisplayModePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayModePropertiesKHR(*reinterpret_cast<DisplayModePropertiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayModePropertiesKHR &operator=(DisplayModePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayModePropertiesKHR &operator=(VkDisplayModePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR const *>(&rhs);
return *this;
}
explicit operator VkDisplayModePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayModePropertiesKHR *>(this);
}
explicit operator VkDisplayModePropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayModePropertiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DisplayModeKHR const &, VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(displayMode, parameters);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayModePropertiesKHR const &) const = default;
#else
bool operator==(DisplayModePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (displayMode == rhs.displayMode) && (parameters == rhs.parameters);
# endif
}
bool operator!=(DisplayModePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode = {};
VULKAN_HPP_NAMESPACE::DisplayModeParametersKHR parameters = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR) == sizeof(VkDisplayModePropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR>::value,
"DisplayModePropertiesKHR is not nothrow_move_constructible!");
struct DisplayModeProperties2KHR
{
using NativeType = VkDisplayModeProperties2KHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayModeProperties2KHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayModeProperties2KHR(VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR displayModeProperties_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
displayModeProperties(displayModeProperties_)
{
}
VULKAN_HPP_CONSTEXPR DisplayModeProperties2KHR(DisplayModeProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayModeProperties2KHR(VkDisplayModeProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayModeProperties2KHR(*reinterpret_cast<DisplayModeProperties2KHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayModeProperties2KHR &operator=(DisplayModeProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayModeProperties2KHR &operator=(VkDisplayModeProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR const *>(&rhs);
return *this;
}
explicit operator VkDisplayModeProperties2KHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayModeProperties2KHR *>(this);
}
explicit operator VkDisplayModeProperties2KHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayModeProperties2KHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, displayModeProperties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayModeProperties2KHR const &) const = default;
#else
bool operator==(DisplayModeProperties2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (displayModeProperties == rhs.displayModeProperties);
# endif
}
bool operator!=(DisplayModeProperties2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayModeProperties2KHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DisplayModePropertiesKHR displayModeProperties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR) == sizeof(VkDisplayModeProperties2KHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayModeProperties2KHR>::value,
"DisplayModeProperties2KHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDisplayModeProperties2KHR>
{
using Type = DisplayModeProperties2KHR;
};
struct DisplayNativeHdrSurfaceCapabilitiesAMD
{
using NativeType = VkDisplayNativeHdrSurfaceCapabilitiesAMD;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayNativeHdrSurfaceCapabilitiesAMD;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayNativeHdrSurfaceCapabilitiesAMD(VULKAN_HPP_NAMESPACE::Bool32 localDimmingSupport_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
localDimmingSupport(localDimmingSupport_)
{
}
VULKAN_HPP_CONSTEXPR DisplayNativeHdrSurfaceCapabilitiesAMD(DisplayNativeHdrSurfaceCapabilitiesAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayNativeHdrSurfaceCapabilitiesAMD(VkDisplayNativeHdrSurfaceCapabilitiesAMD const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayNativeHdrSurfaceCapabilitiesAMD(*reinterpret_cast<DisplayNativeHdrSurfaceCapabilitiesAMD const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayNativeHdrSurfaceCapabilitiesAMD &operator=(DisplayNativeHdrSurfaceCapabilitiesAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayNativeHdrSurfaceCapabilitiesAMD &operator=(VkDisplayNativeHdrSurfaceCapabilitiesAMD const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayNativeHdrSurfaceCapabilitiesAMD const *>(&rhs);
return *this;
}
explicit operator VkDisplayNativeHdrSurfaceCapabilitiesAMD const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayNativeHdrSurfaceCapabilitiesAMD *>(this);
}
explicit operator VkDisplayNativeHdrSurfaceCapabilitiesAMD &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayNativeHdrSurfaceCapabilitiesAMD *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, localDimmingSupport);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayNativeHdrSurfaceCapabilitiesAMD const &) const = default;
#else
bool operator==(DisplayNativeHdrSurfaceCapabilitiesAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (localDimmingSupport == rhs.localDimmingSupport);
# endif
}
bool operator!=(DisplayNativeHdrSurfaceCapabilitiesAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayNativeHdrSurfaceCapabilitiesAMD;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 localDimmingSupport = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayNativeHdrSurfaceCapabilitiesAMD) == sizeof(VkDisplayNativeHdrSurfaceCapabilitiesAMD),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayNativeHdrSurfaceCapabilitiesAMD>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayNativeHdrSurfaceCapabilitiesAMD>::value,
"DisplayNativeHdrSurfaceCapabilitiesAMD is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDisplayNativeHdrSurfaceCapabilitiesAMD>
{
using Type = DisplayNativeHdrSurfaceCapabilitiesAMD;
};
struct DisplayPlaneCapabilitiesKHR
{
using NativeType = VkDisplayPlaneCapabilitiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayPlaneCapabilitiesKHR(VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagsKHR supportedAlpha_ = {},
VULKAN_HPP_NAMESPACE::Offset2D minSrcPosition_ = {},
VULKAN_HPP_NAMESPACE::Offset2D maxSrcPosition_ = {},
VULKAN_HPP_NAMESPACE::Extent2D minSrcExtent_ = {},
VULKAN_HPP_NAMESPACE::Extent2D maxSrcExtent_ = {},
VULKAN_HPP_NAMESPACE::Offset2D minDstPosition_ = {},
VULKAN_HPP_NAMESPACE::Offset2D maxDstPosition_ = {},
VULKAN_HPP_NAMESPACE::Extent2D minDstExtent_ = {},
VULKAN_HPP_NAMESPACE::Extent2D maxDstExtent_ = {}) VULKAN_HPP_NOEXCEPT
: supportedAlpha(supportedAlpha_),
minSrcPosition(minSrcPosition_),
maxSrcPosition(maxSrcPosition_),
minSrcExtent(minSrcExtent_),
maxSrcExtent(maxSrcExtent_),
minDstPosition(minDstPosition_),
maxDstPosition(maxDstPosition_),
minDstExtent(minDstExtent_),
maxDstExtent(maxDstExtent_)
{
}
VULKAN_HPP_CONSTEXPR DisplayPlaneCapabilitiesKHR(DisplayPlaneCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPlaneCapabilitiesKHR(VkDisplayPlaneCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayPlaneCapabilitiesKHR(*reinterpret_cast<DisplayPlaneCapabilitiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayPlaneCapabilitiesKHR &operator=(DisplayPlaneCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPlaneCapabilitiesKHR &operator=(VkDisplayPlaneCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR const *>(&rhs);
return *this;
}
explicit operator VkDisplayPlaneCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayPlaneCapabilitiesKHR *>(this);
}
explicit operator VkDisplayPlaneCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayPlaneCapabilitiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagsKHR const &,
VULKAN_HPP_NAMESPACE::Offset2D const &,
VULKAN_HPP_NAMESPACE::Offset2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Offset2D const &,
VULKAN_HPP_NAMESPACE::Offset2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(supportedAlpha, minSrcPosition, maxSrcPosition, minSrcExtent, maxSrcExtent, minDstPosition, maxDstPosition, minDstExtent, maxDstExtent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayPlaneCapabilitiesKHR const &) const = default;
#else
bool operator==(DisplayPlaneCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (supportedAlpha == rhs.supportedAlpha) && (minSrcPosition == rhs.minSrcPosition) && (maxSrcPosition == rhs.maxSrcPosition) &&
(minSrcExtent == rhs.minSrcExtent) && (maxSrcExtent == rhs.maxSrcExtent) && (minDstPosition == rhs.minDstPosition) &&
(maxDstPosition == rhs.maxDstPosition) && (minDstExtent == rhs.minDstExtent) && (maxDstExtent == rhs.maxDstExtent);
# endif
}
bool operator!=(DisplayPlaneCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagsKHR supportedAlpha = {};
VULKAN_HPP_NAMESPACE::Offset2D minSrcPosition = {};
VULKAN_HPP_NAMESPACE::Offset2D maxSrcPosition = {};
VULKAN_HPP_NAMESPACE::Extent2D minSrcExtent = {};
VULKAN_HPP_NAMESPACE::Extent2D maxSrcExtent = {};
VULKAN_HPP_NAMESPACE::Offset2D minDstPosition = {};
VULKAN_HPP_NAMESPACE::Offset2D maxDstPosition = {};
VULKAN_HPP_NAMESPACE::Extent2D minDstExtent = {};
VULKAN_HPP_NAMESPACE::Extent2D maxDstExtent = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR) == sizeof(VkDisplayPlaneCapabilitiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR>::value,
"DisplayPlaneCapabilitiesKHR is not nothrow_move_constructible!");
struct DisplayPlaneCapabilities2KHR
{
using NativeType = VkDisplayPlaneCapabilities2KHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPlaneCapabilities2KHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayPlaneCapabilities2KHR(VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR capabilities_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
capabilities(capabilities_)
{
}
VULKAN_HPP_CONSTEXPR DisplayPlaneCapabilities2KHR(DisplayPlaneCapabilities2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPlaneCapabilities2KHR(VkDisplayPlaneCapabilities2KHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayPlaneCapabilities2KHR(*reinterpret_cast<DisplayPlaneCapabilities2KHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayPlaneCapabilities2KHR &operator=(DisplayPlaneCapabilities2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPlaneCapabilities2KHR &operator=(VkDisplayPlaneCapabilities2KHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR const *>(&rhs);
return *this;
}
explicit operator VkDisplayPlaneCapabilities2KHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayPlaneCapabilities2KHR *>(this);
}
explicit operator VkDisplayPlaneCapabilities2KHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayPlaneCapabilities2KHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, capabilities);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayPlaneCapabilities2KHR const &) const = default;
#else
bool operator==(DisplayPlaneCapabilities2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (capabilities == rhs.capabilities);
# endif
}
bool operator!=(DisplayPlaneCapabilities2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPlaneCapabilities2KHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilitiesKHR capabilities = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR) == sizeof(VkDisplayPlaneCapabilities2KHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayPlaneCapabilities2KHR>::value,
"DisplayPlaneCapabilities2KHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDisplayPlaneCapabilities2KHR>
{
using Type = DisplayPlaneCapabilities2KHR;
};
struct DisplayPlaneInfo2KHR
{
using NativeType = VkDisplayPlaneInfo2KHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPlaneInfo2KHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
DisplayPlaneInfo2KHR(VULKAN_HPP_NAMESPACE::DisplayModeKHR mode_ = {}, uint32_t planeIndex_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
mode(mode_),
planeIndex(planeIndex_)
{
}
VULKAN_HPP_CONSTEXPR DisplayPlaneInfo2KHR(DisplayPlaneInfo2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPlaneInfo2KHR(VkDisplayPlaneInfo2KHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayPlaneInfo2KHR(*reinterpret_cast<DisplayPlaneInfo2KHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayPlaneInfo2KHR &operator=(DisplayPlaneInfo2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPlaneInfo2KHR &operator=(VkDisplayPlaneInfo2KHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlaneInfo2KHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DisplayPlaneInfo2KHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplayPlaneInfo2KHR &setMode(VULKAN_HPP_NAMESPACE::DisplayModeKHR mode_) VULKAN_HPP_NOEXCEPT
{
mode = mode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplayPlaneInfo2KHR &setPlaneIndex(uint32_t planeIndex_) VULKAN_HPP_NOEXCEPT
{
planeIndex = planeIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDisplayPlaneInfo2KHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayPlaneInfo2KHR *>(this);
}
explicit operator VkDisplayPlaneInfo2KHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayPlaneInfo2KHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::DisplayModeKHR const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, mode, planeIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayPlaneInfo2KHR const &) const = default;
#else
bool operator==(DisplayPlaneInfo2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (mode == rhs.mode) && (planeIndex == rhs.planeIndex);
# endif
}
bool operator!=(DisplayPlaneInfo2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPlaneInfo2KHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DisplayModeKHR mode = {};
uint32_t planeIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayPlaneInfo2KHR) == sizeof(VkDisplayPlaneInfo2KHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayPlaneInfo2KHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayPlaneInfo2KHR>::value,
"DisplayPlaneInfo2KHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDisplayPlaneInfo2KHR>
{
using Type = DisplayPlaneInfo2KHR;
};
struct DisplayPlanePropertiesKHR
{
using NativeType = VkDisplayPlanePropertiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayPlanePropertiesKHR(VULKAN_HPP_NAMESPACE::DisplayKHR currentDisplay_ = {},
uint32_t currentStackIndex_ = {}) VULKAN_HPP_NOEXCEPT
: currentDisplay(currentDisplay_),
currentStackIndex(currentStackIndex_)
{
}
VULKAN_HPP_CONSTEXPR DisplayPlanePropertiesKHR(DisplayPlanePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPlanePropertiesKHR(VkDisplayPlanePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayPlanePropertiesKHR(*reinterpret_cast<DisplayPlanePropertiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayPlanePropertiesKHR &operator=(DisplayPlanePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPlanePropertiesKHR &operator=(VkDisplayPlanePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR const *>(&rhs);
return *this;
}
explicit operator VkDisplayPlanePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayPlanePropertiesKHR *>(this);
}
explicit operator VkDisplayPlanePropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayPlanePropertiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DisplayKHR const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(currentDisplay, currentStackIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayPlanePropertiesKHR const &) const = default;
#else
bool operator==(DisplayPlanePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (currentDisplay == rhs.currentDisplay) && (currentStackIndex == rhs.currentStackIndex);
# endif
}
bool operator!=(DisplayPlanePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DisplayKHR currentDisplay = {};
uint32_t currentStackIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR) == sizeof(VkDisplayPlanePropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR>::value,
"DisplayPlanePropertiesKHR is not nothrow_move_constructible!");
struct DisplayPlaneProperties2KHR
{
using NativeType = VkDisplayPlaneProperties2KHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPlaneProperties2KHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayPlaneProperties2KHR(VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR displayPlaneProperties_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
displayPlaneProperties(displayPlaneProperties_)
{
}
VULKAN_HPP_CONSTEXPR DisplayPlaneProperties2KHR(DisplayPlaneProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPlaneProperties2KHR(VkDisplayPlaneProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayPlaneProperties2KHR(*reinterpret_cast<DisplayPlaneProperties2KHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayPlaneProperties2KHR &operator=(DisplayPlaneProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPlaneProperties2KHR &operator=(VkDisplayPlaneProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR const *>(&rhs);
return *this;
}
explicit operator VkDisplayPlaneProperties2KHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayPlaneProperties2KHR *>(this);
}
explicit operator VkDisplayPlaneProperties2KHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayPlaneProperties2KHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, displayPlaneProperties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayPlaneProperties2KHR const &) const = default;
#else
bool operator==(DisplayPlaneProperties2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (displayPlaneProperties == rhs.displayPlaneProperties);
# endif
}
bool operator!=(DisplayPlaneProperties2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPlaneProperties2KHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DisplayPlanePropertiesKHR displayPlaneProperties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR) == sizeof(VkDisplayPlaneProperties2KHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayPlaneProperties2KHR>::value,
"DisplayPlaneProperties2KHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDisplayPlaneProperties2KHR>
{
using Type = DisplayPlaneProperties2KHR;
};
struct DisplayPowerInfoEXT
{
using NativeType = VkDisplayPowerInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPowerInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayPowerInfoEXT(VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT powerState_ = VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT::eOff,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
powerState(powerState_)
{
}
VULKAN_HPP_CONSTEXPR DisplayPowerInfoEXT(DisplayPowerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPowerInfoEXT(VkDisplayPowerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT : DisplayPowerInfoEXT(*reinterpret_cast<DisplayPowerInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayPowerInfoEXT &operator=(DisplayPowerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPowerInfoEXT &operator=(VkDisplayPowerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPowerInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DisplayPowerInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplayPowerInfoEXT &setPowerState(VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT powerState_) VULKAN_HPP_NOEXCEPT
{
powerState = powerState_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDisplayPowerInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayPowerInfoEXT *>(this);
}
explicit operator VkDisplayPowerInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayPowerInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, powerState);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayPowerInfoEXT const &) const = default;
#else
bool operator==(DisplayPowerInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (powerState == rhs.powerState);
# endif
}
bool operator!=(DisplayPowerInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPowerInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT powerState = VULKAN_HPP_NAMESPACE::DisplayPowerStateEXT::eOff;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayPowerInfoEXT) == sizeof(VkDisplayPowerInfoEXT), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayPowerInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayPowerInfoEXT>::value,
"DisplayPowerInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDisplayPowerInfoEXT>
{
using Type = DisplayPowerInfoEXT;
};
struct DisplayPresentInfoKHR
{
using NativeType = VkDisplayPresentInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayPresentInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayPresentInfoKHR(VULKAN_HPP_NAMESPACE::Rect2D srcRect_ = {},
VULKAN_HPP_NAMESPACE::Rect2D dstRect_ = {},
VULKAN_HPP_NAMESPACE::Bool32 persistent_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcRect(srcRect_),
dstRect(dstRect_),
persistent(persistent_)
{
}
VULKAN_HPP_CONSTEXPR DisplayPresentInfoKHR(DisplayPresentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPresentInfoKHR(VkDisplayPresentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayPresentInfoKHR(*reinterpret_cast<DisplayPresentInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayPresentInfoKHR &operator=(DisplayPresentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPresentInfoKHR &operator=(VkDisplayPresentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPresentInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DisplayPresentInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplayPresentInfoKHR &setSrcRect(VULKAN_HPP_NAMESPACE::Rect2D const &srcRect_) VULKAN_HPP_NOEXCEPT
{
srcRect = srcRect_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplayPresentInfoKHR &setDstRect(VULKAN_HPP_NAMESPACE::Rect2D const &dstRect_) VULKAN_HPP_NOEXCEPT
{
dstRect = dstRect_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplayPresentInfoKHR &setPersistent(VULKAN_HPP_NAMESPACE::Bool32 persistent_) VULKAN_HPP_NOEXCEPT
{
persistent = persistent_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDisplayPresentInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayPresentInfoKHR *>(this);
}
explicit operator VkDisplayPresentInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayPresentInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Rect2D const &,
VULKAN_HPP_NAMESPACE::Rect2D const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcRect, dstRect, persistent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayPresentInfoKHR const &) const = default;
#else
bool operator==(DisplayPresentInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcRect == rhs.srcRect) && (dstRect == rhs.dstRect) && (persistent == rhs.persistent);
# endif
}
bool operator!=(DisplayPresentInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayPresentInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Rect2D srcRect = {};
VULKAN_HPP_NAMESPACE::Rect2D dstRect = {};
VULKAN_HPP_NAMESPACE::Bool32 persistent = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayPresentInfoKHR) == sizeof(VkDisplayPresentInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayPresentInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayPresentInfoKHR>::value,
"DisplayPresentInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDisplayPresentInfoKHR>
{
using Type = DisplayPresentInfoKHR;
};
struct DisplayPropertiesKHR
{
using NativeType = VkDisplayPropertiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayPropertiesKHR(VULKAN_HPP_NAMESPACE::DisplayKHR display_ = {},
const char *displayName_ = {},
VULKAN_HPP_NAMESPACE::Extent2D physicalDimensions_ = {},
VULKAN_HPP_NAMESPACE::Extent2D physicalResolution_ = {},
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms_ = {},
VULKAN_HPP_NAMESPACE::Bool32 planeReorderPossible_ = {},
VULKAN_HPP_NAMESPACE::Bool32 persistentContent_ = {}) VULKAN_HPP_NOEXCEPT
: display(display_),
displayName(displayName_),
physicalDimensions(physicalDimensions_),
physicalResolution(physicalResolution_),
supportedTransforms(supportedTransforms_),
planeReorderPossible(planeReorderPossible_),
persistentContent(persistentContent_)
{
}
VULKAN_HPP_CONSTEXPR DisplayPropertiesKHR(DisplayPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPropertiesKHR(VkDisplayPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayPropertiesKHR(*reinterpret_cast<DisplayPropertiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayPropertiesKHR &operator=(DisplayPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayPropertiesKHR &operator=(VkDisplayPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR const *>(&rhs);
return *this;
}
explicit operator VkDisplayPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayPropertiesKHR *>(this);
}
explicit operator VkDisplayPropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayPropertiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DisplayKHR const &,
const char *const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(display, displayName, physicalDimensions, physicalResolution, supportedTransforms, planeReorderPossible, persistentContent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(DisplayPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = display <=> rhs.display; cmp != 0)
return cmp;
if(displayName != rhs.displayName)
if(auto cmp = strcmp(displayName, rhs.displayName); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
if(auto cmp = physicalDimensions <=> rhs.physicalDimensions; cmp != 0)
return cmp;
if(auto cmp = physicalResolution <=> rhs.physicalResolution; cmp != 0)
return cmp;
if(auto cmp = supportedTransforms <=> rhs.supportedTransforms; cmp != 0)
return cmp;
if(auto cmp = planeReorderPossible <=> rhs.planeReorderPossible; cmp != 0)
return cmp;
if(auto cmp = persistentContent <=> rhs.persistentContent; cmp != 0)
return cmp;
return std::strong_ordering::equivalent;
}
#endif
bool operator==(DisplayPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (display == rhs.display) && ((displayName == rhs.displayName) || (strcmp(displayName, rhs.displayName) == 0)) &&
(physicalDimensions == rhs.physicalDimensions) && (physicalResolution == rhs.physicalResolution) &&
(supportedTransforms == rhs.supportedTransforms) && (planeReorderPossible == rhs.planeReorderPossible) &&
(persistentContent == rhs.persistentContent);
}
bool operator!=(DisplayPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::DisplayKHR display = {};
const char *displayName = {};
VULKAN_HPP_NAMESPACE::Extent2D physicalDimensions = {};
VULKAN_HPP_NAMESPACE::Extent2D physicalResolution = {};
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms = {};
VULKAN_HPP_NAMESPACE::Bool32 planeReorderPossible = {};
VULKAN_HPP_NAMESPACE::Bool32 persistentContent = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR) == sizeof(VkDisplayPropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR>::value,
"DisplayPropertiesKHR is not nothrow_move_constructible!");
struct DisplayProperties2KHR
{
using NativeType = VkDisplayProperties2KHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplayProperties2KHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DisplayProperties2KHR(VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR displayProperties_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
displayProperties(displayProperties_)
{
}
VULKAN_HPP_CONSTEXPR DisplayProperties2KHR(DisplayProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayProperties2KHR(VkDisplayProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplayProperties2KHR(*reinterpret_cast<DisplayProperties2KHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplayProperties2KHR &operator=(DisplayProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplayProperties2KHR &operator=(VkDisplayProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplayProperties2KHR const *>(&rhs);
return *this;
}
explicit operator VkDisplayProperties2KHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplayProperties2KHR *>(this);
}
explicit operator VkDisplayProperties2KHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplayProperties2KHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, displayProperties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplayProperties2KHR const &) const = default;
#else
bool operator==(DisplayProperties2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (displayProperties == rhs.displayProperties);
# endif
}
bool operator!=(DisplayProperties2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplayProperties2KHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DisplayPropertiesKHR displayProperties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplayProperties2KHR) == sizeof(VkDisplayProperties2KHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplayProperties2KHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplayProperties2KHR>::value,
"DisplayProperties2KHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDisplayProperties2KHR>
{
using Type = DisplayProperties2KHR;
};
struct DisplaySurfaceCreateInfoKHR
{
using NativeType = VkDisplaySurfaceCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDisplaySurfaceCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
DisplaySurfaceCreateInfoKHR(VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateFlagsKHR flags_ = {},
VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode_ = {},
uint32_t planeIndex_ = {},
uint32_t planeStackIndex_ = {},
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
float globalAlpha_ = {},
VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR alphaMode_ = VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR::eOpaque,
VULKAN_HPP_NAMESPACE::Extent2D imageExtent_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
displayMode(displayMode_),
planeIndex(planeIndex_),
planeStackIndex(planeStackIndex_),
transform(transform_),
globalAlpha(globalAlpha_),
alphaMode(alphaMode_),
imageExtent(imageExtent_)
{
}
VULKAN_HPP_CONSTEXPR DisplaySurfaceCreateInfoKHR(DisplaySurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplaySurfaceCreateInfoKHR(VkDisplaySurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: DisplaySurfaceCreateInfoKHR(*reinterpret_cast<DisplaySurfaceCreateInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DisplaySurfaceCreateInfoKHR &operator=(DisplaySurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
DisplaySurfaceCreateInfoKHR &operator=(VkDisplaySurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DisplaySurfaceCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplaySurfaceCreateInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplaySurfaceCreateInfoKHR &setDisplayMode(VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode_) VULKAN_HPP_NOEXCEPT
{
displayMode = displayMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplaySurfaceCreateInfoKHR &setPlaneIndex(uint32_t planeIndex_) VULKAN_HPP_NOEXCEPT
{
planeIndex = planeIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplaySurfaceCreateInfoKHR &setPlaneStackIndex(uint32_t planeStackIndex_) VULKAN_HPP_NOEXCEPT
{
planeStackIndex = planeStackIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplaySurfaceCreateInfoKHR &setTransform(VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_) VULKAN_HPP_NOEXCEPT
{
transform = transform_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplaySurfaceCreateInfoKHR &setGlobalAlpha(float globalAlpha_) VULKAN_HPP_NOEXCEPT
{
globalAlpha = globalAlpha_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplaySurfaceCreateInfoKHR &setAlphaMode(VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR alphaMode_) VULKAN_HPP_NOEXCEPT
{
alphaMode = alphaMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DisplaySurfaceCreateInfoKHR &setImageExtent(VULKAN_HPP_NAMESPACE::Extent2D const &imageExtent_) VULKAN_HPP_NOEXCEPT
{
imageExtent = imageExtent_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDisplaySurfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDisplaySurfaceCreateInfoKHR *>(this);
}
explicit operator VkDisplaySurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDisplaySurfaceCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateFlagsKHR const &,
VULKAN_HPP_NAMESPACE::DisplayModeKHR const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR const &,
float const &,
VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR const &,
VULKAN_HPP_NAMESPACE::Extent2D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, displayMode, planeIndex, planeStackIndex, transform, globalAlpha, alphaMode, imageExtent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DisplaySurfaceCreateInfoKHR const &) const = default;
#else
bool operator==(DisplaySurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (displayMode == rhs.displayMode) &&
(planeIndex == rhs.planeIndex) && (planeStackIndex == rhs.planeStackIndex) && (transform == rhs.transform) &&
(globalAlpha == rhs.globalAlpha) && (alphaMode == rhs.alphaMode) && (imageExtent == rhs.imageExtent);
# endif
}
bool operator!=(DisplaySurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDisplaySurfaceCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateFlagsKHR flags = {};
VULKAN_HPP_NAMESPACE::DisplayModeKHR displayMode = {};
uint32_t planeIndex = {};
uint32_t planeStackIndex = {};
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
float globalAlpha = {};
VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR alphaMode = VULKAN_HPP_NAMESPACE::DisplayPlaneAlphaFlagBitsKHR::eOpaque;
VULKAN_HPP_NAMESPACE::Extent2D imageExtent = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateInfoKHR) == sizeof(VkDisplaySurfaceCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DisplaySurfaceCreateInfoKHR>::value,
"DisplaySurfaceCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDisplaySurfaceCreateInfoKHR>
{
using Type = DisplaySurfaceCreateInfoKHR;
};
struct DrawIndexedIndirectCommand
{
using NativeType = VkDrawIndexedIndirectCommand;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DrawIndexedIndirectCommand(uint32_t indexCount_ = {},
uint32_t instanceCount_ = {},
uint32_t firstIndex_ = {},
int32_t vertexOffset_ = {},
uint32_t firstInstance_ = {}) VULKAN_HPP_NOEXCEPT
: indexCount(indexCount_),
instanceCount(instanceCount_),
firstIndex(firstIndex_),
vertexOffset(vertexOffset_),
firstInstance(firstInstance_)
{
}
VULKAN_HPP_CONSTEXPR DrawIndexedIndirectCommand(DrawIndexedIndirectCommand const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrawIndexedIndirectCommand(VkDrawIndexedIndirectCommand const &rhs) VULKAN_HPP_NOEXCEPT
: DrawIndexedIndirectCommand(*reinterpret_cast<DrawIndexedIndirectCommand const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DrawIndexedIndirectCommand &operator=(DrawIndexedIndirectCommand const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrawIndexedIndirectCommand &operator=(VkDrawIndexedIndirectCommand const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrawIndexedIndirectCommand const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DrawIndexedIndirectCommand &setIndexCount(uint32_t indexCount_) VULKAN_HPP_NOEXCEPT
{
indexCount = indexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DrawIndexedIndirectCommand &setInstanceCount(uint32_t instanceCount_) VULKAN_HPP_NOEXCEPT
{
instanceCount = instanceCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DrawIndexedIndirectCommand &setFirstIndex(uint32_t firstIndex_) VULKAN_HPP_NOEXCEPT
{
firstIndex = firstIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DrawIndexedIndirectCommand &setVertexOffset(int32_t vertexOffset_) VULKAN_HPP_NOEXCEPT
{
vertexOffset = vertexOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DrawIndexedIndirectCommand &setFirstInstance(uint32_t firstInstance_) VULKAN_HPP_NOEXCEPT
{
firstInstance = firstInstance_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDrawIndexedIndirectCommand const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDrawIndexedIndirectCommand *>(this);
}
explicit operator VkDrawIndexedIndirectCommand &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDrawIndexedIndirectCommand *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, uint32_t const &, int32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(indexCount, instanceCount, firstIndex, vertexOffset, firstInstance);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DrawIndexedIndirectCommand const &) const = default;
#else
bool operator==(DrawIndexedIndirectCommand const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (indexCount == rhs.indexCount) && (instanceCount == rhs.instanceCount) && (firstIndex == rhs.firstIndex) &&
(vertexOffset == rhs.vertexOffset) && (firstInstance == rhs.firstInstance);
# endif
}
bool operator!=(DrawIndexedIndirectCommand const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t indexCount = {};
uint32_t instanceCount = {};
uint32_t firstIndex = {};
int32_t vertexOffset = {};
uint32_t firstInstance = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DrawIndexedIndirectCommand) == sizeof(VkDrawIndexedIndirectCommand),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DrawIndexedIndirectCommand>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DrawIndexedIndirectCommand>::value,
"DrawIndexedIndirectCommand is not nothrow_move_constructible!");
struct DrawIndirectCommand
{
using NativeType = VkDrawIndirectCommand;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DrawIndirectCommand(uint32_t vertexCount_ = {},
uint32_t instanceCount_ = {},
uint32_t firstVertex_ = {},
uint32_t firstInstance_ = {}) VULKAN_HPP_NOEXCEPT
: vertexCount(vertexCount_),
instanceCount(instanceCount_),
firstVertex(firstVertex_),
firstInstance(firstInstance_)
{
}
VULKAN_HPP_CONSTEXPR DrawIndirectCommand(DrawIndirectCommand const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrawIndirectCommand(VkDrawIndirectCommand const &rhs) VULKAN_HPP_NOEXCEPT : DrawIndirectCommand(*reinterpret_cast<DrawIndirectCommand const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DrawIndirectCommand &operator=(DrawIndirectCommand const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrawIndirectCommand &operator=(VkDrawIndirectCommand const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrawIndirectCommand const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DrawIndirectCommand &setVertexCount(uint32_t vertexCount_) VULKAN_HPP_NOEXCEPT
{
vertexCount = vertexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DrawIndirectCommand &setInstanceCount(uint32_t instanceCount_) VULKAN_HPP_NOEXCEPT
{
instanceCount = instanceCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DrawIndirectCommand &setFirstVertex(uint32_t firstVertex_) VULKAN_HPP_NOEXCEPT
{
firstVertex = firstVertex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DrawIndirectCommand &setFirstInstance(uint32_t firstInstance_) VULKAN_HPP_NOEXCEPT
{
firstInstance = firstInstance_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDrawIndirectCommand const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDrawIndirectCommand *>(this);
}
explicit operator VkDrawIndirectCommand &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDrawIndirectCommand *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(vertexCount, instanceCount, firstVertex, firstInstance);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DrawIndirectCommand const &) const = default;
#else
bool operator==(DrawIndirectCommand const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (vertexCount == rhs.vertexCount) && (instanceCount == rhs.instanceCount) && (firstVertex == rhs.firstVertex) &&
(firstInstance == rhs.firstInstance);
# endif
}
bool operator!=(DrawIndirectCommand const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t vertexCount = {};
uint32_t instanceCount = {};
uint32_t firstVertex = {};
uint32_t firstInstance = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DrawIndirectCommand) == sizeof(VkDrawIndirectCommand), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DrawIndirectCommand>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DrawIndirectCommand>::value,
"DrawIndirectCommand is not nothrow_move_constructible!");
struct DrawMeshTasksIndirectCommandNV
{
using NativeType = VkDrawMeshTasksIndirectCommandNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DrawMeshTasksIndirectCommandNV(uint32_t taskCount_ = {}, uint32_t firstTask_ = {}) VULKAN_HPP_NOEXCEPT
: taskCount(taskCount_),
firstTask(firstTask_)
{
}
VULKAN_HPP_CONSTEXPR DrawMeshTasksIndirectCommandNV(DrawMeshTasksIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrawMeshTasksIndirectCommandNV(VkDrawMeshTasksIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT
: DrawMeshTasksIndirectCommandNV(*reinterpret_cast<DrawMeshTasksIndirectCommandNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DrawMeshTasksIndirectCommandNV &operator=(DrawMeshTasksIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrawMeshTasksIndirectCommandNV &operator=(VkDrawMeshTasksIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrawMeshTasksIndirectCommandNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 DrawMeshTasksIndirectCommandNV &setTaskCount(uint32_t taskCount_) VULKAN_HPP_NOEXCEPT
{
taskCount = taskCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 DrawMeshTasksIndirectCommandNV &setFirstTask(uint32_t firstTask_) VULKAN_HPP_NOEXCEPT
{
firstTask = firstTask_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkDrawMeshTasksIndirectCommandNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDrawMeshTasksIndirectCommandNV *>(this);
}
explicit operator VkDrawMeshTasksIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDrawMeshTasksIndirectCommandNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(taskCount, firstTask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DrawMeshTasksIndirectCommandNV const &) const = default;
#else
bool operator==(DrawMeshTasksIndirectCommandNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (taskCount == rhs.taskCount) && (firstTask == rhs.firstTask);
# endif
}
bool operator!=(DrawMeshTasksIndirectCommandNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t taskCount = {};
uint32_t firstTask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DrawMeshTasksIndirectCommandNV) == sizeof(VkDrawMeshTasksIndirectCommandNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DrawMeshTasksIndirectCommandNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DrawMeshTasksIndirectCommandNV>::value,
"DrawMeshTasksIndirectCommandNV is not nothrow_move_constructible!");
struct DrmFormatModifierProperties2EXT
{
using NativeType = VkDrmFormatModifierProperties2EXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DrmFormatModifierProperties2EXT(uint64_t drmFormatModifier_ = {},
uint32_t drmFormatModifierPlaneCount_ = {},
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 drmFormatModifierTilingFeatures_ = {}) VULKAN_HPP_NOEXCEPT
: drmFormatModifier(drmFormatModifier_),
drmFormatModifierPlaneCount(drmFormatModifierPlaneCount_),
drmFormatModifierTilingFeatures(drmFormatModifierTilingFeatures_)
{
}
VULKAN_HPP_CONSTEXPR DrmFormatModifierProperties2EXT(DrmFormatModifierProperties2EXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrmFormatModifierProperties2EXT(VkDrmFormatModifierProperties2EXT const &rhs) VULKAN_HPP_NOEXCEPT
: DrmFormatModifierProperties2EXT(*reinterpret_cast<DrmFormatModifierProperties2EXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DrmFormatModifierProperties2EXT &operator=(DrmFormatModifierProperties2EXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrmFormatModifierProperties2EXT &operator=(VkDrmFormatModifierProperties2EXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrmFormatModifierProperties2EXT const *>(&rhs);
return *this;
}
explicit operator VkDrmFormatModifierProperties2EXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDrmFormatModifierProperties2EXT *>(this);
}
explicit operator VkDrmFormatModifierProperties2EXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDrmFormatModifierProperties2EXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint64_t const &, uint32_t const &, VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(drmFormatModifier, drmFormatModifierPlaneCount, drmFormatModifierTilingFeatures);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DrmFormatModifierProperties2EXT const &) const = default;
#else
bool operator==(DrmFormatModifierProperties2EXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (drmFormatModifier == rhs.drmFormatModifier) && (drmFormatModifierPlaneCount == rhs.drmFormatModifierPlaneCount) &&
(drmFormatModifierTilingFeatures == rhs.drmFormatModifierTilingFeatures);
# endif
}
bool operator!=(DrmFormatModifierProperties2EXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint64_t drmFormatModifier = {};
uint32_t drmFormatModifierPlaneCount = {};
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 drmFormatModifierTilingFeatures = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DrmFormatModifierProperties2EXT) == sizeof(VkDrmFormatModifierProperties2EXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DrmFormatModifierProperties2EXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DrmFormatModifierProperties2EXT>::value,
"DrmFormatModifierProperties2EXT is not nothrow_move_constructible!");
struct DrmFormatModifierPropertiesEXT
{
using NativeType = VkDrmFormatModifierPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesEXT(uint64_t drmFormatModifier_ = {},
uint32_t drmFormatModifierPlaneCount_ = {},
VULKAN_HPP_NAMESPACE::FormatFeatureFlags drmFormatModifierTilingFeatures_ = {}) VULKAN_HPP_NOEXCEPT
: drmFormatModifier(drmFormatModifier_),
drmFormatModifierPlaneCount(drmFormatModifierPlaneCount_),
drmFormatModifierTilingFeatures(drmFormatModifierTilingFeatures_)
{
}
VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesEXT(DrmFormatModifierPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrmFormatModifierPropertiesEXT(VkDrmFormatModifierPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DrmFormatModifierPropertiesEXT(*reinterpret_cast<DrmFormatModifierPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DrmFormatModifierPropertiesEXT &operator=(DrmFormatModifierPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrmFormatModifierPropertiesEXT &operator=(VkDrmFormatModifierPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkDrmFormatModifierPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDrmFormatModifierPropertiesEXT *>(this);
}
explicit operator VkDrmFormatModifierPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDrmFormatModifierPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint64_t const &, uint32_t const &, VULKAN_HPP_NAMESPACE::FormatFeatureFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(drmFormatModifier, drmFormatModifierPlaneCount, drmFormatModifierTilingFeatures);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DrmFormatModifierPropertiesEXT const &) const = default;
#else
bool operator==(DrmFormatModifierPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (drmFormatModifier == rhs.drmFormatModifier) && (drmFormatModifierPlaneCount == rhs.drmFormatModifierPlaneCount) &&
(drmFormatModifierTilingFeatures == rhs.drmFormatModifierTilingFeatures);
# endif
}
bool operator!=(DrmFormatModifierPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint64_t drmFormatModifier = {};
uint32_t drmFormatModifierPlaneCount = {};
VULKAN_HPP_NAMESPACE::FormatFeatureFlags drmFormatModifierTilingFeatures = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT) == sizeof(VkDrmFormatModifierPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT>::value,
"DrmFormatModifierPropertiesEXT is not nothrow_move_constructible!");
struct DrmFormatModifierPropertiesList2EXT
{
using NativeType = VkDrmFormatModifierPropertiesList2EXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDrmFormatModifierPropertiesList2EXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesList2EXT(uint32_t drmFormatModifierCount_ = {},
VULKAN_HPP_NAMESPACE::DrmFormatModifierProperties2EXT *pDrmFormatModifierProperties_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
drmFormatModifierCount(drmFormatModifierCount_),
pDrmFormatModifierProperties(pDrmFormatModifierProperties_)
{
}
VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesList2EXT(DrmFormatModifierPropertiesList2EXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrmFormatModifierPropertiesList2EXT(VkDrmFormatModifierPropertiesList2EXT const &rhs) VULKAN_HPP_NOEXCEPT
: DrmFormatModifierPropertiesList2EXT(*reinterpret_cast<DrmFormatModifierPropertiesList2EXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DrmFormatModifierPropertiesList2EXT(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::DrmFormatModifierProperties2EXT> const &drmFormatModifierProperties_,
void *pNext_ = nullptr)
: pNext(pNext_)
, drmFormatModifierCount(static_cast<uint32_t>(drmFormatModifierProperties_.size()))
, pDrmFormatModifierProperties(drmFormatModifierProperties_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DrmFormatModifierPropertiesList2EXT &operator=(DrmFormatModifierPropertiesList2EXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrmFormatModifierPropertiesList2EXT &operator=(VkDrmFormatModifierPropertiesList2EXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesList2EXT const *>(&rhs);
return *this;
}
explicit operator VkDrmFormatModifierPropertiesList2EXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDrmFormatModifierPropertiesList2EXT *>(this);
}
explicit operator VkDrmFormatModifierPropertiesList2EXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDrmFormatModifierPropertiesList2EXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &, VULKAN_HPP_NAMESPACE::DrmFormatModifierProperties2EXT *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, drmFormatModifierCount, pDrmFormatModifierProperties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DrmFormatModifierPropertiesList2EXT const &) const = default;
#else
bool operator==(DrmFormatModifierPropertiesList2EXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (drmFormatModifierCount == rhs.drmFormatModifierCount) &&
(pDrmFormatModifierProperties == rhs.pDrmFormatModifierProperties);
# endif
}
bool operator!=(DrmFormatModifierPropertiesList2EXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDrmFormatModifierPropertiesList2EXT;
void *pNext = {};
uint32_t drmFormatModifierCount = {};
VULKAN_HPP_NAMESPACE::DrmFormatModifierProperties2EXT *pDrmFormatModifierProperties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesList2EXT) == sizeof(VkDrmFormatModifierPropertiesList2EXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesList2EXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesList2EXT>::value,
"DrmFormatModifierPropertiesList2EXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDrmFormatModifierPropertiesList2EXT>
{
using Type = DrmFormatModifierPropertiesList2EXT;
};
struct DrmFormatModifierPropertiesListEXT
{
using NativeType = VkDrmFormatModifierPropertiesListEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDrmFormatModifierPropertiesListEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesListEXT(uint32_t drmFormatModifierCount_ = {},
VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT *pDrmFormatModifierProperties_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
drmFormatModifierCount(drmFormatModifierCount_),
pDrmFormatModifierProperties(pDrmFormatModifierProperties_)
{
}
VULKAN_HPP_CONSTEXPR DrmFormatModifierPropertiesListEXT(DrmFormatModifierPropertiesListEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrmFormatModifierPropertiesListEXT(VkDrmFormatModifierPropertiesListEXT const &rhs) VULKAN_HPP_NOEXCEPT
: DrmFormatModifierPropertiesListEXT(*reinterpret_cast<DrmFormatModifierPropertiesListEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
DrmFormatModifierPropertiesListEXT(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT> const &drmFormatModifierProperties_,
void *pNext_ = nullptr)
: pNext(pNext_)
, drmFormatModifierCount(static_cast<uint32_t>(drmFormatModifierProperties_.size()))
, pDrmFormatModifierProperties(drmFormatModifierProperties_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
DrmFormatModifierPropertiesListEXT &operator=(DrmFormatModifierPropertiesListEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
DrmFormatModifierPropertiesListEXT &operator=(VkDrmFormatModifierPropertiesListEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesListEXT const *>(&rhs);
return *this;
}
explicit operator VkDrmFormatModifierPropertiesListEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkDrmFormatModifierPropertiesListEXT *>(this);
}
explicit operator VkDrmFormatModifierPropertiesListEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkDrmFormatModifierPropertiesListEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &, VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, drmFormatModifierCount, pDrmFormatModifierProperties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(DrmFormatModifierPropertiesListEXT const &) const = default;
#else
bool operator==(DrmFormatModifierPropertiesListEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (drmFormatModifierCount == rhs.drmFormatModifierCount) &&
(pDrmFormatModifierProperties == rhs.pDrmFormatModifierProperties);
# endif
}
bool operator!=(DrmFormatModifierPropertiesListEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eDrmFormatModifierPropertiesListEXT;
void *pNext = {};
uint32_t drmFormatModifierCount = {};
VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesEXT *pDrmFormatModifierProperties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesListEXT) == sizeof(VkDrmFormatModifierPropertiesListEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesListEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DrmFormatModifierPropertiesListEXT>::value,
"DrmFormatModifierPropertiesListEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eDrmFormatModifierPropertiesListEXT>
{
using Type = DrmFormatModifierPropertiesListEXT;
};
struct EventCreateInfo
{
using NativeType = VkEventCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eEventCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR EventCreateInfo(VULKAN_HPP_NAMESPACE::EventCreateFlags flags_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR EventCreateInfo(EventCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
EventCreateInfo(VkEventCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT : EventCreateInfo(*reinterpret_cast<EventCreateInfo const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
EventCreateInfo &operator=(EventCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
EventCreateInfo &operator=(VkEventCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::EventCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 EventCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 EventCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::EventCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkEventCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkEventCreateInfo *>(this);
}
explicit operator VkEventCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkEventCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::EventCreateFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(EventCreateInfo const &) const = default;
#else
bool operator==(EventCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags);
# endif
}
bool operator!=(EventCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eEventCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::EventCreateFlags flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::EventCreateInfo) == sizeof(VkEventCreateInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::EventCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::EventCreateInfo>::value,
"EventCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eEventCreateInfo>
{
using Type = EventCreateInfo;
};
struct ExportFenceCreateInfo
{
using NativeType = VkExportFenceCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportFenceCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExportFenceCreateInfo(VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags handleTypes_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleTypes(handleTypes_)
{
}
VULKAN_HPP_CONSTEXPR ExportFenceCreateInfo(ExportFenceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportFenceCreateInfo(VkExportFenceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: ExportFenceCreateInfo(*reinterpret_cast<ExportFenceCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExportFenceCreateInfo &operator=(ExportFenceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportFenceCreateInfo &operator=(VkExportFenceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportFenceCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ExportFenceCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportFenceCreateInfo &setHandleTypes(VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags handleTypes_) VULKAN_HPP_NOEXCEPT
{
handleTypes = handleTypes_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExportFenceCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExportFenceCreateInfo *>(this);
}
explicit operator VkExportFenceCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExportFenceCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleTypes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExportFenceCreateInfo const &) const = default;
#else
bool operator==(ExportFenceCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleTypes == rhs.handleTypes);
# endif
}
bool operator!=(ExportFenceCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportFenceCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags handleTypes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExportFenceCreateInfo) == sizeof(VkExportFenceCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExportFenceCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExportFenceCreateInfo>::value,
"ExportFenceCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExportFenceCreateInfo>
{
using Type = ExportFenceCreateInfo;
};
using ExportFenceCreateInfoKHR = ExportFenceCreateInfo;
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct ExportFenceWin32HandleInfoKHR
{
using NativeType = VkExportFenceWin32HandleInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportFenceWin32HandleInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExportFenceWin32HandleInfoKHR(const SECURITY_ATTRIBUTES *pAttributes_ = {},
DWORD dwAccess_ = {},
LPCWSTR name_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pAttributes(pAttributes_),
dwAccess(dwAccess_),
name(name_)
{
}
VULKAN_HPP_CONSTEXPR ExportFenceWin32HandleInfoKHR(ExportFenceWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportFenceWin32HandleInfoKHR(VkExportFenceWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: ExportFenceWin32HandleInfoKHR(*reinterpret_cast<ExportFenceWin32HandleInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExportFenceWin32HandleInfoKHR &operator=(ExportFenceWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportFenceWin32HandleInfoKHR &operator=(VkExportFenceWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportFenceWin32HandleInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ExportFenceWin32HandleInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportFenceWin32HandleInfoKHR &setPAttributes(const SECURITY_ATTRIBUTES *pAttributes_) VULKAN_HPP_NOEXCEPT
{
pAttributes = pAttributes_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportFenceWin32HandleInfoKHR &setDwAccess(DWORD dwAccess_) VULKAN_HPP_NOEXCEPT
{
dwAccess = dwAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportFenceWin32HandleInfoKHR &setName(LPCWSTR name_) VULKAN_HPP_NOEXCEPT
{
name = name_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExportFenceWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExportFenceWin32HandleInfoKHR *>(this);
}
explicit operator VkExportFenceWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExportFenceWin32HandleInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, const SECURITY_ATTRIBUTES *const &, DWORD const &, LPCWSTR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pAttributes, dwAccess, name);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExportFenceWin32HandleInfoKHR const &) const = default;
# else
bool operator==(ExportFenceWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pAttributes == rhs.pAttributes) && (dwAccess == rhs.dwAccess) && (name == rhs.name);
# endif
}
bool operator!=(ExportFenceWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportFenceWin32HandleInfoKHR;
const void *pNext = {};
const SECURITY_ATTRIBUTES *pAttributes = {};
DWORD dwAccess = {};
LPCWSTR name = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExportFenceWin32HandleInfoKHR) == sizeof(VkExportFenceWin32HandleInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExportFenceWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExportFenceWin32HandleInfoKHR>::value,
"ExportFenceWin32HandleInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExportFenceWin32HandleInfoKHR>
{
using Type = ExportFenceWin32HandleInfoKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
struct ExportMemoryAllocateInfo
{
using NativeType = VkExportMemoryAllocateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportMemoryAllocateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExportMemoryAllocateInfo(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleTypes(handleTypes_)
{
}
VULKAN_HPP_CONSTEXPR ExportMemoryAllocateInfo(ExportMemoryAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportMemoryAllocateInfo(VkExportMemoryAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: ExportMemoryAllocateInfo(*reinterpret_cast<ExportMemoryAllocateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExportMemoryAllocateInfo &operator=(ExportMemoryAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportMemoryAllocateInfo &operator=(VkExportMemoryAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportMemoryAllocateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ExportMemoryAllocateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportMemoryAllocateInfo &setHandleTypes(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_) VULKAN_HPP_NOEXCEPT
{
handleTypes = handleTypes_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExportMemoryAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExportMemoryAllocateInfo *>(this);
}
explicit operator VkExportMemoryAllocateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExportMemoryAllocateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleTypes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExportMemoryAllocateInfo const &) const = default;
#else
bool operator==(ExportMemoryAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleTypes == rhs.handleTypes);
# endif
}
bool operator!=(ExportMemoryAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportMemoryAllocateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExportMemoryAllocateInfo) == sizeof(VkExportMemoryAllocateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExportMemoryAllocateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExportMemoryAllocateInfo>::value,
"ExportMemoryAllocateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExportMemoryAllocateInfo>
{
using Type = ExportMemoryAllocateInfo;
};
using ExportMemoryAllocateInfoKHR = ExportMemoryAllocateInfo;
struct ExportMemoryAllocateInfoNV
{
using NativeType = VkExportMemoryAllocateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportMemoryAllocateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExportMemoryAllocateInfoNV(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleTypes(handleTypes_)
{
}
VULKAN_HPP_CONSTEXPR ExportMemoryAllocateInfoNV(ExportMemoryAllocateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportMemoryAllocateInfoNV(VkExportMemoryAllocateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: ExportMemoryAllocateInfoNV(*reinterpret_cast<ExportMemoryAllocateInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExportMemoryAllocateInfoNV &operator=(ExportMemoryAllocateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportMemoryAllocateInfoNV &operator=(VkExportMemoryAllocateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportMemoryAllocateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ExportMemoryAllocateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportMemoryAllocateInfoNV &
setHandleTypes(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes_) VULKAN_HPP_NOEXCEPT
{
handleTypes = handleTypes_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExportMemoryAllocateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExportMemoryAllocateInfoNV *>(this);
}
explicit operator VkExportMemoryAllocateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExportMemoryAllocateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleTypes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExportMemoryAllocateInfoNV const &) const = default;
#else
bool operator==(ExportMemoryAllocateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleTypes == rhs.handleTypes);
# endif
}
bool operator!=(ExportMemoryAllocateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportMemoryAllocateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExportMemoryAllocateInfoNV) == sizeof(VkExportMemoryAllocateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExportMemoryAllocateInfoNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExportMemoryAllocateInfoNV>::value,
"ExportMemoryAllocateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExportMemoryAllocateInfoNV>
{
using Type = ExportMemoryAllocateInfoNV;
};
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct ExportMemoryWin32HandleInfoKHR
{
using NativeType = VkExportMemoryWin32HandleInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportMemoryWin32HandleInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExportMemoryWin32HandleInfoKHR(const SECURITY_ATTRIBUTES *pAttributes_ = {},
DWORD dwAccess_ = {},
LPCWSTR name_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pAttributes(pAttributes_),
dwAccess(dwAccess_),
name(name_)
{
}
VULKAN_HPP_CONSTEXPR ExportMemoryWin32HandleInfoKHR(ExportMemoryWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportMemoryWin32HandleInfoKHR(VkExportMemoryWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: ExportMemoryWin32HandleInfoKHR(*reinterpret_cast<ExportMemoryWin32HandleInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExportMemoryWin32HandleInfoKHR &operator=(ExportMemoryWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportMemoryWin32HandleInfoKHR &operator=(VkExportMemoryWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportMemoryWin32HandleInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ExportMemoryWin32HandleInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportMemoryWin32HandleInfoKHR &setPAttributes(const SECURITY_ATTRIBUTES *pAttributes_) VULKAN_HPP_NOEXCEPT
{
pAttributes = pAttributes_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportMemoryWin32HandleInfoKHR &setDwAccess(DWORD dwAccess_) VULKAN_HPP_NOEXCEPT
{
dwAccess = dwAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportMemoryWin32HandleInfoKHR &setName(LPCWSTR name_) VULKAN_HPP_NOEXCEPT
{
name = name_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExportMemoryWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExportMemoryWin32HandleInfoKHR *>(this);
}
explicit operator VkExportMemoryWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExportMemoryWin32HandleInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, const SECURITY_ATTRIBUTES *const &, DWORD const &, LPCWSTR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pAttributes, dwAccess, name);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExportMemoryWin32HandleInfoKHR const &) const = default;
# else
bool operator==(ExportMemoryWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pAttributes == rhs.pAttributes) && (dwAccess == rhs.dwAccess) && (name == rhs.name);
# endif
}
bool operator!=(ExportMemoryWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportMemoryWin32HandleInfoKHR;
const void *pNext = {};
const SECURITY_ATTRIBUTES *pAttributes = {};
DWORD dwAccess = {};
LPCWSTR name = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExportMemoryWin32HandleInfoKHR) == sizeof(VkExportMemoryWin32HandleInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExportMemoryWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExportMemoryWin32HandleInfoKHR>::value,
"ExportMemoryWin32HandleInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExportMemoryWin32HandleInfoKHR>
{
using Type = ExportMemoryWin32HandleInfoKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct ExportMemoryWin32HandleInfoNV
{
using NativeType = VkExportMemoryWin32HandleInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportMemoryWin32HandleInfoNV;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
ExportMemoryWin32HandleInfoNV(const SECURITY_ATTRIBUTES *pAttributes_ = {}, DWORD dwAccess_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pAttributes(pAttributes_),
dwAccess(dwAccess_)
{
}
VULKAN_HPP_CONSTEXPR ExportMemoryWin32HandleInfoNV(ExportMemoryWin32HandleInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportMemoryWin32HandleInfoNV(VkExportMemoryWin32HandleInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: ExportMemoryWin32HandleInfoNV(*reinterpret_cast<ExportMemoryWin32HandleInfoNV const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExportMemoryWin32HandleInfoNV &operator=(ExportMemoryWin32HandleInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportMemoryWin32HandleInfoNV &operator=(VkExportMemoryWin32HandleInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportMemoryWin32HandleInfoNV const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ExportMemoryWin32HandleInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportMemoryWin32HandleInfoNV &setPAttributes(const SECURITY_ATTRIBUTES *pAttributes_) VULKAN_HPP_NOEXCEPT
{
pAttributes = pAttributes_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportMemoryWin32HandleInfoNV &setDwAccess(DWORD dwAccess_) VULKAN_HPP_NOEXCEPT
{
dwAccess = dwAccess_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExportMemoryWin32HandleInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExportMemoryWin32HandleInfoNV *>(this);
}
explicit operator VkExportMemoryWin32HandleInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExportMemoryWin32HandleInfoNV *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, const SECURITY_ATTRIBUTES *const &, DWORD const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pAttributes, dwAccess);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExportMemoryWin32HandleInfoNV const &) const = default;
# else
bool operator==(ExportMemoryWin32HandleInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pAttributes == rhs.pAttributes) && (dwAccess == rhs.dwAccess);
# endif
}
bool operator!=(ExportMemoryWin32HandleInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportMemoryWin32HandleInfoNV;
const void *pNext = {};
const SECURITY_ATTRIBUTES *pAttributes = {};
DWORD dwAccess = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExportMemoryWin32HandleInfoNV) == sizeof(VkExportMemoryWin32HandleInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExportMemoryWin32HandleInfoNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExportMemoryWin32HandleInfoNV>::value,
"ExportMemoryWin32HandleInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExportMemoryWin32HandleInfoNV>
{
using Type = ExportMemoryWin32HandleInfoNV;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
struct ExportSemaphoreCreateInfo
{
using NativeType = VkExportSemaphoreCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportSemaphoreCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExportSemaphoreCreateInfo(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags handleTypes_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleTypes(handleTypes_)
{
}
VULKAN_HPP_CONSTEXPR ExportSemaphoreCreateInfo(ExportSemaphoreCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportSemaphoreCreateInfo(VkExportSemaphoreCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: ExportSemaphoreCreateInfo(*reinterpret_cast<ExportSemaphoreCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExportSemaphoreCreateInfo &operator=(ExportSemaphoreCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportSemaphoreCreateInfo &operator=(VkExportSemaphoreCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportSemaphoreCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ExportSemaphoreCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportSemaphoreCreateInfo &
setHandleTypes(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags handleTypes_) VULKAN_HPP_NOEXCEPT
{
handleTypes = handleTypes_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExportSemaphoreCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExportSemaphoreCreateInfo *>(this);
}
explicit operator VkExportSemaphoreCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExportSemaphoreCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleTypes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExportSemaphoreCreateInfo const &) const = default;
#else
bool operator==(ExportSemaphoreCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleTypes == rhs.handleTypes);
# endif
}
bool operator!=(ExportSemaphoreCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportSemaphoreCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags handleTypes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExportSemaphoreCreateInfo) == sizeof(VkExportSemaphoreCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExportSemaphoreCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExportSemaphoreCreateInfo>::value,
"ExportSemaphoreCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExportSemaphoreCreateInfo>
{
using Type = ExportSemaphoreCreateInfo;
};
using ExportSemaphoreCreateInfoKHR = ExportSemaphoreCreateInfo;
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct ExportSemaphoreWin32HandleInfoKHR
{
using NativeType = VkExportSemaphoreWin32HandleInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExportSemaphoreWin32HandleInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExportSemaphoreWin32HandleInfoKHR(const SECURITY_ATTRIBUTES *pAttributes_ = {},
DWORD dwAccess_ = {},
LPCWSTR name_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pAttributes(pAttributes_),
dwAccess(dwAccess_),
name(name_)
{
}
VULKAN_HPP_CONSTEXPR ExportSemaphoreWin32HandleInfoKHR(ExportSemaphoreWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportSemaphoreWin32HandleInfoKHR(VkExportSemaphoreWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: ExportSemaphoreWin32HandleInfoKHR(*reinterpret_cast<ExportSemaphoreWin32HandleInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExportSemaphoreWin32HandleInfoKHR &operator=(ExportSemaphoreWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExportSemaphoreWin32HandleInfoKHR &operator=(VkExportSemaphoreWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExportSemaphoreWin32HandleInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ExportSemaphoreWin32HandleInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportSemaphoreWin32HandleInfoKHR &setPAttributes(const SECURITY_ATTRIBUTES *pAttributes_) VULKAN_HPP_NOEXCEPT
{
pAttributes = pAttributes_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportSemaphoreWin32HandleInfoKHR &setDwAccess(DWORD dwAccess_) VULKAN_HPP_NOEXCEPT
{
dwAccess = dwAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExportSemaphoreWin32HandleInfoKHR &setName(LPCWSTR name_) VULKAN_HPP_NOEXCEPT
{
name = name_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExportSemaphoreWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExportSemaphoreWin32HandleInfoKHR *>(this);
}
explicit operator VkExportSemaphoreWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExportSemaphoreWin32HandleInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, const SECURITY_ATTRIBUTES *const &, DWORD const &, LPCWSTR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pAttributes, dwAccess, name);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExportSemaphoreWin32HandleInfoKHR const &) const = default;
# else
bool operator==(ExportSemaphoreWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pAttributes == rhs.pAttributes) && (dwAccess == rhs.dwAccess) && (name == rhs.name);
# endif
}
bool operator!=(ExportSemaphoreWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExportSemaphoreWin32HandleInfoKHR;
const void *pNext = {};
const SECURITY_ATTRIBUTES *pAttributes = {};
DWORD dwAccess = {};
LPCWSTR name = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExportSemaphoreWin32HandleInfoKHR) == sizeof(VkExportSemaphoreWin32HandleInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExportSemaphoreWin32HandleInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExportSemaphoreWin32HandleInfoKHR>::value,
"ExportSemaphoreWin32HandleInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExportSemaphoreWin32HandleInfoKHR>
{
using Type = ExportSemaphoreWin32HandleInfoKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
struct ExtensionProperties
{
using NativeType = VkExtensionProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 ExtensionProperties(std::array<char, VK_MAX_EXTENSION_NAME_SIZE> const &extensionName_ = {},
uint32_t specVersion_ = {}) VULKAN_HPP_NOEXCEPT
: extensionName(extensionName_),
specVersion(specVersion_)
{
}
VULKAN_HPP_CONSTEXPR_14 ExtensionProperties(ExtensionProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExtensionProperties(VkExtensionProperties const &rhs) VULKAN_HPP_NOEXCEPT : ExtensionProperties(*reinterpret_cast<ExtensionProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExtensionProperties &operator=(ExtensionProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExtensionProperties &operator=(VkExtensionProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExtensionProperties const *>(&rhs);
return *this;
}
explicit operator VkExtensionProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExtensionProperties *>(this);
}
explicit operator VkExtensionProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExtensionProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(extensionName, specVersion);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExtensionProperties const &) const = default;
#else
bool operator==(ExtensionProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (extensionName == rhs.extensionName) && (specVersion == rhs.specVersion);
# endif
}
bool operator!=(ExtensionProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> extensionName = {};
uint32_t specVersion = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExtensionProperties) == sizeof(VkExtensionProperties), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExtensionProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExtensionProperties>::value,
"ExtensionProperties is not nothrow_move_constructible!");
struct ExternalMemoryProperties
{
using NativeType = VkExternalMemoryProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExternalMemoryProperties(VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlags externalMemoryFeatures_ = {},
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags exportFromImportedHandleTypes_ = {},
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags compatibleHandleTypes_ = {}) VULKAN_HPP_NOEXCEPT
: externalMemoryFeatures(externalMemoryFeatures_),
exportFromImportedHandleTypes(exportFromImportedHandleTypes_),
compatibleHandleTypes(compatibleHandleTypes_)
{
}
VULKAN_HPP_CONSTEXPR ExternalMemoryProperties(ExternalMemoryProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalMemoryProperties(VkExternalMemoryProperties const &rhs) VULKAN_HPP_NOEXCEPT
: ExternalMemoryProperties(*reinterpret_cast<ExternalMemoryProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExternalMemoryProperties &operator=(ExternalMemoryProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalMemoryProperties &operator=(VkExternalMemoryProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalMemoryProperties const *>(&rhs);
return *this;
}
explicit operator VkExternalMemoryProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExternalMemoryProperties *>(this);
}
explicit operator VkExternalMemoryProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExternalMemoryProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlags const &,
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags const &,
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(externalMemoryFeatures, exportFromImportedHandleTypes, compatibleHandleTypes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExternalMemoryProperties const &) const = default;
#else
bool operator==(ExternalMemoryProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (externalMemoryFeatures == rhs.externalMemoryFeatures) && (exportFromImportedHandleTypes == rhs.exportFromImportedHandleTypes) &&
(compatibleHandleTypes == rhs.compatibleHandleTypes);
# endif
}
bool operator!=(ExternalMemoryProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlags externalMemoryFeatures = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags exportFromImportedHandleTypes = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags compatibleHandleTypes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExternalMemoryProperties) == sizeof(VkExternalMemoryProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExternalMemoryProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExternalMemoryProperties>::value,
"ExternalMemoryProperties is not nothrow_move_constructible!");
using ExternalMemoryPropertiesKHR = ExternalMemoryProperties;
struct ExternalBufferProperties
{
using NativeType = VkExternalBufferProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalBufferProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExternalBufferProperties(VULKAN_HPP_NAMESPACE::ExternalMemoryProperties externalMemoryProperties_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
externalMemoryProperties(externalMemoryProperties_)
{
}
VULKAN_HPP_CONSTEXPR ExternalBufferProperties(ExternalBufferProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalBufferProperties(VkExternalBufferProperties const &rhs) VULKAN_HPP_NOEXCEPT
: ExternalBufferProperties(*reinterpret_cast<ExternalBufferProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExternalBufferProperties &operator=(ExternalBufferProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalBufferProperties &operator=(VkExternalBufferProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalBufferProperties const *>(&rhs);
return *this;
}
explicit operator VkExternalBufferProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExternalBufferProperties *>(this);
}
explicit operator VkExternalBufferProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExternalBufferProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::ExternalMemoryProperties const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, externalMemoryProperties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExternalBufferProperties const &) const = default;
#else
bool operator==(ExternalBufferProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (externalMemoryProperties == rhs.externalMemoryProperties);
# endif
}
bool operator!=(ExternalBufferProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalBufferProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryProperties externalMemoryProperties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExternalBufferProperties) == sizeof(VkExternalBufferProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExternalBufferProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExternalBufferProperties>::value,
"ExternalBufferProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExternalBufferProperties>
{
using Type = ExternalBufferProperties;
};
using ExternalBufferPropertiesKHR = ExternalBufferProperties;
struct ExternalFenceProperties
{
using NativeType = VkExternalFenceProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalFenceProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExternalFenceProperties(VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags exportFromImportedHandleTypes_ = {},
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags compatibleHandleTypes_ = {},
VULKAN_HPP_NAMESPACE::ExternalFenceFeatureFlags externalFenceFeatures_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
exportFromImportedHandleTypes(exportFromImportedHandleTypes_),
compatibleHandleTypes(compatibleHandleTypes_),
externalFenceFeatures(externalFenceFeatures_)
{
}
VULKAN_HPP_CONSTEXPR ExternalFenceProperties(ExternalFenceProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalFenceProperties(VkExternalFenceProperties const &rhs) VULKAN_HPP_NOEXCEPT
: ExternalFenceProperties(*reinterpret_cast<ExternalFenceProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExternalFenceProperties &operator=(ExternalFenceProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalFenceProperties &operator=(VkExternalFenceProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalFenceProperties const *>(&rhs);
return *this;
}
explicit operator VkExternalFenceProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExternalFenceProperties *>(this);
}
explicit operator VkExternalFenceProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExternalFenceProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags const &,
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags const &,
VULKAN_HPP_NAMESPACE::ExternalFenceFeatureFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, exportFromImportedHandleTypes, compatibleHandleTypes, externalFenceFeatures);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExternalFenceProperties const &) const = default;
#else
bool operator==(ExternalFenceProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (exportFromImportedHandleTypes == rhs.exportFromImportedHandleTypes) &&
(compatibleHandleTypes == rhs.compatibleHandleTypes) && (externalFenceFeatures == rhs.externalFenceFeatures);
# endif
}
bool operator!=(ExternalFenceProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalFenceProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags exportFromImportedHandleTypes = {};
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlags compatibleHandleTypes = {};
VULKAN_HPP_NAMESPACE::ExternalFenceFeatureFlags externalFenceFeatures = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExternalFenceProperties) == sizeof(VkExternalFenceProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExternalFenceProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExternalFenceProperties>::value,
"ExternalFenceProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExternalFenceProperties>
{
using Type = ExternalFenceProperties;
};
using ExternalFencePropertiesKHR = ExternalFenceProperties;
#if defined(VK_USE_PLATFORM_ANDROID_KHR)
struct ExternalFormatANDROID
{
using NativeType = VkExternalFormatANDROID;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalFormatANDROID;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExternalFormatANDROID(uint64_t externalFormat_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
externalFormat(externalFormat_)
{
}
VULKAN_HPP_CONSTEXPR ExternalFormatANDROID(ExternalFormatANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalFormatANDROID(VkExternalFormatANDROID const &rhs) VULKAN_HPP_NOEXCEPT
: ExternalFormatANDROID(*reinterpret_cast<ExternalFormatANDROID const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExternalFormatANDROID &operator=(ExternalFormatANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalFormatANDROID &operator=(VkExternalFormatANDROID const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalFormatANDROID const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ExternalFormatANDROID &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExternalFormatANDROID &setExternalFormat(uint64_t externalFormat_) VULKAN_HPP_NOEXCEPT
{
externalFormat = externalFormat_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExternalFormatANDROID const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExternalFormatANDROID *>(this);
}
explicit operator VkExternalFormatANDROID &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExternalFormatANDROID *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, externalFormat);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExternalFormatANDROID const &) const = default;
# else
bool operator==(ExternalFormatANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (externalFormat == rhs.externalFormat);
# endif
}
bool operator!=(ExternalFormatANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalFormatANDROID;
void *pNext = {};
uint64_t externalFormat = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExternalFormatANDROID) == sizeof(VkExternalFormatANDROID),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExternalFormatANDROID>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExternalFormatANDROID>::value,
"ExternalFormatANDROID is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExternalFormatANDROID>
{
using Type = ExternalFormatANDROID;
};
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
struct ExternalImageFormatProperties
{
using NativeType = VkExternalImageFormatProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalImageFormatProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExternalImageFormatProperties(VULKAN_HPP_NAMESPACE::ExternalMemoryProperties externalMemoryProperties_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
externalMemoryProperties(externalMemoryProperties_)
{
}
VULKAN_HPP_CONSTEXPR ExternalImageFormatProperties(ExternalImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalImageFormatProperties(VkExternalImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT
: ExternalImageFormatProperties(*reinterpret_cast<ExternalImageFormatProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExternalImageFormatProperties &operator=(ExternalImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalImageFormatProperties &operator=(VkExternalImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalImageFormatProperties const *>(&rhs);
return *this;
}
explicit operator VkExternalImageFormatProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExternalImageFormatProperties *>(this);
}
explicit operator VkExternalImageFormatProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExternalImageFormatProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::ExternalMemoryProperties const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, externalMemoryProperties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExternalImageFormatProperties const &) const = default;
#else
bool operator==(ExternalImageFormatProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (externalMemoryProperties == rhs.externalMemoryProperties);
# endif
}
bool operator!=(ExternalImageFormatProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalImageFormatProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryProperties externalMemoryProperties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExternalImageFormatProperties) == sizeof(VkExternalImageFormatProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExternalImageFormatProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExternalImageFormatProperties>::value,
"ExternalImageFormatProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExternalImageFormatProperties>
{
using Type = ExternalImageFormatProperties;
};
using ExternalImageFormatPropertiesKHR = ExternalImageFormatProperties;
struct ImageFormatProperties
{
using NativeType = VkImageFormatProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageFormatProperties(VULKAN_HPP_NAMESPACE::Extent3D maxExtent_ = {},
uint32_t maxMipLevels_ = {},
uint32_t maxArrayLayers_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlags sampleCounts_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize maxResourceSize_ = {}) VULKAN_HPP_NOEXCEPT
: maxExtent(maxExtent_),
maxMipLevels(maxMipLevels_),
maxArrayLayers(maxArrayLayers_),
sampleCounts(sampleCounts_),
maxResourceSize(maxResourceSize_)
{
}
VULKAN_HPP_CONSTEXPR ImageFormatProperties(ImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageFormatProperties(VkImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT
: ImageFormatProperties(*reinterpret_cast<ImageFormatProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageFormatProperties &operator=(ImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageFormatProperties &operator=(VkImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageFormatProperties const *>(&rhs);
return *this;
}
explicit operator VkImageFormatProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageFormatProperties *>(this);
}
explicit operator VkImageFormatProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageFormatProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Extent3D const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(maxExtent, maxMipLevels, maxArrayLayers, sampleCounts, maxResourceSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageFormatProperties const &) const = default;
#else
bool operator==(ImageFormatProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (maxExtent == rhs.maxExtent) && (maxMipLevels == rhs.maxMipLevels) && (maxArrayLayers == rhs.maxArrayLayers) &&
(sampleCounts == rhs.sampleCounts) && (maxResourceSize == rhs.maxResourceSize);
# endif
}
bool operator!=(ImageFormatProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Extent3D maxExtent = {};
uint32_t maxMipLevels = {};
uint32_t maxArrayLayers = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags sampleCounts = {};
VULKAN_HPP_NAMESPACE::DeviceSize maxResourceSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageFormatProperties) == sizeof(VkImageFormatProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageFormatProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageFormatProperties>::value,
"ImageFormatProperties is not nothrow_move_constructible!");
struct ExternalImageFormatPropertiesNV
{
using NativeType = VkExternalImageFormatPropertiesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
ExternalImageFormatPropertiesNV(VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties_ = {},
VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlagsNV externalMemoryFeatures_ = {},
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes_ = {},
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV compatibleHandleTypes_ = {}) VULKAN_HPP_NOEXCEPT
: imageFormatProperties(imageFormatProperties_),
externalMemoryFeatures(externalMemoryFeatures_),
exportFromImportedHandleTypes(exportFromImportedHandleTypes_),
compatibleHandleTypes(compatibleHandleTypes_)
{
}
VULKAN_HPP_CONSTEXPR ExternalImageFormatPropertiesNV(ExternalImageFormatPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalImageFormatPropertiesNV(VkExternalImageFormatPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
: ExternalImageFormatPropertiesNV(*reinterpret_cast<ExternalImageFormatPropertiesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExternalImageFormatPropertiesNV &operator=(ExternalImageFormatPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalImageFormatPropertiesNV &operator=(VkExternalImageFormatPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV const *>(&rhs);
return *this;
}
explicit operator VkExternalImageFormatPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExternalImageFormatPropertiesNV *>(this);
}
explicit operator VkExternalImageFormatPropertiesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExternalImageFormatPropertiesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ImageFormatProperties const &,
VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlagsNV const &,
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV const &,
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(imageFormatProperties, externalMemoryFeatures, exportFromImportedHandleTypes, compatibleHandleTypes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExternalImageFormatPropertiesNV const &) const = default;
#else
bool operator==(ExternalImageFormatPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (imageFormatProperties == rhs.imageFormatProperties) && (externalMemoryFeatures == rhs.externalMemoryFeatures) &&
(exportFromImportedHandleTypes == rhs.exportFromImportedHandleTypes) && (compatibleHandleTypes == rhs.compatibleHandleTypes);
# endif
}
bool operator!=(ExternalImageFormatPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryFeatureFlagsNV externalMemoryFeatures = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV compatibleHandleTypes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV) == sizeof(VkExternalImageFormatPropertiesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExternalImageFormatPropertiesNV>::value,
"ExternalImageFormatPropertiesNV is not nothrow_move_constructible!");
struct ExternalMemoryBufferCreateInfo
{
using NativeType = VkExternalMemoryBufferCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalMemoryBufferCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExternalMemoryBufferCreateInfo(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleTypes(handleTypes_)
{
}
VULKAN_HPP_CONSTEXPR ExternalMemoryBufferCreateInfo(ExternalMemoryBufferCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalMemoryBufferCreateInfo(VkExternalMemoryBufferCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: ExternalMemoryBufferCreateInfo(*reinterpret_cast<ExternalMemoryBufferCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExternalMemoryBufferCreateInfo &operator=(ExternalMemoryBufferCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalMemoryBufferCreateInfo &operator=(VkExternalMemoryBufferCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalMemoryBufferCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ExternalMemoryBufferCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExternalMemoryBufferCreateInfo &
setHandleTypes(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_) VULKAN_HPP_NOEXCEPT
{
handleTypes = handleTypes_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExternalMemoryBufferCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExternalMemoryBufferCreateInfo *>(this);
}
explicit operator VkExternalMemoryBufferCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExternalMemoryBufferCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleTypes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExternalMemoryBufferCreateInfo const &) const = default;
#else
bool operator==(ExternalMemoryBufferCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleTypes == rhs.handleTypes);
# endif
}
bool operator!=(ExternalMemoryBufferCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalMemoryBufferCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExternalMemoryBufferCreateInfo) == sizeof(VkExternalMemoryBufferCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExternalMemoryBufferCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExternalMemoryBufferCreateInfo>::value,
"ExternalMemoryBufferCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExternalMemoryBufferCreateInfo>
{
using Type = ExternalMemoryBufferCreateInfo;
};
using ExternalMemoryBufferCreateInfoKHR = ExternalMemoryBufferCreateInfo;
struct ExternalMemoryImageCreateInfo
{
using NativeType = VkExternalMemoryImageCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalMemoryImageCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExternalMemoryImageCreateInfo(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleTypes(handleTypes_)
{
}
VULKAN_HPP_CONSTEXPR ExternalMemoryImageCreateInfo(ExternalMemoryImageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalMemoryImageCreateInfo(VkExternalMemoryImageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: ExternalMemoryImageCreateInfo(*reinterpret_cast<ExternalMemoryImageCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExternalMemoryImageCreateInfo &operator=(ExternalMemoryImageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalMemoryImageCreateInfo &operator=(VkExternalMemoryImageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalMemoryImageCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ExternalMemoryImageCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExternalMemoryImageCreateInfo &
setHandleTypes(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes_) VULKAN_HPP_NOEXCEPT
{
handleTypes = handleTypes_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExternalMemoryImageCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExternalMemoryImageCreateInfo *>(this);
}
explicit operator VkExternalMemoryImageCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExternalMemoryImageCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleTypes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExternalMemoryImageCreateInfo const &) const = default;
#else
bool operator==(ExternalMemoryImageCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleTypes == rhs.handleTypes);
# endif
}
bool operator!=(ExternalMemoryImageCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalMemoryImageCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlags handleTypes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExternalMemoryImageCreateInfo) == sizeof(VkExternalMemoryImageCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExternalMemoryImageCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExternalMemoryImageCreateInfo>::value,
"ExternalMemoryImageCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExternalMemoryImageCreateInfo>
{
using Type = ExternalMemoryImageCreateInfo;
};
using ExternalMemoryImageCreateInfoKHR = ExternalMemoryImageCreateInfo;
struct ExternalMemoryImageCreateInfoNV
{
using NativeType = VkExternalMemoryImageCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalMemoryImageCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExternalMemoryImageCreateInfoNV(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleTypes(handleTypes_)
{
}
VULKAN_HPP_CONSTEXPR ExternalMemoryImageCreateInfoNV(ExternalMemoryImageCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalMemoryImageCreateInfoNV(VkExternalMemoryImageCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: ExternalMemoryImageCreateInfoNV(*reinterpret_cast<ExternalMemoryImageCreateInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExternalMemoryImageCreateInfoNV &operator=(ExternalMemoryImageCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalMemoryImageCreateInfoNV &operator=(VkExternalMemoryImageCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalMemoryImageCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ExternalMemoryImageCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ExternalMemoryImageCreateInfoNV &
setHandleTypes(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes_) VULKAN_HPP_NOEXCEPT
{
handleTypes = handleTypes_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkExternalMemoryImageCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExternalMemoryImageCreateInfoNV *>(this);
}
explicit operator VkExternalMemoryImageCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExternalMemoryImageCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleTypes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExternalMemoryImageCreateInfoNV const &) const = default;
#else
bool operator==(ExternalMemoryImageCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleTypes == rhs.handleTypes);
# endif
}
bool operator!=(ExternalMemoryImageCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalMemoryImageCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleTypes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExternalMemoryImageCreateInfoNV) == sizeof(VkExternalMemoryImageCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExternalMemoryImageCreateInfoNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExternalMemoryImageCreateInfoNV>::value,
"ExternalMemoryImageCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExternalMemoryImageCreateInfoNV>
{
using Type = ExternalMemoryImageCreateInfoNV;
};
struct ExternalSemaphoreProperties
{
using NativeType = VkExternalSemaphoreProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eExternalSemaphoreProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ExternalSemaphoreProperties(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes_ = {},
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags compatibleHandleTypes_ = {},
VULKAN_HPP_NAMESPACE::ExternalSemaphoreFeatureFlags externalSemaphoreFeatures_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
exportFromImportedHandleTypes(exportFromImportedHandleTypes_),
compatibleHandleTypes(compatibleHandleTypes_),
externalSemaphoreFeatures(externalSemaphoreFeatures_)
{
}
VULKAN_HPP_CONSTEXPR ExternalSemaphoreProperties(ExternalSemaphoreProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalSemaphoreProperties(VkExternalSemaphoreProperties const &rhs) VULKAN_HPP_NOEXCEPT
: ExternalSemaphoreProperties(*reinterpret_cast<ExternalSemaphoreProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ExternalSemaphoreProperties &operator=(ExternalSemaphoreProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
ExternalSemaphoreProperties &operator=(VkExternalSemaphoreProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties const *>(&rhs);
return *this;
}
explicit operator VkExternalSemaphoreProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkExternalSemaphoreProperties *>(this);
}
explicit operator VkExternalSemaphoreProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkExternalSemaphoreProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags const &,
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags const &,
VULKAN_HPP_NAMESPACE::ExternalSemaphoreFeatureFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, exportFromImportedHandleTypes, compatibleHandleTypes, externalSemaphoreFeatures);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ExternalSemaphoreProperties const &) const = default;
#else
bool operator==(ExternalSemaphoreProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (exportFromImportedHandleTypes == rhs.exportFromImportedHandleTypes) &&
(compatibleHandleTypes == rhs.compatibleHandleTypes) && (externalSemaphoreFeatures == rhs.externalSemaphoreFeatures);
# endif
}
bool operator!=(ExternalSemaphoreProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eExternalSemaphoreProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes = {};
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlags compatibleHandleTypes = {};
VULKAN_HPP_NAMESPACE::ExternalSemaphoreFeatureFlags externalSemaphoreFeatures = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties) == sizeof(VkExternalSemaphoreProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ExternalSemaphoreProperties>::value,
"ExternalSemaphoreProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eExternalSemaphoreProperties>
{
using Type = ExternalSemaphoreProperties;
};
using ExternalSemaphorePropertiesKHR = ExternalSemaphoreProperties;
struct FenceCreateInfo
{
using NativeType = VkFenceCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFenceCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR FenceCreateInfo(VULKAN_HPP_NAMESPACE::FenceCreateFlags flags_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR FenceCreateInfo(FenceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
FenceCreateInfo(VkFenceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT : FenceCreateInfo(*reinterpret_cast<FenceCreateInfo const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
FenceCreateInfo &operator=(FenceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
FenceCreateInfo &operator=(VkFenceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FenceCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 FenceCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FenceCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::FenceCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkFenceCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkFenceCreateInfo *>(this);
}
explicit operator VkFenceCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkFenceCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::FenceCreateFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(FenceCreateInfo const &) const = default;
#else
bool operator==(FenceCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags);
# endif
}
bool operator!=(FenceCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFenceCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::FenceCreateFlags flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::FenceCreateInfo) == sizeof(VkFenceCreateInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::FenceCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FenceCreateInfo>::value,
"FenceCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eFenceCreateInfo>
{
using Type = FenceCreateInfo;
};
struct FenceGetFdInfoKHR
{
using NativeType = VkFenceGetFdInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFenceGetFdInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
FenceGetFdInfoKHR(VULKAN_HPP_NAMESPACE::Fence fence_ = {},
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fence(fence_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR FenceGetFdInfoKHR(FenceGetFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
FenceGetFdInfoKHR(VkFenceGetFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT : FenceGetFdInfoKHR(*reinterpret_cast<FenceGetFdInfoKHR const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
FenceGetFdInfoKHR &operator=(FenceGetFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
FenceGetFdInfoKHR &operator=(VkFenceGetFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FenceGetFdInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 FenceGetFdInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FenceGetFdInfoKHR &setFence(VULKAN_HPP_NAMESPACE::Fence fence_) VULKAN_HPP_NOEXCEPT
{
fence = fence_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FenceGetFdInfoKHR &setHandleType(VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkFenceGetFdInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkFenceGetFdInfoKHR *>(this);
}
explicit operator VkFenceGetFdInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkFenceGetFdInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Fence const &,
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fence, handleType);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(FenceGetFdInfoKHR const &) const = default;
#else
bool operator==(FenceGetFdInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fence == rhs.fence) && (handleType == rhs.handleType);
# endif
}
bool operator!=(FenceGetFdInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFenceGetFdInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Fence fence = {};
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::FenceGetFdInfoKHR) == sizeof(VkFenceGetFdInfoKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::FenceGetFdInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FenceGetFdInfoKHR>::value,
"FenceGetFdInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eFenceGetFdInfoKHR>
{
using Type = FenceGetFdInfoKHR;
};
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct FenceGetWin32HandleInfoKHR
{
using NativeType = VkFenceGetWin32HandleInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFenceGetWin32HandleInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR FenceGetWin32HandleInfoKHR(
VULKAN_HPP_NAMESPACE::Fence fence_ = {},
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fence(fence_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR FenceGetWin32HandleInfoKHR(FenceGetWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
FenceGetWin32HandleInfoKHR(VkFenceGetWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: FenceGetWin32HandleInfoKHR(*reinterpret_cast<FenceGetWin32HandleInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
FenceGetWin32HandleInfoKHR &operator=(FenceGetWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
FenceGetWin32HandleInfoKHR &operator=(VkFenceGetWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FenceGetWin32HandleInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 FenceGetWin32HandleInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FenceGetWin32HandleInfoKHR &setFence(VULKAN_HPP_NAMESPACE::Fence fence_) VULKAN_HPP_NOEXCEPT
{
fence = fence_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FenceGetWin32HandleInfoKHR &setHandleType(VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkFenceGetWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkFenceGetWin32HandleInfoKHR *>(this);
}
explicit operator VkFenceGetWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkFenceGetWin32HandleInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Fence const &,
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fence, handleType);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(FenceGetWin32HandleInfoKHR const &) const = default;
# else
bool operator==(FenceGetWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fence == rhs.fence) && (handleType == rhs.handleType);
# endif
}
bool operator!=(FenceGetWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFenceGetWin32HandleInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Fence fence = {};
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::FenceGetWin32HandleInfoKHR) == sizeof(VkFenceGetWin32HandleInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::FenceGetWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FenceGetWin32HandleInfoKHR>::value,
"FenceGetWin32HandleInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eFenceGetWin32HandleInfoKHR>
{
using Type = FenceGetWin32HandleInfoKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
struct FilterCubicImageViewImageFormatPropertiesEXT
{
using NativeType = VkFilterCubicImageViewImageFormatPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFilterCubicImageViewImageFormatPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR FilterCubicImageViewImageFormatPropertiesEXT(VULKAN_HPP_NAMESPACE::Bool32 filterCubic_ = {},
VULKAN_HPP_NAMESPACE::Bool32 filterCubicMinmax_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
filterCubic(filterCubic_),
filterCubicMinmax(filterCubicMinmax_)
{
}
VULKAN_HPP_CONSTEXPR FilterCubicImageViewImageFormatPropertiesEXT(FilterCubicImageViewImageFormatPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
FilterCubicImageViewImageFormatPropertiesEXT(VkFilterCubicImageViewImageFormatPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: FilterCubicImageViewImageFormatPropertiesEXT(*reinterpret_cast<FilterCubicImageViewImageFormatPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
FilterCubicImageViewImageFormatPropertiesEXT &operator=(FilterCubicImageViewImageFormatPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
FilterCubicImageViewImageFormatPropertiesEXT &operator=(VkFilterCubicImageViewImageFormatPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FilterCubicImageViewImageFormatPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkFilterCubicImageViewImageFormatPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkFilterCubicImageViewImageFormatPropertiesEXT *>(this);
}
explicit operator VkFilterCubicImageViewImageFormatPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkFilterCubicImageViewImageFormatPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, filterCubic, filterCubicMinmax);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(FilterCubicImageViewImageFormatPropertiesEXT const &) const = default;
#else
bool operator==(FilterCubicImageViewImageFormatPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (filterCubic == rhs.filterCubic) && (filterCubicMinmax == rhs.filterCubicMinmax);
# endif
}
bool operator!=(FilterCubicImageViewImageFormatPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFilterCubicImageViewImageFormatPropertiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 filterCubic = {};
VULKAN_HPP_NAMESPACE::Bool32 filterCubicMinmax = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::FilterCubicImageViewImageFormatPropertiesEXT) ==
sizeof(VkFilterCubicImageViewImageFormatPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::FilterCubicImageViewImageFormatPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FilterCubicImageViewImageFormatPropertiesEXT>::value,
"FilterCubicImageViewImageFormatPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eFilterCubicImageViewImageFormatPropertiesEXT>
{
using Type = FilterCubicImageViewImageFormatPropertiesEXT;
};
struct FormatProperties
{
using NativeType = VkFormatProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR FormatProperties(VULKAN_HPP_NAMESPACE::FormatFeatureFlags linearTilingFeatures_ = {},
VULKAN_HPP_NAMESPACE::FormatFeatureFlags optimalTilingFeatures_ = {},
VULKAN_HPP_NAMESPACE::FormatFeatureFlags bufferFeatures_ = {}) VULKAN_HPP_NOEXCEPT
: linearTilingFeatures(linearTilingFeatures_),
optimalTilingFeatures(optimalTilingFeatures_),
bufferFeatures(bufferFeatures_)
{
}
VULKAN_HPP_CONSTEXPR FormatProperties(FormatProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
FormatProperties(VkFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT : FormatProperties(*reinterpret_cast<FormatProperties const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
FormatProperties &operator=(FormatProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
FormatProperties &operator=(VkFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FormatProperties const *>(&rhs);
return *this;
}
explicit operator VkFormatProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkFormatProperties *>(this);
}
explicit operator VkFormatProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkFormatProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::FormatFeatureFlags const &,
VULKAN_HPP_NAMESPACE::FormatFeatureFlags const &,
VULKAN_HPP_NAMESPACE::FormatFeatureFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(linearTilingFeatures, optimalTilingFeatures, bufferFeatures);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(FormatProperties const &) const = default;
#else
bool operator==(FormatProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (linearTilingFeatures == rhs.linearTilingFeatures) && (optimalTilingFeatures == rhs.optimalTilingFeatures) &&
(bufferFeatures == rhs.bufferFeatures);
# endif
}
bool operator!=(FormatProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::FormatFeatureFlags linearTilingFeatures = {};
VULKAN_HPP_NAMESPACE::FormatFeatureFlags optimalTilingFeatures = {};
VULKAN_HPP_NAMESPACE::FormatFeatureFlags bufferFeatures = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::FormatProperties) == sizeof(VkFormatProperties), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::FormatProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FormatProperties>::value,
"FormatProperties is not nothrow_move_constructible!");
struct FormatProperties2
{
using NativeType = VkFormatProperties2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFormatProperties2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR FormatProperties2(VULKAN_HPP_NAMESPACE::FormatProperties formatProperties_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
formatProperties(formatProperties_)
{
}
VULKAN_HPP_CONSTEXPR FormatProperties2(FormatProperties2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
FormatProperties2(VkFormatProperties2 const &rhs) VULKAN_HPP_NOEXCEPT : FormatProperties2(*reinterpret_cast<FormatProperties2 const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
FormatProperties2 &operator=(FormatProperties2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
FormatProperties2 &operator=(VkFormatProperties2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FormatProperties2 const *>(&rhs);
return *this;
}
explicit operator VkFormatProperties2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkFormatProperties2 *>(this);
}
explicit operator VkFormatProperties2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkFormatProperties2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::FormatProperties const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, formatProperties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(FormatProperties2 const &) const = default;
#else
bool operator==(FormatProperties2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (formatProperties == rhs.formatProperties);
# endif
}
bool operator!=(FormatProperties2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFormatProperties2;
void *pNext = {};
VULKAN_HPP_NAMESPACE::FormatProperties formatProperties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::FormatProperties2) == sizeof(VkFormatProperties2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::FormatProperties2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FormatProperties2>::value,
"FormatProperties2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eFormatProperties2>
{
using Type = FormatProperties2;
};
using FormatProperties2KHR = FormatProperties2;
struct FormatProperties3
{
using NativeType = VkFormatProperties3;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFormatProperties3;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR FormatProperties3(VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 linearTilingFeatures_ = {},
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 optimalTilingFeatures_ = {},
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 bufferFeatures_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
linearTilingFeatures(linearTilingFeatures_),
optimalTilingFeatures(optimalTilingFeatures_),
bufferFeatures(bufferFeatures_)
{
}
VULKAN_HPP_CONSTEXPR FormatProperties3(FormatProperties3 const &rhs) VULKAN_HPP_NOEXCEPT = default;
FormatProperties3(VkFormatProperties3 const &rhs) VULKAN_HPP_NOEXCEPT : FormatProperties3(*reinterpret_cast<FormatProperties3 const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
FormatProperties3 &operator=(FormatProperties3 const &rhs) VULKAN_HPP_NOEXCEPT = default;
FormatProperties3 &operator=(VkFormatProperties3 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FormatProperties3 const *>(&rhs);
return *this;
}
explicit operator VkFormatProperties3 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkFormatProperties3 *>(this);
}
explicit operator VkFormatProperties3 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkFormatProperties3 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 const &,
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 const &,
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, linearTilingFeatures, optimalTilingFeatures, bufferFeatures);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(FormatProperties3 const &) const = default;
#else
bool operator==(FormatProperties3 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (linearTilingFeatures == rhs.linearTilingFeatures) &&
(optimalTilingFeatures == rhs.optimalTilingFeatures) && (bufferFeatures == rhs.bufferFeatures);
# endif
}
bool operator!=(FormatProperties3 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFormatProperties3;
void *pNext = {};
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 linearTilingFeatures = {};
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 optimalTilingFeatures = {};
VULKAN_HPP_NAMESPACE::FormatFeatureFlags2 bufferFeatures = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::FormatProperties3) == sizeof(VkFormatProperties3), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::FormatProperties3>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FormatProperties3>::value,
"FormatProperties3 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eFormatProperties3>
{
using Type = FormatProperties3;
};
using FormatProperties3KHR = FormatProperties3;
struct FragmentShadingRateAttachmentInfoKHR
{
using NativeType = VkFragmentShadingRateAttachmentInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFragmentShadingRateAttachmentInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR FragmentShadingRateAttachmentInfoKHR(const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pFragmentShadingRateAttachment_ = {},
VULKAN_HPP_NAMESPACE::Extent2D shadingRateAttachmentTexelSize_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pFragmentShadingRateAttachment(pFragmentShadingRateAttachment_),
shadingRateAttachmentTexelSize(shadingRateAttachmentTexelSize_)
{
}
VULKAN_HPP_CONSTEXPR FragmentShadingRateAttachmentInfoKHR(FragmentShadingRateAttachmentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
FragmentShadingRateAttachmentInfoKHR(VkFragmentShadingRateAttachmentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: FragmentShadingRateAttachmentInfoKHR(*reinterpret_cast<FragmentShadingRateAttachmentInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
FragmentShadingRateAttachmentInfoKHR &operator=(FragmentShadingRateAttachmentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
FragmentShadingRateAttachmentInfoKHR &operator=(VkFragmentShadingRateAttachmentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FragmentShadingRateAttachmentInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 FragmentShadingRateAttachmentInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FragmentShadingRateAttachmentInfoKHR &
setPFragmentShadingRateAttachment(const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pFragmentShadingRateAttachment_) VULKAN_HPP_NOEXCEPT
{
pFragmentShadingRateAttachment = pFragmentShadingRateAttachment_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FragmentShadingRateAttachmentInfoKHR &
setShadingRateAttachmentTexelSize(VULKAN_HPP_NAMESPACE::Extent2D const &shadingRateAttachmentTexelSize_) VULKAN_HPP_NOEXCEPT
{
shadingRateAttachmentTexelSize = shadingRateAttachmentTexelSize_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkFragmentShadingRateAttachmentInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkFragmentShadingRateAttachmentInfoKHR *>(this);
}
explicit operator VkFragmentShadingRateAttachmentInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkFragmentShadingRateAttachmentInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *const &,
VULKAN_HPP_NAMESPACE::Extent2D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pFragmentShadingRateAttachment, shadingRateAttachmentTexelSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(FragmentShadingRateAttachmentInfoKHR const &) const = default;
#else
bool operator==(FragmentShadingRateAttachmentInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pFragmentShadingRateAttachment == rhs.pFragmentShadingRateAttachment) &&
(shadingRateAttachmentTexelSize == rhs.shadingRateAttachmentTexelSize);
# endif
}
bool operator!=(FragmentShadingRateAttachmentInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFragmentShadingRateAttachmentInfoKHR;
const void *pNext = {};
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pFragmentShadingRateAttachment = {};
VULKAN_HPP_NAMESPACE::Extent2D shadingRateAttachmentTexelSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::FragmentShadingRateAttachmentInfoKHR) == sizeof(VkFragmentShadingRateAttachmentInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::FragmentShadingRateAttachmentInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FragmentShadingRateAttachmentInfoKHR>::value,
"FragmentShadingRateAttachmentInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eFragmentShadingRateAttachmentInfoKHR>
{
using Type = FragmentShadingRateAttachmentInfoKHR;
};
struct FramebufferAttachmentImageInfo
{
using NativeType = VkFramebufferAttachmentImageInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFramebufferAttachmentImageInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR FramebufferAttachmentImageInfo(VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {},
uint32_t width_ = {},
uint32_t height_ = {},
uint32_t layerCount_ = {},
uint32_t viewFormatCount_ = {},
const VULKAN_HPP_NAMESPACE::Format *pViewFormats_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
usage(usage_),
width(width_),
height(height_),
layerCount(layerCount_),
viewFormatCount(viewFormatCount_),
pViewFormats(pViewFormats_)
{
}
VULKAN_HPP_CONSTEXPR FramebufferAttachmentImageInfo(FramebufferAttachmentImageInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
FramebufferAttachmentImageInfo(VkFramebufferAttachmentImageInfo const &rhs) VULKAN_HPP_NOEXCEPT
: FramebufferAttachmentImageInfo(*reinterpret_cast<FramebufferAttachmentImageInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
FramebufferAttachmentImageInfo(VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_,
uint32_t width_,
uint32_t height_,
uint32_t layerCount_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const &viewFormats_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, usage(usage_)
, width(width_)
, height(height_)
, layerCount(layerCount_)
, viewFormatCount(static_cast<uint32_t>(viewFormats_.size()))
, pViewFormats(viewFormats_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
FramebufferAttachmentImageInfo &operator=(FramebufferAttachmentImageInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
FramebufferAttachmentImageInfo &operator=(VkFramebufferAttachmentImageInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentImageInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentImageInfo &setFlags(VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentImageInfo &setUsage(VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_) VULKAN_HPP_NOEXCEPT
{
usage = usage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentImageInfo &setWidth(uint32_t width_) VULKAN_HPP_NOEXCEPT
{
width = width_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentImageInfo &setHeight(uint32_t height_) VULKAN_HPP_NOEXCEPT
{
height = height_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentImageInfo &setLayerCount(uint32_t layerCount_) VULKAN_HPP_NOEXCEPT
{
layerCount = layerCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentImageInfo &setViewFormatCount(uint32_t viewFormatCount_) VULKAN_HPP_NOEXCEPT
{
viewFormatCount = viewFormatCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentImageInfo &setPViewFormats(const VULKAN_HPP_NAMESPACE::Format *pViewFormats_) VULKAN_HPP_NOEXCEPT
{
pViewFormats = pViewFormats_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
FramebufferAttachmentImageInfo &
setViewFormats(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const &viewFormats_) VULKAN_HPP_NOEXCEPT
{
viewFormatCount = static_cast<uint32_t>(viewFormats_.size());
pViewFormats = viewFormats_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkFramebufferAttachmentImageInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkFramebufferAttachmentImageInfo *>(this);
}
explicit operator VkFramebufferAttachmentImageInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkFramebufferAttachmentImageInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ImageCreateFlags const &,
VULKAN_HPP_NAMESPACE::ImageUsageFlags const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Format *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, usage, width, height, layerCount, viewFormatCount, pViewFormats);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(FramebufferAttachmentImageInfo const &) const = default;
#else
bool operator==(FramebufferAttachmentImageInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (usage == rhs.usage) && (width == rhs.width) &&
(height == rhs.height) && (layerCount == rhs.layerCount) && (viewFormatCount == rhs.viewFormatCount) && (pViewFormats == rhs.pViewFormats);
# endif
}
bool operator!=(FramebufferAttachmentImageInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFramebufferAttachmentImageInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
uint32_t width = {};
uint32_t height = {};
uint32_t layerCount = {};
uint32_t viewFormatCount = {};
const VULKAN_HPP_NAMESPACE::Format *pViewFormats = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo) == sizeof(VkFramebufferAttachmentImageInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo>::value,
"FramebufferAttachmentImageInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eFramebufferAttachmentImageInfo>
{
using Type = FramebufferAttachmentImageInfo;
};
using FramebufferAttachmentImageInfoKHR = FramebufferAttachmentImageInfo;
struct FramebufferAttachmentsCreateInfo
{
using NativeType = VkFramebufferAttachmentsCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFramebufferAttachmentsCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR FramebufferAttachmentsCreateInfo(uint32_t attachmentImageInfoCount_ = {},
const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo *pAttachmentImageInfos_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
attachmentImageInfoCount(attachmentImageInfoCount_),
pAttachmentImageInfos(pAttachmentImageInfos_)
{
}
VULKAN_HPP_CONSTEXPR FramebufferAttachmentsCreateInfo(FramebufferAttachmentsCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
FramebufferAttachmentsCreateInfo(VkFramebufferAttachmentsCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: FramebufferAttachmentsCreateInfo(*reinterpret_cast<FramebufferAttachmentsCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
FramebufferAttachmentsCreateInfo(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo> const &attachmentImageInfos_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, attachmentImageInfoCount(static_cast<uint32_t>(attachmentImageInfos_.size()))
, pAttachmentImageInfos(attachmentImageInfos_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
FramebufferAttachmentsCreateInfo &operator=(FramebufferAttachmentsCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
FramebufferAttachmentsCreateInfo &operator=(VkFramebufferAttachmentsCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FramebufferAttachmentsCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentsCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentsCreateInfo &setAttachmentImageInfoCount(uint32_t attachmentImageInfoCount_) VULKAN_HPP_NOEXCEPT
{
attachmentImageInfoCount = attachmentImageInfoCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferAttachmentsCreateInfo &
setPAttachmentImageInfos(const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo *pAttachmentImageInfos_) VULKAN_HPP_NOEXCEPT
{
pAttachmentImageInfos = pAttachmentImageInfos_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
FramebufferAttachmentsCreateInfo &setAttachmentImageInfos(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo> const &attachmentImageInfos_)
VULKAN_HPP_NOEXCEPT
{
attachmentImageInfoCount = static_cast<uint32_t>(attachmentImageInfos_.size());
pAttachmentImageInfos = attachmentImageInfos_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkFramebufferAttachmentsCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkFramebufferAttachmentsCreateInfo *>(this);
}
explicit operator VkFramebufferAttachmentsCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkFramebufferAttachmentsCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, attachmentImageInfoCount, pAttachmentImageInfos);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(FramebufferAttachmentsCreateInfo const &) const = default;
#else
bool operator==(FramebufferAttachmentsCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (attachmentImageInfoCount == rhs.attachmentImageInfoCount) &&
(pAttachmentImageInfos == rhs.pAttachmentImageInfos);
# endif
}
bool operator!=(FramebufferAttachmentsCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFramebufferAttachmentsCreateInfo;
const void *pNext = {};
uint32_t attachmentImageInfoCount = {};
const VULKAN_HPP_NAMESPACE::FramebufferAttachmentImageInfo *pAttachmentImageInfos = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::FramebufferAttachmentsCreateInfo) == sizeof(VkFramebufferAttachmentsCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::FramebufferAttachmentsCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FramebufferAttachmentsCreateInfo>::value,
"FramebufferAttachmentsCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eFramebufferAttachmentsCreateInfo>
{
using Type = FramebufferAttachmentsCreateInfo;
};
using FramebufferAttachmentsCreateInfoKHR = FramebufferAttachmentsCreateInfo;
struct FramebufferCreateInfo
{
using NativeType = VkFramebufferCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFramebufferCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR FramebufferCreateInfo(VULKAN_HPP_NAMESPACE::FramebufferCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {},
uint32_t attachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::ImageView *pAttachments_ = {},
uint32_t width_ = {},
uint32_t height_ = {},
uint32_t layers_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
renderPass(renderPass_),
attachmentCount(attachmentCount_),
pAttachments(pAttachments_),
width(width_),
height(height_),
layers(layers_)
{
}
VULKAN_HPP_CONSTEXPR FramebufferCreateInfo(FramebufferCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
FramebufferCreateInfo(VkFramebufferCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: FramebufferCreateInfo(*reinterpret_cast<FramebufferCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
FramebufferCreateInfo(VULKAN_HPP_NAMESPACE::FramebufferCreateFlags flags_,
VULKAN_HPP_NAMESPACE::RenderPass renderPass_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageView> const &attachments_,
uint32_t width_ = {},
uint32_t height_ = {},
uint32_t layers_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, renderPass(renderPass_)
, attachmentCount(static_cast<uint32_t>(attachments_.size()))
, pAttachments(attachments_.data())
, width(width_)
, height(height_)
, layers(layers_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
FramebufferCreateInfo &operator=(FramebufferCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
FramebufferCreateInfo &operator=(VkFramebufferCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FramebufferCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 FramebufferCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::FramebufferCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferCreateInfo &setRenderPass(VULKAN_HPP_NAMESPACE::RenderPass renderPass_) VULKAN_HPP_NOEXCEPT
{
renderPass = renderPass_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferCreateInfo &setAttachmentCount(uint32_t attachmentCount_) VULKAN_HPP_NOEXCEPT
{
attachmentCount = attachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferCreateInfo &setPAttachments(const VULKAN_HPP_NAMESPACE::ImageView *pAttachments_) VULKAN_HPP_NOEXCEPT
{
pAttachments = pAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
FramebufferCreateInfo &
setAttachments(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageView> const &attachments_) VULKAN_HPP_NOEXCEPT
{
attachmentCount = static_cast<uint32_t>(attachments_.size());
pAttachments = attachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 FramebufferCreateInfo &setWidth(uint32_t width_) VULKAN_HPP_NOEXCEPT
{
width = width_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferCreateInfo &setHeight(uint32_t height_) VULKAN_HPP_NOEXCEPT
{
height = height_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 FramebufferCreateInfo &setLayers(uint32_t layers_) VULKAN_HPP_NOEXCEPT
{
layers = layers_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkFramebufferCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkFramebufferCreateInfo *>(this);
}
explicit operator VkFramebufferCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkFramebufferCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::FramebufferCreateFlags const &,
VULKAN_HPP_NAMESPACE::RenderPass const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ImageView *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, renderPass, attachmentCount, pAttachments, width, height, layers);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(FramebufferCreateInfo const &) const = default;
#else
bool operator==(FramebufferCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (renderPass == rhs.renderPass) &&
(attachmentCount == rhs.attachmentCount) && (pAttachments == rhs.pAttachments) && (width == rhs.width) && (height == rhs.height) &&
(layers == rhs.layers);
# endif
}
bool operator!=(FramebufferCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFramebufferCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::FramebufferCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
uint32_t attachmentCount = {};
const VULKAN_HPP_NAMESPACE::ImageView *pAttachments = {};
uint32_t width = {};
uint32_t height = {};
uint32_t layers = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::FramebufferCreateInfo) == sizeof(VkFramebufferCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::FramebufferCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FramebufferCreateInfo>::value,
"FramebufferCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eFramebufferCreateInfo>
{
using Type = FramebufferCreateInfo;
};
struct FramebufferMixedSamplesCombinationNV
{
using NativeType = VkFramebufferMixedSamplesCombinationNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eFramebufferMixedSamplesCombinationNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR FramebufferMixedSamplesCombinationNV(
VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode_ = VULKAN_HPP_NAMESPACE::CoverageReductionModeNV::eMerge,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
VULKAN_HPP_NAMESPACE::SampleCountFlags depthStencilSamples_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlags colorSamples_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
coverageReductionMode(coverageReductionMode_),
rasterizationSamples(rasterizationSamples_),
depthStencilSamples(depthStencilSamples_),
colorSamples(colorSamples_)
{
}
VULKAN_HPP_CONSTEXPR FramebufferMixedSamplesCombinationNV(FramebufferMixedSamplesCombinationNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
FramebufferMixedSamplesCombinationNV(VkFramebufferMixedSamplesCombinationNV const &rhs) VULKAN_HPP_NOEXCEPT
: FramebufferMixedSamplesCombinationNV(*reinterpret_cast<FramebufferMixedSamplesCombinationNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
FramebufferMixedSamplesCombinationNV &operator=(FramebufferMixedSamplesCombinationNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
FramebufferMixedSamplesCombinationNV &operator=(VkFramebufferMixedSamplesCombinationNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV const *>(&rhs);
return *this;
}
explicit operator VkFramebufferMixedSamplesCombinationNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkFramebufferMixedSamplesCombinationNV *>(this);
}
explicit operator VkFramebufferMixedSamplesCombinationNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkFramebufferMixedSamplesCombinationNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::CoverageReductionModeNV const &,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, coverageReductionMode, rasterizationSamples, depthStencilSamples, colorSamples);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(FramebufferMixedSamplesCombinationNV const &) const = default;
#else
bool operator==(FramebufferMixedSamplesCombinationNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (coverageReductionMode == rhs.coverageReductionMode) &&
(rasterizationSamples == rhs.rasterizationSamples) && (depthStencilSamples == rhs.depthStencilSamples) && (colorSamples == rhs.colorSamples);
# endif
}
bool operator!=(FramebufferMixedSamplesCombinationNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eFramebufferMixedSamplesCombinationNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode = VULKAN_HPP_NAMESPACE::CoverageReductionModeNV::eMerge;
VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
VULKAN_HPP_NAMESPACE::SampleCountFlags depthStencilSamples = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags colorSamples = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV) == sizeof(VkFramebufferMixedSamplesCombinationNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FramebufferMixedSamplesCombinationNV>::value,
"FramebufferMixedSamplesCombinationNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eFramebufferMixedSamplesCombinationNV>
{
using Type = FramebufferMixedSamplesCombinationNV;
};
struct IndirectCommandsStreamNV
{
using NativeType = VkIndirectCommandsStreamNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR IndirectCommandsStreamNV(VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {}) VULKAN_HPP_NOEXCEPT
: buffer(buffer_),
offset(offset_)
{
}
VULKAN_HPP_CONSTEXPR IndirectCommandsStreamNV(IndirectCommandsStreamNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
IndirectCommandsStreamNV(VkIndirectCommandsStreamNV const &rhs) VULKAN_HPP_NOEXCEPT
: IndirectCommandsStreamNV(*reinterpret_cast<IndirectCommandsStreamNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
IndirectCommandsStreamNV &operator=(IndirectCommandsStreamNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
IndirectCommandsStreamNV &operator=(VkIndirectCommandsStreamNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsStreamNV &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsStreamNV &setOffset(VULKAN_HPP_NAMESPACE::DeviceSize offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkIndirectCommandsStreamNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkIndirectCommandsStreamNV *>(this);
}
explicit operator VkIndirectCommandsStreamNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkIndirectCommandsStreamNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Buffer const &, VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(buffer, offset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(IndirectCommandsStreamNV const &) const = default;
#else
bool operator==(IndirectCommandsStreamNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (buffer == rhs.buffer) && (offset == rhs.offset);
# endif
}
bool operator!=(IndirectCommandsStreamNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV) == sizeof(VkIndirectCommandsStreamNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV>::value,
"IndirectCommandsStreamNV is not nothrow_move_constructible!");
struct GeneratedCommandsInfoNV
{
using NativeType = VkGeneratedCommandsInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeneratedCommandsInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
GeneratedCommandsInfoNV(VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
VULKAN_HPP_NAMESPACE::Pipeline pipeline_ = {},
VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_ = {},
uint32_t streamCount_ = {},
const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV *pStreams_ = {},
uint32_t sequencesCount_ = {},
VULKAN_HPP_NAMESPACE::Buffer preprocessBuffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize preprocessOffset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize preprocessSize_ = {},
VULKAN_HPP_NAMESPACE::Buffer sequencesCountBuffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize sequencesCountOffset_ = {},
VULKAN_HPP_NAMESPACE::Buffer sequencesIndexBuffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize sequencesIndexOffset_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pipelineBindPoint(pipelineBindPoint_),
pipeline(pipeline_),
indirectCommandsLayout(indirectCommandsLayout_),
streamCount(streamCount_),
pStreams(pStreams_),
sequencesCount(sequencesCount_),
preprocessBuffer(preprocessBuffer_),
preprocessOffset(preprocessOffset_),
preprocessSize(preprocessSize_),
sequencesCountBuffer(sequencesCountBuffer_),
sequencesCountOffset(sequencesCountOffset_),
sequencesIndexBuffer(sequencesIndexBuffer_),
sequencesIndexOffset(sequencesIndexOffset_)
{
}
VULKAN_HPP_CONSTEXPR GeneratedCommandsInfoNV(GeneratedCommandsInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GeneratedCommandsInfoNV(VkGeneratedCommandsInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: GeneratedCommandsInfoNV(*reinterpret_cast<GeneratedCommandsInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
GeneratedCommandsInfoNV(VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_,
VULKAN_HPP_NAMESPACE::Pipeline pipeline_,
VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV> const &streams_,
uint32_t sequencesCount_ = {},
VULKAN_HPP_NAMESPACE::Buffer preprocessBuffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize preprocessOffset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize preprocessSize_ = {},
VULKAN_HPP_NAMESPACE::Buffer sequencesCountBuffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize sequencesCountOffset_ = {},
VULKAN_HPP_NAMESPACE::Buffer sequencesIndexBuffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize sequencesIndexOffset_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, pipelineBindPoint(pipelineBindPoint_)
, pipeline(pipeline_)
, indirectCommandsLayout(indirectCommandsLayout_)
, streamCount(static_cast<uint32_t>(streams_.size()))
, pStreams(streams_.data())
, sequencesCount(sequencesCount_)
, preprocessBuffer(preprocessBuffer_)
, preprocessOffset(preprocessOffset_)
, preprocessSize(preprocessSize_)
, sequencesCountBuffer(sequencesCountBuffer_)
, sequencesCountOffset(sequencesCountOffset_)
, sequencesIndexBuffer(sequencesIndexBuffer_)
, sequencesIndexOffset(sequencesIndexOffset_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
GeneratedCommandsInfoNV &operator=(GeneratedCommandsInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GeneratedCommandsInfoNV &operator=(VkGeneratedCommandsInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setPipelineBindPoint(VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_) VULKAN_HPP_NOEXCEPT
{
pipelineBindPoint = pipelineBindPoint_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setPipeline(VULKAN_HPP_NAMESPACE::Pipeline pipeline_) VULKAN_HPP_NOEXCEPT
{
pipeline = pipeline_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &
setIndirectCommandsLayout(VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_) VULKAN_HPP_NOEXCEPT
{
indirectCommandsLayout = indirectCommandsLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setStreamCount(uint32_t streamCount_) VULKAN_HPP_NOEXCEPT
{
streamCount = streamCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setPStreams(const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV *pStreams_) VULKAN_HPP_NOEXCEPT
{
pStreams = pStreams_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
GeneratedCommandsInfoNV &
setStreams(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV> const &streams_) VULKAN_HPP_NOEXCEPT
{
streamCount = static_cast<uint32_t>(streams_.size());
pStreams = streams_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setSequencesCount(uint32_t sequencesCount_) VULKAN_HPP_NOEXCEPT
{
sequencesCount = sequencesCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setPreprocessBuffer(VULKAN_HPP_NAMESPACE::Buffer preprocessBuffer_) VULKAN_HPP_NOEXCEPT
{
preprocessBuffer = preprocessBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setPreprocessOffset(VULKAN_HPP_NAMESPACE::DeviceSize preprocessOffset_) VULKAN_HPP_NOEXCEPT
{
preprocessOffset = preprocessOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setPreprocessSize(VULKAN_HPP_NAMESPACE::DeviceSize preprocessSize_) VULKAN_HPP_NOEXCEPT
{
preprocessSize = preprocessSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setSequencesCountBuffer(VULKAN_HPP_NAMESPACE::Buffer sequencesCountBuffer_) VULKAN_HPP_NOEXCEPT
{
sequencesCountBuffer = sequencesCountBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setSequencesCountOffset(VULKAN_HPP_NAMESPACE::DeviceSize sequencesCountOffset_) VULKAN_HPP_NOEXCEPT
{
sequencesCountOffset = sequencesCountOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setSequencesIndexBuffer(VULKAN_HPP_NAMESPACE::Buffer sequencesIndexBuffer_) VULKAN_HPP_NOEXCEPT
{
sequencesIndexBuffer = sequencesIndexBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsInfoNV &setSequencesIndexOffset(VULKAN_HPP_NAMESPACE::DeviceSize sequencesIndexOffset_) VULKAN_HPP_NOEXCEPT
{
sequencesIndexOffset = sequencesIndexOffset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkGeneratedCommandsInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkGeneratedCommandsInfoNV *>(this);
}
explicit operator VkGeneratedCommandsInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkGeneratedCommandsInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineBindPoint const &,
VULKAN_HPP_NAMESPACE::Pipeline const &,
VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV *const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
pipelineBindPoint,
pipeline,
indirectCommandsLayout,
streamCount,
pStreams,
sequencesCount,
preprocessBuffer,
preprocessOffset,
preprocessSize,
sequencesCountBuffer,
sequencesCountOffset,
sequencesIndexBuffer,
sequencesIndexOffset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(GeneratedCommandsInfoNV const &) const = default;
#else
bool operator==(GeneratedCommandsInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pipelineBindPoint == rhs.pipelineBindPoint) && (pipeline == rhs.pipeline) &&
(indirectCommandsLayout == rhs.indirectCommandsLayout) && (streamCount == rhs.streamCount) && (pStreams == rhs.pStreams) &&
(sequencesCount == rhs.sequencesCount) && (preprocessBuffer == rhs.preprocessBuffer) && (preprocessOffset == rhs.preprocessOffset) &&
(preprocessSize == rhs.preprocessSize) && (sequencesCountBuffer == rhs.sequencesCountBuffer) &&
(sequencesCountOffset == rhs.sequencesCountOffset) && (sequencesIndexBuffer == rhs.sequencesIndexBuffer) &&
(sequencesIndexOffset == rhs.sequencesIndexOffset);
# endif
}
bool operator!=(GeneratedCommandsInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeneratedCommandsInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
VULKAN_HPP_NAMESPACE::Pipeline pipeline = {};
VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout = {};
uint32_t streamCount = {};
const VULKAN_HPP_NAMESPACE::IndirectCommandsStreamNV *pStreams = {};
uint32_t sequencesCount = {};
VULKAN_HPP_NAMESPACE::Buffer preprocessBuffer = {};
VULKAN_HPP_NAMESPACE::DeviceSize preprocessOffset = {};
VULKAN_HPP_NAMESPACE::DeviceSize preprocessSize = {};
VULKAN_HPP_NAMESPACE::Buffer sequencesCountBuffer = {};
VULKAN_HPP_NAMESPACE::DeviceSize sequencesCountOffset = {};
VULKAN_HPP_NAMESPACE::Buffer sequencesIndexBuffer = {};
VULKAN_HPP_NAMESPACE::DeviceSize sequencesIndexOffset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV) == sizeof(VkGeneratedCommandsInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GeneratedCommandsInfoNV>::value,
"GeneratedCommandsInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eGeneratedCommandsInfoNV>
{
using Type = GeneratedCommandsInfoNV;
};
struct GeneratedCommandsMemoryRequirementsInfoNV
{
using NativeType = VkGeneratedCommandsMemoryRequirementsInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGeneratedCommandsMemoryRequirementsInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR GeneratedCommandsMemoryRequirementsInfoNV(
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
VULKAN_HPP_NAMESPACE::Pipeline pipeline_ = {},
VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_ = {},
uint32_t maxSequencesCount_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pipelineBindPoint(pipelineBindPoint_),
pipeline(pipeline_),
indirectCommandsLayout(indirectCommandsLayout_),
maxSequencesCount(maxSequencesCount_)
{
}
VULKAN_HPP_CONSTEXPR GeneratedCommandsMemoryRequirementsInfoNV(GeneratedCommandsMemoryRequirementsInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GeneratedCommandsMemoryRequirementsInfoNV(VkGeneratedCommandsMemoryRequirementsInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: GeneratedCommandsMemoryRequirementsInfoNV(*reinterpret_cast<GeneratedCommandsMemoryRequirementsInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
GeneratedCommandsMemoryRequirementsInfoNV &operator=(GeneratedCommandsMemoryRequirementsInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GeneratedCommandsMemoryRequirementsInfoNV &operator=(VkGeneratedCommandsMemoryRequirementsInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GeneratedCommandsMemoryRequirementsInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsMemoryRequirementsInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsMemoryRequirementsInfoNV &
setPipelineBindPoint(VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_) VULKAN_HPP_NOEXCEPT
{
pipelineBindPoint = pipelineBindPoint_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsMemoryRequirementsInfoNV &setPipeline(VULKAN_HPP_NAMESPACE::Pipeline pipeline_) VULKAN_HPP_NOEXCEPT
{
pipeline = pipeline_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsMemoryRequirementsInfoNV &
setIndirectCommandsLayout(VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout_) VULKAN_HPP_NOEXCEPT
{
indirectCommandsLayout = indirectCommandsLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GeneratedCommandsMemoryRequirementsInfoNV &setMaxSequencesCount(uint32_t maxSequencesCount_) VULKAN_HPP_NOEXCEPT
{
maxSequencesCount = maxSequencesCount_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkGeneratedCommandsMemoryRequirementsInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkGeneratedCommandsMemoryRequirementsInfoNV *>(this);
}
explicit operator VkGeneratedCommandsMemoryRequirementsInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkGeneratedCommandsMemoryRequirementsInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineBindPoint const &,
VULKAN_HPP_NAMESPACE::Pipeline const &,
VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pipelineBindPoint, pipeline, indirectCommandsLayout, maxSequencesCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(GeneratedCommandsMemoryRequirementsInfoNV const &) const = default;
#else
bool operator==(GeneratedCommandsMemoryRequirementsInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pipelineBindPoint == rhs.pipelineBindPoint) && (pipeline == rhs.pipeline) &&
(indirectCommandsLayout == rhs.indirectCommandsLayout) && (maxSequencesCount == rhs.maxSequencesCount);
# endif
}
bool operator!=(GeneratedCommandsMemoryRequirementsInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGeneratedCommandsMemoryRequirementsInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
VULKAN_HPP_NAMESPACE::Pipeline pipeline = {};
VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV indirectCommandsLayout = {};
uint32_t maxSequencesCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::GeneratedCommandsMemoryRequirementsInfoNV) == sizeof(VkGeneratedCommandsMemoryRequirementsInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::GeneratedCommandsMemoryRequirementsInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GeneratedCommandsMemoryRequirementsInfoNV>::value,
"GeneratedCommandsMemoryRequirementsInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eGeneratedCommandsMemoryRequirementsInfoNV>
{
using Type = GeneratedCommandsMemoryRequirementsInfoNV;
};
struct VertexInputBindingDescription
{
using NativeType = VkVertexInputBindingDescription;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
VertexInputBindingDescription(uint32_t binding_ = {},
uint32_t stride_ = {},
VULKAN_HPP_NAMESPACE::VertexInputRate inputRate_ = VULKAN_HPP_NAMESPACE::VertexInputRate::eVertex) VULKAN_HPP_NOEXCEPT
: binding(binding_),
stride(stride_),
inputRate(inputRate_)
{
}
VULKAN_HPP_CONSTEXPR VertexInputBindingDescription(VertexInputBindingDescription const &rhs) VULKAN_HPP_NOEXCEPT = default;
VertexInputBindingDescription(VkVertexInputBindingDescription const &rhs) VULKAN_HPP_NOEXCEPT
: VertexInputBindingDescription(*reinterpret_cast<VertexInputBindingDescription const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VertexInputBindingDescription &operator=(VertexInputBindingDescription const &rhs) VULKAN_HPP_NOEXCEPT = default;
VertexInputBindingDescription &operator=(VkVertexInputBindingDescription const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputBindingDescription const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDescription &setBinding(uint32_t binding_) VULKAN_HPP_NOEXCEPT
{
binding = binding_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDescription &setStride(uint32_t stride_) VULKAN_HPP_NOEXCEPT
{
stride = stride_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDescription &setInputRate(VULKAN_HPP_NAMESPACE::VertexInputRate inputRate_) VULKAN_HPP_NOEXCEPT
{
inputRate = inputRate_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVertexInputBindingDescription const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVertexInputBindingDescription *>(this);
}
explicit operator VkVertexInputBindingDescription &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVertexInputBindingDescription *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, VULKAN_HPP_NAMESPACE::VertexInputRate const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(binding, stride, inputRate);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VertexInputBindingDescription const &) const = default;
#else
bool operator==(VertexInputBindingDescription const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (binding == rhs.binding) && (stride == rhs.stride) && (inputRate == rhs.inputRate);
# endif
}
bool operator!=(VertexInputBindingDescription const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t binding = {};
uint32_t stride = {};
VULKAN_HPP_NAMESPACE::VertexInputRate inputRate = VULKAN_HPP_NAMESPACE::VertexInputRate::eVertex;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VertexInputBindingDescription) == sizeof(VkVertexInputBindingDescription),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VertexInputBindingDescription>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VertexInputBindingDescription>::value,
"VertexInputBindingDescription is not nothrow_move_constructible!");
struct VertexInputAttributeDescription
{
using NativeType = VkVertexInputAttributeDescription;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VertexInputAttributeDescription(uint32_t location_ = {},
uint32_t binding_ = {},
VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
uint32_t offset_ = {}) VULKAN_HPP_NOEXCEPT
: location(location_),
binding(binding_),
format(format_),
offset(offset_)
{
}
VULKAN_HPP_CONSTEXPR VertexInputAttributeDescription(VertexInputAttributeDescription const &rhs) VULKAN_HPP_NOEXCEPT = default;
VertexInputAttributeDescription(VkVertexInputAttributeDescription const &rhs) VULKAN_HPP_NOEXCEPT
: VertexInputAttributeDescription(*reinterpret_cast<VertexInputAttributeDescription const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VertexInputAttributeDescription &operator=(VertexInputAttributeDescription const &rhs) VULKAN_HPP_NOEXCEPT = default;
VertexInputAttributeDescription &operator=(VkVertexInputAttributeDescription const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VertexInputAttributeDescription &setLocation(uint32_t location_) VULKAN_HPP_NOEXCEPT
{
location = location_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputAttributeDescription &setBinding(uint32_t binding_) VULKAN_HPP_NOEXCEPT
{
binding = binding_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputAttributeDescription &setFormat(VULKAN_HPP_NAMESPACE::Format format_) VULKAN_HPP_NOEXCEPT
{
format = format_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputAttributeDescription &setOffset(uint32_t offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVertexInputAttributeDescription const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVertexInputAttributeDescription *>(this);
}
explicit operator VkVertexInputAttributeDescription &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVertexInputAttributeDescription *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, VULKAN_HPP_NAMESPACE::Format const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(location, binding, format, offset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VertexInputAttributeDescription const &) const = default;
#else
bool operator==(VertexInputAttributeDescription const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (location == rhs.location) && (binding == rhs.binding) && (format == rhs.format) && (offset == rhs.offset);
# endif
}
bool operator!=(VertexInputAttributeDescription const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t location = {};
uint32_t binding = {};
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
uint32_t offset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription) == sizeof(VkVertexInputAttributeDescription),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription>::value,
"VertexInputAttributeDescription is not nothrow_move_constructible!");
struct PipelineVertexInputStateCreateInfo
{
using NativeType = VkPipelineVertexInputStateCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineVertexInputStateCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineVertexInputStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags flags_ = {},
uint32_t vertexBindingDescriptionCount_ = {},
const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription *pVertexBindingDescriptions_ = {},
uint32_t vertexAttributeDescriptionCount_ = {},
const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription *pVertexAttributeDescriptions_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
vertexBindingDescriptionCount(vertexBindingDescriptionCount_),
pVertexBindingDescriptions(pVertexBindingDescriptions_),
vertexAttributeDescriptionCount(vertexAttributeDescriptionCount_),
pVertexAttributeDescriptions(pVertexAttributeDescriptions_)
{
}
VULKAN_HPP_CONSTEXPR PipelineVertexInputStateCreateInfo(PipelineVertexInputStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineVertexInputStateCreateInfo(VkPipelineVertexInputStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineVertexInputStateCreateInfo(*reinterpret_cast<PipelineVertexInputStateCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineVertexInputStateCreateInfo(
VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription> const &vertexBindingDescriptions_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription> const &vertexAttributeDescriptions_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, vertexBindingDescriptionCount(static_cast<uint32_t>(vertexBindingDescriptions_.size()))
, pVertexBindingDescriptions(vertexBindingDescriptions_.data())
, vertexAttributeDescriptionCount(static_cast<uint32_t>(vertexAttributeDescriptions_.size()))
, pVertexAttributeDescriptions(vertexAttributeDescriptions_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineVertexInputStateCreateInfo &operator=(PipelineVertexInputStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineVertexInputStateCreateInfo &operator=(VkPipelineVertexInputStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineVertexInputStateCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineVertexInputStateCreateInfo &
setFlags(VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineVertexInputStateCreateInfo &setVertexBindingDescriptionCount(uint32_t vertexBindingDescriptionCount_) VULKAN_HPP_NOEXCEPT
{
vertexBindingDescriptionCount = vertexBindingDescriptionCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineVertexInputStateCreateInfo &
setPVertexBindingDescriptions(const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription *pVertexBindingDescriptions_) VULKAN_HPP_NOEXCEPT
{
pVertexBindingDescriptions = pVertexBindingDescriptions_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineVertexInputStateCreateInfo &setVertexBindingDescriptions(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription> const &vertexBindingDescriptions_)
VULKAN_HPP_NOEXCEPT
{
vertexBindingDescriptionCount = static_cast<uint32_t>(vertexBindingDescriptions_.size());
pVertexBindingDescriptions = vertexBindingDescriptions_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 PipelineVertexInputStateCreateInfo &
setVertexAttributeDescriptionCount(uint32_t vertexAttributeDescriptionCount_) VULKAN_HPP_NOEXCEPT
{
vertexAttributeDescriptionCount = vertexAttributeDescriptionCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineVertexInputStateCreateInfo &
setPVertexAttributeDescriptions(const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription *pVertexAttributeDescriptions_) VULKAN_HPP_NOEXCEPT
{
pVertexAttributeDescriptions = pVertexAttributeDescriptions_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineVertexInputStateCreateInfo &setVertexAttributeDescriptions(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription> const &vertexAttributeDescriptions_)
VULKAN_HPP_NOEXCEPT
{
vertexAttributeDescriptionCount = static_cast<uint32_t>(vertexAttributeDescriptions_.size());
pVertexAttributeDescriptions = vertexAttributeDescriptions_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineVertexInputStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineVertexInputStateCreateInfo *>(this);
}
explicit operator VkPipelineVertexInputStateCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineVertexInputStateCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, flags, vertexBindingDescriptionCount, pVertexBindingDescriptions, vertexAttributeDescriptionCount, pVertexAttributeDescriptions);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineVertexInputStateCreateInfo const &) const = default;
#else
bool operator==(PipelineVertexInputStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) &&
(vertexBindingDescriptionCount == rhs.vertexBindingDescriptionCount) && (pVertexBindingDescriptions == rhs.pVertexBindingDescriptions) &&
(vertexAttributeDescriptionCount == rhs.vertexAttributeDescriptionCount) && (pVertexAttributeDescriptions == rhs.pVertexAttributeDescriptions);
# endif
}
bool operator!=(PipelineVertexInputStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineVertexInputStateCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateFlags flags = {};
uint32_t vertexBindingDescriptionCount = {};
const VULKAN_HPP_NAMESPACE::VertexInputBindingDescription *pVertexBindingDescriptions = {};
uint32_t vertexAttributeDescriptionCount = {};
const VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription *pVertexAttributeDescriptions = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo) == sizeof(VkPipelineVertexInputStateCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo>::value,
"PipelineVertexInputStateCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineVertexInputStateCreateInfo>
{
using Type = PipelineVertexInputStateCreateInfo;
};
struct PipelineInputAssemblyStateCreateInfo
{
using NativeType = VkPipelineInputAssemblyStateCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineInputAssemblyStateCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PipelineInputAssemblyStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::PrimitiveTopology topology_ = VULKAN_HPP_NAMESPACE::PrimitiveTopology::ePointList,
VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
topology(topology_),
primitiveRestartEnable(primitiveRestartEnable_)
{
}
VULKAN_HPP_CONSTEXPR PipelineInputAssemblyStateCreateInfo(PipelineInputAssemblyStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineInputAssemblyStateCreateInfo(VkPipelineInputAssemblyStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineInputAssemblyStateCreateInfo(*reinterpret_cast<PipelineInputAssemblyStateCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineInputAssemblyStateCreateInfo &operator=(PipelineInputAssemblyStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineInputAssemblyStateCreateInfo &operator=(VkPipelineInputAssemblyStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineInputAssemblyStateCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineInputAssemblyStateCreateInfo &
setFlags(VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineInputAssemblyStateCreateInfo &setTopology(VULKAN_HPP_NAMESPACE::PrimitiveTopology topology_) VULKAN_HPP_NOEXCEPT
{
topology = topology_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineInputAssemblyStateCreateInfo &
setPrimitiveRestartEnable(VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable_) VULKAN_HPP_NOEXCEPT
{
primitiveRestartEnable = primitiveRestartEnable_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineInputAssemblyStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineInputAssemblyStateCreateInfo *>(this);
}
explicit operator VkPipelineInputAssemblyStateCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineInputAssemblyStateCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateFlags const &,
VULKAN_HPP_NAMESPACE::PrimitiveTopology const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, topology, primitiveRestartEnable);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineInputAssemblyStateCreateInfo const &) const = default;
#else
bool operator==(PipelineInputAssemblyStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (topology == rhs.topology) &&
(primitiveRestartEnable == rhs.primitiveRestartEnable);
# endif
}
bool operator!=(PipelineInputAssemblyStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineInputAssemblyStateCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::PrimitiveTopology topology = VULKAN_HPP_NAMESPACE::PrimitiveTopology::ePointList;
VULKAN_HPP_NAMESPACE::Bool32 primitiveRestartEnable = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo) == sizeof(VkPipelineInputAssemblyStateCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo>::value,
"PipelineInputAssemblyStateCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineInputAssemblyStateCreateInfo>
{
using Type = PipelineInputAssemblyStateCreateInfo;
};
struct PipelineTessellationStateCreateInfo
{
using NativeType = VkPipelineTessellationStateCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineTessellationStateCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineTessellationStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateFlags flags_ = {},
uint32_t patchControlPoints_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
patchControlPoints(patchControlPoints_)
{
}
VULKAN_HPP_CONSTEXPR PipelineTessellationStateCreateInfo(PipelineTessellationStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineTessellationStateCreateInfo(VkPipelineTessellationStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineTessellationStateCreateInfo(*reinterpret_cast<PipelineTessellationStateCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineTessellationStateCreateInfo &operator=(PipelineTessellationStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineTessellationStateCreateInfo &operator=(VkPipelineTessellationStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineTessellationStateCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineTessellationStateCreateInfo &
setFlags(VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineTessellationStateCreateInfo &setPatchControlPoints(uint32_t patchControlPoints_) VULKAN_HPP_NOEXCEPT
{
patchControlPoints = patchControlPoints_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineTessellationStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineTessellationStateCreateInfo *>(this);
}
explicit operator VkPipelineTessellationStateCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineTessellationStateCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateFlags const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, patchControlPoints);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineTessellationStateCreateInfo const &) const = default;
#else
bool operator==(PipelineTessellationStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (patchControlPoints == rhs.patchControlPoints);
# endif
}
bool operator!=(PipelineTessellationStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineTessellationStateCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateFlags flags = {};
uint32_t patchControlPoints = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo) == sizeof(VkPipelineTessellationStateCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo>::value,
"PipelineTessellationStateCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineTessellationStateCreateInfo>
{
using Type = PipelineTessellationStateCreateInfo;
};
struct PipelineViewportStateCreateInfo
{
using NativeType = VkPipelineViewportStateCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportStateCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineViewportStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags flags_ = {},
uint32_t viewportCount_ = {},
const VULKAN_HPP_NAMESPACE::Viewport *pViewports_ = {},
uint32_t scissorCount_ = {},
const VULKAN_HPP_NAMESPACE::Rect2D *pScissors_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
viewportCount(viewportCount_),
pViewports(pViewports_),
scissorCount(scissorCount_),
pScissors(pScissors_)
{
}
VULKAN_HPP_CONSTEXPR PipelineViewportStateCreateInfo(PipelineViewportStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportStateCreateInfo(VkPipelineViewportStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineViewportStateCreateInfo(*reinterpret_cast<PipelineViewportStateCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Viewport> const &viewports_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const &scissors_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, viewportCount(static_cast<uint32_t>(viewports_.size()))
, pViewports(viewports_.data())
, scissorCount(static_cast<uint32_t>(scissors_.size()))
, pScissors(scissors_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineViewportStateCreateInfo &operator=(PipelineViewportStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportStateCreateInfo &operator=(VkPipelineViewportStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineViewportStateCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportStateCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportStateCreateInfo &setViewportCount(uint32_t viewportCount_) VULKAN_HPP_NOEXCEPT
{
viewportCount = viewportCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportStateCreateInfo &setPViewports(const VULKAN_HPP_NAMESPACE::Viewport *pViewports_) VULKAN_HPP_NOEXCEPT
{
pViewports = pViewports_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportStateCreateInfo &
setViewports(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Viewport> const &viewports_) VULKAN_HPP_NOEXCEPT
{
viewportCount = static_cast<uint32_t>(viewports_.size());
pViewports = viewports_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 PipelineViewportStateCreateInfo &setScissorCount(uint32_t scissorCount_) VULKAN_HPP_NOEXCEPT
{
scissorCount = scissorCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportStateCreateInfo &setPScissors(const VULKAN_HPP_NAMESPACE::Rect2D *pScissors_) VULKAN_HPP_NOEXCEPT
{
pScissors = pScissors_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportStateCreateInfo &
setScissors(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const &scissors_) VULKAN_HPP_NOEXCEPT
{
scissorCount = static_cast<uint32_t>(scissors_.size());
pScissors = scissors_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineViewportStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineViewportStateCreateInfo *>(this);
}
explicit operator VkPipelineViewportStateCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineViewportStateCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Viewport *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Rect2D *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, viewportCount, pViewports, scissorCount, pScissors);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineViewportStateCreateInfo const &) const = default;
#else
bool operator==(PipelineViewportStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (viewportCount == rhs.viewportCount) &&
(pViewports == rhs.pViewports) && (scissorCount == rhs.scissorCount) && (pScissors == rhs.pScissors);
# endif
}
bool operator!=(PipelineViewportStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportStateCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateFlags flags = {};
uint32_t viewportCount = {};
const VULKAN_HPP_NAMESPACE::Viewport *pViewports = {};
uint32_t scissorCount = {};
const VULKAN_HPP_NAMESPACE::Rect2D *pScissors = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo) == sizeof(VkPipelineViewportStateCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo>::value,
"PipelineViewportStateCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineViewportStateCreateInfo>
{
using Type = PipelineViewportStateCreateInfo;
};
struct PipelineRasterizationStateCreateInfo
{
using NativeType = VkPipelineRasterizationStateCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationStateCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineRasterizationStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::Bool32 depthClampEnable_ = {},
VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable_ = {},
VULKAN_HPP_NAMESPACE::PolygonMode polygonMode_ = VULKAN_HPP_NAMESPACE::PolygonMode::eFill,
VULKAN_HPP_NAMESPACE::CullModeFlags cullMode_ = {},
VULKAN_HPP_NAMESPACE::FrontFace frontFace_ = VULKAN_HPP_NAMESPACE::FrontFace::eCounterClockwise,
VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable_ = {},
float depthBiasConstantFactor_ = {},
float depthBiasClamp_ = {},
float depthBiasSlopeFactor_ = {},
float lineWidth_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
depthClampEnable(depthClampEnable_),
rasterizerDiscardEnable(rasterizerDiscardEnable_),
polygonMode(polygonMode_),
cullMode(cullMode_),
frontFace(frontFace_),
depthBiasEnable(depthBiasEnable_),
depthBiasConstantFactor(depthBiasConstantFactor_),
depthBiasClamp(depthBiasClamp_),
depthBiasSlopeFactor(depthBiasSlopeFactor_),
lineWidth(lineWidth_)
{
}
VULKAN_HPP_CONSTEXPR PipelineRasterizationStateCreateInfo(PipelineRasterizationStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationStateCreateInfo(VkPipelineRasterizationStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineRasterizationStateCreateInfo(*reinterpret_cast<PipelineRasterizationStateCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineRasterizationStateCreateInfo &operator=(PipelineRasterizationStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationStateCreateInfo &operator=(VkPipelineRasterizationStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &
setFlags(VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &setDepthClampEnable(VULKAN_HPP_NAMESPACE::Bool32 depthClampEnable_) VULKAN_HPP_NOEXCEPT
{
depthClampEnable = depthClampEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &
setRasterizerDiscardEnable(VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable_) VULKAN_HPP_NOEXCEPT
{
rasterizerDiscardEnable = rasterizerDiscardEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &setPolygonMode(VULKAN_HPP_NAMESPACE::PolygonMode polygonMode_) VULKAN_HPP_NOEXCEPT
{
polygonMode = polygonMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &setCullMode(VULKAN_HPP_NAMESPACE::CullModeFlags cullMode_) VULKAN_HPP_NOEXCEPT
{
cullMode = cullMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &setFrontFace(VULKAN_HPP_NAMESPACE::FrontFace frontFace_) VULKAN_HPP_NOEXCEPT
{
frontFace = frontFace_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &setDepthBiasEnable(VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable_) VULKAN_HPP_NOEXCEPT
{
depthBiasEnable = depthBiasEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &setDepthBiasConstantFactor(float depthBiasConstantFactor_) VULKAN_HPP_NOEXCEPT
{
depthBiasConstantFactor = depthBiasConstantFactor_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &setDepthBiasClamp(float depthBiasClamp_) VULKAN_HPP_NOEXCEPT
{
depthBiasClamp = depthBiasClamp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &setDepthBiasSlopeFactor(float depthBiasSlopeFactor_) VULKAN_HPP_NOEXCEPT
{
depthBiasSlopeFactor = depthBiasSlopeFactor_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateCreateInfo &setLineWidth(float lineWidth_) VULKAN_HPP_NOEXCEPT
{
lineWidth = lineWidth_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineRasterizationStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineRasterizationStateCreateInfo *>(this);
}
explicit operator VkPipelineRasterizationStateCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineRasterizationStateCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateFlags const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::PolygonMode const &,
VULKAN_HPP_NAMESPACE::CullModeFlags const &,
VULKAN_HPP_NAMESPACE::FrontFace const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
float const &,
float const &,
float const &,
float const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
depthClampEnable,
rasterizerDiscardEnable,
polygonMode,
cullMode,
frontFace,
depthBiasEnable,
depthBiasConstantFactor,
depthBiasClamp,
depthBiasSlopeFactor,
lineWidth);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineRasterizationStateCreateInfo const &) const = default;
#else
bool operator==(PipelineRasterizationStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (depthClampEnable == rhs.depthClampEnable) &&
(rasterizerDiscardEnable == rhs.rasterizerDiscardEnable) && (polygonMode == rhs.polygonMode) && (cullMode == rhs.cullMode) &&
(frontFace == rhs.frontFace) && (depthBiasEnable == rhs.depthBiasEnable) && (depthBiasConstantFactor == rhs.depthBiasConstantFactor) &&
(depthBiasClamp == rhs.depthBiasClamp) && (depthBiasSlopeFactor == rhs.depthBiasSlopeFactor) && (lineWidth == rhs.lineWidth);
# endif
}
bool operator!=(PipelineRasterizationStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationStateCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::Bool32 depthClampEnable = {};
VULKAN_HPP_NAMESPACE::Bool32 rasterizerDiscardEnable = {};
VULKAN_HPP_NAMESPACE::PolygonMode polygonMode = VULKAN_HPP_NAMESPACE::PolygonMode::eFill;
VULKAN_HPP_NAMESPACE::CullModeFlags cullMode = {};
VULKAN_HPP_NAMESPACE::FrontFace frontFace = VULKAN_HPP_NAMESPACE::FrontFace::eCounterClockwise;
VULKAN_HPP_NAMESPACE::Bool32 depthBiasEnable = {};
float depthBiasConstantFactor = {};
float depthBiasClamp = {};
float depthBiasSlopeFactor = {};
float lineWidth = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo) == sizeof(VkPipelineRasterizationStateCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo>::value,
"PipelineRasterizationStateCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineRasterizationStateCreateInfo>
{
using Type = PipelineRasterizationStateCreateInfo;
};
struct PipelineMultisampleStateCreateInfo
{
using NativeType = VkPipelineMultisampleStateCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineMultisampleStateCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PipelineMultisampleStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
VULKAN_HPP_NAMESPACE::Bool32 sampleShadingEnable_ = {},
float minSampleShading_ = {},
const VULKAN_HPP_NAMESPACE::SampleMask *pSampleMask_ = {},
VULKAN_HPP_NAMESPACE::Bool32 alphaToCoverageEnable_ = {},
VULKAN_HPP_NAMESPACE::Bool32 alphaToOneEnable_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
rasterizationSamples(rasterizationSamples_),
sampleShadingEnable(sampleShadingEnable_),
minSampleShading(minSampleShading_),
pSampleMask(pSampleMask_),
alphaToCoverageEnable(alphaToCoverageEnable_),
alphaToOneEnable(alphaToOneEnable_)
{
}
VULKAN_HPP_CONSTEXPR PipelineMultisampleStateCreateInfo(PipelineMultisampleStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineMultisampleStateCreateInfo(VkPipelineMultisampleStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineMultisampleStateCreateInfo(*reinterpret_cast<PipelineMultisampleStateCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineMultisampleStateCreateInfo &operator=(PipelineMultisampleStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineMultisampleStateCreateInfo &operator=(VkPipelineMultisampleStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineMultisampleStateCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineMultisampleStateCreateInfo &
setFlags(VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineMultisampleStateCreateInfo &
setRasterizationSamples(VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples_) VULKAN_HPP_NOEXCEPT
{
rasterizationSamples = rasterizationSamples_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineMultisampleStateCreateInfo &setSampleShadingEnable(VULKAN_HPP_NAMESPACE::Bool32 sampleShadingEnable_) VULKAN_HPP_NOEXCEPT
{
sampleShadingEnable = sampleShadingEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineMultisampleStateCreateInfo &setMinSampleShading(float minSampleShading_) VULKAN_HPP_NOEXCEPT
{
minSampleShading = minSampleShading_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineMultisampleStateCreateInfo &setPSampleMask(const VULKAN_HPP_NAMESPACE::SampleMask *pSampleMask_) VULKAN_HPP_NOEXCEPT
{
pSampleMask = pSampleMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineMultisampleStateCreateInfo &
setAlphaToCoverageEnable(VULKAN_HPP_NAMESPACE::Bool32 alphaToCoverageEnable_) VULKAN_HPP_NOEXCEPT
{
alphaToCoverageEnable = alphaToCoverageEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineMultisampleStateCreateInfo &setAlphaToOneEnable(VULKAN_HPP_NAMESPACE::Bool32 alphaToOneEnable_) VULKAN_HPP_NOEXCEPT
{
alphaToOneEnable = alphaToOneEnable_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineMultisampleStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineMultisampleStateCreateInfo *>(this);
}
explicit operator VkPipelineMultisampleStateCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineMultisampleStateCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateFlags const &,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
float const &,
const VULKAN_HPP_NAMESPACE::SampleMask *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, rasterizationSamples, sampleShadingEnable, minSampleShading, pSampleMask, alphaToCoverageEnable, alphaToOneEnable);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineMultisampleStateCreateInfo const &) const = default;
#else
bool operator==(PipelineMultisampleStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (rasterizationSamples == rhs.rasterizationSamples) &&
(sampleShadingEnable == rhs.sampleShadingEnable) && (minSampleShading == rhs.minSampleShading) && (pSampleMask == rhs.pSampleMask) &&
(alphaToCoverageEnable == rhs.alphaToCoverageEnable) && (alphaToOneEnable == rhs.alphaToOneEnable);
# endif
}
bool operator!=(PipelineMultisampleStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineMultisampleStateCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::SampleCountFlagBits rasterizationSamples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
VULKAN_HPP_NAMESPACE::Bool32 sampleShadingEnable = {};
float minSampleShading = {};
const VULKAN_HPP_NAMESPACE::SampleMask *pSampleMask = {};
VULKAN_HPP_NAMESPACE::Bool32 alphaToCoverageEnable = {};
VULKAN_HPP_NAMESPACE::Bool32 alphaToOneEnable = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo) == sizeof(VkPipelineMultisampleStateCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo>::value,
"PipelineMultisampleStateCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineMultisampleStateCreateInfo>
{
using Type = PipelineMultisampleStateCreateInfo;
};
struct StencilOpState
{
using NativeType = VkStencilOpState;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR StencilOpState(VULKAN_HPP_NAMESPACE::StencilOp failOp_ = VULKAN_HPP_NAMESPACE::StencilOp::eKeep,
VULKAN_HPP_NAMESPACE::StencilOp passOp_ = VULKAN_HPP_NAMESPACE::StencilOp::eKeep,
VULKAN_HPP_NAMESPACE::StencilOp depthFailOp_ = VULKAN_HPP_NAMESPACE::StencilOp::eKeep,
VULKAN_HPP_NAMESPACE::CompareOp compareOp_ = VULKAN_HPP_NAMESPACE::CompareOp::eNever,
uint32_t compareMask_ = {},
uint32_t writeMask_ = {},
uint32_t reference_ = {}) VULKAN_HPP_NOEXCEPT
: failOp(failOp_),
passOp(passOp_),
depthFailOp(depthFailOp_),
compareOp(compareOp_),
compareMask(compareMask_),
writeMask(writeMask_),
reference(reference_)
{
}
VULKAN_HPP_CONSTEXPR StencilOpState(StencilOpState const &rhs) VULKAN_HPP_NOEXCEPT = default;
StencilOpState(VkStencilOpState const &rhs) VULKAN_HPP_NOEXCEPT : StencilOpState(*reinterpret_cast<StencilOpState const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
StencilOpState &operator=(StencilOpState const &rhs) VULKAN_HPP_NOEXCEPT = default;
StencilOpState &operator=(VkStencilOpState const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::StencilOpState const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 StencilOpState &setFailOp(VULKAN_HPP_NAMESPACE::StencilOp failOp_) VULKAN_HPP_NOEXCEPT
{
failOp = failOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 StencilOpState &setPassOp(VULKAN_HPP_NAMESPACE::StencilOp passOp_) VULKAN_HPP_NOEXCEPT
{
passOp = passOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 StencilOpState &setDepthFailOp(VULKAN_HPP_NAMESPACE::StencilOp depthFailOp_) VULKAN_HPP_NOEXCEPT
{
depthFailOp = depthFailOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 StencilOpState &setCompareOp(VULKAN_HPP_NAMESPACE::CompareOp compareOp_) VULKAN_HPP_NOEXCEPT
{
compareOp = compareOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 StencilOpState &setCompareMask(uint32_t compareMask_) VULKAN_HPP_NOEXCEPT
{
compareMask = compareMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 StencilOpState &setWriteMask(uint32_t writeMask_) VULKAN_HPP_NOEXCEPT
{
writeMask = writeMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 StencilOpState &setReference(uint32_t reference_) VULKAN_HPP_NOEXCEPT
{
reference = reference_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkStencilOpState const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkStencilOpState *>(this);
}
explicit operator VkStencilOpState &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkStencilOpState *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StencilOp const &,
VULKAN_HPP_NAMESPACE::StencilOp const &,
VULKAN_HPP_NAMESPACE::StencilOp const &,
VULKAN_HPP_NAMESPACE::CompareOp const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(failOp, passOp, depthFailOp, compareOp, compareMask, writeMask, reference);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(StencilOpState const &) const = default;
#else
bool operator==(StencilOpState const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (failOp == rhs.failOp) && (passOp == rhs.passOp) && (depthFailOp == rhs.depthFailOp) && (compareOp == rhs.compareOp) &&
(compareMask == rhs.compareMask) && (writeMask == rhs.writeMask) && (reference == rhs.reference);
# endif
}
bool operator!=(StencilOpState const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StencilOp failOp = VULKAN_HPP_NAMESPACE::StencilOp::eKeep;
VULKAN_HPP_NAMESPACE::StencilOp passOp = VULKAN_HPP_NAMESPACE::StencilOp::eKeep;
VULKAN_HPP_NAMESPACE::StencilOp depthFailOp = VULKAN_HPP_NAMESPACE::StencilOp::eKeep;
VULKAN_HPP_NAMESPACE::CompareOp compareOp = VULKAN_HPP_NAMESPACE::CompareOp::eNever;
uint32_t compareMask = {};
uint32_t writeMask = {};
uint32_t reference = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::StencilOpState) == sizeof(VkStencilOpState), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::StencilOpState>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::StencilOpState>::value,
"StencilOpState is not nothrow_move_constructible!");
struct PipelineDepthStencilStateCreateInfo
{
using NativeType = VkPipelineDepthStencilStateCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineDepthStencilStateCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineDepthStencilStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable_ = {},
VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable_ = {},
VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp_ = VULKAN_HPP_NAMESPACE::CompareOp::eNever,
VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable_ = {},
VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable_ = {},
VULKAN_HPP_NAMESPACE::StencilOpState front_ = {},
VULKAN_HPP_NAMESPACE::StencilOpState back_ = {},
float minDepthBounds_ = {},
float maxDepthBounds_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
depthTestEnable(depthTestEnable_),
depthWriteEnable(depthWriteEnable_),
depthCompareOp(depthCompareOp_),
depthBoundsTestEnable(depthBoundsTestEnable_),
stencilTestEnable(stencilTestEnable_),
front(front_),
back(back_),
minDepthBounds(minDepthBounds_),
maxDepthBounds(maxDepthBounds_)
{
}
VULKAN_HPP_CONSTEXPR PipelineDepthStencilStateCreateInfo(PipelineDepthStencilStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineDepthStencilStateCreateInfo(VkPipelineDepthStencilStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineDepthStencilStateCreateInfo(*reinterpret_cast<PipelineDepthStencilStateCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineDepthStencilStateCreateInfo &operator=(PipelineDepthStencilStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineDepthStencilStateCreateInfo &operator=(VkPipelineDepthStencilStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineDepthStencilStateCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDepthStencilStateCreateInfo &
setFlags(VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDepthStencilStateCreateInfo &setDepthTestEnable(VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable_) VULKAN_HPP_NOEXCEPT
{
depthTestEnable = depthTestEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDepthStencilStateCreateInfo &setDepthWriteEnable(VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable_) VULKAN_HPP_NOEXCEPT
{
depthWriteEnable = depthWriteEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDepthStencilStateCreateInfo &setDepthCompareOp(VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp_) VULKAN_HPP_NOEXCEPT
{
depthCompareOp = depthCompareOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDepthStencilStateCreateInfo &
setDepthBoundsTestEnable(VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable_) VULKAN_HPP_NOEXCEPT
{
depthBoundsTestEnable = depthBoundsTestEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDepthStencilStateCreateInfo &setStencilTestEnable(VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable_) VULKAN_HPP_NOEXCEPT
{
stencilTestEnable = stencilTestEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDepthStencilStateCreateInfo &setFront(VULKAN_HPP_NAMESPACE::StencilOpState const &front_) VULKAN_HPP_NOEXCEPT
{
front = front_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDepthStencilStateCreateInfo &setBack(VULKAN_HPP_NAMESPACE::StencilOpState const &back_) VULKAN_HPP_NOEXCEPT
{
back = back_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDepthStencilStateCreateInfo &setMinDepthBounds(float minDepthBounds_) VULKAN_HPP_NOEXCEPT
{
minDepthBounds = minDepthBounds_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDepthStencilStateCreateInfo &setMaxDepthBounds(float maxDepthBounds_) VULKAN_HPP_NOEXCEPT
{
maxDepthBounds = maxDepthBounds_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineDepthStencilStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineDepthStencilStateCreateInfo *>(this);
}
explicit operator VkPipelineDepthStencilStateCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineDepthStencilStateCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateFlags const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::CompareOp const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::StencilOpState const &,
VULKAN_HPP_NAMESPACE::StencilOpState const &,
float const &,
float const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
depthTestEnable,
depthWriteEnable,
depthCompareOp,
depthBoundsTestEnable,
stencilTestEnable,
front,
back,
minDepthBounds,
maxDepthBounds);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineDepthStencilStateCreateInfo const &) const = default;
#else
bool operator==(PipelineDepthStencilStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (depthTestEnable == rhs.depthTestEnable) &&
(depthWriteEnable == rhs.depthWriteEnable) && (depthCompareOp == rhs.depthCompareOp) &&
(depthBoundsTestEnable == rhs.depthBoundsTestEnable) && (stencilTestEnable == rhs.stencilTestEnable) && (front == rhs.front) &&
(back == rhs.back) && (minDepthBounds == rhs.minDepthBounds) && (maxDepthBounds == rhs.maxDepthBounds);
# endif
}
bool operator!=(PipelineDepthStencilStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineDepthStencilStateCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::Bool32 depthTestEnable = {};
VULKAN_HPP_NAMESPACE::Bool32 depthWriteEnable = {};
VULKAN_HPP_NAMESPACE::CompareOp depthCompareOp = VULKAN_HPP_NAMESPACE::CompareOp::eNever;
VULKAN_HPP_NAMESPACE::Bool32 depthBoundsTestEnable = {};
VULKAN_HPP_NAMESPACE::Bool32 stencilTestEnable = {};
VULKAN_HPP_NAMESPACE::StencilOpState front = {};
VULKAN_HPP_NAMESPACE::StencilOpState back = {};
float minDepthBounds = {};
float maxDepthBounds = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo) == sizeof(VkPipelineDepthStencilStateCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo>::value,
"PipelineDepthStencilStateCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineDepthStencilStateCreateInfo>
{
using Type = PipelineDepthStencilStateCreateInfo;
};
struct PipelineColorBlendAttachmentState
{
using NativeType = VkPipelineColorBlendAttachmentState;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineColorBlendAttachmentState(VULKAN_HPP_NAMESPACE::Bool32 blendEnable_ = {},
VULKAN_HPP_NAMESPACE::BlendFactor srcColorBlendFactor_ = VULKAN_HPP_NAMESPACE::BlendFactor::eZero,
VULKAN_HPP_NAMESPACE::BlendFactor dstColorBlendFactor_ = VULKAN_HPP_NAMESPACE::BlendFactor::eZero,
VULKAN_HPP_NAMESPACE::BlendOp colorBlendOp_ = VULKAN_HPP_NAMESPACE::BlendOp::eAdd,
VULKAN_HPP_NAMESPACE::BlendFactor srcAlphaBlendFactor_ = VULKAN_HPP_NAMESPACE::BlendFactor::eZero,
VULKAN_HPP_NAMESPACE::BlendFactor dstAlphaBlendFactor_ = VULKAN_HPP_NAMESPACE::BlendFactor::eZero,
VULKAN_HPP_NAMESPACE::BlendOp alphaBlendOp_ = VULKAN_HPP_NAMESPACE::BlendOp::eAdd,
VULKAN_HPP_NAMESPACE::ColorComponentFlags colorWriteMask_ = {}) VULKAN_HPP_NOEXCEPT
: blendEnable(blendEnable_),
srcColorBlendFactor(srcColorBlendFactor_),
dstColorBlendFactor(dstColorBlendFactor_),
colorBlendOp(colorBlendOp_),
srcAlphaBlendFactor(srcAlphaBlendFactor_),
dstAlphaBlendFactor(dstAlphaBlendFactor_),
alphaBlendOp(alphaBlendOp_),
colorWriteMask(colorWriteMask_)
{
}
VULKAN_HPP_CONSTEXPR PipelineColorBlendAttachmentState(PipelineColorBlendAttachmentState const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineColorBlendAttachmentState(VkPipelineColorBlendAttachmentState const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineColorBlendAttachmentState(*reinterpret_cast<PipelineColorBlendAttachmentState const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineColorBlendAttachmentState &operator=(PipelineColorBlendAttachmentState const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineColorBlendAttachmentState &operator=(VkPipelineColorBlendAttachmentState const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAttachmentState &setBlendEnable(VULKAN_HPP_NAMESPACE::Bool32 blendEnable_) VULKAN_HPP_NOEXCEPT
{
blendEnable = blendEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAttachmentState &
setSrcColorBlendFactor(VULKAN_HPP_NAMESPACE::BlendFactor srcColorBlendFactor_) VULKAN_HPP_NOEXCEPT
{
srcColorBlendFactor = srcColorBlendFactor_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAttachmentState &
setDstColorBlendFactor(VULKAN_HPP_NAMESPACE::BlendFactor dstColorBlendFactor_) VULKAN_HPP_NOEXCEPT
{
dstColorBlendFactor = dstColorBlendFactor_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAttachmentState &setColorBlendOp(VULKAN_HPP_NAMESPACE::BlendOp colorBlendOp_) VULKAN_HPP_NOEXCEPT
{
colorBlendOp = colorBlendOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAttachmentState &
setSrcAlphaBlendFactor(VULKAN_HPP_NAMESPACE::BlendFactor srcAlphaBlendFactor_) VULKAN_HPP_NOEXCEPT
{
srcAlphaBlendFactor = srcAlphaBlendFactor_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAttachmentState &
setDstAlphaBlendFactor(VULKAN_HPP_NAMESPACE::BlendFactor dstAlphaBlendFactor_) VULKAN_HPP_NOEXCEPT
{
dstAlphaBlendFactor = dstAlphaBlendFactor_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAttachmentState &setAlphaBlendOp(VULKAN_HPP_NAMESPACE::BlendOp alphaBlendOp_) VULKAN_HPP_NOEXCEPT
{
alphaBlendOp = alphaBlendOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAttachmentState &
setColorWriteMask(VULKAN_HPP_NAMESPACE::ColorComponentFlags colorWriteMask_) VULKAN_HPP_NOEXCEPT
{
colorWriteMask = colorWriteMask_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineColorBlendAttachmentState const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineColorBlendAttachmentState *>(this);
}
explicit operator VkPipelineColorBlendAttachmentState &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineColorBlendAttachmentState *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::BlendFactor const &,
VULKAN_HPP_NAMESPACE::BlendFactor const &,
VULKAN_HPP_NAMESPACE::BlendOp const &,
VULKAN_HPP_NAMESPACE::BlendFactor const &,
VULKAN_HPP_NAMESPACE::BlendFactor const &,
VULKAN_HPP_NAMESPACE::BlendOp const &,
VULKAN_HPP_NAMESPACE::ColorComponentFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
blendEnable, srcColorBlendFactor, dstColorBlendFactor, colorBlendOp, srcAlphaBlendFactor, dstAlphaBlendFactor, alphaBlendOp, colorWriteMask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineColorBlendAttachmentState const &) const = default;
#else
bool operator==(PipelineColorBlendAttachmentState const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (blendEnable == rhs.blendEnable) && (srcColorBlendFactor == rhs.srcColorBlendFactor) && (dstColorBlendFactor == rhs.dstColorBlendFactor) &&
(colorBlendOp == rhs.colorBlendOp) && (srcAlphaBlendFactor == rhs.srcAlphaBlendFactor) && (dstAlphaBlendFactor == rhs.dstAlphaBlendFactor) &&
(alphaBlendOp == rhs.alphaBlendOp) && (colorWriteMask == rhs.colorWriteMask);
# endif
}
bool operator!=(PipelineColorBlendAttachmentState const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Bool32 blendEnable = {};
VULKAN_HPP_NAMESPACE::BlendFactor srcColorBlendFactor = VULKAN_HPP_NAMESPACE::BlendFactor::eZero;
VULKAN_HPP_NAMESPACE::BlendFactor dstColorBlendFactor = VULKAN_HPP_NAMESPACE::BlendFactor::eZero;
VULKAN_HPP_NAMESPACE::BlendOp colorBlendOp = VULKAN_HPP_NAMESPACE::BlendOp::eAdd;
VULKAN_HPP_NAMESPACE::BlendFactor srcAlphaBlendFactor = VULKAN_HPP_NAMESPACE::BlendFactor::eZero;
VULKAN_HPP_NAMESPACE::BlendFactor dstAlphaBlendFactor = VULKAN_HPP_NAMESPACE::BlendFactor::eZero;
VULKAN_HPP_NAMESPACE::BlendOp alphaBlendOp = VULKAN_HPP_NAMESPACE::BlendOp::eAdd;
VULKAN_HPP_NAMESPACE::ColorComponentFlags colorWriteMask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState) == sizeof(VkPipelineColorBlendAttachmentState),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState>::value,
"PipelineColorBlendAttachmentState is not nothrow_move_constructible!");
struct PipelineColorBlendStateCreateInfo
{
using NativeType = VkPipelineColorBlendStateCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineColorBlendStateCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::Bool32 logicOpEnable_ = {},
VULKAN_HPP_NAMESPACE::LogicOp logicOp_ = VULKAN_HPP_NAMESPACE::LogicOp::eClear,
uint32_t attachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState *pAttachments_ = {},
std::array<float, 4> const &blendConstants_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
logicOpEnable(logicOpEnable_),
logicOp(logicOp_),
attachmentCount(attachmentCount_),
pAttachments(pAttachments_),
blendConstants(blendConstants_)
{
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo(PipelineColorBlendStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineColorBlendStateCreateInfo(VkPipelineColorBlendStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineColorBlendStateCreateInfo(*reinterpret_cast<PipelineColorBlendStateCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineColorBlendStateCreateInfo(
VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags flags_,
VULKAN_HPP_NAMESPACE::Bool32 logicOpEnable_,
VULKAN_HPP_NAMESPACE::LogicOp logicOp_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState> const &attachments_,
std::array<float, 4> const &blendConstants_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, logicOpEnable(logicOpEnable_)
, logicOp(logicOp_)
, attachmentCount(static_cast<uint32_t>(attachments_.size()))
, pAttachments(attachments_.data())
, blendConstants(blendConstants_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineColorBlendStateCreateInfo &operator=(PipelineColorBlendStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineColorBlendStateCreateInfo &operator=(VkPipelineColorBlendStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo &setLogicOpEnable(VULKAN_HPP_NAMESPACE::Bool32 logicOpEnable_) VULKAN_HPP_NOEXCEPT
{
logicOpEnable = logicOpEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo &setLogicOp(VULKAN_HPP_NAMESPACE::LogicOp logicOp_) VULKAN_HPP_NOEXCEPT
{
logicOp = logicOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo &setAttachmentCount(uint32_t attachmentCount_) VULKAN_HPP_NOEXCEPT
{
attachmentCount = attachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo &
setPAttachments(const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState *pAttachments_) VULKAN_HPP_NOEXCEPT
{
pAttachments = pAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineColorBlendStateCreateInfo &setAttachments(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState> const &attachments_) VULKAN_HPP_NOEXCEPT
{
attachmentCount = static_cast<uint32_t>(attachments_.size());
pAttachments = attachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendStateCreateInfo &setBlendConstants(std::array<float, 4> blendConstants_) VULKAN_HPP_NOEXCEPT
{
blendConstants = blendConstants_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineColorBlendStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineColorBlendStateCreateInfo *>(this);
}
explicit operator VkPipelineColorBlendStateCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineColorBlendStateCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::LogicOp const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState *const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, logicOpEnable, logicOp, attachmentCount, pAttachments, blendConstants);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineColorBlendStateCreateInfo const &) const = default;
#else
bool operator==(PipelineColorBlendStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (logicOpEnable == rhs.logicOpEnable) &&
(logicOp == rhs.logicOp) && (attachmentCount == rhs.attachmentCount) && (pAttachments == rhs.pAttachments) &&
(blendConstants == rhs.blendConstants);
# endif
}
bool operator!=(PipelineColorBlendStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineColorBlendStateCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::Bool32 logicOpEnable = {};
VULKAN_HPP_NAMESPACE::LogicOp logicOp = VULKAN_HPP_NAMESPACE::LogicOp::eClear;
uint32_t attachmentCount = {};
const VULKAN_HPP_NAMESPACE::PipelineColorBlendAttachmentState *pAttachments = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 4> blendConstants = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo) == sizeof(VkPipelineColorBlendStateCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo>::value,
"PipelineColorBlendStateCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineColorBlendStateCreateInfo>
{
using Type = PipelineColorBlendStateCreateInfo;
};
struct PipelineDynamicStateCreateInfo
{
using NativeType = VkPipelineDynamicStateCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineDynamicStateCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineDynamicStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags flags_ = {},
uint32_t dynamicStateCount_ = {},
const VULKAN_HPP_NAMESPACE::DynamicState *pDynamicStates_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
dynamicStateCount(dynamicStateCount_),
pDynamicStates(pDynamicStates_)
{
}
VULKAN_HPP_CONSTEXPR PipelineDynamicStateCreateInfo(PipelineDynamicStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineDynamicStateCreateInfo(VkPipelineDynamicStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineDynamicStateCreateInfo(*reinterpret_cast<PipelineDynamicStateCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineDynamicStateCreateInfo(VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DynamicState> const &dynamicStates_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, dynamicStateCount(static_cast<uint32_t>(dynamicStates_.size()))
, pDynamicStates(dynamicStates_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineDynamicStateCreateInfo &operator=(PipelineDynamicStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineDynamicStateCreateInfo &operator=(VkPipelineDynamicStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineDynamicStateCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDynamicStateCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDynamicStateCreateInfo &setDynamicStateCount(uint32_t dynamicStateCount_) VULKAN_HPP_NOEXCEPT
{
dynamicStateCount = dynamicStateCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDynamicStateCreateInfo &setPDynamicStates(const VULKAN_HPP_NAMESPACE::DynamicState *pDynamicStates_) VULKAN_HPP_NOEXCEPT
{
pDynamicStates = pDynamicStates_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineDynamicStateCreateInfo &
setDynamicStates(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DynamicState> const &dynamicStates_) VULKAN_HPP_NOEXCEPT
{
dynamicStateCount = static_cast<uint32_t>(dynamicStates_.size());
pDynamicStates = dynamicStates_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineDynamicStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineDynamicStateCreateInfo *>(this);
}
explicit operator VkPipelineDynamicStateCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineDynamicStateCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DynamicState *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, dynamicStateCount, pDynamicStates);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineDynamicStateCreateInfo const &) const = default;
#else
bool operator==(PipelineDynamicStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (dynamicStateCount == rhs.dynamicStateCount) &&
(pDynamicStates == rhs.pDynamicStates);
# endif
}
bool operator!=(PipelineDynamicStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineDynamicStateCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateFlags flags = {};
uint32_t dynamicStateCount = {};
const VULKAN_HPP_NAMESPACE::DynamicState *pDynamicStates = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo) == sizeof(VkPipelineDynamicStateCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo>::value,
"PipelineDynamicStateCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineDynamicStateCreateInfo>
{
using Type = PipelineDynamicStateCreateInfo;
};
struct GraphicsPipelineCreateInfo
{
using NativeType = VkGraphicsPipelineCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGraphicsPipelineCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ = {},
uint32_t stageCount_ = {},
const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *pStages_ = {},
const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo *pVertexInputState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo *pInputAssemblyState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo *pTessellationState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo *pViewportState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo *pRasterizationState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo *pMultisampleState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo *pDepthStencilState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo *pColorBlendState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo *pDynamicState_ = {},
VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {},
uint32_t subpass_ = {},
VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
int32_t basePipelineIndex_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
stageCount(stageCount_),
pStages(pStages_),
pVertexInputState(pVertexInputState_),
pInputAssemblyState(pInputAssemblyState_),
pTessellationState(pTessellationState_),
pViewportState(pViewportState_),
pRasterizationState(pRasterizationState_),
pMultisampleState(pMultisampleState_),
pDepthStencilState(pDepthStencilState_),
pColorBlendState(pColorBlendState_),
pDynamicState(pDynamicState_),
layout(layout_),
renderPass(renderPass_),
subpass(subpass_),
basePipelineHandle(basePipelineHandle_),
basePipelineIndex(basePipelineIndex_)
{
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo(GraphicsPipelineCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
GraphicsPipelineCreateInfo(VkGraphicsPipelineCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: GraphicsPipelineCreateInfo(*reinterpret_cast<GraphicsPipelineCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
GraphicsPipelineCreateInfo(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &stages_,
const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo *pVertexInputState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo *pInputAssemblyState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo *pTessellationState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo *pViewportState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo *pRasterizationState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo *pMultisampleState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo *pDepthStencilState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo *pColorBlendState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo *pDynamicState_ = {},
VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {},
uint32_t subpass_ = {},
VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
int32_t basePipelineIndex_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, stageCount(static_cast<uint32_t>(stages_.size()))
, pStages(stages_.data())
, pVertexInputState(pVertexInputState_)
, pInputAssemblyState(pInputAssemblyState_)
, pTessellationState(pTessellationState_)
, pViewportState(pViewportState_)
, pRasterizationState(pRasterizationState_)
, pMultisampleState(pMultisampleState_)
, pDepthStencilState(pDepthStencilState_)
, pColorBlendState(pColorBlendState_)
, pDynamicState(pDynamicState_)
, layout(layout_)
, renderPass(renderPass_)
, subpass(subpass_)
, basePipelineHandle(basePipelineHandle_)
, basePipelineIndex(basePipelineIndex_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
GraphicsPipelineCreateInfo &operator=(GraphicsPipelineCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
GraphicsPipelineCreateInfo &operator=(VkGraphicsPipelineCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &setStageCount(uint32_t stageCount_) VULKAN_HPP_NOEXCEPT
{
stageCount = stageCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &setPStages(const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *pStages_) VULKAN_HPP_NOEXCEPT
{
pStages = pStages_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
GraphicsPipelineCreateInfo &
setStages(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &stages_) VULKAN_HPP_NOEXCEPT
{
stageCount = static_cast<uint32_t>(stages_.size());
pStages = stages_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &
setPVertexInputState(const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo *pVertexInputState_) VULKAN_HPP_NOEXCEPT
{
pVertexInputState = pVertexInputState_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &
setPInputAssemblyState(const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo *pInputAssemblyState_) VULKAN_HPP_NOEXCEPT
{
pInputAssemblyState = pInputAssemblyState_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &
setPTessellationState(const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo *pTessellationState_) VULKAN_HPP_NOEXCEPT
{
pTessellationState = pTessellationState_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &
setPViewportState(const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo *pViewportState_) VULKAN_HPP_NOEXCEPT
{
pViewportState = pViewportState_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &
setPRasterizationState(const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo *pRasterizationState_) VULKAN_HPP_NOEXCEPT
{
pRasterizationState = pRasterizationState_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &
setPMultisampleState(const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo *pMultisampleState_) VULKAN_HPP_NOEXCEPT
{
pMultisampleState = pMultisampleState_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &
setPDepthStencilState(const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo *pDepthStencilState_) VULKAN_HPP_NOEXCEPT
{
pDepthStencilState = pDepthStencilState_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &
setPColorBlendState(const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo *pColorBlendState_) VULKAN_HPP_NOEXCEPT
{
pColorBlendState = pColorBlendState_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &
setPDynamicState(const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo *pDynamicState_) VULKAN_HPP_NOEXCEPT
{
pDynamicState = pDynamicState_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &setLayout(VULKAN_HPP_NAMESPACE::PipelineLayout layout_) VULKAN_HPP_NOEXCEPT
{
layout = layout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &setRenderPass(VULKAN_HPP_NAMESPACE::RenderPass renderPass_) VULKAN_HPP_NOEXCEPT
{
renderPass = renderPass_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &setSubpass(uint32_t subpass_) VULKAN_HPP_NOEXCEPT
{
subpass = subpass_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &setBasePipelineHandle(VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_) VULKAN_HPP_NOEXCEPT
{
basePipelineHandle = basePipelineHandle_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineCreateInfo &setBasePipelineIndex(int32_t basePipelineIndex_) VULKAN_HPP_NOEXCEPT
{
basePipelineIndex = basePipelineIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkGraphicsPipelineCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkGraphicsPipelineCreateInfo *>(this);
}
explicit operator VkGraphicsPipelineCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkGraphicsPipelineCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineCreateFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *const &,
const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo *const &,
const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo *const &,
const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo *const &,
const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo *const &,
const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo *const &,
const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo *const &,
const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo *const &,
const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo *const &,
const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo *const &,
VULKAN_HPP_NAMESPACE::PipelineLayout const &,
VULKAN_HPP_NAMESPACE::RenderPass const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Pipeline const &,
int32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
stageCount,
pStages,
pVertexInputState,
pInputAssemblyState,
pTessellationState,
pViewportState,
pRasterizationState,
pMultisampleState,
pDepthStencilState,
pColorBlendState,
pDynamicState,
layout,
renderPass,
subpass,
basePipelineHandle,
basePipelineIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(GraphicsPipelineCreateInfo const &) const = default;
#else
bool operator==(GraphicsPipelineCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (stageCount == rhs.stageCount) && (pStages == rhs.pStages) &&
(pVertexInputState == rhs.pVertexInputState) && (pInputAssemblyState == rhs.pInputAssemblyState) &&
(pTessellationState == rhs.pTessellationState) && (pViewportState == rhs.pViewportState) &&
(pRasterizationState == rhs.pRasterizationState) && (pMultisampleState == rhs.pMultisampleState) &&
(pDepthStencilState == rhs.pDepthStencilState) && (pColorBlendState == rhs.pColorBlendState) && (pDynamicState == rhs.pDynamicState) &&
(layout == rhs.layout) && (renderPass == rhs.renderPass) && (subpass == rhs.subpass) && (basePipelineHandle == rhs.basePipelineHandle) &&
(basePipelineIndex == rhs.basePipelineIndex);
# endif
}
bool operator!=(GraphicsPipelineCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGraphicsPipelineCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags = {};
uint32_t stageCount = {};
const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *pStages = {};
const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo *pVertexInputState = {};
const VULKAN_HPP_NAMESPACE::PipelineInputAssemblyStateCreateInfo *pInputAssemblyState = {};
const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo *pTessellationState = {};
const VULKAN_HPP_NAMESPACE::PipelineViewportStateCreateInfo *pViewportState = {};
const VULKAN_HPP_NAMESPACE::PipelineRasterizationStateCreateInfo *pRasterizationState = {};
const VULKAN_HPP_NAMESPACE::PipelineMultisampleStateCreateInfo *pMultisampleState = {};
const VULKAN_HPP_NAMESPACE::PipelineDepthStencilStateCreateInfo *pDepthStencilState = {};
const VULKAN_HPP_NAMESPACE::PipelineColorBlendStateCreateInfo *pColorBlendState = {};
const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo *pDynamicState = {};
VULKAN_HPP_NAMESPACE::PipelineLayout layout = {};
VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
uint32_t subpass = {};
VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle = {};
int32_t basePipelineIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo) == sizeof(VkGraphicsPipelineCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GraphicsPipelineCreateInfo>::value,
"GraphicsPipelineCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eGraphicsPipelineCreateInfo>
{
using Type = GraphicsPipelineCreateInfo;
};
struct GraphicsPipelineLibraryCreateInfoEXT
{
using NativeType = VkGraphicsPipelineLibraryCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGraphicsPipelineLibraryCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR GraphicsPipelineLibraryCreateInfoEXT(VULKAN_HPP_NAMESPACE::GraphicsPipelineLibraryFlagsEXT flags_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR GraphicsPipelineLibraryCreateInfoEXT(GraphicsPipelineLibraryCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
GraphicsPipelineLibraryCreateInfoEXT(VkGraphicsPipelineLibraryCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: GraphicsPipelineLibraryCreateInfoEXT(*reinterpret_cast<GraphicsPipelineLibraryCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
GraphicsPipelineLibraryCreateInfoEXT &operator=(GraphicsPipelineLibraryCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
GraphicsPipelineLibraryCreateInfoEXT &operator=(VkGraphicsPipelineLibraryCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GraphicsPipelineLibraryCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineLibraryCreateInfoEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineLibraryCreateInfoEXT &setFlags(VULKAN_HPP_NAMESPACE::GraphicsPipelineLibraryFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkGraphicsPipelineLibraryCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkGraphicsPipelineLibraryCreateInfoEXT *>(this);
}
explicit operator VkGraphicsPipelineLibraryCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkGraphicsPipelineLibraryCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::GraphicsPipelineLibraryFlagsEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(GraphicsPipelineLibraryCreateInfoEXT const &) const = default;
#else
bool operator==(GraphicsPipelineLibraryCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags);
# endif
}
bool operator!=(GraphicsPipelineLibraryCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGraphicsPipelineLibraryCreateInfoEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::GraphicsPipelineLibraryFlagsEXT flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::GraphicsPipelineLibraryCreateInfoEXT) == sizeof(VkGraphicsPipelineLibraryCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::GraphicsPipelineLibraryCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GraphicsPipelineLibraryCreateInfoEXT>::value,
"GraphicsPipelineLibraryCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eGraphicsPipelineLibraryCreateInfoEXT>
{
using Type = GraphicsPipelineLibraryCreateInfoEXT;
};
struct GraphicsShaderGroupCreateInfoNV
{
using NativeType = VkGraphicsShaderGroupCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGraphicsShaderGroupCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR GraphicsShaderGroupCreateInfoNV(uint32_t stageCount_ = {},
const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *pStages_ = {},
const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo *pVertexInputState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo *pTessellationState_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
stageCount(stageCount_),
pStages(pStages_),
pVertexInputState(pVertexInputState_),
pTessellationState(pTessellationState_)
{
}
VULKAN_HPP_CONSTEXPR GraphicsShaderGroupCreateInfoNV(GraphicsShaderGroupCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GraphicsShaderGroupCreateInfoNV(VkGraphicsShaderGroupCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: GraphicsShaderGroupCreateInfoNV(*reinterpret_cast<GraphicsShaderGroupCreateInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
GraphicsShaderGroupCreateInfoNV(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &stages_,
const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo *pVertexInputState_ = {},
const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo *pTessellationState_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, stageCount(static_cast<uint32_t>(stages_.size()))
, pStages(stages_.data())
, pVertexInputState(pVertexInputState_)
, pTessellationState(pTessellationState_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
GraphicsShaderGroupCreateInfoNV &operator=(GraphicsShaderGroupCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GraphicsShaderGroupCreateInfoNV &operator=(VkGraphicsShaderGroupCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 GraphicsShaderGroupCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsShaderGroupCreateInfoNV &setStageCount(uint32_t stageCount_) VULKAN_HPP_NOEXCEPT
{
stageCount = stageCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsShaderGroupCreateInfoNV &
setPStages(const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *pStages_) VULKAN_HPP_NOEXCEPT
{
pStages = pStages_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
GraphicsShaderGroupCreateInfoNV &
setStages(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &stages_) VULKAN_HPP_NOEXCEPT
{
stageCount = static_cast<uint32_t>(stages_.size());
pStages = stages_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 GraphicsShaderGroupCreateInfoNV &
setPVertexInputState(const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo *pVertexInputState_) VULKAN_HPP_NOEXCEPT
{
pVertexInputState = pVertexInputState_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsShaderGroupCreateInfoNV &
setPTessellationState(const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo *pTessellationState_) VULKAN_HPP_NOEXCEPT
{
pTessellationState = pTessellationState_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkGraphicsShaderGroupCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkGraphicsShaderGroupCreateInfoNV *>(this);
}
explicit operator VkGraphicsShaderGroupCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkGraphicsShaderGroupCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *const &,
const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo *const &,
const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, stageCount, pStages, pVertexInputState, pTessellationState);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(GraphicsShaderGroupCreateInfoNV const &) const = default;
#else
bool operator==(GraphicsShaderGroupCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (stageCount == rhs.stageCount) && (pStages == rhs.pStages) &&
(pVertexInputState == rhs.pVertexInputState) && (pTessellationState == rhs.pTessellationState);
# endif
}
bool operator!=(GraphicsShaderGroupCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGraphicsShaderGroupCreateInfoNV;
const void *pNext = {};
uint32_t stageCount = {};
const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *pStages = {};
const VULKAN_HPP_NAMESPACE::PipelineVertexInputStateCreateInfo *pVertexInputState = {};
const VULKAN_HPP_NAMESPACE::PipelineTessellationStateCreateInfo *pTessellationState = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV) == sizeof(VkGraphicsShaderGroupCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV>::value,
"GraphicsShaderGroupCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eGraphicsShaderGroupCreateInfoNV>
{
using Type = GraphicsShaderGroupCreateInfoNV;
};
struct GraphicsPipelineShaderGroupsCreateInfoNV
{
using NativeType = VkGraphicsPipelineShaderGroupsCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGraphicsPipelineShaderGroupsCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR GraphicsPipelineShaderGroupsCreateInfoNV(uint32_t groupCount_ = {},
const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV *pGroups_ = {},
uint32_t pipelineCount_ = {},
const VULKAN_HPP_NAMESPACE::Pipeline *pPipelines_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
groupCount(groupCount_),
pGroups(pGroups_),
pipelineCount(pipelineCount_),
pPipelines(pPipelines_)
{
}
VULKAN_HPP_CONSTEXPR GraphicsPipelineShaderGroupsCreateInfoNV(GraphicsPipelineShaderGroupsCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GraphicsPipelineShaderGroupsCreateInfoNV(VkGraphicsPipelineShaderGroupsCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: GraphicsPipelineShaderGroupsCreateInfoNV(*reinterpret_cast<GraphicsPipelineShaderGroupsCreateInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
GraphicsPipelineShaderGroupsCreateInfoNV(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV> const &groups_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Pipeline> const &pipelines_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, groupCount(static_cast<uint32_t>(groups_.size()))
, pGroups(groups_.data())
, pipelineCount(static_cast<uint32_t>(pipelines_.size()))
, pPipelines(pipelines_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
GraphicsPipelineShaderGroupsCreateInfoNV &operator=(GraphicsPipelineShaderGroupsCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
GraphicsPipelineShaderGroupsCreateInfoNV &operator=(VkGraphicsPipelineShaderGroupsCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::GraphicsPipelineShaderGroupsCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineShaderGroupsCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineShaderGroupsCreateInfoNV &setGroupCount(uint32_t groupCount_) VULKAN_HPP_NOEXCEPT
{
groupCount = groupCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineShaderGroupsCreateInfoNV &
setPGroups(const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV *pGroups_) VULKAN_HPP_NOEXCEPT
{
pGroups = pGroups_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
GraphicsPipelineShaderGroupsCreateInfoNV &setGroups(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV> const &groups_) VULKAN_HPP_NOEXCEPT
{
groupCount = static_cast<uint32_t>(groups_.size());
pGroups = groups_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineShaderGroupsCreateInfoNV &setPipelineCount(uint32_t pipelineCount_) VULKAN_HPP_NOEXCEPT
{
pipelineCount = pipelineCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 GraphicsPipelineShaderGroupsCreateInfoNV &setPPipelines(const VULKAN_HPP_NAMESPACE::Pipeline *pPipelines_) VULKAN_HPP_NOEXCEPT
{
pPipelines = pPipelines_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
GraphicsPipelineShaderGroupsCreateInfoNV &
setPipelines(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Pipeline> const &pipelines_) VULKAN_HPP_NOEXCEPT
{
pipelineCount = static_cast<uint32_t>(pipelines_.size());
pPipelines = pipelines_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkGraphicsPipelineShaderGroupsCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkGraphicsPipelineShaderGroupsCreateInfoNV *>(this);
}
explicit operator VkGraphicsPipelineShaderGroupsCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkGraphicsPipelineShaderGroupsCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Pipeline *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, groupCount, pGroups, pipelineCount, pPipelines);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(GraphicsPipelineShaderGroupsCreateInfoNV const &) const = default;
#else
bool operator==(GraphicsPipelineShaderGroupsCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (groupCount == rhs.groupCount) && (pGroups == rhs.pGroups) &&
(pipelineCount == rhs.pipelineCount) && (pPipelines == rhs.pPipelines);
# endif
}
bool operator!=(GraphicsPipelineShaderGroupsCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGraphicsPipelineShaderGroupsCreateInfoNV;
const void *pNext = {};
uint32_t groupCount = {};
const VULKAN_HPP_NAMESPACE::GraphicsShaderGroupCreateInfoNV *pGroups = {};
uint32_t pipelineCount = {};
const VULKAN_HPP_NAMESPACE::Pipeline *pPipelines = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::GraphicsPipelineShaderGroupsCreateInfoNV) == sizeof(VkGraphicsPipelineShaderGroupsCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::GraphicsPipelineShaderGroupsCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GraphicsPipelineShaderGroupsCreateInfoNV>::value,
"GraphicsPipelineShaderGroupsCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eGraphicsPipelineShaderGroupsCreateInfoNV>
{
using Type = GraphicsPipelineShaderGroupsCreateInfoNV;
};
struct XYColorEXT
{
using NativeType = VkXYColorEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR XYColorEXT(float x_ = {}, float y_ = {}) VULKAN_HPP_NOEXCEPT
: x(x_),
y(y_)
{
}
VULKAN_HPP_CONSTEXPR XYColorEXT(XYColorEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
XYColorEXT(VkXYColorEXT const &rhs) VULKAN_HPP_NOEXCEPT : XYColorEXT(*reinterpret_cast<XYColorEXT const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
XYColorEXT &operator=(XYColorEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
XYColorEXT &operator=(VkXYColorEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::XYColorEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 XYColorEXT &setX(float x_) VULKAN_HPP_NOEXCEPT
{
x = x_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 XYColorEXT &setY(float y_) VULKAN_HPP_NOEXCEPT
{
y = y_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkXYColorEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkXYColorEXT *>(this);
}
explicit operator VkXYColorEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkXYColorEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<float const &, float const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(x, y);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(XYColorEXT const &) const = default;
#else
bool operator==(XYColorEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (x == rhs.x) && (y == rhs.y);
# endif
}
bool operator!=(XYColorEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
float x = {};
float y = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::XYColorEXT) == sizeof(VkXYColorEXT), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::XYColorEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::XYColorEXT>::value, "XYColorEXT is not nothrow_move_constructible!");
struct HdrMetadataEXT
{
using NativeType = VkHdrMetadataEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eHdrMetadataEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR HdrMetadataEXT(VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryRed_ = {},
VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryGreen_ = {},
VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryBlue_ = {},
VULKAN_HPP_NAMESPACE::XYColorEXT whitePoint_ = {},
float maxLuminance_ = {},
float minLuminance_ = {},
float maxContentLightLevel_ = {},
float maxFrameAverageLightLevel_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
displayPrimaryRed(displayPrimaryRed_),
displayPrimaryGreen(displayPrimaryGreen_),
displayPrimaryBlue(displayPrimaryBlue_),
whitePoint(whitePoint_),
maxLuminance(maxLuminance_),
minLuminance(minLuminance_),
maxContentLightLevel(maxContentLightLevel_),
maxFrameAverageLightLevel(maxFrameAverageLightLevel_)
{
}
VULKAN_HPP_CONSTEXPR HdrMetadataEXT(HdrMetadataEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
HdrMetadataEXT(VkHdrMetadataEXT const &rhs) VULKAN_HPP_NOEXCEPT : HdrMetadataEXT(*reinterpret_cast<HdrMetadataEXT const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
HdrMetadataEXT &operator=(HdrMetadataEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
HdrMetadataEXT &operator=(VkHdrMetadataEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::HdrMetadataEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 HdrMetadataEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 HdrMetadataEXT &setDisplayPrimaryRed(VULKAN_HPP_NAMESPACE::XYColorEXT const &displayPrimaryRed_) VULKAN_HPP_NOEXCEPT
{
displayPrimaryRed = displayPrimaryRed_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 HdrMetadataEXT &setDisplayPrimaryGreen(VULKAN_HPP_NAMESPACE::XYColorEXT const &displayPrimaryGreen_) VULKAN_HPP_NOEXCEPT
{
displayPrimaryGreen = displayPrimaryGreen_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 HdrMetadataEXT &setDisplayPrimaryBlue(VULKAN_HPP_NAMESPACE::XYColorEXT const &displayPrimaryBlue_) VULKAN_HPP_NOEXCEPT
{
displayPrimaryBlue = displayPrimaryBlue_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 HdrMetadataEXT &setWhitePoint(VULKAN_HPP_NAMESPACE::XYColorEXT const &whitePoint_) VULKAN_HPP_NOEXCEPT
{
whitePoint = whitePoint_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 HdrMetadataEXT &setMaxLuminance(float maxLuminance_) VULKAN_HPP_NOEXCEPT
{
maxLuminance = maxLuminance_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 HdrMetadataEXT &setMinLuminance(float minLuminance_) VULKAN_HPP_NOEXCEPT
{
minLuminance = minLuminance_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 HdrMetadataEXT &setMaxContentLightLevel(float maxContentLightLevel_) VULKAN_HPP_NOEXCEPT
{
maxContentLightLevel = maxContentLightLevel_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 HdrMetadataEXT &setMaxFrameAverageLightLevel(float maxFrameAverageLightLevel_) VULKAN_HPP_NOEXCEPT
{
maxFrameAverageLightLevel = maxFrameAverageLightLevel_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkHdrMetadataEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkHdrMetadataEXT *>(this);
}
explicit operator VkHdrMetadataEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkHdrMetadataEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::XYColorEXT const &,
VULKAN_HPP_NAMESPACE::XYColorEXT const &,
VULKAN_HPP_NAMESPACE::XYColorEXT const &,
VULKAN_HPP_NAMESPACE::XYColorEXT const &,
float const &,
float const &,
float const &,
float const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
displayPrimaryRed,
displayPrimaryGreen,
displayPrimaryBlue,
whitePoint,
maxLuminance,
minLuminance,
maxContentLightLevel,
maxFrameAverageLightLevel);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(HdrMetadataEXT const &) const = default;
#else
bool operator==(HdrMetadataEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (displayPrimaryRed == rhs.displayPrimaryRed) &&
(displayPrimaryGreen == rhs.displayPrimaryGreen) && (displayPrimaryBlue == rhs.displayPrimaryBlue) && (whitePoint == rhs.whitePoint) &&
(maxLuminance == rhs.maxLuminance) && (minLuminance == rhs.minLuminance) && (maxContentLightLevel == rhs.maxContentLightLevel) &&
(maxFrameAverageLightLevel == rhs.maxFrameAverageLightLevel);
# endif
}
bool operator!=(HdrMetadataEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eHdrMetadataEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryRed = {};
VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryGreen = {};
VULKAN_HPP_NAMESPACE::XYColorEXT displayPrimaryBlue = {};
VULKAN_HPP_NAMESPACE::XYColorEXT whitePoint = {};
float maxLuminance = {};
float minLuminance = {};
float maxContentLightLevel = {};
float maxFrameAverageLightLevel = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::HdrMetadataEXT) == sizeof(VkHdrMetadataEXT), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::HdrMetadataEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::HdrMetadataEXT>::value,
"HdrMetadataEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eHdrMetadataEXT>
{
using Type = HdrMetadataEXT;
};
struct HeadlessSurfaceCreateInfoEXT
{
using NativeType = VkHeadlessSurfaceCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eHeadlessSurfaceCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR HeadlessSurfaceCreateInfoEXT(VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateFlagsEXT flags_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR HeadlessSurfaceCreateInfoEXT(HeadlessSurfaceCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
HeadlessSurfaceCreateInfoEXT(VkHeadlessSurfaceCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: HeadlessSurfaceCreateInfoEXT(*reinterpret_cast<HeadlessSurfaceCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
HeadlessSurfaceCreateInfoEXT &operator=(HeadlessSurfaceCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
HeadlessSurfaceCreateInfoEXT &operator=(VkHeadlessSurfaceCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 HeadlessSurfaceCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 HeadlessSurfaceCreateInfoEXT &setFlags(VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkHeadlessSurfaceCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkHeadlessSurfaceCreateInfoEXT *>(this);
}
explicit operator VkHeadlessSurfaceCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkHeadlessSurfaceCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateFlagsEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(HeadlessSurfaceCreateInfoEXT const &) const = default;
#else
bool operator==(HeadlessSurfaceCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags);
# endif
}
bool operator!=(HeadlessSurfaceCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eHeadlessSurfaceCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateFlagsEXT flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateInfoEXT) == sizeof(VkHeadlessSurfaceCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::HeadlessSurfaceCreateInfoEXT>::value,
"HeadlessSurfaceCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eHeadlessSurfaceCreateInfoEXT>
{
using Type = HeadlessSurfaceCreateInfoEXT;
};
#if defined(VK_USE_PLATFORM_IOS_MVK)
struct IOSSurfaceCreateInfoMVK
{
using NativeType = VkIOSSurfaceCreateInfoMVK;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eIosSurfaceCreateInfoMVK;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR IOSSurfaceCreateInfoMVK(VULKAN_HPP_NAMESPACE::IOSSurfaceCreateFlagsMVK flags_ = {},
const void *pView_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
pView(pView_)
{
}
VULKAN_HPP_CONSTEXPR IOSSurfaceCreateInfoMVK(IOSSurfaceCreateInfoMVK const &rhs) VULKAN_HPP_NOEXCEPT = default;
IOSSurfaceCreateInfoMVK(VkIOSSurfaceCreateInfoMVK const &rhs) VULKAN_HPP_NOEXCEPT
: IOSSurfaceCreateInfoMVK(*reinterpret_cast<IOSSurfaceCreateInfoMVK const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
IOSSurfaceCreateInfoMVK &operator=(IOSSurfaceCreateInfoMVK const &rhs) VULKAN_HPP_NOEXCEPT = default;
IOSSurfaceCreateInfoMVK &operator=(VkIOSSurfaceCreateInfoMVK const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::IOSSurfaceCreateInfoMVK const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 IOSSurfaceCreateInfoMVK &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IOSSurfaceCreateInfoMVK &setFlags(VULKAN_HPP_NAMESPACE::IOSSurfaceCreateFlagsMVK flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IOSSurfaceCreateInfoMVK &setPView(const void *pView_) VULKAN_HPP_NOEXCEPT
{
pView = pView_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkIOSSurfaceCreateInfoMVK const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkIOSSurfaceCreateInfoMVK *>(this);
}
explicit operator VkIOSSurfaceCreateInfoMVK &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkIOSSurfaceCreateInfoMVK *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::IOSSurfaceCreateFlagsMVK const &, const void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, pView);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(IOSSurfaceCreateInfoMVK const &) const = default;
# else
bool operator==(IOSSurfaceCreateInfoMVK const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (pView == rhs.pView);
# endif
}
bool operator!=(IOSSurfaceCreateInfoMVK const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eIosSurfaceCreateInfoMVK;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::IOSSurfaceCreateFlagsMVK flags = {};
const void *pView = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::IOSSurfaceCreateInfoMVK) == sizeof(VkIOSSurfaceCreateInfoMVK),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::IOSSurfaceCreateInfoMVK>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::IOSSurfaceCreateInfoMVK>::value,
"IOSSurfaceCreateInfoMVK is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eIosSurfaceCreateInfoMVK>
{
using Type = IOSSurfaceCreateInfoMVK;
};
#endif /*VK_USE_PLATFORM_IOS_MVK*/
struct ImageBlit
{
using NativeType = VkImageBlit;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 ImageBlit(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {},
std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const &srcOffsets_ = {},
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {},
std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const &dstOffsets_ = {}) VULKAN_HPP_NOEXCEPT
: srcSubresource(srcSubresource_),
srcOffsets(srcOffsets_),
dstSubresource(dstSubresource_),
dstOffsets(dstOffsets_)
{
}
VULKAN_HPP_CONSTEXPR_14 ImageBlit(ImageBlit const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageBlit(VkImageBlit const &rhs) VULKAN_HPP_NOEXCEPT : ImageBlit(*reinterpret_cast<ImageBlit const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageBlit &operator=(ImageBlit const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageBlit &operator=(VkImageBlit const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageBlit const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageBlit &setSrcSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &srcSubresource_) VULKAN_HPP_NOEXCEPT
{
srcSubresource = srcSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageBlit &setSrcOffsets(std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const &srcOffsets_) VULKAN_HPP_NOEXCEPT
{
srcOffsets = srcOffsets_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageBlit &setDstSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &dstSubresource_) VULKAN_HPP_NOEXCEPT
{
dstSubresource = dstSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageBlit &setDstOffsets(std::array<VULKAN_HPP_NAMESPACE::Offset3D, 2> const &dstOffsets_) VULKAN_HPP_NOEXCEPT
{
dstOffsets = dstOffsets_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageBlit const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageBlit *>(this);
}
explicit operator VkImageBlit &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageBlit *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(srcSubresource, srcOffsets, dstSubresource, dstOffsets);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageBlit const &) const = default;
#else
bool operator==(ImageBlit const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (srcSubresource == rhs.srcSubresource) && (srcOffsets == rhs.srcOffsets) && (dstSubresource == rhs.dstSubresource) &&
(dstOffsets == rhs.dstOffsets);
# endif
}
bool operator!=(ImageBlit const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> srcOffsets = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::Offset3D, 2> dstOffsets = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageBlit) == sizeof(VkImageBlit), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageBlit>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageBlit>::value, "ImageBlit is not nothrow_move_constructible!");
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct ImageFormatConstraintsInfoFUCHSIA
{
using NativeType = VkImageFormatConstraintsInfoFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageFormatConstraintsInfoFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageFormatConstraintsInfoFUCHSIA(VULKAN_HPP_NAMESPACE::ImageCreateInfo imageCreateInfo_ = {},
VULKAN_HPP_NAMESPACE::FormatFeatureFlags requiredFormatFeatures_ = {},
VULKAN_HPP_NAMESPACE::ImageFormatConstraintsFlagsFUCHSIA flags_ = {},
uint64_t sysmemPixelFormat_ = {},
uint32_t colorSpaceCount_ = {},
const VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA *pColorSpaces_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
imageCreateInfo(imageCreateInfo_),
requiredFormatFeatures(requiredFormatFeatures_),
flags(flags_),
sysmemPixelFormat(sysmemPixelFormat_),
colorSpaceCount(colorSpaceCount_),
pColorSpaces(pColorSpaces_)
{
}
VULKAN_HPP_CONSTEXPR ImageFormatConstraintsInfoFUCHSIA(ImageFormatConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageFormatConstraintsInfoFUCHSIA(VkImageFormatConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: ImageFormatConstraintsInfoFUCHSIA(*reinterpret_cast<ImageFormatConstraintsInfoFUCHSIA const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ImageFormatConstraintsInfoFUCHSIA(VULKAN_HPP_NAMESPACE::ImageCreateInfo imageCreateInfo_,
VULKAN_HPP_NAMESPACE::FormatFeatureFlags requiredFormatFeatures_,
VULKAN_HPP_NAMESPACE::ImageFormatConstraintsFlagsFUCHSIA flags_,
uint64_t sysmemPixelFormat_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA> const &colorSpaces_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, imageCreateInfo(imageCreateInfo_)
, requiredFormatFeatures(requiredFormatFeatures_)
, flags(flags_)
, sysmemPixelFormat(sysmemPixelFormat_)
, colorSpaceCount(static_cast<uint32_t>(colorSpaces_.size()))
, pColorSpaces(colorSpaces_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageFormatConstraintsInfoFUCHSIA &operator=(ImageFormatConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageFormatConstraintsInfoFUCHSIA &operator=(VkImageFormatConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageFormatConstraintsInfoFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageFormatConstraintsInfoFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageFormatConstraintsInfoFUCHSIA &
setImageCreateInfo(VULKAN_HPP_NAMESPACE::ImageCreateInfo const &imageCreateInfo_) VULKAN_HPP_NOEXCEPT
{
imageCreateInfo = imageCreateInfo_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageFormatConstraintsInfoFUCHSIA &
setRequiredFormatFeatures(VULKAN_HPP_NAMESPACE::FormatFeatureFlags requiredFormatFeatures_) VULKAN_HPP_NOEXCEPT
{
requiredFormatFeatures = requiredFormatFeatures_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageFormatConstraintsInfoFUCHSIA &setFlags(VULKAN_HPP_NAMESPACE::ImageFormatConstraintsFlagsFUCHSIA flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageFormatConstraintsInfoFUCHSIA &setSysmemPixelFormat(uint64_t sysmemPixelFormat_) VULKAN_HPP_NOEXCEPT
{
sysmemPixelFormat = sysmemPixelFormat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageFormatConstraintsInfoFUCHSIA &setColorSpaceCount(uint32_t colorSpaceCount_) VULKAN_HPP_NOEXCEPT
{
colorSpaceCount = colorSpaceCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageFormatConstraintsInfoFUCHSIA &
setPColorSpaces(const VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA *pColorSpaces_) VULKAN_HPP_NOEXCEPT
{
pColorSpaces = pColorSpaces_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ImageFormatConstraintsInfoFUCHSIA &setColorSpaces(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA> const &colorSpaces_) VULKAN_HPP_NOEXCEPT
{
colorSpaceCount = static_cast<uint32_t>(colorSpaces_.size());
pColorSpaces = colorSpaces_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageFormatConstraintsInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageFormatConstraintsInfoFUCHSIA *>(this);
}
explicit operator VkImageFormatConstraintsInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageFormatConstraintsInfoFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ImageCreateInfo const &,
VULKAN_HPP_NAMESPACE::FormatFeatureFlags const &,
VULKAN_HPP_NAMESPACE::ImageFormatConstraintsFlagsFUCHSIA const &,
uint64_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, imageCreateInfo, requiredFormatFeatures, flags, sysmemPixelFormat, colorSpaceCount, pColorSpaces);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageFormatConstraintsInfoFUCHSIA const &) const = default;
# else
bool operator==(ImageFormatConstraintsInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (imageCreateInfo == rhs.imageCreateInfo) &&
(requiredFormatFeatures == rhs.requiredFormatFeatures) && (flags == rhs.flags) && (sysmemPixelFormat == rhs.sysmemPixelFormat) &&
(colorSpaceCount == rhs.colorSpaceCount) && (pColorSpaces == rhs.pColorSpaces);
# endif
}
bool operator!=(ImageFormatConstraintsInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageFormatConstraintsInfoFUCHSIA;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageCreateInfo imageCreateInfo = {};
VULKAN_HPP_NAMESPACE::FormatFeatureFlags requiredFormatFeatures = {};
VULKAN_HPP_NAMESPACE::ImageFormatConstraintsFlagsFUCHSIA flags = {};
uint64_t sysmemPixelFormat = {};
uint32_t colorSpaceCount = {};
const VULKAN_HPP_NAMESPACE::SysmemColorSpaceFUCHSIA *pColorSpaces = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageFormatConstraintsInfoFUCHSIA) == sizeof(VkImageFormatConstraintsInfoFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageFormatConstraintsInfoFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageFormatConstraintsInfoFUCHSIA>::value,
"ImageFormatConstraintsInfoFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageFormatConstraintsInfoFUCHSIA>
{
using Type = ImageFormatConstraintsInfoFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct ImageConstraintsInfoFUCHSIA
{
using NativeType = VkImageConstraintsInfoFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageConstraintsInfoFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageConstraintsInfoFUCHSIA(uint32_t formatConstraintsCount_ = {},
const VULKAN_HPP_NAMESPACE::ImageFormatConstraintsInfoFUCHSIA *pFormatConstraints_ = {},
VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA bufferCollectionConstraints_ = {},
VULKAN_HPP_NAMESPACE::ImageConstraintsInfoFlagsFUCHSIA flags_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
formatConstraintsCount(formatConstraintsCount_),
pFormatConstraints(pFormatConstraints_),
bufferCollectionConstraints(bufferCollectionConstraints_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR ImageConstraintsInfoFUCHSIA(ImageConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageConstraintsInfoFUCHSIA(VkImageConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: ImageConstraintsInfoFUCHSIA(*reinterpret_cast<ImageConstraintsInfoFUCHSIA const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ImageConstraintsInfoFUCHSIA(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageFormatConstraintsInfoFUCHSIA> const &formatConstraints_,
VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA bufferCollectionConstraints_ = {},
VULKAN_HPP_NAMESPACE::ImageConstraintsInfoFlagsFUCHSIA flags_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, formatConstraintsCount(static_cast<uint32_t>(formatConstraints_.size()))
, pFormatConstraints(formatConstraints_.data())
, bufferCollectionConstraints(bufferCollectionConstraints_)
, flags(flags_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageConstraintsInfoFUCHSIA &operator=(ImageConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageConstraintsInfoFUCHSIA &operator=(VkImageConstraintsInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageConstraintsInfoFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageConstraintsInfoFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageConstraintsInfoFUCHSIA &setFormatConstraintsCount(uint32_t formatConstraintsCount_) VULKAN_HPP_NOEXCEPT
{
formatConstraintsCount = formatConstraintsCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageConstraintsInfoFUCHSIA &
setPFormatConstraints(const VULKAN_HPP_NAMESPACE::ImageFormatConstraintsInfoFUCHSIA *pFormatConstraints_) VULKAN_HPP_NOEXCEPT
{
pFormatConstraints = pFormatConstraints_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ImageConstraintsInfoFUCHSIA &setFormatConstraints(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageFormatConstraintsInfoFUCHSIA> const &formatConstraints_)
VULKAN_HPP_NOEXCEPT
{
formatConstraintsCount = static_cast<uint32_t>(formatConstraints_.size());
pFormatConstraints = formatConstraints_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 ImageConstraintsInfoFUCHSIA &
setBufferCollectionConstraints(VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA const &bufferCollectionConstraints_) VULKAN_HPP_NOEXCEPT
{
bufferCollectionConstraints = bufferCollectionConstraints_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageConstraintsInfoFUCHSIA &setFlags(VULKAN_HPP_NAMESPACE::ImageConstraintsInfoFlagsFUCHSIA flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageConstraintsInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageConstraintsInfoFUCHSIA *>(this);
}
explicit operator VkImageConstraintsInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageConstraintsInfoFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ImageFormatConstraintsInfoFUCHSIA *const &,
VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA const &,
VULKAN_HPP_NAMESPACE::ImageConstraintsInfoFlagsFUCHSIA const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, formatConstraintsCount, pFormatConstraints, bufferCollectionConstraints, flags);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageConstraintsInfoFUCHSIA const &) const = default;
# else
bool operator==(ImageConstraintsInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (formatConstraintsCount == rhs.formatConstraintsCount) &&
(pFormatConstraints == rhs.pFormatConstraints) && (bufferCollectionConstraints == rhs.bufferCollectionConstraints) && (flags == rhs.flags);
# endif
}
bool operator!=(ImageConstraintsInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageConstraintsInfoFUCHSIA;
const void *pNext = {};
uint32_t formatConstraintsCount = {};
const VULKAN_HPP_NAMESPACE::ImageFormatConstraintsInfoFUCHSIA *pFormatConstraints = {};
VULKAN_HPP_NAMESPACE::BufferCollectionConstraintsInfoFUCHSIA bufferCollectionConstraints = {};
VULKAN_HPP_NAMESPACE::ImageConstraintsInfoFlagsFUCHSIA flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageConstraintsInfoFUCHSIA) == sizeof(VkImageConstraintsInfoFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageConstraintsInfoFUCHSIA>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageConstraintsInfoFUCHSIA>::value,
"ImageConstraintsInfoFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageConstraintsInfoFUCHSIA>
{
using Type = ImageConstraintsInfoFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
struct ImageCopy
{
using NativeType = VkImageCopy;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageCopy(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {},
VULKAN_HPP_NAMESPACE::Offset3D srcOffset_ = {},
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {},
VULKAN_HPP_NAMESPACE::Offset3D dstOffset_ = {},
VULKAN_HPP_NAMESPACE::Extent3D extent_ = {}) VULKAN_HPP_NOEXCEPT
: srcSubresource(srcSubresource_),
srcOffset(srcOffset_),
dstSubresource(dstSubresource_),
dstOffset(dstOffset_),
extent(extent_)
{
}
VULKAN_HPP_CONSTEXPR ImageCopy(ImageCopy const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageCopy(VkImageCopy const &rhs) VULKAN_HPP_NOEXCEPT : ImageCopy(*reinterpret_cast<ImageCopy const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageCopy &operator=(ImageCopy const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageCopy &operator=(VkImageCopy const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageCopy const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageCopy &setSrcSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &srcSubresource_) VULKAN_HPP_NOEXCEPT
{
srcSubresource = srcSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCopy &setSrcOffset(VULKAN_HPP_NAMESPACE::Offset3D const &srcOffset_) VULKAN_HPP_NOEXCEPT
{
srcOffset = srcOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCopy &setDstSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &dstSubresource_) VULKAN_HPP_NOEXCEPT
{
dstSubresource = dstSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCopy &setDstOffset(VULKAN_HPP_NAMESPACE::Offset3D const &dstOffset_) VULKAN_HPP_NOEXCEPT
{
dstOffset = dstOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageCopy &setExtent(VULKAN_HPP_NAMESPACE::Extent3D const &extent_) VULKAN_HPP_NOEXCEPT
{
extent = extent_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageCopy const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageCopy *>(this);
}
explicit operator VkImageCopy &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageCopy *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::Offset3D const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::Offset3D const &,
VULKAN_HPP_NAMESPACE::Extent3D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(srcSubresource, srcOffset, dstSubresource, dstOffset, extent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageCopy const &) const = default;
#else
bool operator==(ImageCopy const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (srcSubresource == rhs.srcSubresource) && (srcOffset == rhs.srcOffset) && (dstSubresource == rhs.dstSubresource) &&
(dstOffset == rhs.dstOffset) && (extent == rhs.extent);
# endif
}
bool operator!=(ImageCopy const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
VULKAN_HPP_NAMESPACE::Offset3D srcOffset = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
VULKAN_HPP_NAMESPACE::Offset3D dstOffset = {};
VULKAN_HPP_NAMESPACE::Extent3D extent = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageCopy) == sizeof(VkImageCopy), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageCopy>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageCopy>::value, "ImageCopy is not nothrow_move_constructible!");
struct SubresourceLayout
{
using NativeType = VkSubresourceLayout;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SubresourceLayout(VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize rowPitch_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize arrayPitch_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize depthPitch_ = {}) VULKAN_HPP_NOEXCEPT
: offset(offset_),
size(size_),
rowPitch(rowPitch_),
arrayPitch(arrayPitch_),
depthPitch(depthPitch_)
{
}
VULKAN_HPP_CONSTEXPR SubresourceLayout(SubresourceLayout const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubresourceLayout(VkSubresourceLayout const &rhs) VULKAN_HPP_NOEXCEPT : SubresourceLayout(*reinterpret_cast<SubresourceLayout const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubresourceLayout &operator=(SubresourceLayout const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubresourceLayout &operator=(VkSubresourceLayout const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubresourceLayout const *>(&rhs);
return *this;
}
explicit operator VkSubresourceLayout const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubresourceLayout *>(this);
}
explicit operator VkSubresourceLayout &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubresourceLayout *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(offset, size, rowPitch, arrayPitch, depthPitch);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubresourceLayout const &) const = default;
#else
bool operator==(SubresourceLayout const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (offset == rhs.offset) && (size == rhs.size) && (rowPitch == rhs.rowPitch) && (arrayPitch == rhs.arrayPitch) &&
(depthPitch == rhs.depthPitch);
# endif
}
bool operator!=(SubresourceLayout const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
VULKAN_HPP_NAMESPACE::DeviceSize rowPitch = {};
VULKAN_HPP_NAMESPACE::DeviceSize arrayPitch = {};
VULKAN_HPP_NAMESPACE::DeviceSize depthPitch = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubresourceLayout) == sizeof(VkSubresourceLayout), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubresourceLayout>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubresourceLayout>::value,
"SubresourceLayout is not nothrow_move_constructible!");
struct ImageDrmFormatModifierExplicitCreateInfoEXT
{
using NativeType = VkImageDrmFormatModifierExplicitCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageDrmFormatModifierExplicitCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierExplicitCreateInfoEXT(uint64_t drmFormatModifier_ = {},
uint32_t drmFormatModifierPlaneCount_ = {},
const VULKAN_HPP_NAMESPACE::SubresourceLayout *pPlaneLayouts_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
drmFormatModifier(drmFormatModifier_),
drmFormatModifierPlaneCount(drmFormatModifierPlaneCount_),
pPlaneLayouts(pPlaneLayouts_)
{
}
VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierExplicitCreateInfoEXT(ImageDrmFormatModifierExplicitCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageDrmFormatModifierExplicitCreateInfoEXT(VkImageDrmFormatModifierExplicitCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: ImageDrmFormatModifierExplicitCreateInfoEXT(*reinterpret_cast<ImageDrmFormatModifierExplicitCreateInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ImageDrmFormatModifierExplicitCreateInfoEXT(
uint64_t drmFormatModifier_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubresourceLayout> const &planeLayouts_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, drmFormatModifier(drmFormatModifier_)
, drmFormatModifierPlaneCount(static_cast<uint32_t>(planeLayouts_.size()))
, pPlaneLayouts(planeLayouts_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageDrmFormatModifierExplicitCreateInfoEXT &operator=(ImageDrmFormatModifierExplicitCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageDrmFormatModifierExplicitCreateInfoEXT &operator=(VkImageDrmFormatModifierExplicitCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierExplicitCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageDrmFormatModifierExplicitCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageDrmFormatModifierExplicitCreateInfoEXT &setDrmFormatModifier(uint64_t drmFormatModifier_) VULKAN_HPP_NOEXCEPT
{
drmFormatModifier = drmFormatModifier_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageDrmFormatModifierExplicitCreateInfoEXT &
setDrmFormatModifierPlaneCount(uint32_t drmFormatModifierPlaneCount_) VULKAN_HPP_NOEXCEPT
{
drmFormatModifierPlaneCount = drmFormatModifierPlaneCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageDrmFormatModifierExplicitCreateInfoEXT &
setPPlaneLayouts(const VULKAN_HPP_NAMESPACE::SubresourceLayout *pPlaneLayouts_) VULKAN_HPP_NOEXCEPT
{
pPlaneLayouts = pPlaneLayouts_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ImageDrmFormatModifierExplicitCreateInfoEXT &
setPlaneLayouts(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubresourceLayout> const &planeLayouts_) VULKAN_HPP_NOEXCEPT
{
drmFormatModifierPlaneCount = static_cast<uint32_t>(planeLayouts_.size());
pPlaneLayouts = planeLayouts_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageDrmFormatModifierExplicitCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageDrmFormatModifierExplicitCreateInfoEXT *>(this);
}
explicit operator VkImageDrmFormatModifierExplicitCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageDrmFormatModifierExplicitCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint64_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SubresourceLayout *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, drmFormatModifier, drmFormatModifierPlaneCount, pPlaneLayouts);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageDrmFormatModifierExplicitCreateInfoEXT const &) const = default;
#else
bool operator==(ImageDrmFormatModifierExplicitCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (drmFormatModifier == rhs.drmFormatModifier) &&
(drmFormatModifierPlaneCount == rhs.drmFormatModifierPlaneCount) && (pPlaneLayouts == rhs.pPlaneLayouts);
# endif
}
bool operator!=(ImageDrmFormatModifierExplicitCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageDrmFormatModifierExplicitCreateInfoEXT;
const void *pNext = {};
uint64_t drmFormatModifier = {};
uint32_t drmFormatModifierPlaneCount = {};
const VULKAN_HPP_NAMESPACE::SubresourceLayout *pPlaneLayouts = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierExplicitCreateInfoEXT) ==
sizeof(VkImageDrmFormatModifierExplicitCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierExplicitCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierExplicitCreateInfoEXT>::value,
"ImageDrmFormatModifierExplicitCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageDrmFormatModifierExplicitCreateInfoEXT>
{
using Type = ImageDrmFormatModifierExplicitCreateInfoEXT;
};
struct ImageDrmFormatModifierListCreateInfoEXT
{
using NativeType = VkImageDrmFormatModifierListCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageDrmFormatModifierListCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierListCreateInfoEXT(uint32_t drmFormatModifierCount_ = {},
const uint64_t *pDrmFormatModifiers_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
drmFormatModifierCount(drmFormatModifierCount_),
pDrmFormatModifiers(pDrmFormatModifiers_)
{
}
VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierListCreateInfoEXT(ImageDrmFormatModifierListCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageDrmFormatModifierListCreateInfoEXT(VkImageDrmFormatModifierListCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: ImageDrmFormatModifierListCreateInfoEXT(*reinterpret_cast<ImageDrmFormatModifierListCreateInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ImageDrmFormatModifierListCreateInfoEXT(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &drmFormatModifiers_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, drmFormatModifierCount(static_cast<uint32_t>(drmFormatModifiers_.size()))
, pDrmFormatModifiers(drmFormatModifiers_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageDrmFormatModifierListCreateInfoEXT &operator=(ImageDrmFormatModifierListCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageDrmFormatModifierListCreateInfoEXT &operator=(VkImageDrmFormatModifierListCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierListCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageDrmFormatModifierListCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageDrmFormatModifierListCreateInfoEXT &setDrmFormatModifierCount(uint32_t drmFormatModifierCount_) VULKAN_HPP_NOEXCEPT
{
drmFormatModifierCount = drmFormatModifierCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageDrmFormatModifierListCreateInfoEXT &setPDrmFormatModifiers(const uint64_t *pDrmFormatModifiers_) VULKAN_HPP_NOEXCEPT
{
pDrmFormatModifiers = pDrmFormatModifiers_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ImageDrmFormatModifierListCreateInfoEXT &
setDrmFormatModifiers(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &drmFormatModifiers_) VULKAN_HPP_NOEXCEPT
{
drmFormatModifierCount = static_cast<uint32_t>(drmFormatModifiers_.size());
pDrmFormatModifiers = drmFormatModifiers_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageDrmFormatModifierListCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageDrmFormatModifierListCreateInfoEXT *>(this);
}
explicit operator VkImageDrmFormatModifierListCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageDrmFormatModifierListCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const uint64_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, drmFormatModifierCount, pDrmFormatModifiers);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageDrmFormatModifierListCreateInfoEXT const &) const = default;
#else
bool operator==(ImageDrmFormatModifierListCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (drmFormatModifierCount == rhs.drmFormatModifierCount) &&
(pDrmFormatModifiers == rhs.pDrmFormatModifiers);
# endif
}
bool operator!=(ImageDrmFormatModifierListCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageDrmFormatModifierListCreateInfoEXT;
const void *pNext = {};
uint32_t drmFormatModifierCount = {};
const uint64_t *pDrmFormatModifiers = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierListCreateInfoEXT) == sizeof(VkImageDrmFormatModifierListCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierListCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierListCreateInfoEXT>::value,
"ImageDrmFormatModifierListCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageDrmFormatModifierListCreateInfoEXT>
{
using Type = ImageDrmFormatModifierListCreateInfoEXT;
};
struct ImageDrmFormatModifierPropertiesEXT
{
using NativeType = VkImageDrmFormatModifierPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageDrmFormatModifierPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierPropertiesEXT(uint64_t drmFormatModifier_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
drmFormatModifier(drmFormatModifier_)
{
}
VULKAN_HPP_CONSTEXPR ImageDrmFormatModifierPropertiesEXT(ImageDrmFormatModifierPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageDrmFormatModifierPropertiesEXT(VkImageDrmFormatModifierPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: ImageDrmFormatModifierPropertiesEXT(*reinterpret_cast<ImageDrmFormatModifierPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageDrmFormatModifierPropertiesEXT &operator=(ImageDrmFormatModifierPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageDrmFormatModifierPropertiesEXT &operator=(VkImageDrmFormatModifierPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkImageDrmFormatModifierPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageDrmFormatModifierPropertiesEXT *>(this);
}
explicit operator VkImageDrmFormatModifierPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageDrmFormatModifierPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, drmFormatModifier);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageDrmFormatModifierPropertiesEXT const &) const = default;
#else
bool operator==(ImageDrmFormatModifierPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (drmFormatModifier == rhs.drmFormatModifier);
# endif
}
bool operator!=(ImageDrmFormatModifierPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageDrmFormatModifierPropertiesEXT;
void *pNext = {};
uint64_t drmFormatModifier = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT) == sizeof(VkImageDrmFormatModifierPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageDrmFormatModifierPropertiesEXT>::value,
"ImageDrmFormatModifierPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageDrmFormatModifierPropertiesEXT>
{
using Type = ImageDrmFormatModifierPropertiesEXT;
};
struct ImageFormatListCreateInfo
{
using NativeType = VkImageFormatListCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageFormatListCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageFormatListCreateInfo(uint32_t viewFormatCount_ = {},
const VULKAN_HPP_NAMESPACE::Format *pViewFormats_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
viewFormatCount(viewFormatCount_),
pViewFormats(pViewFormats_)
{
}
VULKAN_HPP_CONSTEXPR ImageFormatListCreateInfo(ImageFormatListCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageFormatListCreateInfo(VkImageFormatListCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: ImageFormatListCreateInfo(*reinterpret_cast<ImageFormatListCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ImageFormatListCreateInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const &viewFormats_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, viewFormatCount(static_cast<uint32_t>(viewFormats_.size()))
, pViewFormats(viewFormats_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageFormatListCreateInfo &operator=(ImageFormatListCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageFormatListCreateInfo &operator=(VkImageFormatListCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageFormatListCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageFormatListCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageFormatListCreateInfo &setViewFormatCount(uint32_t viewFormatCount_) VULKAN_HPP_NOEXCEPT
{
viewFormatCount = viewFormatCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageFormatListCreateInfo &setPViewFormats(const VULKAN_HPP_NAMESPACE::Format *pViewFormats_) VULKAN_HPP_NOEXCEPT
{
pViewFormats = pViewFormats_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ImageFormatListCreateInfo &
setViewFormats(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const &viewFormats_) VULKAN_HPP_NOEXCEPT
{
viewFormatCount = static_cast<uint32_t>(viewFormats_.size());
pViewFormats = viewFormats_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageFormatListCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageFormatListCreateInfo *>(this);
}
explicit operator VkImageFormatListCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageFormatListCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::Format *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, viewFormatCount, pViewFormats);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageFormatListCreateInfo const &) const = default;
#else
bool operator==(ImageFormatListCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (viewFormatCount == rhs.viewFormatCount) && (pViewFormats == rhs.pViewFormats);
# endif
}
bool operator!=(ImageFormatListCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageFormatListCreateInfo;
const void *pNext = {};
uint32_t viewFormatCount = {};
const VULKAN_HPP_NAMESPACE::Format *pViewFormats = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageFormatListCreateInfo) == sizeof(VkImageFormatListCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageFormatListCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageFormatListCreateInfo>::value,
"ImageFormatListCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageFormatListCreateInfo>
{
using Type = ImageFormatListCreateInfo;
};
using ImageFormatListCreateInfoKHR = ImageFormatListCreateInfo;
struct ImageFormatProperties2
{
using NativeType = VkImageFormatProperties2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageFormatProperties2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageFormatProperties2(VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
imageFormatProperties(imageFormatProperties_)
{
}
VULKAN_HPP_CONSTEXPR ImageFormatProperties2(ImageFormatProperties2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageFormatProperties2(VkImageFormatProperties2 const &rhs) VULKAN_HPP_NOEXCEPT
: ImageFormatProperties2(*reinterpret_cast<ImageFormatProperties2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageFormatProperties2 &operator=(ImageFormatProperties2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageFormatProperties2 &operator=(VkImageFormatProperties2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageFormatProperties2 const *>(&rhs);
return *this;
}
explicit operator VkImageFormatProperties2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageFormatProperties2 *>(this);
}
explicit operator VkImageFormatProperties2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageFormatProperties2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::ImageFormatProperties const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, imageFormatProperties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageFormatProperties2 const &) const = default;
#else
bool operator==(ImageFormatProperties2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (imageFormatProperties == rhs.imageFormatProperties);
# endif
}
bool operator!=(ImageFormatProperties2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageFormatProperties2;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageFormatProperties imageFormatProperties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageFormatProperties2) == sizeof(VkImageFormatProperties2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageFormatProperties2>::value,
"ImageFormatProperties2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageFormatProperties2>
{
using Type = ImageFormatProperties2;
};
using ImageFormatProperties2KHR = ImageFormatProperties2;
struct ImageMemoryBarrier
{
using NativeType = VkImageMemoryBarrier;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageMemoryBarrier;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageMemoryBarrier(VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout oldLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::ImageLayout newLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
uint32_t srcQueueFamilyIndex_ = {},
uint32_t dstQueueFamilyIndex_ = {},
VULKAN_HPP_NAMESPACE::Image image_ = {},
VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcAccessMask(srcAccessMask_),
dstAccessMask(dstAccessMask_),
oldLayout(oldLayout_),
newLayout(newLayout_),
srcQueueFamilyIndex(srcQueueFamilyIndex_),
dstQueueFamilyIndex(dstQueueFamilyIndex_),
image(image_),
subresourceRange(subresourceRange_)
{
}
VULKAN_HPP_CONSTEXPR ImageMemoryBarrier(ImageMemoryBarrier const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageMemoryBarrier(VkImageMemoryBarrier const &rhs) VULKAN_HPP_NOEXCEPT : ImageMemoryBarrier(*reinterpret_cast<ImageMemoryBarrier const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageMemoryBarrier &operator=(ImageMemoryBarrier const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageMemoryBarrier &operator=(VkImageMemoryBarrier const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageMemoryBarrier const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier &setSrcAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_) VULKAN_HPP_NOEXCEPT
{
srcAccessMask = srcAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier &setDstAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_) VULKAN_HPP_NOEXCEPT
{
dstAccessMask = dstAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier &setOldLayout(VULKAN_HPP_NAMESPACE::ImageLayout oldLayout_) VULKAN_HPP_NOEXCEPT
{
oldLayout = oldLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier &setNewLayout(VULKAN_HPP_NAMESPACE::ImageLayout newLayout_) VULKAN_HPP_NOEXCEPT
{
newLayout = newLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier &setSrcQueueFamilyIndex(uint32_t srcQueueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
srcQueueFamilyIndex = srcQueueFamilyIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier &setDstQueueFamilyIndex(uint32_t dstQueueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
dstQueueFamilyIndex = dstQueueFamilyIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier &setImage(VULKAN_HPP_NAMESPACE::Image image_) VULKAN_HPP_NOEXCEPT
{
image = image_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryBarrier &
setSubresourceRange(VULKAN_HPP_NAMESPACE::ImageSubresourceRange const &subresourceRange_) VULKAN_HPP_NOEXCEPT
{
subresourceRange = subresourceRange_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageMemoryBarrier const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageMemoryBarrier *>(this);
}
explicit operator VkImageMemoryBarrier &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageMemoryBarrier *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::AccessFlags const &,
VULKAN_HPP_NAMESPACE::AccessFlags const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Image const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceRange const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcAccessMask, dstAccessMask, oldLayout, newLayout, srcQueueFamilyIndex, dstQueueFamilyIndex, image, subresourceRange);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageMemoryBarrier const &) const = default;
#else
bool operator==(ImageMemoryBarrier const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcAccessMask == rhs.srcAccessMask) && (dstAccessMask == rhs.dstAccessMask) &&
(oldLayout == rhs.oldLayout) && (newLayout == rhs.newLayout) && (srcQueueFamilyIndex == rhs.srcQueueFamilyIndex) &&
(dstQueueFamilyIndex == rhs.dstQueueFamilyIndex) && (image == rhs.image) && (subresourceRange == rhs.subresourceRange);
# endif
}
bool operator!=(ImageMemoryBarrier const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageMemoryBarrier;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
VULKAN_HPP_NAMESPACE::ImageLayout oldLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::ImageLayout newLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
uint32_t srcQueueFamilyIndex = {};
uint32_t dstQueueFamilyIndex = {};
VULKAN_HPP_NAMESPACE::Image image = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageMemoryBarrier) == sizeof(VkImageMemoryBarrier), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageMemoryBarrier>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageMemoryBarrier>::value,
"ImageMemoryBarrier is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageMemoryBarrier>
{
using Type = ImageMemoryBarrier;
};
struct ImageMemoryRequirementsInfo2
{
using NativeType = VkImageMemoryRequirementsInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageMemoryRequirementsInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageMemoryRequirementsInfo2(VULKAN_HPP_NAMESPACE::Image image_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
image(image_)
{
}
VULKAN_HPP_CONSTEXPR ImageMemoryRequirementsInfo2(ImageMemoryRequirementsInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageMemoryRequirementsInfo2(VkImageMemoryRequirementsInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
: ImageMemoryRequirementsInfo2(*reinterpret_cast<ImageMemoryRequirementsInfo2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageMemoryRequirementsInfo2 &operator=(ImageMemoryRequirementsInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageMemoryRequirementsInfo2 &operator=(VkImageMemoryRequirementsInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageMemoryRequirementsInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageMemoryRequirementsInfo2 &setImage(VULKAN_HPP_NAMESPACE::Image image_) VULKAN_HPP_NOEXCEPT
{
image = image_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageMemoryRequirementsInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageMemoryRequirementsInfo2 *>(this);
}
explicit operator VkImageMemoryRequirementsInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageMemoryRequirementsInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Image const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, image);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageMemoryRequirementsInfo2 const &) const = default;
#else
bool operator==(ImageMemoryRequirementsInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (image == rhs.image);
# endif
}
bool operator!=(ImageMemoryRequirementsInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageMemoryRequirementsInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Image image = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2) == sizeof(VkImageMemoryRequirementsInfo2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageMemoryRequirementsInfo2>::value,
"ImageMemoryRequirementsInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageMemoryRequirementsInfo2>
{
using Type = ImageMemoryRequirementsInfo2;
};
using ImageMemoryRequirementsInfo2KHR = ImageMemoryRequirementsInfo2;
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct ImagePipeSurfaceCreateInfoFUCHSIA
{
using NativeType = VkImagePipeSurfaceCreateInfoFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImagepipeSurfaceCreateInfoFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImagePipeSurfaceCreateInfoFUCHSIA(VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateFlagsFUCHSIA flags_ = {},
zx_handle_t imagePipeHandle_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
imagePipeHandle(imagePipeHandle_)
{
}
VULKAN_HPP_CONSTEXPR ImagePipeSurfaceCreateInfoFUCHSIA(ImagePipeSurfaceCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImagePipeSurfaceCreateInfoFUCHSIA(VkImagePipeSurfaceCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: ImagePipeSurfaceCreateInfoFUCHSIA(*reinterpret_cast<ImagePipeSurfaceCreateInfoFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImagePipeSurfaceCreateInfoFUCHSIA &operator=(ImagePipeSurfaceCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImagePipeSurfaceCreateInfoFUCHSIA &operator=(VkImagePipeSurfaceCreateInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateInfoFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImagePipeSurfaceCreateInfoFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImagePipeSurfaceCreateInfoFUCHSIA &setFlags(VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateFlagsFUCHSIA flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImagePipeSurfaceCreateInfoFUCHSIA &setImagePipeHandle(zx_handle_t imagePipeHandle_) VULKAN_HPP_NOEXCEPT
{
imagePipeHandle = imagePipeHandle_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImagePipeSurfaceCreateInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImagePipeSurfaceCreateInfoFUCHSIA *>(this);
}
explicit operator VkImagePipeSurfaceCreateInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImagePipeSurfaceCreateInfoFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateFlagsFUCHSIA const &,
zx_handle_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, imagePipeHandle);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(ImagePipeSurfaceCreateInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = flags <=> rhs.flags; cmp != 0)
return cmp;
if(auto cmp = memcmp(&imagePipeHandle, &rhs.imagePipeHandle, sizeof(zx_handle_t)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(ImagePipeSurfaceCreateInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) &&
(memcmp(&imagePipeHandle, &rhs.imagePipeHandle, sizeof(zx_handle_t)) == 0);
}
bool operator!=(ImagePipeSurfaceCreateInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImagepipeSurfaceCreateInfoFUCHSIA;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateFlagsFUCHSIA flags = {};
zx_handle_t imagePipeHandle = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateInfoFUCHSIA) == sizeof(VkImagePipeSurfaceCreateInfoFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateInfoFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImagePipeSurfaceCreateInfoFUCHSIA>::value,
"ImagePipeSurfaceCreateInfoFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImagepipeSurfaceCreateInfoFUCHSIA>
{
using Type = ImagePipeSurfaceCreateInfoFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
struct ImagePlaneMemoryRequirementsInfo
{
using NativeType = VkImagePlaneMemoryRequirementsInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImagePlaneMemoryRequirementsInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
ImagePlaneMemoryRequirementsInfo(VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_ = VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
planeAspect(planeAspect_)
{
}
VULKAN_HPP_CONSTEXPR ImagePlaneMemoryRequirementsInfo(ImagePlaneMemoryRequirementsInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImagePlaneMemoryRequirementsInfo(VkImagePlaneMemoryRequirementsInfo const &rhs) VULKAN_HPP_NOEXCEPT
: ImagePlaneMemoryRequirementsInfo(*reinterpret_cast<ImagePlaneMemoryRequirementsInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImagePlaneMemoryRequirementsInfo &operator=(ImagePlaneMemoryRequirementsInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImagePlaneMemoryRequirementsInfo &operator=(VkImagePlaneMemoryRequirementsInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImagePlaneMemoryRequirementsInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImagePlaneMemoryRequirementsInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImagePlaneMemoryRequirementsInfo &setPlaneAspect(VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect_) VULKAN_HPP_NOEXCEPT
{
planeAspect = planeAspect_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImagePlaneMemoryRequirementsInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImagePlaneMemoryRequirementsInfo *>(this);
}
explicit operator VkImagePlaneMemoryRequirementsInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImagePlaneMemoryRequirementsInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ImageAspectFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, planeAspect);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImagePlaneMemoryRequirementsInfo const &) const = default;
#else
bool operator==(ImagePlaneMemoryRequirementsInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (planeAspect == rhs.planeAspect);
# endif
}
bool operator!=(ImagePlaneMemoryRequirementsInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImagePlaneMemoryRequirementsInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageAspectFlagBits planeAspect = VULKAN_HPP_NAMESPACE::ImageAspectFlagBits::eColor;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImagePlaneMemoryRequirementsInfo) == sizeof(VkImagePlaneMemoryRequirementsInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImagePlaneMemoryRequirementsInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImagePlaneMemoryRequirementsInfo>::value,
"ImagePlaneMemoryRequirementsInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImagePlaneMemoryRequirementsInfo>
{
using Type = ImagePlaneMemoryRequirementsInfo;
};
using ImagePlaneMemoryRequirementsInfoKHR = ImagePlaneMemoryRequirementsInfo;
struct ImageResolve
{
using NativeType = VkImageResolve;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageResolve(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {},
VULKAN_HPP_NAMESPACE::Offset3D srcOffset_ = {},
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {},
VULKAN_HPP_NAMESPACE::Offset3D dstOffset_ = {},
VULKAN_HPP_NAMESPACE::Extent3D extent_ = {}) VULKAN_HPP_NOEXCEPT
: srcSubresource(srcSubresource_),
srcOffset(srcOffset_),
dstSubresource(dstSubresource_),
dstOffset(dstOffset_),
extent(extent_)
{
}
VULKAN_HPP_CONSTEXPR ImageResolve(ImageResolve const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageResolve(VkImageResolve const &rhs) VULKAN_HPP_NOEXCEPT : ImageResolve(*reinterpret_cast<ImageResolve const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageResolve &operator=(ImageResolve const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageResolve &operator=(VkImageResolve const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageResolve const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageResolve &setSrcSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &srcSubresource_) VULKAN_HPP_NOEXCEPT
{
srcSubresource = srcSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageResolve &setSrcOffset(VULKAN_HPP_NAMESPACE::Offset3D const &srcOffset_) VULKAN_HPP_NOEXCEPT
{
srcOffset = srcOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageResolve &setDstSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &dstSubresource_) VULKAN_HPP_NOEXCEPT
{
dstSubresource = dstSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageResolve &setDstOffset(VULKAN_HPP_NAMESPACE::Offset3D const &dstOffset_) VULKAN_HPP_NOEXCEPT
{
dstOffset = dstOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageResolve &setExtent(VULKAN_HPP_NAMESPACE::Extent3D const &extent_) VULKAN_HPP_NOEXCEPT
{
extent = extent_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageResolve const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageResolve *>(this);
}
explicit operator VkImageResolve &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageResolve *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::Offset3D const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::Offset3D const &,
VULKAN_HPP_NAMESPACE::Extent3D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(srcSubresource, srcOffset, dstSubresource, dstOffset, extent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageResolve const &) const = default;
#else
bool operator==(ImageResolve const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (srcSubresource == rhs.srcSubresource) && (srcOffset == rhs.srcOffset) && (dstSubresource == rhs.dstSubresource) &&
(dstOffset == rhs.dstOffset) && (extent == rhs.extent);
# endif
}
bool operator!=(ImageResolve const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
VULKAN_HPP_NAMESPACE::Offset3D srcOffset = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
VULKAN_HPP_NAMESPACE::Offset3D dstOffset = {};
VULKAN_HPP_NAMESPACE::Extent3D extent = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageResolve) == sizeof(VkImageResolve), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageResolve>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageResolve>::value, "ImageResolve is not nothrow_move_constructible!");
struct ImageResolve2
{
using NativeType = VkImageResolve2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageResolve2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageResolve2(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource_ = {},
VULKAN_HPP_NAMESPACE::Offset3D srcOffset_ = {},
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource_ = {},
VULKAN_HPP_NAMESPACE::Offset3D dstOffset_ = {},
VULKAN_HPP_NAMESPACE::Extent3D extent_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcSubresource(srcSubresource_),
srcOffset(srcOffset_),
dstSubresource(dstSubresource_),
dstOffset(dstOffset_),
extent(extent_)
{
}
VULKAN_HPP_CONSTEXPR ImageResolve2(ImageResolve2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageResolve2(VkImageResolve2 const &rhs) VULKAN_HPP_NOEXCEPT : ImageResolve2(*reinterpret_cast<ImageResolve2 const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageResolve2 &operator=(ImageResolve2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageResolve2 &operator=(VkImageResolve2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageResolve2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageResolve2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageResolve2 &setSrcSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &srcSubresource_) VULKAN_HPP_NOEXCEPT
{
srcSubresource = srcSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageResolve2 &setSrcOffset(VULKAN_HPP_NAMESPACE::Offset3D const &srcOffset_) VULKAN_HPP_NOEXCEPT
{
srcOffset = srcOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageResolve2 &setDstSubresource(VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &dstSubresource_) VULKAN_HPP_NOEXCEPT
{
dstSubresource = dstSubresource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageResolve2 &setDstOffset(VULKAN_HPP_NAMESPACE::Offset3D const &dstOffset_) VULKAN_HPP_NOEXCEPT
{
dstOffset = dstOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageResolve2 &setExtent(VULKAN_HPP_NAMESPACE::Extent3D const &extent_) VULKAN_HPP_NOEXCEPT
{
extent = extent_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageResolve2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageResolve2 *>(this);
}
explicit operator VkImageResolve2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageResolve2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::Offset3D const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers const &,
VULKAN_HPP_NAMESPACE::Offset3D const &,
VULKAN_HPP_NAMESPACE::Extent3D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcSubresource, srcOffset, dstSubresource, dstOffset, extent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageResolve2 const &) const = default;
#else
bool operator==(ImageResolve2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcSubresource == rhs.srcSubresource) && (srcOffset == rhs.srcOffset) &&
(dstSubresource == rhs.dstSubresource) && (dstOffset == rhs.dstOffset) && (extent == rhs.extent);
# endif
}
bool operator!=(ImageResolve2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageResolve2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers srcSubresource = {};
VULKAN_HPP_NAMESPACE::Offset3D srcOffset = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceLayers dstSubresource = {};
VULKAN_HPP_NAMESPACE::Offset3D dstOffset = {};
VULKAN_HPP_NAMESPACE::Extent3D extent = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageResolve2) == sizeof(VkImageResolve2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageResolve2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageResolve2>::value,
"ImageResolve2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageResolve2>
{
using Type = ImageResolve2;
};
using ImageResolve2KHR = ImageResolve2;
struct ImageSparseMemoryRequirementsInfo2
{
using NativeType = VkImageSparseMemoryRequirementsInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageSparseMemoryRequirementsInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageSparseMemoryRequirementsInfo2(VULKAN_HPP_NAMESPACE::Image image_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
image(image_)
{
}
VULKAN_HPP_CONSTEXPR ImageSparseMemoryRequirementsInfo2(ImageSparseMemoryRequirementsInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageSparseMemoryRequirementsInfo2(VkImageSparseMemoryRequirementsInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
: ImageSparseMemoryRequirementsInfo2(*reinterpret_cast<ImageSparseMemoryRequirementsInfo2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageSparseMemoryRequirementsInfo2 &operator=(ImageSparseMemoryRequirementsInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageSparseMemoryRequirementsInfo2 &operator=(VkImageSparseMemoryRequirementsInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageSparseMemoryRequirementsInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageSparseMemoryRequirementsInfo2 &setImage(VULKAN_HPP_NAMESPACE::Image image_) VULKAN_HPP_NOEXCEPT
{
image = image_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageSparseMemoryRequirementsInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageSparseMemoryRequirementsInfo2 *>(this);
}
explicit operator VkImageSparseMemoryRequirementsInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageSparseMemoryRequirementsInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Image const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, image);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageSparseMemoryRequirementsInfo2 const &) const = default;
#else
bool operator==(ImageSparseMemoryRequirementsInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (image == rhs.image);
# endif
}
bool operator!=(ImageSparseMemoryRequirementsInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageSparseMemoryRequirementsInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Image image = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2) == sizeof(VkImageSparseMemoryRequirementsInfo2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageSparseMemoryRequirementsInfo2>::value,
"ImageSparseMemoryRequirementsInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageSparseMemoryRequirementsInfo2>
{
using Type = ImageSparseMemoryRequirementsInfo2;
};
using ImageSparseMemoryRequirementsInfo2KHR = ImageSparseMemoryRequirementsInfo2;
struct ImageStencilUsageCreateInfo
{
using NativeType = VkImageStencilUsageCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageStencilUsageCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageStencilUsageCreateInfo(VULKAN_HPP_NAMESPACE::ImageUsageFlags stencilUsage_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
stencilUsage(stencilUsage_)
{
}
VULKAN_HPP_CONSTEXPR ImageStencilUsageCreateInfo(ImageStencilUsageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageStencilUsageCreateInfo(VkImageStencilUsageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: ImageStencilUsageCreateInfo(*reinterpret_cast<ImageStencilUsageCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageStencilUsageCreateInfo &operator=(ImageStencilUsageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageStencilUsageCreateInfo &operator=(VkImageStencilUsageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageStencilUsageCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageStencilUsageCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageStencilUsageCreateInfo &setStencilUsage(VULKAN_HPP_NAMESPACE::ImageUsageFlags stencilUsage_) VULKAN_HPP_NOEXCEPT
{
stencilUsage = stencilUsage_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageStencilUsageCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageStencilUsageCreateInfo *>(this);
}
explicit operator VkImageStencilUsageCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageStencilUsageCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ImageUsageFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, stencilUsage);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageStencilUsageCreateInfo const &) const = default;
#else
bool operator==(ImageStencilUsageCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (stencilUsage == rhs.stencilUsage);
# endif
}
bool operator!=(ImageStencilUsageCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageStencilUsageCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageUsageFlags stencilUsage = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageStencilUsageCreateInfo) == sizeof(VkImageStencilUsageCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageStencilUsageCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageStencilUsageCreateInfo>::value,
"ImageStencilUsageCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageStencilUsageCreateInfo>
{
using Type = ImageStencilUsageCreateInfo;
};
using ImageStencilUsageCreateInfoEXT = ImageStencilUsageCreateInfo;
struct ImageSwapchainCreateInfoKHR
{
using NativeType = VkImageSwapchainCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageSwapchainCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageSwapchainCreateInfoKHR(VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
swapchain(swapchain_)
{
}
VULKAN_HPP_CONSTEXPR ImageSwapchainCreateInfoKHR(ImageSwapchainCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageSwapchainCreateInfoKHR(VkImageSwapchainCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: ImageSwapchainCreateInfoKHR(*reinterpret_cast<ImageSwapchainCreateInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageSwapchainCreateInfoKHR &operator=(ImageSwapchainCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageSwapchainCreateInfoKHR &operator=(VkImageSwapchainCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageSwapchainCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageSwapchainCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageSwapchainCreateInfoKHR &setSwapchain(VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain_) VULKAN_HPP_NOEXCEPT
{
swapchain = swapchain_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageSwapchainCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageSwapchainCreateInfoKHR *>(this);
}
explicit operator VkImageSwapchainCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageSwapchainCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::SwapchainKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, swapchain);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageSwapchainCreateInfoKHR const &) const = default;
#else
bool operator==(ImageSwapchainCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (swapchain == rhs.swapchain);
# endif
}
bool operator!=(ImageSwapchainCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageSwapchainCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageSwapchainCreateInfoKHR) == sizeof(VkImageSwapchainCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageSwapchainCreateInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageSwapchainCreateInfoKHR>::value,
"ImageSwapchainCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageSwapchainCreateInfoKHR>
{
using Type = ImageSwapchainCreateInfoKHR;
};
struct ImageViewASTCDecodeModeEXT
{
using NativeType = VkImageViewASTCDecodeModeEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewAstcDecodeModeEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageViewASTCDecodeModeEXT(VULKAN_HPP_NAMESPACE::Format decodeMode_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
decodeMode(decodeMode_)
{
}
VULKAN_HPP_CONSTEXPR ImageViewASTCDecodeModeEXT(ImageViewASTCDecodeModeEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageViewASTCDecodeModeEXT(VkImageViewASTCDecodeModeEXT const &rhs) VULKAN_HPP_NOEXCEPT
: ImageViewASTCDecodeModeEXT(*reinterpret_cast<ImageViewASTCDecodeModeEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageViewASTCDecodeModeEXT &operator=(ImageViewASTCDecodeModeEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageViewASTCDecodeModeEXT &operator=(VkImageViewASTCDecodeModeEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewASTCDecodeModeEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageViewASTCDecodeModeEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageViewASTCDecodeModeEXT &setDecodeMode(VULKAN_HPP_NAMESPACE::Format decodeMode_) VULKAN_HPP_NOEXCEPT
{
decodeMode = decodeMode_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageViewASTCDecodeModeEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageViewASTCDecodeModeEXT *>(this);
}
explicit operator VkImageViewASTCDecodeModeEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageViewASTCDecodeModeEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Format const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, decodeMode);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageViewASTCDecodeModeEXT const &) const = default;
#else
bool operator==(ImageViewASTCDecodeModeEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (decodeMode == rhs.decodeMode);
# endif
}
bool operator!=(ImageViewASTCDecodeModeEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewAstcDecodeModeEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Format decodeMode = VULKAN_HPP_NAMESPACE::Format::eUndefined;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageViewASTCDecodeModeEXT) == sizeof(VkImageViewASTCDecodeModeEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageViewASTCDecodeModeEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageViewASTCDecodeModeEXT>::value,
"ImageViewASTCDecodeModeEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageViewAstcDecodeModeEXT>
{
using Type = ImageViewASTCDecodeModeEXT;
};
struct ImageViewAddressPropertiesNVX
{
using NativeType = VkImageViewAddressPropertiesNVX;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewAddressPropertiesNVX;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageViewAddressPropertiesNVX(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
deviceAddress(deviceAddress_),
size(size_)
{
}
VULKAN_HPP_CONSTEXPR ImageViewAddressPropertiesNVX(ImageViewAddressPropertiesNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageViewAddressPropertiesNVX(VkImageViewAddressPropertiesNVX const &rhs) VULKAN_HPP_NOEXCEPT
: ImageViewAddressPropertiesNVX(*reinterpret_cast<ImageViewAddressPropertiesNVX const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageViewAddressPropertiesNVX &operator=(ImageViewAddressPropertiesNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageViewAddressPropertiesNVX &operator=(VkImageViewAddressPropertiesNVX const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX const *>(&rhs);
return *this;
}
explicit operator VkImageViewAddressPropertiesNVX const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageViewAddressPropertiesNVX *>(this);
}
explicit operator VkImageViewAddressPropertiesNVX &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageViewAddressPropertiesNVX *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::
tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::DeviceAddress const &, VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, deviceAddress, size);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageViewAddressPropertiesNVX const &) const = default;
#else
bool operator==(ImageViewAddressPropertiesNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (deviceAddress == rhs.deviceAddress) && (size == rhs.size);
# endif
}
bool operator!=(ImageViewAddressPropertiesNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewAddressPropertiesNVX;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress = {};
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX) == sizeof(VkImageViewAddressPropertiesNVX),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageViewAddressPropertiesNVX>::value,
"ImageViewAddressPropertiesNVX is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageViewAddressPropertiesNVX>
{
using Type = ImageViewAddressPropertiesNVX;
};
struct ImageViewCreateInfo
{
using NativeType = VkImageViewCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageViewCreateInfo(VULKAN_HPP_NAMESPACE::ImageViewCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::Image image_ = {},
VULKAN_HPP_NAMESPACE::ImageViewType viewType_ = VULKAN_HPP_NAMESPACE::ImageViewType::e1D,
VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::ComponentMapping components_ = {},
VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
image(image_),
viewType(viewType_),
format(format_),
components(components_),
subresourceRange(subresourceRange_)
{
}
VULKAN_HPP_CONSTEXPR ImageViewCreateInfo(ImageViewCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageViewCreateInfo(VkImageViewCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT : ImageViewCreateInfo(*reinterpret_cast<ImageViewCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageViewCreateInfo &operator=(ImageViewCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageViewCreateInfo &operator=(VkImageViewCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageViewCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageViewCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::ImageViewCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageViewCreateInfo &setImage(VULKAN_HPP_NAMESPACE::Image image_) VULKAN_HPP_NOEXCEPT
{
image = image_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageViewCreateInfo &setViewType(VULKAN_HPP_NAMESPACE::ImageViewType viewType_) VULKAN_HPP_NOEXCEPT
{
viewType = viewType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageViewCreateInfo &setFormat(VULKAN_HPP_NAMESPACE::Format format_) VULKAN_HPP_NOEXCEPT
{
format = format_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageViewCreateInfo &setComponents(VULKAN_HPP_NAMESPACE::ComponentMapping const &components_) VULKAN_HPP_NOEXCEPT
{
components = components_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageViewCreateInfo &
setSubresourceRange(VULKAN_HPP_NAMESPACE::ImageSubresourceRange const &subresourceRange_) VULKAN_HPP_NOEXCEPT
{
subresourceRange = subresourceRange_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageViewCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageViewCreateInfo *>(this);
}
explicit operator VkImageViewCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageViewCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ImageViewCreateFlags const &,
VULKAN_HPP_NAMESPACE::Image const &,
VULKAN_HPP_NAMESPACE::ImageViewType const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::ComponentMapping const &,
VULKAN_HPP_NAMESPACE::ImageSubresourceRange const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, image, viewType, format, components, subresourceRange);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageViewCreateInfo const &) const = default;
#else
bool operator==(ImageViewCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (image == rhs.image) && (viewType == rhs.viewType) &&
(format == rhs.format) && (components == rhs.components) && (subresourceRange == rhs.subresourceRange);
# endif
}
bool operator!=(ImageViewCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageViewCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::Image image = {};
VULKAN_HPP_NAMESPACE::ImageViewType viewType = VULKAN_HPP_NAMESPACE::ImageViewType::e1D;
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::ComponentMapping components = {};
VULKAN_HPP_NAMESPACE::ImageSubresourceRange subresourceRange = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageViewCreateInfo) == sizeof(VkImageViewCreateInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageViewCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageViewCreateInfo>::value,
"ImageViewCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageViewCreateInfo>
{
using Type = ImageViewCreateInfo;
};
struct ImageViewHandleInfoNVX
{
using NativeType = VkImageViewHandleInfoNVX;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewHandleInfoNVX;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageViewHandleInfoNVX(VULKAN_HPP_NAMESPACE::ImageView imageView_ = {},
VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler,
VULKAN_HPP_NAMESPACE::Sampler sampler_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
imageView(imageView_),
descriptorType(descriptorType_),
sampler(sampler_)
{
}
VULKAN_HPP_CONSTEXPR ImageViewHandleInfoNVX(ImageViewHandleInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageViewHandleInfoNVX(VkImageViewHandleInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT
: ImageViewHandleInfoNVX(*reinterpret_cast<ImageViewHandleInfoNVX const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageViewHandleInfoNVX &operator=(ImageViewHandleInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageViewHandleInfoNVX &operator=(VkImageViewHandleInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewHandleInfoNVX const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageViewHandleInfoNVX &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageViewHandleInfoNVX &setImageView(VULKAN_HPP_NAMESPACE::ImageView imageView_) VULKAN_HPP_NOEXCEPT
{
imageView = imageView_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageViewHandleInfoNVX &setDescriptorType(VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_) VULKAN_HPP_NOEXCEPT
{
descriptorType = descriptorType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageViewHandleInfoNVX &setSampler(VULKAN_HPP_NAMESPACE::Sampler sampler_) VULKAN_HPP_NOEXCEPT
{
sampler = sampler_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageViewHandleInfoNVX const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageViewHandleInfoNVX *>(this);
}
explicit operator VkImageViewHandleInfoNVX &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageViewHandleInfoNVX *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ImageView const &,
VULKAN_HPP_NAMESPACE::DescriptorType const &,
VULKAN_HPP_NAMESPACE::Sampler const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, imageView, descriptorType, sampler);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageViewHandleInfoNVX const &) const = default;
#else
bool operator==(ImageViewHandleInfoNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (imageView == rhs.imageView) && (descriptorType == rhs.descriptorType) &&
(sampler == rhs.sampler);
# endif
}
bool operator!=(ImageViewHandleInfoNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewHandleInfoNVX;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageView imageView = {};
VULKAN_HPP_NAMESPACE::DescriptorType descriptorType = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
VULKAN_HPP_NAMESPACE::Sampler sampler = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageViewHandleInfoNVX) == sizeof(VkImageViewHandleInfoNVX),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageViewHandleInfoNVX>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageViewHandleInfoNVX>::value,
"ImageViewHandleInfoNVX is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageViewHandleInfoNVX>
{
using Type = ImageViewHandleInfoNVX;
};
struct ImageViewMinLodCreateInfoEXT
{
using NativeType = VkImageViewMinLodCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewMinLodCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageViewMinLodCreateInfoEXT(float minLod_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
minLod(minLod_)
{
}
VULKAN_HPP_CONSTEXPR ImageViewMinLodCreateInfoEXT(ImageViewMinLodCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageViewMinLodCreateInfoEXT(VkImageViewMinLodCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: ImageViewMinLodCreateInfoEXT(*reinterpret_cast<ImageViewMinLodCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageViewMinLodCreateInfoEXT &operator=(ImageViewMinLodCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageViewMinLodCreateInfoEXT &operator=(VkImageViewMinLodCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewMinLodCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageViewMinLodCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageViewMinLodCreateInfoEXT &setMinLod(float minLod_) VULKAN_HPP_NOEXCEPT
{
minLod = minLod_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageViewMinLodCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageViewMinLodCreateInfoEXT *>(this);
}
explicit operator VkImageViewMinLodCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageViewMinLodCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, float const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, minLod);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageViewMinLodCreateInfoEXT const &) const = default;
#else
bool operator==(ImageViewMinLodCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (minLod == rhs.minLod);
# endif
}
bool operator!=(ImageViewMinLodCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewMinLodCreateInfoEXT;
const void *pNext = {};
float minLod = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageViewMinLodCreateInfoEXT) == sizeof(VkImageViewMinLodCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageViewMinLodCreateInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageViewMinLodCreateInfoEXT>::value,
"ImageViewMinLodCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageViewMinLodCreateInfoEXT>
{
using Type = ImageViewMinLodCreateInfoEXT;
};
struct ImageViewUsageCreateInfo
{
using NativeType = VkImageViewUsageCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImageViewUsageCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImageViewUsageCreateInfo(VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
usage(usage_)
{
}
VULKAN_HPP_CONSTEXPR ImageViewUsageCreateInfo(ImageViewUsageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageViewUsageCreateInfo(VkImageViewUsageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: ImageViewUsageCreateInfo(*reinterpret_cast<ImageViewUsageCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImageViewUsageCreateInfo &operator=(ImageViewUsageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImageViewUsageCreateInfo &operator=(VkImageViewUsageCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImageViewUsageCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImageViewUsageCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImageViewUsageCreateInfo &setUsage(VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_) VULKAN_HPP_NOEXCEPT
{
usage = usage_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImageViewUsageCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImageViewUsageCreateInfo *>(this);
}
explicit operator VkImageViewUsageCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImageViewUsageCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ImageUsageFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, usage);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImageViewUsageCreateInfo const &) const = default;
#else
bool operator==(ImageViewUsageCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (usage == rhs.usage);
# endif
}
bool operator!=(ImageViewUsageCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImageViewUsageCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImageViewUsageCreateInfo) == sizeof(VkImageViewUsageCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageViewUsageCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageViewUsageCreateInfo>::value,
"ImageViewUsageCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImageViewUsageCreateInfo>
{
using Type = ImageViewUsageCreateInfo;
};
using ImageViewUsageCreateInfoKHR = ImageViewUsageCreateInfo;
#if defined(VK_USE_PLATFORM_ANDROID_KHR)
struct ImportAndroidHardwareBufferInfoANDROID
{
using NativeType = VkImportAndroidHardwareBufferInfoANDROID;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportAndroidHardwareBufferInfoANDROID;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImportAndroidHardwareBufferInfoANDROID(struct AHardwareBuffer *buffer_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
buffer(buffer_)
{
}
VULKAN_HPP_CONSTEXPR ImportAndroidHardwareBufferInfoANDROID(ImportAndroidHardwareBufferInfoANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportAndroidHardwareBufferInfoANDROID(VkImportAndroidHardwareBufferInfoANDROID const &rhs) VULKAN_HPP_NOEXCEPT
: ImportAndroidHardwareBufferInfoANDROID(*reinterpret_cast<ImportAndroidHardwareBufferInfoANDROID const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImportAndroidHardwareBufferInfoANDROID &operator=(ImportAndroidHardwareBufferInfoANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportAndroidHardwareBufferInfoANDROID &operator=(VkImportAndroidHardwareBufferInfoANDROID const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportAndroidHardwareBufferInfoANDROID const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImportAndroidHardwareBufferInfoANDROID &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportAndroidHardwareBufferInfoANDROID &setBuffer(struct AHardwareBuffer *buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImportAndroidHardwareBufferInfoANDROID const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImportAndroidHardwareBufferInfoANDROID *>(this);
}
explicit operator VkImportAndroidHardwareBufferInfoANDROID &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImportAndroidHardwareBufferInfoANDROID *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, struct AHardwareBuffer *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, buffer);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImportAndroidHardwareBufferInfoANDROID const &) const = default;
# else
bool operator==(ImportAndroidHardwareBufferInfoANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (buffer == rhs.buffer);
# endif
}
bool operator!=(ImportAndroidHardwareBufferInfoANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportAndroidHardwareBufferInfoANDROID;
const void *pNext = {};
struct AHardwareBuffer *buffer = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImportAndroidHardwareBufferInfoANDROID) == sizeof(VkImportAndroidHardwareBufferInfoANDROID),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImportAndroidHardwareBufferInfoANDROID>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImportAndroidHardwareBufferInfoANDROID>::value,
"ImportAndroidHardwareBufferInfoANDROID is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImportAndroidHardwareBufferInfoANDROID>
{
using Type = ImportAndroidHardwareBufferInfoANDROID;
};
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
struct ImportFenceFdInfoKHR
{
using NativeType = VkImportFenceFdInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportFenceFdInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImportFenceFdInfoKHR(
VULKAN_HPP_NAMESPACE::Fence fence_ = {},
VULKAN_HPP_NAMESPACE::FenceImportFlags flags_ = {},
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd,
int fd_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fence(fence_),
flags(flags_),
handleType(handleType_),
fd(fd_)
{
}
VULKAN_HPP_CONSTEXPR ImportFenceFdInfoKHR(ImportFenceFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportFenceFdInfoKHR(VkImportFenceFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: ImportFenceFdInfoKHR(*reinterpret_cast<ImportFenceFdInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImportFenceFdInfoKHR &operator=(ImportFenceFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportFenceFdInfoKHR &operator=(VkImportFenceFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportFenceFdInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImportFenceFdInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportFenceFdInfoKHR &setFence(VULKAN_HPP_NAMESPACE::Fence fence_) VULKAN_HPP_NOEXCEPT
{
fence = fence_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportFenceFdInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::FenceImportFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportFenceFdInfoKHR &setHandleType(VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportFenceFdInfoKHR &setFd(int fd_) VULKAN_HPP_NOEXCEPT
{
fd = fd_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImportFenceFdInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImportFenceFdInfoKHR *>(this);
}
explicit operator VkImportFenceFdInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImportFenceFdInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Fence const &,
VULKAN_HPP_NAMESPACE::FenceImportFlags const &,
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits const &,
int const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fence, flags, handleType, fd);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImportFenceFdInfoKHR const &) const = default;
#else
bool operator==(ImportFenceFdInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fence == rhs.fence) && (flags == rhs.flags) && (handleType == rhs.handleType) &&
(fd == rhs.fd);
# endif
}
bool operator!=(ImportFenceFdInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportFenceFdInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Fence fence = {};
VULKAN_HPP_NAMESPACE::FenceImportFlags flags = {};
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
int fd = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImportFenceFdInfoKHR) == sizeof(VkImportFenceFdInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImportFenceFdInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImportFenceFdInfoKHR>::value,
"ImportFenceFdInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImportFenceFdInfoKHR>
{
using Type = ImportFenceFdInfoKHR;
};
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct ImportFenceWin32HandleInfoKHR
{
using NativeType = VkImportFenceWin32HandleInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportFenceWin32HandleInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImportFenceWin32HandleInfoKHR(
VULKAN_HPP_NAMESPACE::Fence fence_ = {},
VULKAN_HPP_NAMESPACE::FenceImportFlags flags_ = {},
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd,
HANDLE handle_ = {},
LPCWSTR name_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fence(fence_),
flags(flags_),
handleType(handleType_),
handle(handle_),
name(name_)
{
}
VULKAN_HPP_CONSTEXPR ImportFenceWin32HandleInfoKHR(ImportFenceWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportFenceWin32HandleInfoKHR(VkImportFenceWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: ImportFenceWin32HandleInfoKHR(*reinterpret_cast<ImportFenceWin32HandleInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImportFenceWin32HandleInfoKHR &operator=(ImportFenceWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportFenceWin32HandleInfoKHR &operator=(VkImportFenceWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportFenceWin32HandleInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImportFenceWin32HandleInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportFenceWin32HandleInfoKHR &setFence(VULKAN_HPP_NAMESPACE::Fence fence_) VULKAN_HPP_NOEXCEPT
{
fence = fence_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportFenceWin32HandleInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::FenceImportFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportFenceWin32HandleInfoKHR &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportFenceWin32HandleInfoKHR &setHandle(HANDLE handle_) VULKAN_HPP_NOEXCEPT
{
handle = handle_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportFenceWin32HandleInfoKHR &setName(LPCWSTR name_) VULKAN_HPP_NOEXCEPT
{
name = name_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImportFenceWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImportFenceWin32HandleInfoKHR *>(this);
}
explicit operator VkImportFenceWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImportFenceWin32HandleInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Fence const &,
VULKAN_HPP_NAMESPACE::FenceImportFlags const &,
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits const &,
HANDLE const &,
LPCWSTR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fence, flags, handleType, handle, name);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImportFenceWin32HandleInfoKHR const &) const = default;
# else
bool operator==(ImportFenceWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fence == rhs.fence) && (flags == rhs.flags) && (handleType == rhs.handleType) &&
(handle == rhs.handle) && (name == rhs.name);
# endif
}
bool operator!=(ImportFenceWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportFenceWin32HandleInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Fence fence = {};
VULKAN_HPP_NAMESPACE::FenceImportFlags flags = {};
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
HANDLE handle = {};
LPCWSTR name = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImportFenceWin32HandleInfoKHR) == sizeof(VkImportFenceWin32HandleInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImportFenceWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImportFenceWin32HandleInfoKHR>::value,
"ImportFenceWin32HandleInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImportFenceWin32HandleInfoKHR>
{
using Type = ImportFenceWin32HandleInfoKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct ImportMemoryBufferCollectionFUCHSIA
{
using NativeType = VkImportMemoryBufferCollectionFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryBufferCollectionFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImportMemoryBufferCollectionFUCHSIA(VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection_ = {},
uint32_t index_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
collection(collection_),
index(index_)
{
}
VULKAN_HPP_CONSTEXPR ImportMemoryBufferCollectionFUCHSIA(ImportMemoryBufferCollectionFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportMemoryBufferCollectionFUCHSIA(VkImportMemoryBufferCollectionFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: ImportMemoryBufferCollectionFUCHSIA(*reinterpret_cast<ImportMemoryBufferCollectionFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImportMemoryBufferCollectionFUCHSIA &operator=(ImportMemoryBufferCollectionFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportMemoryBufferCollectionFUCHSIA &operator=(VkImportMemoryBufferCollectionFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryBufferCollectionFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImportMemoryBufferCollectionFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryBufferCollectionFUCHSIA &setCollection(VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection_) VULKAN_HPP_NOEXCEPT
{
collection = collection_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryBufferCollectionFUCHSIA &setIndex(uint32_t index_) VULKAN_HPP_NOEXCEPT
{
index = index_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImportMemoryBufferCollectionFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImportMemoryBufferCollectionFUCHSIA *>(this);
}
explicit operator VkImportMemoryBufferCollectionFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImportMemoryBufferCollectionFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, collection, index);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImportMemoryBufferCollectionFUCHSIA const &) const = default;
# else
bool operator==(ImportMemoryBufferCollectionFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (collection == rhs.collection) && (index == rhs.index);
# endif
}
bool operator!=(ImportMemoryBufferCollectionFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryBufferCollectionFUCHSIA;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA collection = {};
uint32_t index = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImportMemoryBufferCollectionFUCHSIA) == sizeof(VkImportMemoryBufferCollectionFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImportMemoryBufferCollectionFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImportMemoryBufferCollectionFUCHSIA>::value,
"ImportMemoryBufferCollectionFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImportMemoryBufferCollectionFUCHSIA>
{
using Type = ImportMemoryBufferCollectionFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
struct ImportMemoryFdInfoKHR
{
using NativeType = VkImportMemoryFdInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryFdInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImportMemoryFdInfoKHR(
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
int fd_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleType(handleType_),
fd(fd_)
{
}
VULKAN_HPP_CONSTEXPR ImportMemoryFdInfoKHR(ImportMemoryFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportMemoryFdInfoKHR(VkImportMemoryFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: ImportMemoryFdInfoKHR(*reinterpret_cast<ImportMemoryFdInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImportMemoryFdInfoKHR &operator=(ImportMemoryFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportMemoryFdInfoKHR &operator=(VkImportMemoryFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryFdInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImportMemoryFdInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryFdInfoKHR &setHandleType(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryFdInfoKHR &setFd(int fd_) VULKAN_HPP_NOEXCEPT
{
fd = fd_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImportMemoryFdInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImportMemoryFdInfoKHR *>(this);
}
explicit operator VkImportMemoryFdInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImportMemoryFdInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits const &, int const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleType, fd);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImportMemoryFdInfoKHR const &) const = default;
#else
bool operator==(ImportMemoryFdInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleType == rhs.handleType) && (fd == rhs.fd);
# endif
}
bool operator!=(ImportMemoryFdInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryFdInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
int fd = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImportMemoryFdInfoKHR) == sizeof(VkImportMemoryFdInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImportMemoryFdInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImportMemoryFdInfoKHR>::value,
"ImportMemoryFdInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImportMemoryFdInfoKHR>
{
using Type = ImportMemoryFdInfoKHR;
};
struct ImportMemoryHostPointerInfoEXT
{
using NativeType = VkImportMemoryHostPointerInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryHostPointerInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImportMemoryHostPointerInfoEXT(
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
void *pHostPointer_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleType(handleType_),
pHostPointer(pHostPointer_)
{
}
VULKAN_HPP_CONSTEXPR ImportMemoryHostPointerInfoEXT(ImportMemoryHostPointerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportMemoryHostPointerInfoEXT(VkImportMemoryHostPointerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: ImportMemoryHostPointerInfoEXT(*reinterpret_cast<ImportMemoryHostPointerInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImportMemoryHostPointerInfoEXT &operator=(ImportMemoryHostPointerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportMemoryHostPointerInfoEXT &operator=(VkImportMemoryHostPointerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryHostPointerInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImportMemoryHostPointerInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryHostPointerInfoEXT &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryHostPointerInfoEXT &setPHostPointer(void *pHostPointer_) VULKAN_HPP_NOEXCEPT
{
pHostPointer = pHostPointer_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImportMemoryHostPointerInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImportMemoryHostPointerInfoEXT *>(this);
}
explicit operator VkImportMemoryHostPointerInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImportMemoryHostPointerInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::
tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits const &, void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleType, pHostPointer);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImportMemoryHostPointerInfoEXT const &) const = default;
#else
bool operator==(ImportMemoryHostPointerInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleType == rhs.handleType) && (pHostPointer == rhs.pHostPointer);
# endif
}
bool operator!=(ImportMemoryHostPointerInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryHostPointerInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
void *pHostPointer = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImportMemoryHostPointerInfoEXT) == sizeof(VkImportMemoryHostPointerInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImportMemoryHostPointerInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImportMemoryHostPointerInfoEXT>::value,
"ImportMemoryHostPointerInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImportMemoryHostPointerInfoEXT>
{
using Type = ImportMemoryHostPointerInfoEXT;
};
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct ImportMemoryWin32HandleInfoKHR
{
using NativeType = VkImportMemoryWin32HandleInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryWin32HandleInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImportMemoryWin32HandleInfoKHR(
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
HANDLE handle_ = {},
LPCWSTR name_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleType(handleType_),
handle(handle_),
name(name_)
{
}
VULKAN_HPP_CONSTEXPR ImportMemoryWin32HandleInfoKHR(ImportMemoryWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportMemoryWin32HandleInfoKHR(VkImportMemoryWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: ImportMemoryWin32HandleInfoKHR(*reinterpret_cast<ImportMemoryWin32HandleInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImportMemoryWin32HandleInfoKHR &operator=(ImportMemoryWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportMemoryWin32HandleInfoKHR &operator=(VkImportMemoryWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryWin32HandleInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImportMemoryWin32HandleInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryWin32HandleInfoKHR &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryWin32HandleInfoKHR &setHandle(HANDLE handle_) VULKAN_HPP_NOEXCEPT
{
handle = handle_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryWin32HandleInfoKHR &setName(LPCWSTR name_) VULKAN_HPP_NOEXCEPT
{
name = name_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImportMemoryWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImportMemoryWin32HandleInfoKHR *>(this);
}
explicit operator VkImportMemoryWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImportMemoryWin32HandleInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits const &,
HANDLE const &,
LPCWSTR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleType, handle, name);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImportMemoryWin32HandleInfoKHR const &) const = default;
# else
bool operator==(ImportMemoryWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleType == rhs.handleType) && (handle == rhs.handle) && (name == rhs.name);
# endif
}
bool operator!=(ImportMemoryWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryWin32HandleInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
HANDLE handle = {};
LPCWSTR name = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImportMemoryWin32HandleInfoKHR) == sizeof(VkImportMemoryWin32HandleInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImportMemoryWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImportMemoryWin32HandleInfoKHR>::value,
"ImportMemoryWin32HandleInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImportMemoryWin32HandleInfoKHR>
{
using Type = ImportMemoryWin32HandleInfoKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct ImportMemoryWin32HandleInfoNV
{
using NativeType = VkImportMemoryWin32HandleInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryWin32HandleInfoNV;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImportMemoryWin32HandleInfoNV(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType_ = {},
HANDLE handle_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleType(handleType_),
handle(handle_)
{
}
VULKAN_HPP_CONSTEXPR ImportMemoryWin32HandleInfoNV(ImportMemoryWin32HandleInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportMemoryWin32HandleInfoNV(VkImportMemoryWin32HandleInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: ImportMemoryWin32HandleInfoNV(*reinterpret_cast<ImportMemoryWin32HandleInfoNV const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImportMemoryWin32HandleInfoNV &operator=(ImportMemoryWin32HandleInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportMemoryWin32HandleInfoNV &operator=(VkImportMemoryWin32HandleInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryWin32HandleInfoNV const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImportMemoryWin32HandleInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryWin32HandleInfoNV &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryWin32HandleInfoNV &setHandle(HANDLE handle_) VULKAN_HPP_NOEXCEPT
{
handle = handle_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImportMemoryWin32HandleInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImportMemoryWin32HandleInfoNV *>(this);
}
explicit operator VkImportMemoryWin32HandleInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImportMemoryWin32HandleInfoNV *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV const &, HANDLE const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleType, handle);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImportMemoryWin32HandleInfoNV const &) const = default;
# else
bool operator==(ImportMemoryWin32HandleInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleType == rhs.handleType) && (handle == rhs.handle);
# endif
}
bool operator!=(ImportMemoryWin32HandleInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryWin32HandleInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagsNV handleType = {};
HANDLE handle = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImportMemoryWin32HandleInfoNV) == sizeof(VkImportMemoryWin32HandleInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImportMemoryWin32HandleInfoNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImportMemoryWin32HandleInfoNV>::value,
"ImportMemoryWin32HandleInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImportMemoryWin32HandleInfoNV>
{
using Type = ImportMemoryWin32HandleInfoNV;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct ImportMemoryZirconHandleInfoFUCHSIA
{
using NativeType = VkImportMemoryZirconHandleInfoFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportMemoryZirconHandleInfoFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImportMemoryZirconHandleInfoFUCHSIA(
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
zx_handle_t handle_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleType(handleType_),
handle(handle_)
{
}
VULKAN_HPP_CONSTEXPR ImportMemoryZirconHandleInfoFUCHSIA(ImportMemoryZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportMemoryZirconHandleInfoFUCHSIA(VkImportMemoryZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: ImportMemoryZirconHandleInfoFUCHSIA(*reinterpret_cast<ImportMemoryZirconHandleInfoFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImportMemoryZirconHandleInfoFUCHSIA &operator=(ImportMemoryZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportMemoryZirconHandleInfoFUCHSIA &operator=(VkImportMemoryZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportMemoryZirconHandleInfoFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImportMemoryZirconHandleInfoFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryZirconHandleInfoFUCHSIA &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportMemoryZirconHandleInfoFUCHSIA &setHandle(zx_handle_t handle_) VULKAN_HPP_NOEXCEPT
{
handle = handle_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImportMemoryZirconHandleInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImportMemoryZirconHandleInfoFUCHSIA *>(this);
}
explicit operator VkImportMemoryZirconHandleInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImportMemoryZirconHandleInfoFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits const &,
zx_handle_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleType, handle);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(ImportMemoryZirconHandleInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = handleType <=> rhs.handleType; cmp != 0)
return cmp;
if(auto cmp = memcmp(&handle, &rhs.handle, sizeof(zx_handle_t)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(ImportMemoryZirconHandleInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleType == rhs.handleType) &&
(memcmp(&handle, &rhs.handle, sizeof(zx_handle_t)) == 0);
}
bool operator!=(ImportMemoryZirconHandleInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportMemoryZirconHandleInfoFUCHSIA;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
zx_handle_t handle = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImportMemoryZirconHandleInfoFUCHSIA) == sizeof(VkImportMemoryZirconHandleInfoFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImportMemoryZirconHandleInfoFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImportMemoryZirconHandleInfoFUCHSIA>::value,
"ImportMemoryZirconHandleInfoFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImportMemoryZirconHandleInfoFUCHSIA>
{
using Type = ImportMemoryZirconHandleInfoFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
struct ImportSemaphoreFdInfoKHR
{
using NativeType = VkImportSemaphoreFdInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportSemaphoreFdInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImportSemaphoreFdInfoKHR(
VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ = {},
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd,
int fd_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
semaphore(semaphore_),
flags(flags_),
handleType(handleType_),
fd(fd_)
{
}
VULKAN_HPP_CONSTEXPR ImportSemaphoreFdInfoKHR(ImportSemaphoreFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportSemaphoreFdInfoKHR(VkImportSemaphoreFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: ImportSemaphoreFdInfoKHR(*reinterpret_cast<ImportSemaphoreFdInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImportSemaphoreFdInfoKHR &operator=(ImportSemaphoreFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportSemaphoreFdInfoKHR &operator=(VkImportSemaphoreFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportSemaphoreFdInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreFdInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreFdInfoKHR &setSemaphore(VULKAN_HPP_NAMESPACE::Semaphore semaphore_) VULKAN_HPP_NOEXCEPT
{
semaphore = semaphore_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreFdInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreFdInfoKHR &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreFdInfoKHR &setFd(int fd_) VULKAN_HPP_NOEXCEPT
{
fd = fd_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImportSemaphoreFdInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImportSemaphoreFdInfoKHR *>(this);
}
explicit operator VkImportSemaphoreFdInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImportSemaphoreFdInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Semaphore const &,
VULKAN_HPP_NAMESPACE::SemaphoreImportFlags const &,
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits const &,
int const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, semaphore, flags, handleType, fd);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImportSemaphoreFdInfoKHR const &) const = default;
#else
bool operator==(ImportSemaphoreFdInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (semaphore == rhs.semaphore) && (flags == rhs.flags) && (handleType == rhs.handleType) &&
(fd == rhs.fd);
# endif
}
bool operator!=(ImportSemaphoreFdInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportSemaphoreFdInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags = {};
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
int fd = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImportSemaphoreFdInfoKHR) == sizeof(VkImportSemaphoreFdInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImportSemaphoreFdInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImportSemaphoreFdInfoKHR>::value,
"ImportSemaphoreFdInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImportSemaphoreFdInfoKHR>
{
using Type = ImportSemaphoreFdInfoKHR;
};
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct ImportSemaphoreWin32HandleInfoKHR
{
using NativeType = VkImportSemaphoreWin32HandleInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportSemaphoreWin32HandleInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImportSemaphoreWin32HandleInfoKHR(
VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ = {},
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd,
HANDLE handle_ = {},
LPCWSTR name_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
semaphore(semaphore_),
flags(flags_),
handleType(handleType_),
handle(handle_),
name(name_)
{
}
VULKAN_HPP_CONSTEXPR ImportSemaphoreWin32HandleInfoKHR(ImportSemaphoreWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportSemaphoreWin32HandleInfoKHR(VkImportSemaphoreWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: ImportSemaphoreWin32HandleInfoKHR(*reinterpret_cast<ImportSemaphoreWin32HandleInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImportSemaphoreWin32HandleInfoKHR &operator=(ImportSemaphoreWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportSemaphoreWin32HandleInfoKHR &operator=(VkImportSemaphoreWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportSemaphoreWin32HandleInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreWin32HandleInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreWin32HandleInfoKHR &setSemaphore(VULKAN_HPP_NAMESPACE::Semaphore semaphore_) VULKAN_HPP_NOEXCEPT
{
semaphore = semaphore_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreWin32HandleInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreWin32HandleInfoKHR &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreWin32HandleInfoKHR &setHandle(HANDLE handle_) VULKAN_HPP_NOEXCEPT
{
handle = handle_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreWin32HandleInfoKHR &setName(LPCWSTR name_) VULKAN_HPP_NOEXCEPT
{
name = name_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImportSemaphoreWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImportSemaphoreWin32HandleInfoKHR *>(this);
}
explicit operator VkImportSemaphoreWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImportSemaphoreWin32HandleInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Semaphore const &,
VULKAN_HPP_NAMESPACE::SemaphoreImportFlags const &,
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits const &,
HANDLE const &,
LPCWSTR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, semaphore, flags, handleType, handle, name);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ImportSemaphoreWin32HandleInfoKHR const &) const = default;
# else
bool operator==(ImportSemaphoreWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (semaphore == rhs.semaphore) && (flags == rhs.flags) && (handleType == rhs.handleType) &&
(handle == rhs.handle) && (name == rhs.name);
# endif
}
bool operator!=(ImportSemaphoreWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportSemaphoreWin32HandleInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags = {};
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
HANDLE handle = {};
LPCWSTR name = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImportSemaphoreWin32HandleInfoKHR) == sizeof(VkImportSemaphoreWin32HandleInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImportSemaphoreWin32HandleInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImportSemaphoreWin32HandleInfoKHR>::value,
"ImportSemaphoreWin32HandleInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImportSemaphoreWin32HandleInfoKHR>
{
using Type = ImportSemaphoreWin32HandleInfoKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct ImportSemaphoreZirconHandleInfoFUCHSIA
{
using NativeType = VkImportSemaphoreZirconHandleInfoFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eImportSemaphoreZirconHandleInfoFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ImportSemaphoreZirconHandleInfoFUCHSIA(
VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_ = {},
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd,
zx_handle_t zirconHandle_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
semaphore(semaphore_),
flags(flags_),
handleType(handleType_),
zirconHandle(zirconHandle_)
{
}
VULKAN_HPP_CONSTEXPR ImportSemaphoreZirconHandleInfoFUCHSIA(ImportSemaphoreZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportSemaphoreZirconHandleInfoFUCHSIA(VkImportSemaphoreZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: ImportSemaphoreZirconHandleInfoFUCHSIA(*reinterpret_cast<ImportSemaphoreZirconHandleInfoFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ImportSemaphoreZirconHandleInfoFUCHSIA &operator=(ImportSemaphoreZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
ImportSemaphoreZirconHandleInfoFUCHSIA &operator=(VkImportSemaphoreZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ImportSemaphoreZirconHandleInfoFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreZirconHandleInfoFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreZirconHandleInfoFUCHSIA &setSemaphore(VULKAN_HPP_NAMESPACE::Semaphore semaphore_) VULKAN_HPP_NOEXCEPT
{
semaphore = semaphore_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreZirconHandleInfoFUCHSIA &setFlags(VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreZirconHandleInfoFUCHSIA &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ImportSemaphoreZirconHandleInfoFUCHSIA &setZirconHandle(zx_handle_t zirconHandle_) VULKAN_HPP_NOEXCEPT
{
zirconHandle = zirconHandle_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkImportSemaphoreZirconHandleInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkImportSemaphoreZirconHandleInfoFUCHSIA *>(this);
}
explicit operator VkImportSemaphoreZirconHandleInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkImportSemaphoreZirconHandleInfoFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Semaphore const &,
VULKAN_HPP_NAMESPACE::SemaphoreImportFlags const &,
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits const &,
zx_handle_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, semaphore, flags, handleType, zirconHandle);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(ImportSemaphoreZirconHandleInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = semaphore <=> rhs.semaphore; cmp != 0)
return cmp;
if(auto cmp = flags <=> rhs.flags; cmp != 0)
return cmp;
if(auto cmp = handleType <=> rhs.handleType; cmp != 0)
return cmp;
if(auto cmp = memcmp(&zirconHandle, &rhs.zirconHandle, sizeof(zx_handle_t)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(ImportSemaphoreZirconHandleInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (semaphore == rhs.semaphore) && (flags == rhs.flags) && (handleType == rhs.handleType) &&
(memcmp(&zirconHandle, &rhs.zirconHandle, sizeof(zx_handle_t)) == 0);
}
bool operator!=(ImportSemaphoreZirconHandleInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eImportSemaphoreZirconHandleInfoFUCHSIA;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
VULKAN_HPP_NAMESPACE::SemaphoreImportFlags flags = {};
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
zx_handle_t zirconHandle = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ImportSemaphoreZirconHandleInfoFUCHSIA) == sizeof(VkImportSemaphoreZirconHandleInfoFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImportSemaphoreZirconHandleInfoFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImportSemaphoreZirconHandleInfoFUCHSIA>::value,
"ImportSemaphoreZirconHandleInfoFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eImportSemaphoreZirconHandleInfoFUCHSIA>
{
using Type = ImportSemaphoreZirconHandleInfoFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
struct IndirectCommandsLayoutTokenNV
{
using NativeType = VkIndirectCommandsLayoutTokenNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eIndirectCommandsLayoutTokenNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutTokenNV(
VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV tokenType_ = VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV::eShaderGroup,
uint32_t stream_ = {},
uint32_t offset_ = {},
uint32_t vertexBindingUnit_ = {},
VULKAN_HPP_NAMESPACE::Bool32 vertexDynamicStride_ = {},
VULKAN_HPP_NAMESPACE::PipelineLayout pushconstantPipelineLayout_ = {},
VULKAN_HPP_NAMESPACE::ShaderStageFlags pushconstantShaderStageFlags_ = {},
uint32_t pushconstantOffset_ = {},
uint32_t pushconstantSize_ = {},
VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV indirectStateFlags_ = {},
uint32_t indexTypeCount_ = {},
const VULKAN_HPP_NAMESPACE::IndexType *pIndexTypes_ = {},
const uint32_t *pIndexTypeValues_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
tokenType(tokenType_),
stream(stream_),
offset(offset_),
vertexBindingUnit(vertexBindingUnit_),
vertexDynamicStride(vertexDynamicStride_),
pushconstantPipelineLayout(pushconstantPipelineLayout_),
pushconstantShaderStageFlags(pushconstantShaderStageFlags_),
pushconstantOffset(pushconstantOffset_),
pushconstantSize(pushconstantSize_),
indirectStateFlags(indirectStateFlags_),
indexTypeCount(indexTypeCount_),
pIndexTypes(pIndexTypes_),
pIndexTypeValues(pIndexTypeValues_)
{
}
VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutTokenNV(IndirectCommandsLayoutTokenNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
IndirectCommandsLayoutTokenNV(VkIndirectCommandsLayoutTokenNV const &rhs) VULKAN_HPP_NOEXCEPT
: IndirectCommandsLayoutTokenNV(*reinterpret_cast<IndirectCommandsLayoutTokenNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
IndirectCommandsLayoutTokenNV(VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV tokenType_,
uint32_t stream_,
uint32_t offset_,
uint32_t vertexBindingUnit_,
VULKAN_HPP_NAMESPACE::Bool32 vertexDynamicStride_,
VULKAN_HPP_NAMESPACE::PipelineLayout pushconstantPipelineLayout_,
VULKAN_HPP_NAMESPACE::ShaderStageFlags pushconstantShaderStageFlags_,
uint32_t pushconstantOffset_,
uint32_t pushconstantSize_,
VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV indirectStateFlags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndexType> const &indexTypes_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &indexTypeValues_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, tokenType(tokenType_)
, stream(stream_)
, offset(offset_)
, vertexBindingUnit(vertexBindingUnit_)
, vertexDynamicStride(vertexDynamicStride_)
, pushconstantPipelineLayout(pushconstantPipelineLayout_)
, pushconstantShaderStageFlags(pushconstantShaderStageFlags_)
, pushconstantOffset(pushconstantOffset_)
, pushconstantSize(pushconstantSize_)
, indirectStateFlags(indirectStateFlags_)
, indexTypeCount(static_cast<uint32_t>(indexTypes_.size()))
, pIndexTypes(indexTypes_.data())
, pIndexTypeValues(indexTypeValues_.data())
{
# ifdef VULKAN_HPP_NO_EXCEPTIONS
VULKAN_HPP_ASSERT(indexTypes_.size() == indexTypeValues_.size());
# else
if(indexTypes_.size() != indexTypeValues_.size())
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING
"::IndirectCommandsLayoutTokenNV::IndirectCommandsLayoutTokenNV: indexTypes_.size() != indexTypeValues_.size()");
}
# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
IndirectCommandsLayoutTokenNV &operator=(IndirectCommandsLayoutTokenNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
IndirectCommandsLayoutTokenNV &operator=(VkIndirectCommandsLayoutTokenNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &setTokenType(VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV tokenType_) VULKAN_HPP_NOEXCEPT
{
tokenType = tokenType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &setStream(uint32_t stream_) VULKAN_HPP_NOEXCEPT
{
stream = stream_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &setOffset(uint32_t offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &setVertexBindingUnit(uint32_t vertexBindingUnit_) VULKAN_HPP_NOEXCEPT
{
vertexBindingUnit = vertexBindingUnit_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &setVertexDynamicStride(VULKAN_HPP_NAMESPACE::Bool32 vertexDynamicStride_) VULKAN_HPP_NOEXCEPT
{
vertexDynamicStride = vertexDynamicStride_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &
setPushconstantPipelineLayout(VULKAN_HPP_NAMESPACE::PipelineLayout pushconstantPipelineLayout_) VULKAN_HPP_NOEXCEPT
{
pushconstantPipelineLayout = pushconstantPipelineLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &
setPushconstantShaderStageFlags(VULKAN_HPP_NAMESPACE::ShaderStageFlags pushconstantShaderStageFlags_) VULKAN_HPP_NOEXCEPT
{
pushconstantShaderStageFlags = pushconstantShaderStageFlags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &setPushconstantOffset(uint32_t pushconstantOffset_) VULKAN_HPP_NOEXCEPT
{
pushconstantOffset = pushconstantOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &setPushconstantSize(uint32_t pushconstantSize_) VULKAN_HPP_NOEXCEPT
{
pushconstantSize = pushconstantSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &
setIndirectStateFlags(VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV indirectStateFlags_) VULKAN_HPP_NOEXCEPT
{
indirectStateFlags = indirectStateFlags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &setIndexTypeCount(uint32_t indexTypeCount_) VULKAN_HPP_NOEXCEPT
{
indexTypeCount = indexTypeCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &setPIndexTypes(const VULKAN_HPP_NAMESPACE::IndexType *pIndexTypes_) VULKAN_HPP_NOEXCEPT
{
pIndexTypes = pIndexTypes_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
IndirectCommandsLayoutTokenNV &
setIndexTypes(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndexType> const &indexTypes_) VULKAN_HPP_NOEXCEPT
{
indexTypeCount = static_cast<uint32_t>(indexTypes_.size());
pIndexTypes = indexTypes_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutTokenNV &setPIndexTypeValues(const uint32_t *pIndexTypeValues_) VULKAN_HPP_NOEXCEPT
{
pIndexTypeValues = pIndexTypeValues_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
IndirectCommandsLayoutTokenNV &
setIndexTypeValues(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &indexTypeValues_) VULKAN_HPP_NOEXCEPT
{
indexTypeCount = static_cast<uint32_t>(indexTypeValues_.size());
pIndexTypeValues = indexTypeValues_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkIndirectCommandsLayoutTokenNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkIndirectCommandsLayoutTokenNV *>(this);
}
explicit operator VkIndirectCommandsLayoutTokenNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkIndirectCommandsLayoutTokenNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::PipelineLayout const &,
VULKAN_HPP_NAMESPACE::ShaderStageFlags const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::IndexType *const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
tokenType,
stream,
offset,
vertexBindingUnit,
vertexDynamicStride,
pushconstantPipelineLayout,
pushconstantShaderStageFlags,
pushconstantOffset,
pushconstantSize,
indirectStateFlags,
indexTypeCount,
pIndexTypes,
pIndexTypeValues);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(IndirectCommandsLayoutTokenNV const &) const = default;
#else
bool operator==(IndirectCommandsLayoutTokenNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (tokenType == rhs.tokenType) && (stream == rhs.stream) && (offset == rhs.offset) &&
(vertexBindingUnit == rhs.vertexBindingUnit) && (vertexDynamicStride == rhs.vertexDynamicStride) &&
(pushconstantPipelineLayout == rhs.pushconstantPipelineLayout) && (pushconstantShaderStageFlags == rhs.pushconstantShaderStageFlags) &&
(pushconstantOffset == rhs.pushconstantOffset) && (pushconstantSize == rhs.pushconstantSize) &&
(indirectStateFlags == rhs.indirectStateFlags) && (indexTypeCount == rhs.indexTypeCount) && (pIndexTypes == rhs.pIndexTypes) &&
(pIndexTypeValues == rhs.pIndexTypeValues);
# endif
}
bool operator!=(IndirectCommandsLayoutTokenNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eIndirectCommandsLayoutTokenNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV tokenType = VULKAN_HPP_NAMESPACE::IndirectCommandsTokenTypeNV::eShaderGroup;
uint32_t stream = {};
uint32_t offset = {};
uint32_t vertexBindingUnit = {};
VULKAN_HPP_NAMESPACE::Bool32 vertexDynamicStride = {};
VULKAN_HPP_NAMESPACE::PipelineLayout pushconstantPipelineLayout = {};
VULKAN_HPP_NAMESPACE::ShaderStageFlags pushconstantShaderStageFlags = {};
uint32_t pushconstantOffset = {};
uint32_t pushconstantSize = {};
VULKAN_HPP_NAMESPACE::IndirectStateFlagsNV indirectStateFlags = {};
uint32_t indexTypeCount = {};
const VULKAN_HPP_NAMESPACE::IndexType *pIndexTypes = {};
const uint32_t *pIndexTypeValues = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV) == sizeof(VkIndirectCommandsLayoutTokenNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV>::value,
"IndirectCommandsLayoutTokenNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eIndirectCommandsLayoutTokenNV>
{
using Type = IndirectCommandsLayoutTokenNV;
};
struct IndirectCommandsLayoutCreateInfoNV
{
using NativeType = VkIndirectCommandsLayoutCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eIndirectCommandsLayoutCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
IndirectCommandsLayoutCreateInfoNV(VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV flags_ = {},
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
uint32_t tokenCount_ = {},
const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV *pTokens_ = {},
uint32_t streamCount_ = {},
const uint32_t *pStreamStrides_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
pipelineBindPoint(pipelineBindPoint_),
tokenCount(tokenCount_),
pTokens(pTokens_),
streamCount(streamCount_),
pStreamStrides(pStreamStrides_)
{
}
VULKAN_HPP_CONSTEXPR IndirectCommandsLayoutCreateInfoNV(IndirectCommandsLayoutCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
IndirectCommandsLayoutCreateInfoNV(VkIndirectCommandsLayoutCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: IndirectCommandsLayoutCreateInfoNV(*reinterpret_cast<IndirectCommandsLayoutCreateInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
IndirectCommandsLayoutCreateInfoNV(
VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV flags_,
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV> const &tokens_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &streamStrides_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, pipelineBindPoint(pipelineBindPoint_)
, tokenCount(static_cast<uint32_t>(tokens_.size()))
, pTokens(tokens_.data())
, streamCount(static_cast<uint32_t>(streamStrides_.size()))
, pStreamStrides(streamStrides_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
IndirectCommandsLayoutCreateInfoNV &operator=(IndirectCommandsLayoutCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
IndirectCommandsLayoutCreateInfoNV &operator=(VkIndirectCommandsLayoutCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutCreateInfoNV &setFlags(VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutCreateInfoNV &
setPipelineBindPoint(VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_) VULKAN_HPP_NOEXCEPT
{
pipelineBindPoint = pipelineBindPoint_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutCreateInfoNV &setTokenCount(uint32_t tokenCount_) VULKAN_HPP_NOEXCEPT
{
tokenCount = tokenCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutCreateInfoNV &
setPTokens(const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV *pTokens_) VULKAN_HPP_NOEXCEPT
{
pTokens = pTokens_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
IndirectCommandsLayoutCreateInfoNV &
setTokens(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV> const &tokens_) VULKAN_HPP_NOEXCEPT
{
tokenCount = static_cast<uint32_t>(tokens_.size());
pTokens = tokens_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutCreateInfoNV &setStreamCount(uint32_t streamCount_) VULKAN_HPP_NOEXCEPT
{
streamCount = streamCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 IndirectCommandsLayoutCreateInfoNV &setPStreamStrides(const uint32_t *pStreamStrides_) VULKAN_HPP_NOEXCEPT
{
pStreamStrides = pStreamStrides_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
IndirectCommandsLayoutCreateInfoNV &
setStreamStrides(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &streamStrides_) VULKAN_HPP_NOEXCEPT
{
streamCount = static_cast<uint32_t>(streamStrides_.size());
pStreamStrides = streamStrides_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkIndirectCommandsLayoutCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkIndirectCommandsLayoutCreateInfoNV *>(this);
}
explicit operator VkIndirectCommandsLayoutCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkIndirectCommandsLayoutCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV const &,
VULKAN_HPP_NAMESPACE::PipelineBindPoint const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV *const &,
uint32_t const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, pipelineBindPoint, tokenCount, pTokens, streamCount, pStreamStrides);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(IndirectCommandsLayoutCreateInfoNV const &) const = default;
#else
bool operator==(IndirectCommandsLayoutCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (pipelineBindPoint == rhs.pipelineBindPoint) &&
(tokenCount == rhs.tokenCount) && (pTokens == rhs.pTokens) && (streamCount == rhs.streamCount) && (pStreamStrides == rhs.pStreamStrides);
# endif
}
bool operator!=(IndirectCommandsLayoutCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eIndirectCommandsLayoutCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutUsageFlagsNV flags = {};
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
uint32_t tokenCount = {};
const VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutTokenNV *pTokens = {};
uint32_t streamCount = {};
const uint32_t *pStreamStrides = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutCreateInfoNV) == sizeof(VkIndirectCommandsLayoutCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutCreateInfoNV>::value,
"IndirectCommandsLayoutCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eIndirectCommandsLayoutCreateInfoNV>
{
using Type = IndirectCommandsLayoutCreateInfoNV;
};
struct InitializePerformanceApiInfoINTEL
{
using NativeType = VkInitializePerformanceApiInfoINTEL;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eInitializePerformanceApiInfoINTEL;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR InitializePerformanceApiInfoINTEL(void *pUserData_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pUserData(pUserData_)
{
}
VULKAN_HPP_CONSTEXPR InitializePerformanceApiInfoINTEL(InitializePerformanceApiInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
InitializePerformanceApiInfoINTEL(VkInitializePerformanceApiInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT
: InitializePerformanceApiInfoINTEL(*reinterpret_cast<InitializePerformanceApiInfoINTEL const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
InitializePerformanceApiInfoINTEL &operator=(InitializePerformanceApiInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
InitializePerformanceApiInfoINTEL &operator=(VkInitializePerformanceApiInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::InitializePerformanceApiInfoINTEL const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 InitializePerformanceApiInfoINTEL &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 InitializePerformanceApiInfoINTEL &setPUserData(void *pUserData_) VULKAN_HPP_NOEXCEPT
{
pUserData = pUserData_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkInitializePerformanceApiInfoINTEL const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkInitializePerformanceApiInfoINTEL *>(this);
}
explicit operator VkInitializePerformanceApiInfoINTEL &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkInitializePerformanceApiInfoINTEL *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pUserData);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(InitializePerformanceApiInfoINTEL const &) const = default;
#else
bool operator==(InitializePerformanceApiInfoINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pUserData == rhs.pUserData);
# endif
}
bool operator!=(InitializePerformanceApiInfoINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eInitializePerformanceApiInfoINTEL;
const void *pNext = {};
void *pUserData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::InitializePerformanceApiInfoINTEL) == sizeof(VkInitializePerformanceApiInfoINTEL),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::InitializePerformanceApiInfoINTEL>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::InitializePerformanceApiInfoINTEL>::value,
"InitializePerformanceApiInfoINTEL is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eInitializePerformanceApiInfoINTEL>
{
using Type = InitializePerformanceApiInfoINTEL;
};
struct InputAttachmentAspectReference
{
using NativeType = VkInputAttachmentAspectReference;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR InputAttachmentAspectReference(uint32_t subpass_ = {},
uint32_t inputAttachmentIndex_ = {},
VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {}) VULKAN_HPP_NOEXCEPT
: subpass(subpass_),
inputAttachmentIndex(inputAttachmentIndex_),
aspectMask(aspectMask_)
{
}
VULKAN_HPP_CONSTEXPR InputAttachmentAspectReference(InputAttachmentAspectReference const &rhs) VULKAN_HPP_NOEXCEPT = default;
InputAttachmentAspectReference(VkInputAttachmentAspectReference const &rhs) VULKAN_HPP_NOEXCEPT
: InputAttachmentAspectReference(*reinterpret_cast<InputAttachmentAspectReference const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
InputAttachmentAspectReference &operator=(InputAttachmentAspectReference const &rhs) VULKAN_HPP_NOEXCEPT = default;
InputAttachmentAspectReference &operator=(VkInputAttachmentAspectReference const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 InputAttachmentAspectReference &setSubpass(uint32_t subpass_) VULKAN_HPP_NOEXCEPT
{
subpass = subpass_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 InputAttachmentAspectReference &setInputAttachmentIndex(uint32_t inputAttachmentIndex_) VULKAN_HPP_NOEXCEPT
{
inputAttachmentIndex = inputAttachmentIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 InputAttachmentAspectReference &setAspectMask(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_) VULKAN_HPP_NOEXCEPT
{
aspectMask = aspectMask_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkInputAttachmentAspectReference const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkInputAttachmentAspectReference *>(this);
}
explicit operator VkInputAttachmentAspectReference &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkInputAttachmentAspectReference *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, VULKAN_HPP_NAMESPACE::ImageAspectFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(subpass, inputAttachmentIndex, aspectMask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(InputAttachmentAspectReference const &) const = default;
#else
bool operator==(InputAttachmentAspectReference const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (subpass == rhs.subpass) && (inputAttachmentIndex == rhs.inputAttachmentIndex) && (aspectMask == rhs.aspectMask);
# endif
}
bool operator!=(InputAttachmentAspectReference const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t subpass = {};
uint32_t inputAttachmentIndex = {};
VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference) == sizeof(VkInputAttachmentAspectReference),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference>::value,
"InputAttachmentAspectReference is not nothrow_move_constructible!");
using InputAttachmentAspectReferenceKHR = InputAttachmentAspectReference;
struct InstanceCreateInfo
{
using NativeType = VkInstanceCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eInstanceCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR InstanceCreateInfo(VULKAN_HPP_NAMESPACE::InstanceCreateFlags flags_ = {},
const VULKAN_HPP_NAMESPACE::ApplicationInfo *pApplicationInfo_ = {},
uint32_t enabledLayerCount_ = {},
const char *const *ppEnabledLayerNames_ = {},
uint32_t enabledExtensionCount_ = {},
const char *const *ppEnabledExtensionNames_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
pApplicationInfo(pApplicationInfo_),
enabledLayerCount(enabledLayerCount_),
ppEnabledLayerNames(ppEnabledLayerNames_),
enabledExtensionCount(enabledExtensionCount_),
ppEnabledExtensionNames(ppEnabledExtensionNames_)
{
}
VULKAN_HPP_CONSTEXPR InstanceCreateInfo(InstanceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
InstanceCreateInfo(VkInstanceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT : InstanceCreateInfo(*reinterpret_cast<InstanceCreateInfo const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
InstanceCreateInfo(VULKAN_HPP_NAMESPACE::InstanceCreateFlags flags_,
const VULKAN_HPP_NAMESPACE::ApplicationInfo *pApplicationInfo_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char *const> const &pEnabledLayerNames_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char *const> const &pEnabledExtensionNames_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, pApplicationInfo(pApplicationInfo_)
, enabledLayerCount(static_cast<uint32_t>(pEnabledLayerNames_.size()))
, ppEnabledLayerNames(pEnabledLayerNames_.data())
, enabledExtensionCount(static_cast<uint32_t>(pEnabledExtensionNames_.size()))
, ppEnabledExtensionNames(pEnabledExtensionNames_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
InstanceCreateInfo &operator=(InstanceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
InstanceCreateInfo &operator=(VkInstanceCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::InstanceCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 InstanceCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 InstanceCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::InstanceCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 InstanceCreateInfo &setPApplicationInfo(const VULKAN_HPP_NAMESPACE::ApplicationInfo *pApplicationInfo_) VULKAN_HPP_NOEXCEPT
{
pApplicationInfo = pApplicationInfo_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 InstanceCreateInfo &setEnabledLayerCount(uint32_t enabledLayerCount_) VULKAN_HPP_NOEXCEPT
{
enabledLayerCount = enabledLayerCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 InstanceCreateInfo &setPpEnabledLayerNames(const char *const *ppEnabledLayerNames_) VULKAN_HPP_NOEXCEPT
{
ppEnabledLayerNames = ppEnabledLayerNames_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
InstanceCreateInfo &
setPEnabledLayerNames(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char *const> const &pEnabledLayerNames_) VULKAN_HPP_NOEXCEPT
{
enabledLayerCount = static_cast<uint32_t>(pEnabledLayerNames_.size());
ppEnabledLayerNames = pEnabledLayerNames_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 InstanceCreateInfo &setEnabledExtensionCount(uint32_t enabledExtensionCount_) VULKAN_HPP_NOEXCEPT
{
enabledExtensionCount = enabledExtensionCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 InstanceCreateInfo &setPpEnabledExtensionNames(const char *const *ppEnabledExtensionNames_) VULKAN_HPP_NOEXCEPT
{
ppEnabledExtensionNames = ppEnabledExtensionNames_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
InstanceCreateInfo &
setPEnabledExtensionNames(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const char *const> const &pEnabledExtensionNames_) VULKAN_HPP_NOEXCEPT
{
enabledExtensionCount = static_cast<uint32_t>(pEnabledExtensionNames_.size());
ppEnabledExtensionNames = pEnabledExtensionNames_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkInstanceCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkInstanceCreateInfo *>(this);
}
explicit operator VkInstanceCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkInstanceCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::InstanceCreateFlags const &,
const VULKAN_HPP_NAMESPACE::ApplicationInfo *const &,
uint32_t const &,
const char *const *const &,
uint32_t const &,
const char *const *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, pApplicationInfo, enabledLayerCount, ppEnabledLayerNames, enabledExtensionCount, ppEnabledExtensionNames);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(InstanceCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = flags <=> rhs.flags; cmp != 0)
return cmp;
if(auto cmp = pApplicationInfo <=> rhs.pApplicationInfo; cmp != 0)
return cmp;
if(auto cmp = enabledLayerCount <=> rhs.enabledLayerCount; cmp != 0)
return cmp;
for(size_t i = 0; i < enabledLayerCount; ++i)
{
if(ppEnabledLayerNames[i] != rhs.ppEnabledLayerNames[i])
if(auto cmp = strcmp(ppEnabledLayerNames[i], rhs.ppEnabledLayerNames[i]); cmp != 0)
return cmp < 0 ? std::strong_ordering::less : std::strong_ordering::greater;
}
if(auto cmp = enabledExtensionCount <=> rhs.enabledExtensionCount; cmp != 0)
return cmp;
for(size_t i = 0; i < enabledExtensionCount; ++i)
{
if(ppEnabledExtensionNames[i] != rhs.ppEnabledExtensionNames[i])
if(auto cmp = strcmp(ppEnabledExtensionNames[i], rhs.ppEnabledExtensionNames[i]); cmp != 0)
return cmp < 0 ? std::strong_ordering::less : std::strong_ordering::greater;
}
return std::strong_ordering::equivalent;
}
#endif
bool operator==(InstanceCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (pApplicationInfo == rhs.pApplicationInfo) &&
(enabledLayerCount == rhs.enabledLayerCount) &&
[this, rhs] {
bool equal = true;
for(size_t i = 0; equal && (i < enabledLayerCount); ++i)
{
equal = ((ppEnabledLayerNames[i] == rhs.ppEnabledLayerNames[i]) || (strcmp(ppEnabledLayerNames[i], rhs.ppEnabledLayerNames[i]) == 0));
}
return equal;
}() &&
(enabledExtensionCount == rhs.enabledExtensionCount) &&
[this, rhs] {
bool equal = true;
for(size_t i = 0; equal && (i < enabledExtensionCount); ++i)
{
equal = ((ppEnabledExtensionNames[i] == rhs.ppEnabledExtensionNames[i]) ||
(strcmp(ppEnabledExtensionNames[i], rhs.ppEnabledExtensionNames[i]) == 0));
}
return equal;
}();
}
bool operator!=(InstanceCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eInstanceCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::InstanceCreateFlags flags = {};
const VULKAN_HPP_NAMESPACE::ApplicationInfo *pApplicationInfo = {};
uint32_t enabledLayerCount = {};
const char *const *ppEnabledLayerNames = {};
uint32_t enabledExtensionCount = {};
const char *const *ppEnabledExtensionNames = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::InstanceCreateInfo) == sizeof(VkInstanceCreateInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::InstanceCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::InstanceCreateInfo>::value,
"InstanceCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eInstanceCreateInfo>
{
using Type = InstanceCreateInfo;
};
struct LayerProperties
{
using NativeType = VkLayerProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 LayerProperties(std::array<char, VK_MAX_EXTENSION_NAME_SIZE> const &layerName_ = {},
uint32_t specVersion_ = {},
uint32_t implementationVersion_ = {},
std::array<char, VK_MAX_DESCRIPTION_SIZE> const &description_ = {}) VULKAN_HPP_NOEXCEPT
: layerName(layerName_),
specVersion(specVersion_),
implementationVersion(implementationVersion_),
description(description_)
{
}
VULKAN_HPP_CONSTEXPR_14 LayerProperties(LayerProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
LayerProperties(VkLayerProperties const &rhs) VULKAN_HPP_NOEXCEPT : LayerProperties(*reinterpret_cast<LayerProperties const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
LayerProperties &operator=(LayerProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
LayerProperties &operator=(VkLayerProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::LayerProperties const *>(&rhs);
return *this;
}
explicit operator VkLayerProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkLayerProperties *>(this);
}
explicit operator VkLayerProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkLayerProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(layerName, specVersion, implementationVersion, description);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(LayerProperties const &) const = default;
#else
bool operator==(LayerProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (layerName == rhs.layerName) && (specVersion == rhs.specVersion) && (implementationVersion == rhs.implementationVersion) &&
(description == rhs.description);
# endif
}
bool operator!=(LayerProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> layerName = {};
uint32_t specVersion = {};
uint32_t implementationVersion = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::LayerProperties) == sizeof(VkLayerProperties), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::LayerProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::LayerProperties>::value,
"LayerProperties is not nothrow_move_constructible!");
#if defined(VK_USE_PLATFORM_MACOS_MVK)
struct MacOSSurfaceCreateInfoMVK
{
using NativeType = VkMacOSSurfaceCreateInfoMVK;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMacosSurfaceCreateInfoMVK;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MacOSSurfaceCreateInfoMVK(VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateFlagsMVK flags_ = {},
const void *pView_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
pView(pView_)
{
}
VULKAN_HPP_CONSTEXPR MacOSSurfaceCreateInfoMVK(MacOSSurfaceCreateInfoMVK const &rhs) VULKAN_HPP_NOEXCEPT = default;
MacOSSurfaceCreateInfoMVK(VkMacOSSurfaceCreateInfoMVK const &rhs) VULKAN_HPP_NOEXCEPT
: MacOSSurfaceCreateInfoMVK(*reinterpret_cast<MacOSSurfaceCreateInfoMVK const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MacOSSurfaceCreateInfoMVK &operator=(MacOSSurfaceCreateInfoMVK const &rhs) VULKAN_HPP_NOEXCEPT = default;
MacOSSurfaceCreateInfoMVK &operator=(VkMacOSSurfaceCreateInfoMVK const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateInfoMVK const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MacOSSurfaceCreateInfoMVK &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MacOSSurfaceCreateInfoMVK &setFlags(VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateFlagsMVK flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MacOSSurfaceCreateInfoMVK &setPView(const void *pView_) VULKAN_HPP_NOEXCEPT
{
pView = pView_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMacOSSurfaceCreateInfoMVK const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMacOSSurfaceCreateInfoMVK *>(this);
}
explicit operator VkMacOSSurfaceCreateInfoMVK &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMacOSSurfaceCreateInfoMVK *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::
tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateFlagsMVK const &, const void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, pView);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MacOSSurfaceCreateInfoMVK const &) const = default;
# else
bool operator==(MacOSSurfaceCreateInfoMVK const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (pView == rhs.pView);
# endif
}
bool operator!=(MacOSSurfaceCreateInfoMVK const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMacosSurfaceCreateInfoMVK;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateFlagsMVK flags = {};
const void *pView = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateInfoMVK) == sizeof(VkMacOSSurfaceCreateInfoMVK),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateInfoMVK>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MacOSSurfaceCreateInfoMVK>::value,
"MacOSSurfaceCreateInfoMVK is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMacosSurfaceCreateInfoMVK>
{
using Type = MacOSSurfaceCreateInfoMVK;
};
#endif /*VK_USE_PLATFORM_MACOS_MVK*/
struct MappedMemoryRange
{
using NativeType = VkMappedMemoryRange;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMappedMemoryRange;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MappedMemoryRange(VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize offset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memory(memory_),
offset(offset_),
size(size_)
{
}
VULKAN_HPP_CONSTEXPR MappedMemoryRange(MappedMemoryRange const &rhs) VULKAN_HPP_NOEXCEPT = default;
MappedMemoryRange(VkMappedMemoryRange const &rhs) VULKAN_HPP_NOEXCEPT : MappedMemoryRange(*reinterpret_cast<MappedMemoryRange const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MappedMemoryRange &operator=(MappedMemoryRange const &rhs) VULKAN_HPP_NOEXCEPT = default;
MappedMemoryRange &operator=(VkMappedMemoryRange const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MappedMemoryRange const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MappedMemoryRange &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MappedMemoryRange &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MappedMemoryRange &setOffset(VULKAN_HPP_NAMESPACE::DeviceSize offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MappedMemoryRange &setSize(VULKAN_HPP_NAMESPACE::DeviceSize size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMappedMemoryRange const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMappedMemoryRange *>(this);
}
explicit operator VkMappedMemoryRange &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMappedMemoryRange *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceMemory const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memory, offset, size);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MappedMemoryRange const &) const = default;
#else
bool operator==(MappedMemoryRange const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memory == rhs.memory) && (offset == rhs.offset) && (size == rhs.size);
# endif
}
bool operator!=(MappedMemoryRange const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMappedMemoryRange;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
VULKAN_HPP_NAMESPACE::DeviceSize offset = {};
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MappedMemoryRange) == sizeof(VkMappedMemoryRange), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MappedMemoryRange>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MappedMemoryRange>::value,
"MappedMemoryRange is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMappedMemoryRange>
{
using Type = MappedMemoryRange;
};
struct MemoryAllocateFlagsInfo
{
using NativeType = VkMemoryAllocateFlagsInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryAllocateFlagsInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryAllocateFlagsInfo(VULKAN_HPP_NAMESPACE::MemoryAllocateFlags flags_ = {},
uint32_t deviceMask_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
deviceMask(deviceMask_)
{
}
VULKAN_HPP_CONSTEXPR MemoryAllocateFlagsInfo(MemoryAllocateFlagsInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryAllocateFlagsInfo(VkMemoryAllocateFlagsInfo const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryAllocateFlagsInfo(*reinterpret_cast<MemoryAllocateFlagsInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryAllocateFlagsInfo &operator=(MemoryAllocateFlagsInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryAllocateFlagsInfo &operator=(VkMemoryAllocateFlagsInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryAllocateFlagsInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MemoryAllocateFlagsInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryAllocateFlagsInfo &setFlags(VULKAN_HPP_NAMESPACE::MemoryAllocateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryAllocateFlagsInfo &setDeviceMask(uint32_t deviceMask_) VULKAN_HPP_NOEXCEPT
{
deviceMask = deviceMask_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMemoryAllocateFlagsInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryAllocateFlagsInfo *>(this);
}
explicit operator VkMemoryAllocateFlagsInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryAllocateFlagsInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::MemoryAllocateFlags const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, deviceMask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryAllocateFlagsInfo const &) const = default;
#else
bool operator==(MemoryAllocateFlagsInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (deviceMask == rhs.deviceMask);
# endif
}
bool operator!=(MemoryAllocateFlagsInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryAllocateFlagsInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::MemoryAllocateFlags flags = {};
uint32_t deviceMask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryAllocateFlagsInfo) == sizeof(VkMemoryAllocateFlagsInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryAllocateFlagsInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryAllocateFlagsInfo>::value,
"MemoryAllocateFlagsInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryAllocateFlagsInfo>
{
using Type = MemoryAllocateFlagsInfo;
};
using MemoryAllocateFlagsInfoKHR = MemoryAllocateFlagsInfo;
struct MemoryAllocateInfo
{
using NativeType = VkMemoryAllocateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryAllocateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryAllocateInfo(VULKAN_HPP_NAMESPACE::DeviceSize allocationSize_ = {},
uint32_t memoryTypeIndex_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
allocationSize(allocationSize_),
memoryTypeIndex(memoryTypeIndex_)
{
}
VULKAN_HPP_CONSTEXPR MemoryAllocateInfo(MemoryAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryAllocateInfo(VkMemoryAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT : MemoryAllocateInfo(*reinterpret_cast<MemoryAllocateInfo const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryAllocateInfo &operator=(MemoryAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryAllocateInfo &operator=(VkMemoryAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryAllocateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MemoryAllocateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryAllocateInfo &setAllocationSize(VULKAN_HPP_NAMESPACE::DeviceSize allocationSize_) VULKAN_HPP_NOEXCEPT
{
allocationSize = allocationSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryAllocateInfo &setMemoryTypeIndex(uint32_t memoryTypeIndex_) VULKAN_HPP_NOEXCEPT
{
memoryTypeIndex = memoryTypeIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMemoryAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryAllocateInfo *>(this);
}
explicit operator VkMemoryAllocateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryAllocateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::DeviceSize const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, allocationSize, memoryTypeIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryAllocateInfo const &) const = default;
#else
bool operator==(MemoryAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (allocationSize == rhs.allocationSize) && (memoryTypeIndex == rhs.memoryTypeIndex);
# endif
}
bool operator!=(MemoryAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryAllocateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceSize allocationSize = {};
uint32_t memoryTypeIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryAllocateInfo) == sizeof(VkMemoryAllocateInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryAllocateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryAllocateInfo>::value,
"MemoryAllocateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryAllocateInfo>
{
using Type = MemoryAllocateInfo;
};
struct MemoryBarrier
{
using NativeType = VkMemoryBarrier;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryBarrier;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryBarrier(VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcAccessMask(srcAccessMask_),
dstAccessMask(dstAccessMask_)
{
}
VULKAN_HPP_CONSTEXPR MemoryBarrier(MemoryBarrier const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryBarrier(VkMemoryBarrier const &rhs) VULKAN_HPP_NOEXCEPT : MemoryBarrier(*reinterpret_cast<MemoryBarrier const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryBarrier &operator=(MemoryBarrier const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryBarrier &operator=(VkMemoryBarrier const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryBarrier const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MemoryBarrier &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryBarrier &setSrcAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_) VULKAN_HPP_NOEXCEPT
{
srcAccessMask = srcAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryBarrier &setDstAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_) VULKAN_HPP_NOEXCEPT
{
dstAccessMask = dstAccessMask_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMemoryBarrier const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryBarrier *>(this);
}
explicit operator VkMemoryBarrier &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryBarrier *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::AccessFlags const &,
VULKAN_HPP_NAMESPACE::AccessFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcAccessMask, dstAccessMask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryBarrier const &) const = default;
#else
bool operator==(MemoryBarrier const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcAccessMask == rhs.srcAccessMask) && (dstAccessMask == rhs.dstAccessMask);
# endif
}
bool operator!=(MemoryBarrier const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryBarrier;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryBarrier) == sizeof(VkMemoryBarrier), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryBarrier>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryBarrier>::value,
"MemoryBarrier is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryBarrier>
{
using Type = MemoryBarrier;
};
struct MemoryDedicatedAllocateInfo
{
using NativeType = VkMemoryDedicatedAllocateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryDedicatedAllocateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryDedicatedAllocateInfo(VULKAN_HPP_NAMESPACE::Image image_ = {},
VULKAN_HPP_NAMESPACE::Buffer buffer_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
image(image_),
buffer(buffer_)
{
}
VULKAN_HPP_CONSTEXPR MemoryDedicatedAllocateInfo(MemoryDedicatedAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryDedicatedAllocateInfo(VkMemoryDedicatedAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryDedicatedAllocateInfo(*reinterpret_cast<MemoryDedicatedAllocateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryDedicatedAllocateInfo &operator=(MemoryDedicatedAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryDedicatedAllocateInfo &operator=(VkMemoryDedicatedAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryDedicatedAllocateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MemoryDedicatedAllocateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryDedicatedAllocateInfo &setImage(VULKAN_HPP_NAMESPACE::Image image_) VULKAN_HPP_NOEXCEPT
{
image = image_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryDedicatedAllocateInfo &setBuffer(VULKAN_HPP_NAMESPACE::Buffer buffer_) VULKAN_HPP_NOEXCEPT
{
buffer = buffer_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMemoryDedicatedAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryDedicatedAllocateInfo *>(this);
}
explicit operator VkMemoryDedicatedAllocateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryDedicatedAllocateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Image const &, VULKAN_HPP_NAMESPACE::Buffer const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, image, buffer);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryDedicatedAllocateInfo const &) const = default;
#else
bool operator==(MemoryDedicatedAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (image == rhs.image) && (buffer == rhs.buffer);
# endif
}
bool operator!=(MemoryDedicatedAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryDedicatedAllocateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Image image = {};
VULKAN_HPP_NAMESPACE::Buffer buffer = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryDedicatedAllocateInfo) == sizeof(VkMemoryDedicatedAllocateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryDedicatedAllocateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryDedicatedAllocateInfo>::value,
"MemoryDedicatedAllocateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryDedicatedAllocateInfo>
{
using Type = MemoryDedicatedAllocateInfo;
};
using MemoryDedicatedAllocateInfoKHR = MemoryDedicatedAllocateInfo;
struct MemoryDedicatedRequirements
{
using NativeType = VkMemoryDedicatedRequirements;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryDedicatedRequirements;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryDedicatedRequirements(VULKAN_HPP_NAMESPACE::Bool32 prefersDedicatedAllocation_ = {},
VULKAN_HPP_NAMESPACE::Bool32 requiresDedicatedAllocation_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
prefersDedicatedAllocation(prefersDedicatedAllocation_),
requiresDedicatedAllocation(requiresDedicatedAllocation_)
{
}
VULKAN_HPP_CONSTEXPR MemoryDedicatedRequirements(MemoryDedicatedRequirements const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryDedicatedRequirements(VkMemoryDedicatedRequirements const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryDedicatedRequirements(*reinterpret_cast<MemoryDedicatedRequirements const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryDedicatedRequirements &operator=(MemoryDedicatedRequirements const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryDedicatedRequirements &operator=(VkMemoryDedicatedRequirements const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryDedicatedRequirements const *>(&rhs);
return *this;
}
explicit operator VkMemoryDedicatedRequirements const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryDedicatedRequirements *>(this);
}
explicit operator VkMemoryDedicatedRequirements &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryDedicatedRequirements *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, prefersDedicatedAllocation, requiresDedicatedAllocation);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryDedicatedRequirements const &) const = default;
#else
bool operator==(MemoryDedicatedRequirements const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (prefersDedicatedAllocation == rhs.prefersDedicatedAllocation) &&
(requiresDedicatedAllocation == rhs.requiresDedicatedAllocation);
# endif
}
bool operator!=(MemoryDedicatedRequirements const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryDedicatedRequirements;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 prefersDedicatedAllocation = {};
VULKAN_HPP_NAMESPACE::Bool32 requiresDedicatedAllocation = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryDedicatedRequirements) == sizeof(VkMemoryDedicatedRequirements),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryDedicatedRequirements>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryDedicatedRequirements>::value,
"MemoryDedicatedRequirements is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryDedicatedRequirements>
{
using Type = MemoryDedicatedRequirements;
};
using MemoryDedicatedRequirementsKHR = MemoryDedicatedRequirements;
struct MemoryFdPropertiesKHR
{
using NativeType = VkMemoryFdPropertiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryFdPropertiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryFdPropertiesKHR(uint32_t memoryTypeBits_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memoryTypeBits(memoryTypeBits_)
{
}
VULKAN_HPP_CONSTEXPR MemoryFdPropertiesKHR(MemoryFdPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryFdPropertiesKHR(VkMemoryFdPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryFdPropertiesKHR(*reinterpret_cast<MemoryFdPropertiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryFdPropertiesKHR &operator=(MemoryFdPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryFdPropertiesKHR &operator=(VkMemoryFdPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR const *>(&rhs);
return *this;
}
explicit operator VkMemoryFdPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryFdPropertiesKHR *>(this);
}
explicit operator VkMemoryFdPropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryFdPropertiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memoryTypeBits);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryFdPropertiesKHR const &) const = default;
#else
bool operator==(MemoryFdPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memoryTypeBits == rhs.memoryTypeBits);
# endif
}
bool operator!=(MemoryFdPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryFdPropertiesKHR;
void *pNext = {};
uint32_t memoryTypeBits = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR) == sizeof(VkMemoryFdPropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryFdPropertiesKHR>::value,
"MemoryFdPropertiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryFdPropertiesKHR>
{
using Type = MemoryFdPropertiesKHR;
};
#if defined(VK_USE_PLATFORM_ANDROID_KHR)
struct MemoryGetAndroidHardwareBufferInfoANDROID
{
using NativeType = VkMemoryGetAndroidHardwareBufferInfoANDROID;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryGetAndroidHardwareBufferInfoANDROID;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryGetAndroidHardwareBufferInfoANDROID(VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memory(memory_)
{
}
VULKAN_HPP_CONSTEXPR MemoryGetAndroidHardwareBufferInfoANDROID(MemoryGetAndroidHardwareBufferInfoANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryGetAndroidHardwareBufferInfoANDROID(VkMemoryGetAndroidHardwareBufferInfoANDROID const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryGetAndroidHardwareBufferInfoANDROID(*reinterpret_cast<MemoryGetAndroidHardwareBufferInfoANDROID const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryGetAndroidHardwareBufferInfoANDROID &operator=(MemoryGetAndroidHardwareBufferInfoANDROID const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryGetAndroidHardwareBufferInfoANDROID &operator=(VkMemoryGetAndroidHardwareBufferInfoANDROID const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryGetAndroidHardwareBufferInfoANDROID const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MemoryGetAndroidHardwareBufferInfoANDROID &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryGetAndroidHardwareBufferInfoANDROID &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMemoryGetAndroidHardwareBufferInfoANDROID const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryGetAndroidHardwareBufferInfoANDROID *>(this);
}
explicit operator VkMemoryGetAndroidHardwareBufferInfoANDROID &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryGetAndroidHardwareBufferInfoANDROID *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::DeviceMemory const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memory);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryGetAndroidHardwareBufferInfoANDROID const &) const = default;
# else
bool operator==(MemoryGetAndroidHardwareBufferInfoANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memory == rhs.memory);
# endif
}
bool operator!=(MemoryGetAndroidHardwareBufferInfoANDROID const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryGetAndroidHardwareBufferInfoANDROID;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryGetAndroidHardwareBufferInfoANDROID) == sizeof(VkMemoryGetAndroidHardwareBufferInfoANDROID),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryGetAndroidHardwareBufferInfoANDROID>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryGetAndroidHardwareBufferInfoANDROID>::value,
"MemoryGetAndroidHardwareBufferInfoANDROID is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryGetAndroidHardwareBufferInfoANDROID>
{
using Type = MemoryGetAndroidHardwareBufferInfoANDROID;
};
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
struct MemoryGetFdInfoKHR
{
using NativeType = VkMemoryGetFdInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryGetFdInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryGetFdInfoKHR(
VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memory(memory_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR MemoryGetFdInfoKHR(MemoryGetFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryGetFdInfoKHR(VkMemoryGetFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT : MemoryGetFdInfoKHR(*reinterpret_cast<MemoryGetFdInfoKHR const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryGetFdInfoKHR &operator=(MemoryGetFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryGetFdInfoKHR &operator=(VkMemoryGetFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryGetFdInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MemoryGetFdInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryGetFdInfoKHR &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryGetFdInfoKHR &setHandleType(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMemoryGetFdInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryGetFdInfoKHR *>(this);
}
explicit operator VkMemoryGetFdInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryGetFdInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceMemory const &,
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memory, handleType);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryGetFdInfoKHR const &) const = default;
#else
bool operator==(MemoryGetFdInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memory == rhs.memory) && (handleType == rhs.handleType);
# endif
}
bool operator!=(MemoryGetFdInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryGetFdInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryGetFdInfoKHR) == sizeof(VkMemoryGetFdInfoKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryGetFdInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryGetFdInfoKHR>::value,
"MemoryGetFdInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryGetFdInfoKHR>
{
using Type = MemoryGetFdInfoKHR;
};
struct MemoryGetRemoteAddressInfoNV
{
using NativeType = VkMemoryGetRemoteAddressInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryGetRemoteAddressInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryGetRemoteAddressInfoNV(
VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memory(memory_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR MemoryGetRemoteAddressInfoNV(MemoryGetRemoteAddressInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryGetRemoteAddressInfoNV(VkMemoryGetRemoteAddressInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryGetRemoteAddressInfoNV(*reinterpret_cast<MemoryGetRemoteAddressInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryGetRemoteAddressInfoNV &operator=(MemoryGetRemoteAddressInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryGetRemoteAddressInfoNV &operator=(VkMemoryGetRemoteAddressInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryGetRemoteAddressInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MemoryGetRemoteAddressInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryGetRemoteAddressInfoNV &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryGetRemoteAddressInfoNV &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMemoryGetRemoteAddressInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryGetRemoteAddressInfoNV *>(this);
}
explicit operator VkMemoryGetRemoteAddressInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryGetRemoteAddressInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceMemory const &,
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memory, handleType);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryGetRemoteAddressInfoNV const &) const = default;
#else
bool operator==(MemoryGetRemoteAddressInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memory == rhs.memory) && (handleType == rhs.handleType);
# endif
}
bool operator!=(MemoryGetRemoteAddressInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryGetRemoteAddressInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryGetRemoteAddressInfoNV) == sizeof(VkMemoryGetRemoteAddressInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryGetRemoteAddressInfoNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryGetRemoteAddressInfoNV>::value,
"MemoryGetRemoteAddressInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryGetRemoteAddressInfoNV>
{
using Type = MemoryGetRemoteAddressInfoNV;
};
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct MemoryGetWin32HandleInfoKHR
{
using NativeType = VkMemoryGetWin32HandleInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryGetWin32HandleInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryGetWin32HandleInfoKHR(
VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memory(memory_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR MemoryGetWin32HandleInfoKHR(MemoryGetWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryGetWin32HandleInfoKHR(VkMemoryGetWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryGetWin32HandleInfoKHR(*reinterpret_cast<MemoryGetWin32HandleInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryGetWin32HandleInfoKHR &operator=(MemoryGetWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryGetWin32HandleInfoKHR &operator=(VkMemoryGetWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryGetWin32HandleInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MemoryGetWin32HandleInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryGetWin32HandleInfoKHR &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryGetWin32HandleInfoKHR &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMemoryGetWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryGetWin32HandleInfoKHR *>(this);
}
explicit operator VkMemoryGetWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryGetWin32HandleInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceMemory const &,
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memory, handleType);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryGetWin32HandleInfoKHR const &) const = default;
# else
bool operator==(MemoryGetWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memory == rhs.memory) && (handleType == rhs.handleType);
# endif
}
bool operator!=(MemoryGetWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryGetWin32HandleInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryGetWin32HandleInfoKHR) == sizeof(VkMemoryGetWin32HandleInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryGetWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryGetWin32HandleInfoKHR>::value,
"MemoryGetWin32HandleInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryGetWin32HandleInfoKHR>
{
using Type = MemoryGetWin32HandleInfoKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct MemoryGetZirconHandleInfoFUCHSIA
{
using NativeType = VkMemoryGetZirconHandleInfoFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryGetZirconHandleInfoFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryGetZirconHandleInfoFUCHSIA(
VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memory(memory_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR MemoryGetZirconHandleInfoFUCHSIA(MemoryGetZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryGetZirconHandleInfoFUCHSIA(VkMemoryGetZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryGetZirconHandleInfoFUCHSIA(*reinterpret_cast<MemoryGetZirconHandleInfoFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryGetZirconHandleInfoFUCHSIA &operator=(MemoryGetZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryGetZirconHandleInfoFUCHSIA &operator=(VkMemoryGetZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryGetZirconHandleInfoFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MemoryGetZirconHandleInfoFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryGetZirconHandleInfoFUCHSIA &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryGetZirconHandleInfoFUCHSIA &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMemoryGetZirconHandleInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryGetZirconHandleInfoFUCHSIA *>(this);
}
explicit operator VkMemoryGetZirconHandleInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryGetZirconHandleInfoFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DeviceMemory const &,
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memory, handleType);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryGetZirconHandleInfoFUCHSIA const &) const = default;
# else
bool operator==(MemoryGetZirconHandleInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memory == rhs.memory) && (handleType == rhs.handleType);
# endif
}
bool operator!=(MemoryGetZirconHandleInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryGetZirconHandleInfoFUCHSIA;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryGetZirconHandleInfoFUCHSIA) == sizeof(VkMemoryGetZirconHandleInfoFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryGetZirconHandleInfoFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryGetZirconHandleInfoFUCHSIA>::value,
"MemoryGetZirconHandleInfoFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryGetZirconHandleInfoFUCHSIA>
{
using Type = MemoryGetZirconHandleInfoFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
struct MemoryHeap
{
using NativeType = VkMemoryHeap;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryHeap(VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}, VULKAN_HPP_NAMESPACE::MemoryHeapFlags flags_ = {}) VULKAN_HPP_NOEXCEPT
: size(size_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR MemoryHeap(MemoryHeap const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryHeap(VkMemoryHeap const &rhs) VULKAN_HPP_NOEXCEPT : MemoryHeap(*reinterpret_cast<MemoryHeap const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryHeap &operator=(MemoryHeap const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryHeap &operator=(VkMemoryHeap const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryHeap const *>(&rhs);
return *this;
}
explicit operator VkMemoryHeap const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryHeap *>(this);
}
explicit operator VkMemoryHeap &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryHeap *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DeviceSize const &, VULKAN_HPP_NAMESPACE::MemoryHeapFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(size, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryHeap const &) const = default;
#else
bool operator==(MemoryHeap const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (size == rhs.size) && (flags == rhs.flags);
# endif
}
bool operator!=(MemoryHeap const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
VULKAN_HPP_NAMESPACE::MemoryHeapFlags flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryHeap) == sizeof(VkMemoryHeap), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryHeap>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryHeap>::value, "MemoryHeap is not nothrow_move_constructible!");
struct MemoryHostPointerPropertiesEXT
{
using NativeType = VkMemoryHostPointerPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryHostPointerPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryHostPointerPropertiesEXT(uint32_t memoryTypeBits_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memoryTypeBits(memoryTypeBits_)
{
}
VULKAN_HPP_CONSTEXPR MemoryHostPointerPropertiesEXT(MemoryHostPointerPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryHostPointerPropertiesEXT(VkMemoryHostPointerPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryHostPointerPropertiesEXT(*reinterpret_cast<MemoryHostPointerPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryHostPointerPropertiesEXT &operator=(MemoryHostPointerPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryHostPointerPropertiesEXT &operator=(VkMemoryHostPointerPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkMemoryHostPointerPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryHostPointerPropertiesEXT *>(this);
}
explicit operator VkMemoryHostPointerPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryHostPointerPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memoryTypeBits);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryHostPointerPropertiesEXT const &) const = default;
#else
bool operator==(MemoryHostPointerPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memoryTypeBits == rhs.memoryTypeBits);
# endif
}
bool operator!=(MemoryHostPointerPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryHostPointerPropertiesEXT;
void *pNext = {};
uint32_t memoryTypeBits = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT) == sizeof(VkMemoryHostPointerPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryHostPointerPropertiesEXT>::value,
"MemoryHostPointerPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryHostPointerPropertiesEXT>
{
using Type = MemoryHostPointerPropertiesEXT;
};
struct MemoryOpaqueCaptureAddressAllocateInfo
{
using NativeType = VkMemoryOpaqueCaptureAddressAllocateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryOpaqueCaptureAddressAllocateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryOpaqueCaptureAddressAllocateInfo(uint64_t opaqueCaptureAddress_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
opaqueCaptureAddress(opaqueCaptureAddress_)
{
}
VULKAN_HPP_CONSTEXPR MemoryOpaqueCaptureAddressAllocateInfo(MemoryOpaqueCaptureAddressAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryOpaqueCaptureAddressAllocateInfo(VkMemoryOpaqueCaptureAddressAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryOpaqueCaptureAddressAllocateInfo(*reinterpret_cast<MemoryOpaqueCaptureAddressAllocateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryOpaqueCaptureAddressAllocateInfo &operator=(MemoryOpaqueCaptureAddressAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryOpaqueCaptureAddressAllocateInfo &operator=(VkMemoryOpaqueCaptureAddressAllocateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryOpaqueCaptureAddressAllocateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MemoryOpaqueCaptureAddressAllocateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryOpaqueCaptureAddressAllocateInfo &setOpaqueCaptureAddress(uint64_t opaqueCaptureAddress_) VULKAN_HPP_NOEXCEPT
{
opaqueCaptureAddress = opaqueCaptureAddress_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMemoryOpaqueCaptureAddressAllocateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryOpaqueCaptureAddressAllocateInfo *>(this);
}
explicit operator VkMemoryOpaqueCaptureAddressAllocateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryOpaqueCaptureAddressAllocateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, opaqueCaptureAddress);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryOpaqueCaptureAddressAllocateInfo const &) const = default;
#else
bool operator==(MemoryOpaqueCaptureAddressAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (opaqueCaptureAddress == rhs.opaqueCaptureAddress);
# endif
}
bool operator!=(MemoryOpaqueCaptureAddressAllocateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryOpaqueCaptureAddressAllocateInfo;
const void *pNext = {};
uint64_t opaqueCaptureAddress = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryOpaqueCaptureAddressAllocateInfo) == sizeof(VkMemoryOpaqueCaptureAddressAllocateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryOpaqueCaptureAddressAllocateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryOpaqueCaptureAddressAllocateInfo>::value,
"MemoryOpaqueCaptureAddressAllocateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryOpaqueCaptureAddressAllocateInfo>
{
using Type = MemoryOpaqueCaptureAddressAllocateInfo;
};
using MemoryOpaqueCaptureAddressAllocateInfoKHR = MemoryOpaqueCaptureAddressAllocateInfo;
struct MemoryPriorityAllocateInfoEXT
{
using NativeType = VkMemoryPriorityAllocateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryPriorityAllocateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryPriorityAllocateInfoEXT(float priority_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
priority(priority_)
{
}
VULKAN_HPP_CONSTEXPR MemoryPriorityAllocateInfoEXT(MemoryPriorityAllocateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryPriorityAllocateInfoEXT(VkMemoryPriorityAllocateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryPriorityAllocateInfoEXT(*reinterpret_cast<MemoryPriorityAllocateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryPriorityAllocateInfoEXT &operator=(MemoryPriorityAllocateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryPriorityAllocateInfoEXT &operator=(VkMemoryPriorityAllocateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryPriorityAllocateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MemoryPriorityAllocateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MemoryPriorityAllocateInfoEXT &setPriority(float priority_) VULKAN_HPP_NOEXCEPT
{
priority = priority_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMemoryPriorityAllocateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryPriorityAllocateInfoEXT *>(this);
}
explicit operator VkMemoryPriorityAllocateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryPriorityAllocateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, float const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, priority);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryPriorityAllocateInfoEXT const &) const = default;
#else
bool operator==(MemoryPriorityAllocateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (priority == rhs.priority);
# endif
}
bool operator!=(MemoryPriorityAllocateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryPriorityAllocateInfoEXT;
const void *pNext = {};
float priority = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryPriorityAllocateInfoEXT) == sizeof(VkMemoryPriorityAllocateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryPriorityAllocateInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryPriorityAllocateInfoEXT>::value,
"MemoryPriorityAllocateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryPriorityAllocateInfoEXT>
{
using Type = MemoryPriorityAllocateInfoEXT;
};
struct MemoryRequirements
{
using NativeType = VkMemoryRequirements;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryRequirements(VULKAN_HPP_NAMESPACE::DeviceSize size_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize alignment_ = {},
uint32_t memoryTypeBits_ = {}) VULKAN_HPP_NOEXCEPT
: size(size_),
alignment(alignment_),
memoryTypeBits(memoryTypeBits_)
{
}
VULKAN_HPP_CONSTEXPR MemoryRequirements(MemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryRequirements(VkMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT : MemoryRequirements(*reinterpret_cast<MemoryRequirements const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryRequirements &operator=(MemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryRequirements &operator=(VkMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryRequirements const *>(&rhs);
return *this;
}
explicit operator VkMemoryRequirements const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryRequirements *>(this);
}
explicit operator VkMemoryRequirements &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryRequirements *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DeviceSize const &, VULKAN_HPP_NAMESPACE::DeviceSize const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(size, alignment, memoryTypeBits);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryRequirements const &) const = default;
#else
bool operator==(MemoryRequirements const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (size == rhs.size) && (alignment == rhs.alignment) && (memoryTypeBits == rhs.memoryTypeBits);
# endif
}
bool operator!=(MemoryRequirements const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
VULKAN_HPP_NAMESPACE::DeviceSize alignment = {};
uint32_t memoryTypeBits = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryRequirements) == sizeof(VkMemoryRequirements), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryRequirements>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryRequirements>::value,
"MemoryRequirements is not nothrow_move_constructible!");
struct MemoryRequirements2
{
using NativeType = VkMemoryRequirements2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryRequirements2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryRequirements2(VULKAN_HPP_NAMESPACE::MemoryRequirements memoryRequirements_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memoryRequirements(memoryRequirements_)
{
}
VULKAN_HPP_CONSTEXPR MemoryRequirements2(MemoryRequirements2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryRequirements2(VkMemoryRequirements2 const &rhs) VULKAN_HPP_NOEXCEPT : MemoryRequirements2(*reinterpret_cast<MemoryRequirements2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryRequirements2 &operator=(MemoryRequirements2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryRequirements2 &operator=(VkMemoryRequirements2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryRequirements2 const *>(&rhs);
return *this;
}
explicit operator VkMemoryRequirements2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryRequirements2 *>(this);
}
explicit operator VkMemoryRequirements2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryRequirements2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::MemoryRequirements const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memoryRequirements);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryRequirements2 const &) const = default;
#else
bool operator==(MemoryRequirements2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memoryRequirements == rhs.memoryRequirements);
# endif
}
bool operator!=(MemoryRequirements2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryRequirements2;
void *pNext = {};
VULKAN_HPP_NAMESPACE::MemoryRequirements memoryRequirements = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryRequirements2) == sizeof(VkMemoryRequirements2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryRequirements2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryRequirements2>::value,
"MemoryRequirements2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryRequirements2>
{
using Type = MemoryRequirements2;
};
using MemoryRequirements2KHR = MemoryRequirements2;
struct MemoryType
{
using NativeType = VkMemoryType;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryType(VULKAN_HPP_NAMESPACE::MemoryPropertyFlags propertyFlags_ = {}, uint32_t heapIndex_ = {}) VULKAN_HPP_NOEXCEPT
: propertyFlags(propertyFlags_),
heapIndex(heapIndex_)
{
}
VULKAN_HPP_CONSTEXPR MemoryType(MemoryType const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryType(VkMemoryType const &rhs) VULKAN_HPP_NOEXCEPT : MemoryType(*reinterpret_cast<MemoryType const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryType &operator=(MemoryType const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryType &operator=(VkMemoryType const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryType const *>(&rhs);
return *this;
}
explicit operator VkMemoryType const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryType *>(this);
}
explicit operator VkMemoryType &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryType *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::MemoryPropertyFlags const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(propertyFlags, heapIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryType const &) const = default;
#else
bool operator==(MemoryType const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (propertyFlags == rhs.propertyFlags) && (heapIndex == rhs.heapIndex);
# endif
}
bool operator!=(MemoryType const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::MemoryPropertyFlags propertyFlags = {};
uint32_t heapIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryType) == sizeof(VkMemoryType), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryType>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryType>::value, "MemoryType is not nothrow_move_constructible!");
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct MemoryWin32HandlePropertiesKHR
{
using NativeType = VkMemoryWin32HandlePropertiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryWin32HandlePropertiesKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryWin32HandlePropertiesKHR(uint32_t memoryTypeBits_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memoryTypeBits(memoryTypeBits_)
{
}
VULKAN_HPP_CONSTEXPR MemoryWin32HandlePropertiesKHR(MemoryWin32HandlePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryWin32HandlePropertiesKHR(VkMemoryWin32HandlePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryWin32HandlePropertiesKHR(*reinterpret_cast<MemoryWin32HandlePropertiesKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryWin32HandlePropertiesKHR &operator=(MemoryWin32HandlePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryWin32HandlePropertiesKHR &operator=(VkMemoryWin32HandlePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR const *>(&rhs);
return *this;
}
explicit operator VkMemoryWin32HandlePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryWin32HandlePropertiesKHR *>(this);
}
explicit operator VkMemoryWin32HandlePropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryWin32HandlePropertiesKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memoryTypeBits);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryWin32HandlePropertiesKHR const &) const = default;
# else
bool operator==(MemoryWin32HandlePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memoryTypeBits == rhs.memoryTypeBits);
# endif
}
bool operator!=(MemoryWin32HandlePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryWin32HandlePropertiesKHR;
void *pNext = {};
uint32_t memoryTypeBits = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR) == sizeof(VkMemoryWin32HandlePropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryWin32HandlePropertiesKHR>::value,
"MemoryWin32HandlePropertiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryWin32HandlePropertiesKHR>
{
using Type = MemoryWin32HandlePropertiesKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct MemoryZirconHandlePropertiesFUCHSIA
{
using NativeType = VkMemoryZirconHandlePropertiesFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMemoryZirconHandlePropertiesFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MemoryZirconHandlePropertiesFUCHSIA(uint32_t memoryTypeBits_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memoryTypeBits(memoryTypeBits_)
{
}
VULKAN_HPP_CONSTEXPR MemoryZirconHandlePropertiesFUCHSIA(MemoryZirconHandlePropertiesFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryZirconHandlePropertiesFUCHSIA(VkMemoryZirconHandlePropertiesFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: MemoryZirconHandlePropertiesFUCHSIA(*reinterpret_cast<MemoryZirconHandlePropertiesFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MemoryZirconHandlePropertiesFUCHSIA &operator=(MemoryZirconHandlePropertiesFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
MemoryZirconHandlePropertiesFUCHSIA &operator=(VkMemoryZirconHandlePropertiesFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA const *>(&rhs);
return *this;
}
explicit operator VkMemoryZirconHandlePropertiesFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMemoryZirconHandlePropertiesFUCHSIA *>(this);
}
explicit operator VkMemoryZirconHandlePropertiesFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMemoryZirconHandlePropertiesFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memoryTypeBits);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MemoryZirconHandlePropertiesFUCHSIA const &) const = default;
# else
bool operator==(MemoryZirconHandlePropertiesFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memoryTypeBits == rhs.memoryTypeBits);
# endif
}
bool operator!=(MemoryZirconHandlePropertiesFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMemoryZirconHandlePropertiesFUCHSIA;
void *pNext = {};
uint32_t memoryTypeBits = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA) == sizeof(VkMemoryZirconHandlePropertiesFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MemoryZirconHandlePropertiesFUCHSIA>::value,
"MemoryZirconHandlePropertiesFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMemoryZirconHandlePropertiesFUCHSIA>
{
using Type = MemoryZirconHandlePropertiesFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined(VK_USE_PLATFORM_METAL_EXT)
struct MetalSurfaceCreateInfoEXT
{
using NativeType = VkMetalSurfaceCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMetalSurfaceCreateInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MetalSurfaceCreateInfoEXT(VULKAN_HPP_NAMESPACE::MetalSurfaceCreateFlagsEXT flags_ = {},
const CAMetalLayer *pLayer_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
pLayer(pLayer_)
{
}
VULKAN_HPP_CONSTEXPR MetalSurfaceCreateInfoEXT(MetalSurfaceCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
MetalSurfaceCreateInfoEXT(VkMetalSurfaceCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: MetalSurfaceCreateInfoEXT(*reinterpret_cast<MetalSurfaceCreateInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MetalSurfaceCreateInfoEXT &operator=(MetalSurfaceCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
MetalSurfaceCreateInfoEXT &operator=(VkMetalSurfaceCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MetalSurfaceCreateInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MetalSurfaceCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MetalSurfaceCreateInfoEXT &setFlags(VULKAN_HPP_NAMESPACE::MetalSurfaceCreateFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MetalSurfaceCreateInfoEXT &setPLayer(const CAMetalLayer *pLayer_) VULKAN_HPP_NOEXCEPT
{
pLayer = pLayer_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMetalSurfaceCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMetalSurfaceCreateInfoEXT *>(this);
}
explicit operator VkMetalSurfaceCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMetalSurfaceCreateInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::MetalSurfaceCreateFlagsEXT const &,
const CAMetalLayer *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, pLayer);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MetalSurfaceCreateInfoEXT const &) const = default;
# else
bool operator==(MetalSurfaceCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (pLayer == rhs.pLayer);
# endif
}
bool operator!=(MetalSurfaceCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMetalSurfaceCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::MetalSurfaceCreateFlagsEXT flags = {};
const CAMetalLayer *pLayer = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MetalSurfaceCreateInfoEXT) == sizeof(VkMetalSurfaceCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MetalSurfaceCreateInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MetalSurfaceCreateInfoEXT>::value,
"MetalSurfaceCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMetalSurfaceCreateInfoEXT>
{
using Type = MetalSurfaceCreateInfoEXT;
};
#endif /*VK_USE_PLATFORM_METAL_EXT*/
struct MultiDrawIndexedInfoEXT
{
using NativeType = VkMultiDrawIndexedInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MultiDrawIndexedInfoEXT(uint32_t firstIndex_ = {}, uint32_t indexCount_ = {}, int32_t vertexOffset_ = {}) VULKAN_HPP_NOEXCEPT
: firstIndex(firstIndex_),
indexCount(indexCount_),
vertexOffset(vertexOffset_)
{
}
VULKAN_HPP_CONSTEXPR MultiDrawIndexedInfoEXT(MultiDrawIndexedInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
MultiDrawIndexedInfoEXT(VkMultiDrawIndexedInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: MultiDrawIndexedInfoEXT(*reinterpret_cast<MultiDrawIndexedInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MultiDrawIndexedInfoEXT &operator=(MultiDrawIndexedInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
MultiDrawIndexedInfoEXT &operator=(VkMultiDrawIndexedInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MultiDrawIndexedInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MultiDrawIndexedInfoEXT &setFirstIndex(uint32_t firstIndex_) VULKAN_HPP_NOEXCEPT
{
firstIndex = firstIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MultiDrawIndexedInfoEXT &setIndexCount(uint32_t indexCount_) VULKAN_HPP_NOEXCEPT
{
indexCount = indexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MultiDrawIndexedInfoEXT &setVertexOffset(int32_t vertexOffset_) VULKAN_HPP_NOEXCEPT
{
vertexOffset = vertexOffset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMultiDrawIndexedInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMultiDrawIndexedInfoEXT *>(this);
}
explicit operator VkMultiDrawIndexedInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMultiDrawIndexedInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, int32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(firstIndex, indexCount, vertexOffset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MultiDrawIndexedInfoEXT const &) const = default;
#else
bool operator==(MultiDrawIndexedInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (firstIndex == rhs.firstIndex) && (indexCount == rhs.indexCount) && (vertexOffset == rhs.vertexOffset);
# endif
}
bool operator!=(MultiDrawIndexedInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t firstIndex = {};
uint32_t indexCount = {};
int32_t vertexOffset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MultiDrawIndexedInfoEXT) == sizeof(VkMultiDrawIndexedInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MultiDrawIndexedInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MultiDrawIndexedInfoEXT>::value,
"MultiDrawIndexedInfoEXT is not nothrow_move_constructible!");
struct MultiDrawInfoEXT
{
using NativeType = VkMultiDrawInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MultiDrawInfoEXT(uint32_t firstVertex_ = {}, uint32_t vertexCount_ = {}) VULKAN_HPP_NOEXCEPT
: firstVertex(firstVertex_),
vertexCount(vertexCount_)
{
}
VULKAN_HPP_CONSTEXPR MultiDrawInfoEXT(MultiDrawInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
MultiDrawInfoEXT(VkMultiDrawInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT : MultiDrawInfoEXT(*reinterpret_cast<MultiDrawInfoEXT const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MultiDrawInfoEXT &operator=(MultiDrawInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
MultiDrawInfoEXT &operator=(VkMultiDrawInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MultiDrawInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MultiDrawInfoEXT &setFirstVertex(uint32_t firstVertex_) VULKAN_HPP_NOEXCEPT
{
firstVertex = firstVertex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MultiDrawInfoEXT &setVertexCount(uint32_t vertexCount_) VULKAN_HPP_NOEXCEPT
{
vertexCount = vertexCount_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMultiDrawInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMultiDrawInfoEXT *>(this);
}
explicit operator VkMultiDrawInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMultiDrawInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(firstVertex, vertexCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MultiDrawInfoEXT const &) const = default;
#else
bool operator==(MultiDrawInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (firstVertex == rhs.firstVertex) && (vertexCount == rhs.vertexCount);
# endif
}
bool operator!=(MultiDrawInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t firstVertex = {};
uint32_t vertexCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MultiDrawInfoEXT) == sizeof(VkMultiDrawInfoEXT), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MultiDrawInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MultiDrawInfoEXT>::value,
"MultiDrawInfoEXT is not nothrow_move_constructible!");
struct MultisamplePropertiesEXT
{
using NativeType = VkMultisamplePropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMultisamplePropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MultisamplePropertiesEXT(VULKAN_HPP_NAMESPACE::Extent2D maxSampleLocationGridSize_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxSampleLocationGridSize(maxSampleLocationGridSize_)
{
}
VULKAN_HPP_CONSTEXPR MultisamplePropertiesEXT(MultisamplePropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
MultisamplePropertiesEXT(VkMultisamplePropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: MultisamplePropertiesEXT(*reinterpret_cast<MultisamplePropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MultisamplePropertiesEXT &operator=(MultisamplePropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
MultisamplePropertiesEXT &operator=(VkMultisamplePropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkMultisamplePropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMultisamplePropertiesEXT *>(this);
}
explicit operator VkMultisamplePropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMultisamplePropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Extent2D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxSampleLocationGridSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MultisamplePropertiesEXT const &) const = default;
#else
bool operator==(MultisamplePropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxSampleLocationGridSize == rhs.maxSampleLocationGridSize);
# endif
}
bool operator!=(MultisamplePropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMultisamplePropertiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Extent2D maxSampleLocationGridSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT) == sizeof(VkMultisamplePropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MultisamplePropertiesEXT>::value,
"MultisamplePropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMultisamplePropertiesEXT>
{
using Type = MultisamplePropertiesEXT;
};
struct MultiviewPerViewAttributesInfoNVX
{
using NativeType = VkMultiviewPerViewAttributesInfoNVX;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMultiviewPerViewAttributesInfoNVX;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MultiviewPerViewAttributesInfoNVX(VULKAN_HPP_NAMESPACE::Bool32 perViewAttributes_ = {},
VULKAN_HPP_NAMESPACE::Bool32 perViewAttributesPositionXOnly_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
perViewAttributes(perViewAttributes_),
perViewAttributesPositionXOnly(perViewAttributesPositionXOnly_)
{
}
VULKAN_HPP_CONSTEXPR MultiviewPerViewAttributesInfoNVX(MultiviewPerViewAttributesInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
MultiviewPerViewAttributesInfoNVX(VkMultiviewPerViewAttributesInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT
: MultiviewPerViewAttributesInfoNVX(*reinterpret_cast<MultiviewPerViewAttributesInfoNVX const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MultiviewPerViewAttributesInfoNVX &operator=(MultiviewPerViewAttributesInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
MultiviewPerViewAttributesInfoNVX &operator=(VkMultiviewPerViewAttributesInfoNVX const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MultiviewPerViewAttributesInfoNVX const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MultiviewPerViewAttributesInfoNVX &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MultiviewPerViewAttributesInfoNVX &setPerViewAttributes(VULKAN_HPP_NAMESPACE::Bool32 perViewAttributes_) VULKAN_HPP_NOEXCEPT
{
perViewAttributes = perViewAttributes_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MultiviewPerViewAttributesInfoNVX &
setPerViewAttributesPositionXOnly(VULKAN_HPP_NAMESPACE::Bool32 perViewAttributesPositionXOnly_) VULKAN_HPP_NOEXCEPT
{
perViewAttributesPositionXOnly = perViewAttributesPositionXOnly_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMultiviewPerViewAttributesInfoNVX const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMultiviewPerViewAttributesInfoNVX *>(this);
}
explicit operator VkMultiviewPerViewAttributesInfoNVX &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMultiviewPerViewAttributesInfoNVX *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, perViewAttributes, perViewAttributesPositionXOnly);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MultiviewPerViewAttributesInfoNVX const &) const = default;
#else
bool operator==(MultiviewPerViewAttributesInfoNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (perViewAttributes == rhs.perViewAttributes) &&
(perViewAttributesPositionXOnly == rhs.perViewAttributesPositionXOnly);
# endif
}
bool operator!=(MultiviewPerViewAttributesInfoNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMultiviewPerViewAttributesInfoNVX;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 perViewAttributes = {};
VULKAN_HPP_NAMESPACE::Bool32 perViewAttributesPositionXOnly = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MultiviewPerViewAttributesInfoNVX) == sizeof(VkMultiviewPerViewAttributesInfoNVX),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MultiviewPerViewAttributesInfoNVX>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MultiviewPerViewAttributesInfoNVX>::value,
"MultiviewPerViewAttributesInfoNVX is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMultiviewPerViewAttributesInfoNVX>
{
using Type = MultiviewPerViewAttributesInfoNVX;
};
struct MutableDescriptorTypeListVALVE
{
using NativeType = VkMutableDescriptorTypeListVALVE;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MutableDescriptorTypeListVALVE(uint32_t descriptorTypeCount_ = {},
const VULKAN_HPP_NAMESPACE::DescriptorType *pDescriptorTypes_ = {}) VULKAN_HPP_NOEXCEPT
: descriptorTypeCount(descriptorTypeCount_),
pDescriptorTypes(pDescriptorTypes_)
{
}
VULKAN_HPP_CONSTEXPR MutableDescriptorTypeListVALVE(MutableDescriptorTypeListVALVE const &rhs) VULKAN_HPP_NOEXCEPT = default;
MutableDescriptorTypeListVALVE(VkMutableDescriptorTypeListVALVE const &rhs) VULKAN_HPP_NOEXCEPT
: MutableDescriptorTypeListVALVE(*reinterpret_cast<MutableDescriptorTypeListVALVE const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
MutableDescriptorTypeListVALVE(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorType> const &descriptorTypes_)
: descriptorTypeCount(static_cast<uint32_t>(descriptorTypes_.size()))
, pDescriptorTypes(descriptorTypes_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MutableDescriptorTypeListVALVE &operator=(MutableDescriptorTypeListVALVE const &rhs) VULKAN_HPP_NOEXCEPT = default;
MutableDescriptorTypeListVALVE &operator=(VkMutableDescriptorTypeListVALVE const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MutableDescriptorTypeListVALVE &setDescriptorTypeCount(uint32_t descriptorTypeCount_) VULKAN_HPP_NOEXCEPT
{
descriptorTypeCount = descriptorTypeCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MutableDescriptorTypeListVALVE &
setPDescriptorTypes(const VULKAN_HPP_NAMESPACE::DescriptorType *pDescriptorTypes_) VULKAN_HPP_NOEXCEPT
{
pDescriptorTypes = pDescriptorTypes_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
MutableDescriptorTypeListVALVE &setDescriptorTypes(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorType> const &descriptorTypes_) VULKAN_HPP_NOEXCEPT
{
descriptorTypeCount = static_cast<uint32_t>(descriptorTypes_.size());
pDescriptorTypes = descriptorTypes_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMutableDescriptorTypeListVALVE const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMutableDescriptorTypeListVALVE *>(this);
}
explicit operator VkMutableDescriptorTypeListVALVE &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMutableDescriptorTypeListVALVE *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, const VULKAN_HPP_NAMESPACE::DescriptorType *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(descriptorTypeCount, pDescriptorTypes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MutableDescriptorTypeListVALVE const &) const = default;
#else
bool operator==(MutableDescriptorTypeListVALVE const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (descriptorTypeCount == rhs.descriptorTypeCount) && (pDescriptorTypes == rhs.pDescriptorTypes);
# endif
}
bool operator!=(MutableDescriptorTypeListVALVE const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t descriptorTypeCount = {};
const VULKAN_HPP_NAMESPACE::DescriptorType *pDescriptorTypes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE) == sizeof(VkMutableDescriptorTypeListVALVE),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE>::value,
"MutableDescriptorTypeListVALVE is not nothrow_move_constructible!");
struct MutableDescriptorTypeCreateInfoVALVE
{
using NativeType = VkMutableDescriptorTypeCreateInfoVALVE;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eMutableDescriptorTypeCreateInfoVALVE;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR MutableDescriptorTypeCreateInfoVALVE(uint32_t mutableDescriptorTypeListCount_ = {},
const VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE *pMutableDescriptorTypeLists_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
mutableDescriptorTypeListCount(mutableDescriptorTypeListCount_),
pMutableDescriptorTypeLists(pMutableDescriptorTypeLists_)
{
}
VULKAN_HPP_CONSTEXPR MutableDescriptorTypeCreateInfoVALVE(MutableDescriptorTypeCreateInfoVALVE const &rhs) VULKAN_HPP_NOEXCEPT = default;
MutableDescriptorTypeCreateInfoVALVE(VkMutableDescriptorTypeCreateInfoVALVE const &rhs) VULKAN_HPP_NOEXCEPT
: MutableDescriptorTypeCreateInfoVALVE(*reinterpret_cast<MutableDescriptorTypeCreateInfoVALVE const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
MutableDescriptorTypeCreateInfoVALVE(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE> const &mutableDescriptorTypeLists_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, mutableDescriptorTypeListCount(static_cast<uint32_t>(mutableDescriptorTypeLists_.size()))
, pMutableDescriptorTypeLists(mutableDescriptorTypeLists_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
MutableDescriptorTypeCreateInfoVALVE &operator=(MutableDescriptorTypeCreateInfoVALVE const &rhs) VULKAN_HPP_NOEXCEPT = default;
MutableDescriptorTypeCreateInfoVALVE &operator=(VkMutableDescriptorTypeCreateInfoVALVE const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::MutableDescriptorTypeCreateInfoVALVE const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 MutableDescriptorTypeCreateInfoVALVE &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MutableDescriptorTypeCreateInfoVALVE &
setMutableDescriptorTypeListCount(uint32_t mutableDescriptorTypeListCount_) VULKAN_HPP_NOEXCEPT
{
mutableDescriptorTypeListCount = mutableDescriptorTypeListCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 MutableDescriptorTypeCreateInfoVALVE &
setPMutableDescriptorTypeLists(const VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE *pMutableDescriptorTypeLists_) VULKAN_HPP_NOEXCEPT
{
pMutableDescriptorTypeLists = pMutableDescriptorTypeLists_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
MutableDescriptorTypeCreateInfoVALVE &setMutableDescriptorTypeLists(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE> const &mutableDescriptorTypeLists_)
VULKAN_HPP_NOEXCEPT
{
mutableDescriptorTypeListCount = static_cast<uint32_t>(mutableDescriptorTypeLists_.size());
pMutableDescriptorTypeLists = mutableDescriptorTypeLists_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkMutableDescriptorTypeCreateInfoVALVE const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkMutableDescriptorTypeCreateInfoVALVE *>(this);
}
explicit operator VkMutableDescriptorTypeCreateInfoVALVE &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkMutableDescriptorTypeCreateInfoVALVE *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, mutableDescriptorTypeListCount, pMutableDescriptorTypeLists);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(MutableDescriptorTypeCreateInfoVALVE const &) const = default;
#else
bool operator==(MutableDescriptorTypeCreateInfoVALVE const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (mutableDescriptorTypeListCount == rhs.mutableDescriptorTypeListCount) &&
(pMutableDescriptorTypeLists == rhs.pMutableDescriptorTypeLists);
# endif
}
bool operator!=(MutableDescriptorTypeCreateInfoVALVE const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eMutableDescriptorTypeCreateInfoVALVE;
const void *pNext = {};
uint32_t mutableDescriptorTypeListCount = {};
const VULKAN_HPP_NAMESPACE::MutableDescriptorTypeListVALVE *pMutableDescriptorTypeLists = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::MutableDescriptorTypeCreateInfoVALVE) == sizeof(VkMutableDescriptorTypeCreateInfoVALVE),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::MutableDescriptorTypeCreateInfoVALVE>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MutableDescriptorTypeCreateInfoVALVE>::value,
"MutableDescriptorTypeCreateInfoVALVE is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eMutableDescriptorTypeCreateInfoVALVE>
{
using Type = MutableDescriptorTypeCreateInfoVALVE;
};
struct PastPresentationTimingGOOGLE
{
using NativeType = VkPastPresentationTimingGOOGLE;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PastPresentationTimingGOOGLE(uint32_t presentID_ = {},
uint64_t desiredPresentTime_ = {},
uint64_t actualPresentTime_ = {},
uint64_t earliestPresentTime_ = {},
uint64_t presentMargin_ = {}) VULKAN_HPP_NOEXCEPT
: presentID(presentID_),
desiredPresentTime(desiredPresentTime_),
actualPresentTime(actualPresentTime_),
earliestPresentTime(earliestPresentTime_),
presentMargin(presentMargin_)
{
}
VULKAN_HPP_CONSTEXPR PastPresentationTimingGOOGLE(PastPresentationTimingGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT = default;
PastPresentationTimingGOOGLE(VkPastPresentationTimingGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT
: PastPresentationTimingGOOGLE(*reinterpret_cast<PastPresentationTimingGOOGLE const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PastPresentationTimingGOOGLE &operator=(PastPresentationTimingGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT = default;
PastPresentationTimingGOOGLE &operator=(VkPastPresentationTimingGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE const *>(&rhs);
return *this;
}
explicit operator VkPastPresentationTimingGOOGLE const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPastPresentationTimingGOOGLE *>(this);
}
explicit operator VkPastPresentationTimingGOOGLE &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPastPresentationTimingGOOGLE *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint64_t const &, uint64_t const &, uint64_t const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(presentID, desiredPresentTime, actualPresentTime, earliestPresentTime, presentMargin);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PastPresentationTimingGOOGLE const &) const = default;
#else
bool operator==(PastPresentationTimingGOOGLE const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (presentID == rhs.presentID) && (desiredPresentTime == rhs.desiredPresentTime) && (actualPresentTime == rhs.actualPresentTime) &&
(earliestPresentTime == rhs.earliestPresentTime) && (presentMargin == rhs.presentMargin);
# endif
}
bool operator!=(PastPresentationTimingGOOGLE const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t presentID = {};
uint64_t desiredPresentTime = {};
uint64_t actualPresentTime = {};
uint64_t earliestPresentTime = {};
uint64_t presentMargin = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE) == sizeof(VkPastPresentationTimingGOOGLE),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PastPresentationTimingGOOGLE>::value,
"PastPresentationTimingGOOGLE is not nothrow_move_constructible!");
struct PerformanceConfigurationAcquireInfoINTEL
{
using NativeType = VkPerformanceConfigurationAcquireInfoINTEL;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceConfigurationAcquireInfoINTEL;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PerformanceConfigurationAcquireInfoINTEL(VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL type_ =
VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL::eCommandQueueMetricsDiscoveryActivated,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
type(type_)
{
}
VULKAN_HPP_CONSTEXPR PerformanceConfigurationAcquireInfoINTEL(PerformanceConfigurationAcquireInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceConfigurationAcquireInfoINTEL(VkPerformanceConfigurationAcquireInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT
: PerformanceConfigurationAcquireInfoINTEL(*reinterpret_cast<PerformanceConfigurationAcquireInfoINTEL const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PerformanceConfigurationAcquireInfoINTEL &operator=(PerformanceConfigurationAcquireInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceConfigurationAcquireInfoINTEL &operator=(VkPerformanceConfigurationAcquireInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceConfigurationAcquireInfoINTEL const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PerformanceConfigurationAcquireInfoINTEL &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceConfigurationAcquireInfoINTEL &
setType(VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPerformanceConfigurationAcquireInfoINTEL const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPerformanceConfigurationAcquireInfoINTEL *>(this);
}
explicit operator VkPerformanceConfigurationAcquireInfoINTEL &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPerformanceConfigurationAcquireInfoINTEL *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, type);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PerformanceConfigurationAcquireInfoINTEL const &) const = default;
#else
bool operator==(PerformanceConfigurationAcquireInfoINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (type == rhs.type);
# endif
}
bool operator!=(PerformanceConfigurationAcquireInfoINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceConfigurationAcquireInfoINTEL;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL type =
VULKAN_HPP_NAMESPACE::PerformanceConfigurationTypeINTEL::eCommandQueueMetricsDiscoveryActivated;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PerformanceConfigurationAcquireInfoINTEL) == sizeof(VkPerformanceConfigurationAcquireInfoINTEL),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PerformanceConfigurationAcquireInfoINTEL>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PerformanceConfigurationAcquireInfoINTEL>::value,
"PerformanceConfigurationAcquireInfoINTEL is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePerformanceConfigurationAcquireInfoINTEL>
{
using Type = PerformanceConfigurationAcquireInfoINTEL;
};
struct PerformanceCounterDescriptionKHR
{
using NativeType = VkPerformanceCounterDescriptionKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceCounterDescriptionKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterDescriptionKHR(VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionFlagsKHR flags_ = {},
std::array<char, VK_MAX_DESCRIPTION_SIZE> const &name_ = {},
std::array<char, VK_MAX_DESCRIPTION_SIZE> const &category_ = {},
std::array<char, VK_MAX_DESCRIPTION_SIZE> const &description_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
name(name_),
category(category_),
description(description_)
{
}
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterDescriptionKHR(PerformanceCounterDescriptionKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceCounterDescriptionKHR(VkPerformanceCounterDescriptionKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PerformanceCounterDescriptionKHR(*reinterpret_cast<PerformanceCounterDescriptionKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PerformanceCounterDescriptionKHR &operator=(PerformanceCounterDescriptionKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceCounterDescriptionKHR &operator=(VkPerformanceCounterDescriptionKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionKHR const *>(&rhs);
return *this;
}
explicit operator VkPerformanceCounterDescriptionKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPerformanceCounterDescriptionKHR *>(this);
}
explicit operator VkPerformanceCounterDescriptionKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPerformanceCounterDescriptionKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionFlagsKHR const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, name, category, description);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PerformanceCounterDescriptionKHR const &) const = default;
#else
bool operator==(PerformanceCounterDescriptionKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (name == rhs.name) && (category == rhs.category) &&
(description == rhs.description);
# endif
}
bool operator!=(PerformanceCounterDescriptionKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceCounterDescriptionKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionFlagsKHR flags = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> name = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> category = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionKHR) == sizeof(VkPerformanceCounterDescriptionKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionKHR>::value,
"PerformanceCounterDescriptionKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePerformanceCounterDescriptionKHR>
{
using Type = PerformanceCounterDescriptionKHR;
};
struct PerformanceCounterKHR
{
using NativeType = VkPerformanceCounterKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceCounterKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14
PerformanceCounterKHR(VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR unit_ = VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR::eGeneric,
VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR scope_ = VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR::eCommandBuffer,
VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR storage_ = VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR::eInt32,
std::array<uint8_t, VK_UUID_SIZE> const &uuid_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
unit(unit_),
scope(scope_),
storage(storage_),
uuid(uuid_)
{
}
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterKHR(PerformanceCounterKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceCounterKHR(VkPerformanceCounterKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PerformanceCounterKHR(*reinterpret_cast<PerformanceCounterKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PerformanceCounterKHR &operator=(PerformanceCounterKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceCounterKHR &operator=(VkPerformanceCounterKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR const *>(&rhs);
return *this;
}
explicit operator VkPerformanceCounterKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPerformanceCounterKHR *>(this);
}
explicit operator VkPerformanceCounterKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPerformanceCounterKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR const &,
VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR const &,
VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, unit, scope, storage, uuid);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PerformanceCounterKHR const &) const = default;
#else
bool operator==(PerformanceCounterKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (unit == rhs.unit) && (scope == rhs.scope) && (storage == rhs.storage) &&
(uuid == rhs.uuid);
# endif
}
bool operator!=(PerformanceCounterKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceCounterKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR unit = VULKAN_HPP_NAMESPACE::PerformanceCounterUnitKHR::eGeneric;
VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR scope = VULKAN_HPP_NAMESPACE::PerformanceCounterScopeKHR::eCommandBuffer;
VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR storage = VULKAN_HPP_NAMESPACE::PerformanceCounterStorageKHR::eInt32;
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> uuid = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PerformanceCounterKHR) == sizeof(VkPerformanceCounterKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PerformanceCounterKHR>::value,
"PerformanceCounterKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePerformanceCounterKHR>
{
using Type = PerformanceCounterKHR;
};
union PerformanceCounterResultKHR
{
using NativeType = VkPerformanceCounterResultKHR;
#if !defined(VULKAN_HPP_NO_UNION_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterResultKHR(int32_t int32_ = {})
: int32(int32_)
{}
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterResultKHR(int64_t int64_)
: int64(int64_)
{}
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterResultKHR(uint32_t uint32_)
: uint32(uint32_)
{}
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterResultKHR(uint64_t uint64_)
: uint64(uint64_)
{}
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterResultKHR(float float32_)
: float32(float32_)
{}
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterResultKHR(double float64_)
: float64(float64_)
{}
#endif /*VULKAN_HPP_NO_UNION_CONSTRUCTORS*/
#if !defined(VULKAN_HPP_NO_UNION_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterResultKHR &setInt32(int32_t int32_) VULKAN_HPP_NOEXCEPT
{
int32 = int32_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterResultKHR &setInt64(int64_t int64_) VULKAN_HPP_NOEXCEPT
{
int64 = int64_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterResultKHR &setUint32(uint32_t uint32_) VULKAN_HPP_NOEXCEPT
{
uint32 = uint32_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterResultKHR &setUint64(uint64_t uint64_) VULKAN_HPP_NOEXCEPT
{
uint64 = uint64_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterResultKHR &setFloat32(float float32_) VULKAN_HPP_NOEXCEPT
{
float32 = float32_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceCounterResultKHR &setFloat64(double float64_) VULKAN_HPP_NOEXCEPT
{
float64 = float64_;
return *this;
}
#endif /*VULKAN_HPP_NO_UNION_SETTERS*/
operator VkPerformanceCounterResultKHR const &() const
{
return *reinterpret_cast<const VkPerformanceCounterResultKHR *>(this);
}
operator VkPerformanceCounterResultKHR &()
{
return *reinterpret_cast<VkPerformanceCounterResultKHR *>(this);
}
int32_t int32;
int64_t int64;
uint32_t uint32;
uint64_t uint64;
float float32;
double float64;
};
struct PerformanceMarkerInfoINTEL
{
using NativeType = VkPerformanceMarkerInfoINTEL;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceMarkerInfoINTEL;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PerformanceMarkerInfoINTEL(uint64_t marker_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
marker(marker_)
{
}
VULKAN_HPP_CONSTEXPR PerformanceMarkerInfoINTEL(PerformanceMarkerInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceMarkerInfoINTEL(VkPerformanceMarkerInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT
: PerformanceMarkerInfoINTEL(*reinterpret_cast<PerformanceMarkerInfoINTEL const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PerformanceMarkerInfoINTEL &operator=(PerformanceMarkerInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceMarkerInfoINTEL &operator=(VkPerformanceMarkerInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceMarkerInfoINTEL const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PerformanceMarkerInfoINTEL &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceMarkerInfoINTEL &setMarker(uint64_t marker_) VULKAN_HPP_NOEXCEPT
{
marker = marker_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPerformanceMarkerInfoINTEL const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPerformanceMarkerInfoINTEL *>(this);
}
explicit operator VkPerformanceMarkerInfoINTEL &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPerformanceMarkerInfoINTEL *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, marker);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PerformanceMarkerInfoINTEL const &) const = default;
#else
bool operator==(PerformanceMarkerInfoINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (marker == rhs.marker);
# endif
}
bool operator!=(PerformanceMarkerInfoINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceMarkerInfoINTEL;
const void *pNext = {};
uint64_t marker = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PerformanceMarkerInfoINTEL) == sizeof(VkPerformanceMarkerInfoINTEL),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PerformanceMarkerInfoINTEL>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PerformanceMarkerInfoINTEL>::value,
"PerformanceMarkerInfoINTEL is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePerformanceMarkerInfoINTEL>
{
using Type = PerformanceMarkerInfoINTEL;
};
struct PerformanceOverrideInfoINTEL
{
using NativeType = VkPerformanceOverrideInfoINTEL;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceOverrideInfoINTEL;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PerformanceOverrideInfoINTEL(
VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL type_ = VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL::eNullHardware,
VULKAN_HPP_NAMESPACE::Bool32 enable_ = {},
uint64_t parameter_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
type(type_),
enable(enable_),
parameter(parameter_)
{
}
VULKAN_HPP_CONSTEXPR PerformanceOverrideInfoINTEL(PerformanceOverrideInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceOverrideInfoINTEL(VkPerformanceOverrideInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT
: PerformanceOverrideInfoINTEL(*reinterpret_cast<PerformanceOverrideInfoINTEL const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PerformanceOverrideInfoINTEL &operator=(PerformanceOverrideInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceOverrideInfoINTEL &operator=(VkPerformanceOverrideInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceOverrideInfoINTEL const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PerformanceOverrideInfoINTEL &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceOverrideInfoINTEL &setType(VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceOverrideInfoINTEL &setEnable(VULKAN_HPP_NAMESPACE::Bool32 enable_) VULKAN_HPP_NOEXCEPT
{
enable = enable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceOverrideInfoINTEL &setParameter(uint64_t parameter_) VULKAN_HPP_NOEXCEPT
{
parameter = parameter_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPerformanceOverrideInfoINTEL const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPerformanceOverrideInfoINTEL *>(this);
}
explicit operator VkPerformanceOverrideInfoINTEL &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPerformanceOverrideInfoINTEL *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, type, enable, parameter);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PerformanceOverrideInfoINTEL const &) const = default;
#else
bool operator==(PerformanceOverrideInfoINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (type == rhs.type) && (enable == rhs.enable) && (parameter == rhs.parameter);
# endif
}
bool operator!=(PerformanceOverrideInfoINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceOverrideInfoINTEL;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL type = VULKAN_HPP_NAMESPACE::PerformanceOverrideTypeINTEL::eNullHardware;
VULKAN_HPP_NAMESPACE::Bool32 enable = {};
uint64_t parameter = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PerformanceOverrideInfoINTEL) == sizeof(VkPerformanceOverrideInfoINTEL),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PerformanceOverrideInfoINTEL>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PerformanceOverrideInfoINTEL>::value,
"PerformanceOverrideInfoINTEL is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePerformanceOverrideInfoINTEL>
{
using Type = PerformanceOverrideInfoINTEL;
};
struct PerformanceQuerySubmitInfoKHR
{
using NativeType = VkPerformanceQuerySubmitInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceQuerySubmitInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PerformanceQuerySubmitInfoKHR(uint32_t counterPassIndex_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
counterPassIndex(counterPassIndex_)
{
}
VULKAN_HPP_CONSTEXPR PerformanceQuerySubmitInfoKHR(PerformanceQuerySubmitInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceQuerySubmitInfoKHR(VkPerformanceQuerySubmitInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PerformanceQuerySubmitInfoKHR(*reinterpret_cast<PerformanceQuerySubmitInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PerformanceQuerySubmitInfoKHR &operator=(PerformanceQuerySubmitInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceQuerySubmitInfoKHR &operator=(VkPerformanceQuerySubmitInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceQuerySubmitInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PerformanceQuerySubmitInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceQuerySubmitInfoKHR &setCounterPassIndex(uint32_t counterPassIndex_) VULKAN_HPP_NOEXCEPT
{
counterPassIndex = counterPassIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPerformanceQuerySubmitInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPerformanceQuerySubmitInfoKHR *>(this);
}
explicit operator VkPerformanceQuerySubmitInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPerformanceQuerySubmitInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, counterPassIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PerformanceQuerySubmitInfoKHR const &) const = default;
#else
bool operator==(PerformanceQuerySubmitInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (counterPassIndex == rhs.counterPassIndex);
# endif
}
bool operator!=(PerformanceQuerySubmitInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceQuerySubmitInfoKHR;
const void *pNext = {};
uint32_t counterPassIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PerformanceQuerySubmitInfoKHR) == sizeof(VkPerformanceQuerySubmitInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PerformanceQuerySubmitInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PerformanceQuerySubmitInfoKHR>::value,
"PerformanceQuerySubmitInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePerformanceQuerySubmitInfoKHR>
{
using Type = PerformanceQuerySubmitInfoKHR;
};
struct PerformanceStreamMarkerInfoINTEL
{
using NativeType = VkPerformanceStreamMarkerInfoINTEL;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePerformanceStreamMarkerInfoINTEL;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PerformanceStreamMarkerInfoINTEL(uint32_t marker_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
marker(marker_)
{
}
VULKAN_HPP_CONSTEXPR PerformanceStreamMarkerInfoINTEL(PerformanceStreamMarkerInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceStreamMarkerInfoINTEL(VkPerformanceStreamMarkerInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT
: PerformanceStreamMarkerInfoINTEL(*reinterpret_cast<PerformanceStreamMarkerInfoINTEL const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PerformanceStreamMarkerInfoINTEL &operator=(PerformanceStreamMarkerInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceStreamMarkerInfoINTEL &operator=(VkPerformanceStreamMarkerInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceStreamMarkerInfoINTEL const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PerformanceStreamMarkerInfoINTEL &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceStreamMarkerInfoINTEL &setMarker(uint32_t marker_) VULKAN_HPP_NOEXCEPT
{
marker = marker_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPerformanceStreamMarkerInfoINTEL const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPerformanceStreamMarkerInfoINTEL *>(this);
}
explicit operator VkPerformanceStreamMarkerInfoINTEL &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPerformanceStreamMarkerInfoINTEL *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, marker);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PerformanceStreamMarkerInfoINTEL const &) const = default;
#else
bool operator==(PerformanceStreamMarkerInfoINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (marker == rhs.marker);
# endif
}
bool operator!=(PerformanceStreamMarkerInfoINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePerformanceStreamMarkerInfoINTEL;
const void *pNext = {};
uint32_t marker = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PerformanceStreamMarkerInfoINTEL) == sizeof(VkPerformanceStreamMarkerInfoINTEL),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PerformanceStreamMarkerInfoINTEL>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PerformanceStreamMarkerInfoINTEL>::value,
"PerformanceStreamMarkerInfoINTEL is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePerformanceStreamMarkerInfoINTEL>
{
using Type = PerformanceStreamMarkerInfoINTEL;
};
union PerformanceValueDataINTEL
{
using NativeType = VkPerformanceValueDataINTEL;
#if !defined(VULKAN_HPP_NO_UNION_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PerformanceValueDataINTEL(uint32_t value32_ = {})
: value32(value32_)
{}
VULKAN_HPP_CONSTEXPR_14 PerformanceValueDataINTEL(uint64_t value64_)
: value64(value64_)
{}
VULKAN_HPP_CONSTEXPR_14 PerformanceValueDataINTEL(float valueFloat_)
: valueFloat(valueFloat_)
{}
VULKAN_HPP_CONSTEXPR_14 PerformanceValueDataINTEL(const char *valueString_)
: valueString(valueString_)
{}
#endif /*VULKAN_HPP_NO_UNION_CONSTRUCTORS*/
#if !defined(VULKAN_HPP_NO_UNION_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PerformanceValueDataINTEL &setValue32(uint32_t value32_) VULKAN_HPP_NOEXCEPT
{
value32 = value32_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceValueDataINTEL &setValue64(uint64_t value64_) VULKAN_HPP_NOEXCEPT
{
value64 = value64_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceValueDataINTEL &setValueFloat(float valueFloat_) VULKAN_HPP_NOEXCEPT
{
valueFloat = valueFloat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceValueDataINTEL &setValueBool(VULKAN_HPP_NAMESPACE::Bool32 valueBool_) VULKAN_HPP_NOEXCEPT
{
valueBool = valueBool_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceValueDataINTEL &setValueString(const char *valueString_) VULKAN_HPP_NOEXCEPT
{
valueString = valueString_;
return *this;
}
#endif /*VULKAN_HPP_NO_UNION_SETTERS*/
operator VkPerformanceValueDataINTEL const &() const
{
return *reinterpret_cast<const VkPerformanceValueDataINTEL *>(this);
}
operator VkPerformanceValueDataINTEL &()
{
return *reinterpret_cast<VkPerformanceValueDataINTEL *>(this);
}
#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
uint32_t value32;
uint64_t value64;
float valueFloat;
VULKAN_HPP_NAMESPACE::Bool32 valueBool;
const char *valueString;
#else
uint32_t value32;
uint64_t value64;
float valueFloat;
VkBool32 valueBool;
const char *valueString;
#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
};
struct PerformanceValueINTEL
{
using NativeType = VkPerformanceValueINTEL;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14
PerformanceValueINTEL(VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL type_ = VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL::eUint32,
VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL data_ = {}) VULKAN_HPP_NOEXCEPT
: type(type_),
data(data_)
{
}
VULKAN_HPP_CONSTEXPR_14 PerformanceValueINTEL(PerformanceValueINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceValueINTEL(VkPerformanceValueINTEL const &rhs) VULKAN_HPP_NOEXCEPT
: PerformanceValueINTEL(*reinterpret_cast<PerformanceValueINTEL const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PerformanceValueINTEL &operator=(PerformanceValueINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
PerformanceValueINTEL &operator=(VkPerformanceValueINTEL const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PerformanceValueINTEL const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PerformanceValueINTEL &setType(VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PerformanceValueINTEL &setData(VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL const &data_) VULKAN_HPP_NOEXCEPT
{
data = data_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPerformanceValueINTEL const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPerformanceValueINTEL *>(this);
}
explicit operator VkPerformanceValueINTEL &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPerformanceValueINTEL *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL const &, VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(type, data);
}
#endif
public:
VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL type = VULKAN_HPP_NAMESPACE::PerformanceValueTypeINTEL::eUint32;
VULKAN_HPP_NAMESPACE::PerformanceValueDataINTEL data = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PerformanceValueINTEL) == sizeof(VkPerformanceValueINTEL),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PerformanceValueINTEL>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PerformanceValueINTEL>::value,
"PerformanceValueINTEL is not nothrow_move_constructible!");
struct PhysicalDevice16BitStorageFeatures
{
using NativeType = VkPhysicalDevice16BitStorageFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevice16BitStorageFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevice16BitStorageFeatures(VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
storageBuffer16BitAccess(storageBuffer16BitAccess_),
uniformAndStorageBuffer16BitAccess(uniformAndStorageBuffer16BitAccess_),
storagePushConstant16(storagePushConstant16_),
storageInputOutput16(storageInputOutput16_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevice16BitStorageFeatures(PhysicalDevice16BitStorageFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevice16BitStorageFeatures(VkPhysicalDevice16BitStorageFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevice16BitStorageFeatures(*reinterpret_cast<PhysicalDevice16BitStorageFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevice16BitStorageFeatures &operator=(PhysicalDevice16BitStorageFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevice16BitStorageFeatures &operator=(VkPhysicalDevice16BitStorageFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevice16BitStorageFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevice16BitStorageFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevice16BitStorageFeatures &
setStorageBuffer16BitAccess(VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess_) VULKAN_HPP_NOEXCEPT
{
storageBuffer16BitAccess = storageBuffer16BitAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevice16BitStorageFeatures &
setUniformAndStorageBuffer16BitAccess(VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess_) VULKAN_HPP_NOEXCEPT
{
uniformAndStorageBuffer16BitAccess = uniformAndStorageBuffer16BitAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevice16BitStorageFeatures &
setStoragePushConstant16(VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16_) VULKAN_HPP_NOEXCEPT
{
storagePushConstant16 = storagePushConstant16_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevice16BitStorageFeatures &
setStorageInputOutput16(VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16_) VULKAN_HPP_NOEXCEPT
{
storageInputOutput16 = storageInputOutput16_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevice16BitStorageFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevice16BitStorageFeatures *>(this);
}
explicit operator VkPhysicalDevice16BitStorageFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevice16BitStorageFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, storageBuffer16BitAccess, uniformAndStorageBuffer16BitAccess, storagePushConstant16, storageInputOutput16);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevice16BitStorageFeatures const &) const = default;
#else
bool operator==(PhysicalDevice16BitStorageFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (storageBuffer16BitAccess == rhs.storageBuffer16BitAccess) &&
(uniformAndStorageBuffer16BitAccess == rhs.uniformAndStorageBuffer16BitAccess) && (storagePushConstant16 == rhs.storagePushConstant16) &&
(storageInputOutput16 == rhs.storageInputOutput16);
# endif
}
bool operator!=(PhysicalDevice16BitStorageFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevice16BitStorageFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16 = {};
VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16 = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevice16BitStorageFeatures) == sizeof(VkPhysicalDevice16BitStorageFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevice16BitStorageFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevice16BitStorageFeatures>::value,
"PhysicalDevice16BitStorageFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevice16BitStorageFeatures>
{
using Type = PhysicalDevice16BitStorageFeatures;
};
using PhysicalDevice16BitStorageFeaturesKHR = PhysicalDevice16BitStorageFeatures;
struct PhysicalDevice4444FormatsFeaturesEXT
{
using NativeType = VkPhysicalDevice4444FormatsFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevice4444FormatsFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevice4444FormatsFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 formatA4R4G4B4_ = {},
VULKAN_HPP_NAMESPACE::Bool32 formatA4B4G4R4_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
formatA4R4G4B4(formatA4R4G4B4_),
formatA4B4G4R4(formatA4B4G4R4_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevice4444FormatsFeaturesEXT(PhysicalDevice4444FormatsFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevice4444FormatsFeaturesEXT(VkPhysicalDevice4444FormatsFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevice4444FormatsFeaturesEXT(*reinterpret_cast<PhysicalDevice4444FormatsFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevice4444FormatsFeaturesEXT &operator=(PhysicalDevice4444FormatsFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevice4444FormatsFeaturesEXT &operator=(VkPhysicalDevice4444FormatsFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevice4444FormatsFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevice4444FormatsFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevice4444FormatsFeaturesEXT &setFormatA4R4G4B4(VULKAN_HPP_NAMESPACE::Bool32 formatA4R4G4B4_) VULKAN_HPP_NOEXCEPT
{
formatA4R4G4B4 = formatA4R4G4B4_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevice4444FormatsFeaturesEXT &setFormatA4B4G4R4(VULKAN_HPP_NAMESPACE::Bool32 formatA4B4G4R4_) VULKAN_HPP_NOEXCEPT
{
formatA4B4G4R4 = formatA4B4G4R4_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevice4444FormatsFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevice4444FormatsFeaturesEXT *>(this);
}
explicit operator VkPhysicalDevice4444FormatsFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevice4444FormatsFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, formatA4R4G4B4, formatA4B4G4R4);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevice4444FormatsFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDevice4444FormatsFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (formatA4R4G4B4 == rhs.formatA4R4G4B4) && (formatA4B4G4R4 == rhs.formatA4B4G4R4);
# endif
}
bool operator!=(PhysicalDevice4444FormatsFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevice4444FormatsFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 formatA4R4G4B4 = {};
VULKAN_HPP_NAMESPACE::Bool32 formatA4B4G4R4 = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevice4444FormatsFeaturesEXT) == sizeof(VkPhysicalDevice4444FormatsFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevice4444FormatsFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevice4444FormatsFeaturesEXT>::value,
"PhysicalDevice4444FormatsFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevice4444FormatsFeaturesEXT>
{
using Type = PhysicalDevice4444FormatsFeaturesEXT;
};
struct PhysicalDevice8BitStorageFeatures
{
using NativeType = VkPhysicalDevice8BitStorageFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevice8BitStorageFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevice8BitStorageFeatures(VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
storageBuffer8BitAccess(storageBuffer8BitAccess_),
uniformAndStorageBuffer8BitAccess(uniformAndStorageBuffer8BitAccess_),
storagePushConstant8(storagePushConstant8_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevice8BitStorageFeatures(PhysicalDevice8BitStorageFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevice8BitStorageFeatures(VkPhysicalDevice8BitStorageFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevice8BitStorageFeatures(*reinterpret_cast<PhysicalDevice8BitStorageFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevice8BitStorageFeatures &operator=(PhysicalDevice8BitStorageFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevice8BitStorageFeatures &operator=(VkPhysicalDevice8BitStorageFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevice8BitStorageFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevice8BitStorageFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevice8BitStorageFeatures &
setStorageBuffer8BitAccess(VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess_) VULKAN_HPP_NOEXCEPT
{
storageBuffer8BitAccess = storageBuffer8BitAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevice8BitStorageFeatures &
setUniformAndStorageBuffer8BitAccess(VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess_) VULKAN_HPP_NOEXCEPT
{
uniformAndStorageBuffer8BitAccess = uniformAndStorageBuffer8BitAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevice8BitStorageFeatures &
setStoragePushConstant8(VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8_) VULKAN_HPP_NOEXCEPT
{
storagePushConstant8 = storagePushConstant8_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevice8BitStorageFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevice8BitStorageFeatures *>(this);
}
explicit operator VkPhysicalDevice8BitStorageFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevice8BitStorageFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, storageBuffer8BitAccess, uniformAndStorageBuffer8BitAccess, storagePushConstant8);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevice8BitStorageFeatures const &) const = default;
#else
bool operator==(PhysicalDevice8BitStorageFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (storageBuffer8BitAccess == rhs.storageBuffer8BitAccess) &&
(uniformAndStorageBuffer8BitAccess == rhs.uniformAndStorageBuffer8BitAccess) && (storagePushConstant8 == rhs.storagePushConstant8);
# endif
}
bool operator!=(PhysicalDevice8BitStorageFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevice8BitStorageFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8 = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevice8BitStorageFeatures) == sizeof(VkPhysicalDevice8BitStorageFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevice8BitStorageFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevice8BitStorageFeatures>::value,
"PhysicalDevice8BitStorageFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevice8BitStorageFeatures>
{
using Type = PhysicalDevice8BitStorageFeatures;
};
using PhysicalDevice8BitStorageFeaturesKHR = PhysicalDevice8BitStorageFeatures;
struct PhysicalDeviceASTCDecodeFeaturesEXT
{
using NativeType = VkPhysicalDeviceASTCDecodeFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceAstcDecodeFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceASTCDecodeFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 decodeModeSharedExponent_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
decodeModeSharedExponent(decodeModeSharedExponent_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceASTCDecodeFeaturesEXT(PhysicalDeviceASTCDecodeFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceASTCDecodeFeaturesEXT(VkPhysicalDeviceASTCDecodeFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceASTCDecodeFeaturesEXT(*reinterpret_cast<PhysicalDeviceASTCDecodeFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceASTCDecodeFeaturesEXT &operator=(PhysicalDeviceASTCDecodeFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceASTCDecodeFeaturesEXT &operator=(VkPhysicalDeviceASTCDecodeFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceASTCDecodeFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceASTCDecodeFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceASTCDecodeFeaturesEXT &
setDecodeModeSharedExponent(VULKAN_HPP_NAMESPACE::Bool32 decodeModeSharedExponent_) VULKAN_HPP_NOEXCEPT
{
decodeModeSharedExponent = decodeModeSharedExponent_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceASTCDecodeFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceASTCDecodeFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceASTCDecodeFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceASTCDecodeFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, decodeModeSharedExponent);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceASTCDecodeFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceASTCDecodeFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (decodeModeSharedExponent == rhs.decodeModeSharedExponent);
# endif
}
bool operator!=(PhysicalDeviceASTCDecodeFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceAstcDecodeFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 decodeModeSharedExponent = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceASTCDecodeFeaturesEXT) == sizeof(VkPhysicalDeviceASTCDecodeFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceASTCDecodeFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceASTCDecodeFeaturesEXT>::value,
"PhysicalDeviceASTCDecodeFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceAstcDecodeFeaturesEXT>
{
using Type = PhysicalDeviceASTCDecodeFeaturesEXT;
};
struct PhysicalDeviceAccelerationStructureFeaturesKHR
{
using NativeType = VkPhysicalDeviceAccelerationStructureFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceAccelerationStructureFeaturesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PhysicalDeviceAccelerationStructureFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 accelerationStructure_ = {},
VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureCaptureReplay_ = {},
VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureIndirectBuild_ = {},
VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureHostCommands_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingAccelerationStructureUpdateAfterBind_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
accelerationStructure(accelerationStructure_),
accelerationStructureCaptureReplay(accelerationStructureCaptureReplay_),
accelerationStructureIndirectBuild(accelerationStructureIndirectBuild_),
accelerationStructureHostCommands(accelerationStructureHostCommands_),
descriptorBindingAccelerationStructureUpdateAfterBind(descriptorBindingAccelerationStructureUpdateAfterBind_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceAccelerationStructureFeaturesKHR(PhysicalDeviceAccelerationStructureFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceAccelerationStructureFeaturesKHR(VkPhysicalDeviceAccelerationStructureFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceAccelerationStructureFeaturesKHR(*reinterpret_cast<PhysicalDeviceAccelerationStructureFeaturesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceAccelerationStructureFeaturesKHR &operator=(PhysicalDeviceAccelerationStructureFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceAccelerationStructureFeaturesKHR &operator=(VkPhysicalDeviceAccelerationStructureFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceAccelerationStructureFeaturesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceAccelerationStructureFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceAccelerationStructureFeaturesKHR &
setAccelerationStructure(VULKAN_HPP_NAMESPACE::Bool32 accelerationStructure_) VULKAN_HPP_NOEXCEPT
{
accelerationStructure = accelerationStructure_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceAccelerationStructureFeaturesKHR &
setAccelerationStructureCaptureReplay(VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureCaptureReplay_) VULKAN_HPP_NOEXCEPT
{
accelerationStructureCaptureReplay = accelerationStructureCaptureReplay_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceAccelerationStructureFeaturesKHR &
setAccelerationStructureIndirectBuild(VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureIndirectBuild_) VULKAN_HPP_NOEXCEPT
{
accelerationStructureIndirectBuild = accelerationStructureIndirectBuild_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceAccelerationStructureFeaturesKHR &
setAccelerationStructureHostCommands(VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureHostCommands_) VULKAN_HPP_NOEXCEPT
{
accelerationStructureHostCommands = accelerationStructureHostCommands_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceAccelerationStructureFeaturesKHR &setDescriptorBindingAccelerationStructureUpdateAfterBind(
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingAccelerationStructureUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingAccelerationStructureUpdateAfterBind = descriptorBindingAccelerationStructureUpdateAfterBind_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceAccelerationStructureFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceAccelerationStructureFeaturesKHR *>(this);
}
explicit operator VkPhysicalDeviceAccelerationStructureFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceAccelerationStructureFeaturesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
accelerationStructure,
accelerationStructureCaptureReplay,
accelerationStructureIndirectBuild,
accelerationStructureHostCommands,
descriptorBindingAccelerationStructureUpdateAfterBind);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceAccelerationStructureFeaturesKHR const &) const = default;
#else
bool operator==(PhysicalDeviceAccelerationStructureFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (accelerationStructure == rhs.accelerationStructure) &&
(accelerationStructureCaptureReplay == rhs.accelerationStructureCaptureReplay) &&
(accelerationStructureIndirectBuild == rhs.accelerationStructureIndirectBuild) &&
(accelerationStructureHostCommands == rhs.accelerationStructureHostCommands) &&
(descriptorBindingAccelerationStructureUpdateAfterBind == rhs.descriptorBindingAccelerationStructureUpdateAfterBind);
# endif
}
bool operator!=(PhysicalDeviceAccelerationStructureFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceAccelerationStructureFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 accelerationStructure = {};
VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureCaptureReplay = {};
VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureIndirectBuild = {};
VULKAN_HPP_NAMESPACE::Bool32 accelerationStructureHostCommands = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingAccelerationStructureUpdateAfterBind = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceAccelerationStructureFeaturesKHR) ==
sizeof(VkPhysicalDeviceAccelerationStructureFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceAccelerationStructureFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceAccelerationStructureFeaturesKHR>::value,
"PhysicalDeviceAccelerationStructureFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceAccelerationStructureFeaturesKHR>
{
using Type = PhysicalDeviceAccelerationStructureFeaturesKHR;
};
struct PhysicalDeviceAccelerationStructurePropertiesKHR
{
using NativeType = VkPhysicalDeviceAccelerationStructurePropertiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceAccelerationStructurePropertiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceAccelerationStructurePropertiesKHR(uint64_t maxGeometryCount_ = {},
uint64_t maxInstanceCount_ = {},
uint64_t maxPrimitiveCount_ = {},
uint32_t maxPerStageDescriptorAccelerationStructures_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures_ = {},
uint32_t maxDescriptorSetAccelerationStructures_ = {},
uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures_ = {},
uint32_t minAccelerationStructureScratchOffsetAlignment_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxGeometryCount(maxGeometryCount_),
maxInstanceCount(maxInstanceCount_),
maxPrimitiveCount(maxPrimitiveCount_),
maxPerStageDescriptorAccelerationStructures(maxPerStageDescriptorAccelerationStructures_),
maxPerStageDescriptorUpdateAfterBindAccelerationStructures(maxPerStageDescriptorUpdateAfterBindAccelerationStructures_),
maxDescriptorSetAccelerationStructures(maxDescriptorSetAccelerationStructures_),
maxDescriptorSetUpdateAfterBindAccelerationStructures(maxDescriptorSetUpdateAfterBindAccelerationStructures_),
minAccelerationStructureScratchOffsetAlignment(minAccelerationStructureScratchOffsetAlignment_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceAccelerationStructurePropertiesKHR(PhysicalDeviceAccelerationStructurePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceAccelerationStructurePropertiesKHR(VkPhysicalDeviceAccelerationStructurePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceAccelerationStructurePropertiesKHR(*reinterpret_cast<PhysicalDeviceAccelerationStructurePropertiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceAccelerationStructurePropertiesKHR &operator=(PhysicalDeviceAccelerationStructurePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceAccelerationStructurePropertiesKHR &operator=(VkPhysicalDeviceAccelerationStructurePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceAccelerationStructurePropertiesKHR const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceAccelerationStructurePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceAccelerationStructurePropertiesKHR *>(this);
}
explicit operator VkPhysicalDeviceAccelerationStructurePropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceAccelerationStructurePropertiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint64_t const &,
uint64_t const &,
uint64_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
maxGeometryCount,
maxInstanceCount,
maxPrimitiveCount,
maxPerStageDescriptorAccelerationStructures,
maxPerStageDescriptorUpdateAfterBindAccelerationStructures,
maxDescriptorSetAccelerationStructures,
maxDescriptorSetUpdateAfterBindAccelerationStructures,
minAccelerationStructureScratchOffsetAlignment);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceAccelerationStructurePropertiesKHR const &) const = default;
#else
bool operator==(PhysicalDeviceAccelerationStructurePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxGeometryCount == rhs.maxGeometryCount) && (maxInstanceCount == rhs.maxInstanceCount) &&
(maxPrimitiveCount == rhs.maxPrimitiveCount) &&
(maxPerStageDescriptorAccelerationStructures == rhs.maxPerStageDescriptorAccelerationStructures) &&
(maxPerStageDescriptorUpdateAfterBindAccelerationStructures == rhs.maxPerStageDescriptorUpdateAfterBindAccelerationStructures) &&
(maxDescriptorSetAccelerationStructures == rhs.maxDescriptorSetAccelerationStructures) &&
(maxDescriptorSetUpdateAfterBindAccelerationStructures == rhs.maxDescriptorSetUpdateAfterBindAccelerationStructures) &&
(minAccelerationStructureScratchOffsetAlignment == rhs.minAccelerationStructureScratchOffsetAlignment);
# endif
}
bool operator!=(PhysicalDeviceAccelerationStructurePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceAccelerationStructurePropertiesKHR;
void *pNext = {};
uint64_t maxGeometryCount = {};
uint64_t maxInstanceCount = {};
uint64_t maxPrimitiveCount = {};
uint32_t maxPerStageDescriptorAccelerationStructures = {};
uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures = {};
uint32_t maxDescriptorSetAccelerationStructures = {};
uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures = {};
uint32_t minAccelerationStructureScratchOffsetAlignment = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceAccelerationStructurePropertiesKHR) ==
sizeof(VkPhysicalDeviceAccelerationStructurePropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceAccelerationStructurePropertiesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceAccelerationStructurePropertiesKHR>::value,
"PhysicalDeviceAccelerationStructurePropertiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceAccelerationStructurePropertiesKHR>
{
using Type = PhysicalDeviceAccelerationStructurePropertiesKHR;
};
struct PhysicalDeviceBlendOperationAdvancedFeaturesEXT
{
using NativeType = VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceBlendOperationAdvancedFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceBlendOperationAdvancedFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCoherentOperations_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
advancedBlendCoherentOperations(advancedBlendCoherentOperations_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceBlendOperationAdvancedFeaturesEXT(PhysicalDeviceBlendOperationAdvancedFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceBlendOperationAdvancedFeaturesEXT(VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceBlendOperationAdvancedFeaturesEXT(*reinterpret_cast<PhysicalDeviceBlendOperationAdvancedFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceBlendOperationAdvancedFeaturesEXT &operator=(PhysicalDeviceBlendOperationAdvancedFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceBlendOperationAdvancedFeaturesEXT &operator=(VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBlendOperationAdvancedFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBlendOperationAdvancedFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBlendOperationAdvancedFeaturesEXT &
setAdvancedBlendCoherentOperations(VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCoherentOperations_) VULKAN_HPP_NOEXCEPT
{
advancedBlendCoherentOperations = advancedBlendCoherentOperations_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, advancedBlendCoherentOperations);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceBlendOperationAdvancedFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceBlendOperationAdvancedFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (advancedBlendCoherentOperations == rhs.advancedBlendCoherentOperations);
# endif
}
bool operator!=(PhysicalDeviceBlendOperationAdvancedFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBlendOperationAdvancedFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCoherentOperations = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceBlendOperationAdvancedFeaturesEXT) ==
sizeof(VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceBlendOperationAdvancedFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceBlendOperationAdvancedFeaturesEXT>::value,
"PhysicalDeviceBlendOperationAdvancedFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceBlendOperationAdvancedFeaturesEXT>
{
using Type = PhysicalDeviceBlendOperationAdvancedFeaturesEXT;
};
struct PhysicalDeviceBlendOperationAdvancedPropertiesEXT
{
using NativeType = VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceBlendOperationAdvancedPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceBlendOperationAdvancedPropertiesEXT(uint32_t advancedBlendMaxColorAttachments_ = {},
VULKAN_HPP_NAMESPACE::Bool32 advancedBlendIndependentBlend_ = {},
VULKAN_HPP_NAMESPACE::Bool32 advancedBlendNonPremultipliedSrcColor_ = {},
VULKAN_HPP_NAMESPACE::Bool32 advancedBlendNonPremultipliedDstColor_ = {},
VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCorrelatedOverlap_ = {},
VULKAN_HPP_NAMESPACE::Bool32 advancedBlendAllOperations_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
advancedBlendMaxColorAttachments(advancedBlendMaxColorAttachments_),
advancedBlendIndependentBlend(advancedBlendIndependentBlend_),
advancedBlendNonPremultipliedSrcColor(advancedBlendNonPremultipliedSrcColor_),
advancedBlendNonPremultipliedDstColor(advancedBlendNonPremultipliedDstColor_),
advancedBlendCorrelatedOverlap(advancedBlendCorrelatedOverlap_),
advancedBlendAllOperations(advancedBlendAllOperations_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceBlendOperationAdvancedPropertiesEXT(PhysicalDeviceBlendOperationAdvancedPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceBlendOperationAdvancedPropertiesEXT(VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceBlendOperationAdvancedPropertiesEXT(*reinterpret_cast<PhysicalDeviceBlendOperationAdvancedPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceBlendOperationAdvancedPropertiesEXT &
operator=(PhysicalDeviceBlendOperationAdvancedPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceBlendOperationAdvancedPropertiesEXT &operator=(VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBlendOperationAdvancedPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
advancedBlendMaxColorAttachments,
advancedBlendIndependentBlend,
advancedBlendNonPremultipliedSrcColor,
advancedBlendNonPremultipliedDstColor,
advancedBlendCorrelatedOverlap,
advancedBlendAllOperations);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceBlendOperationAdvancedPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceBlendOperationAdvancedPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (advancedBlendMaxColorAttachments == rhs.advancedBlendMaxColorAttachments) &&
(advancedBlendIndependentBlend == rhs.advancedBlendIndependentBlend) &&
(advancedBlendNonPremultipliedSrcColor == rhs.advancedBlendNonPremultipliedSrcColor) &&
(advancedBlendNonPremultipliedDstColor == rhs.advancedBlendNonPremultipliedDstColor) &&
(advancedBlendCorrelatedOverlap == rhs.advancedBlendCorrelatedOverlap) && (advancedBlendAllOperations == rhs.advancedBlendAllOperations);
# endif
}
bool operator!=(PhysicalDeviceBlendOperationAdvancedPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBlendOperationAdvancedPropertiesEXT;
void *pNext = {};
uint32_t advancedBlendMaxColorAttachments = {};
VULKAN_HPP_NAMESPACE::Bool32 advancedBlendIndependentBlend = {};
VULKAN_HPP_NAMESPACE::Bool32 advancedBlendNonPremultipliedSrcColor = {};
VULKAN_HPP_NAMESPACE::Bool32 advancedBlendNonPremultipliedDstColor = {};
VULKAN_HPP_NAMESPACE::Bool32 advancedBlendCorrelatedOverlap = {};
VULKAN_HPP_NAMESPACE::Bool32 advancedBlendAllOperations = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceBlendOperationAdvancedPropertiesEXT) ==
sizeof(VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceBlendOperationAdvancedPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceBlendOperationAdvancedPropertiesEXT>::value,
"PhysicalDeviceBlendOperationAdvancedPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceBlendOperationAdvancedPropertiesEXT>
{
using Type = PhysicalDeviceBlendOperationAdvancedPropertiesEXT;
};
struct PhysicalDeviceBorderColorSwizzleFeaturesEXT
{
using NativeType = VkPhysicalDeviceBorderColorSwizzleFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceBorderColorSwizzleFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceBorderColorSwizzleFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 borderColorSwizzle_ = {},
VULKAN_HPP_NAMESPACE::Bool32 borderColorSwizzleFromImage_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
borderColorSwizzle(borderColorSwizzle_),
borderColorSwizzleFromImage(borderColorSwizzleFromImage_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceBorderColorSwizzleFeaturesEXT(PhysicalDeviceBorderColorSwizzleFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceBorderColorSwizzleFeaturesEXT(VkPhysicalDeviceBorderColorSwizzleFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceBorderColorSwizzleFeaturesEXT(*reinterpret_cast<PhysicalDeviceBorderColorSwizzleFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceBorderColorSwizzleFeaturesEXT &operator=(PhysicalDeviceBorderColorSwizzleFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceBorderColorSwizzleFeaturesEXT &operator=(VkPhysicalDeviceBorderColorSwizzleFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBorderColorSwizzleFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBorderColorSwizzleFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBorderColorSwizzleFeaturesEXT &
setBorderColorSwizzle(VULKAN_HPP_NAMESPACE::Bool32 borderColorSwizzle_) VULKAN_HPP_NOEXCEPT
{
borderColorSwizzle = borderColorSwizzle_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBorderColorSwizzleFeaturesEXT &
setBorderColorSwizzleFromImage(VULKAN_HPP_NAMESPACE::Bool32 borderColorSwizzleFromImage_) VULKAN_HPP_NOEXCEPT
{
borderColorSwizzleFromImage = borderColorSwizzleFromImage_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceBorderColorSwizzleFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceBorderColorSwizzleFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, borderColorSwizzle, borderColorSwizzleFromImage);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceBorderColorSwizzleFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceBorderColorSwizzleFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (borderColorSwizzle == rhs.borderColorSwizzle) &&
(borderColorSwizzleFromImage == rhs.borderColorSwizzleFromImage);
# endif
}
bool operator!=(PhysicalDeviceBorderColorSwizzleFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBorderColorSwizzleFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 borderColorSwizzle = {};
VULKAN_HPP_NAMESPACE::Bool32 borderColorSwizzleFromImage = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceBorderColorSwizzleFeaturesEXT) ==
sizeof(VkPhysicalDeviceBorderColorSwizzleFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceBorderColorSwizzleFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceBorderColorSwizzleFeaturesEXT>::value,
"PhysicalDeviceBorderColorSwizzleFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceBorderColorSwizzleFeaturesEXT>
{
using Type = PhysicalDeviceBorderColorSwizzleFeaturesEXT;
};
struct PhysicalDeviceBufferDeviceAddressFeatures
{
using NativeType = VkPhysicalDeviceBufferDeviceAddressFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceBufferDeviceAddressFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceBufferDeviceAddressFeatures(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ = {},
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ = {},
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
bufferDeviceAddress(bufferDeviceAddress_),
bufferDeviceAddressCaptureReplay(bufferDeviceAddressCaptureReplay_),
bufferDeviceAddressMultiDevice(bufferDeviceAddressMultiDevice_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceBufferDeviceAddressFeatures(PhysicalDeviceBufferDeviceAddressFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceBufferDeviceAddressFeatures(VkPhysicalDeviceBufferDeviceAddressFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceBufferDeviceAddressFeatures(*reinterpret_cast<PhysicalDeviceBufferDeviceAddressFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceBufferDeviceAddressFeatures &operator=(PhysicalDeviceBufferDeviceAddressFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceBufferDeviceAddressFeatures &operator=(VkPhysicalDeviceBufferDeviceAddressFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBufferDeviceAddressFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBufferDeviceAddressFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBufferDeviceAddressFeatures &
setBufferDeviceAddress(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_) VULKAN_HPP_NOEXCEPT
{
bufferDeviceAddress = bufferDeviceAddress_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBufferDeviceAddressFeatures &
setBufferDeviceAddressCaptureReplay(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_) VULKAN_HPP_NOEXCEPT
{
bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBufferDeviceAddressFeatures &
setBufferDeviceAddressMultiDevice(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_) VULKAN_HPP_NOEXCEPT
{
bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceBufferDeviceAddressFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeatures *>(this);
}
explicit operator VkPhysicalDeviceBufferDeviceAddressFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceBufferDeviceAddressFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, bufferDeviceAddress, bufferDeviceAddressCaptureReplay, bufferDeviceAddressMultiDevice);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceBufferDeviceAddressFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceBufferDeviceAddressFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (bufferDeviceAddress == rhs.bufferDeviceAddress) &&
(bufferDeviceAddressCaptureReplay == rhs.bufferDeviceAddressCaptureReplay) &&
(bufferDeviceAddressMultiDevice == rhs.bufferDeviceAddressMultiDevice);
# endif
}
bool operator!=(PhysicalDeviceBufferDeviceAddressFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBufferDeviceAddressFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress = {};
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay = {};
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceBufferDeviceAddressFeatures) == sizeof(VkPhysicalDeviceBufferDeviceAddressFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceBufferDeviceAddressFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceBufferDeviceAddressFeatures>::value,
"PhysicalDeviceBufferDeviceAddressFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceBufferDeviceAddressFeatures>
{
using Type = PhysicalDeviceBufferDeviceAddressFeatures;
};
using PhysicalDeviceBufferDeviceAddressFeaturesKHR = PhysicalDeviceBufferDeviceAddressFeatures;
struct PhysicalDeviceBufferDeviceAddressFeaturesEXT
{
using NativeType = VkPhysicalDeviceBufferDeviceAddressFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceBufferDeviceAddressFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceBufferDeviceAddressFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ = {},
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ = {},
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
bufferDeviceAddress(bufferDeviceAddress_),
bufferDeviceAddressCaptureReplay(bufferDeviceAddressCaptureReplay_),
bufferDeviceAddressMultiDevice(bufferDeviceAddressMultiDevice_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceBufferDeviceAddressFeaturesEXT(PhysicalDeviceBufferDeviceAddressFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceBufferDeviceAddressFeaturesEXT(VkPhysicalDeviceBufferDeviceAddressFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceBufferDeviceAddressFeaturesEXT(*reinterpret_cast<PhysicalDeviceBufferDeviceAddressFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceBufferDeviceAddressFeaturesEXT &operator=(PhysicalDeviceBufferDeviceAddressFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceBufferDeviceAddressFeaturesEXT &operator=(VkPhysicalDeviceBufferDeviceAddressFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceBufferDeviceAddressFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBufferDeviceAddressFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBufferDeviceAddressFeaturesEXT &
setBufferDeviceAddress(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_) VULKAN_HPP_NOEXCEPT
{
bufferDeviceAddress = bufferDeviceAddress_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBufferDeviceAddressFeaturesEXT &
setBufferDeviceAddressCaptureReplay(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_) VULKAN_HPP_NOEXCEPT
{
bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceBufferDeviceAddressFeaturesEXT &
setBufferDeviceAddressMultiDevice(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_) VULKAN_HPP_NOEXCEPT
{
bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceBufferDeviceAddressFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceBufferDeviceAddressFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceBufferDeviceAddressFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, bufferDeviceAddress, bufferDeviceAddressCaptureReplay, bufferDeviceAddressMultiDevice);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceBufferDeviceAddressFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceBufferDeviceAddressFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (bufferDeviceAddress == rhs.bufferDeviceAddress) &&
(bufferDeviceAddressCaptureReplay == rhs.bufferDeviceAddressCaptureReplay) &&
(bufferDeviceAddressMultiDevice == rhs.bufferDeviceAddressMultiDevice);
# endif
}
bool operator!=(PhysicalDeviceBufferDeviceAddressFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceBufferDeviceAddressFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress = {};
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay = {};
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceBufferDeviceAddressFeaturesEXT) ==
sizeof(VkPhysicalDeviceBufferDeviceAddressFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceBufferDeviceAddressFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceBufferDeviceAddressFeaturesEXT>::value,
"PhysicalDeviceBufferDeviceAddressFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceBufferDeviceAddressFeaturesEXT>
{
using Type = PhysicalDeviceBufferDeviceAddressFeaturesEXT;
};
using PhysicalDeviceBufferAddressFeaturesEXT = PhysicalDeviceBufferDeviceAddressFeaturesEXT;
struct PhysicalDeviceCoherentMemoryFeaturesAMD
{
using NativeType = VkPhysicalDeviceCoherentMemoryFeaturesAMD;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCoherentMemoryFeaturesAMD;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceCoherentMemoryFeaturesAMD(VULKAN_HPP_NAMESPACE::Bool32 deviceCoherentMemory_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
deviceCoherentMemory(deviceCoherentMemory_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceCoherentMemoryFeaturesAMD(PhysicalDeviceCoherentMemoryFeaturesAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCoherentMemoryFeaturesAMD(VkPhysicalDeviceCoherentMemoryFeaturesAMD const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceCoherentMemoryFeaturesAMD(*reinterpret_cast<PhysicalDeviceCoherentMemoryFeaturesAMD const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceCoherentMemoryFeaturesAMD &operator=(PhysicalDeviceCoherentMemoryFeaturesAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCoherentMemoryFeaturesAMD &operator=(VkPhysicalDeviceCoherentMemoryFeaturesAMD const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCoherentMemoryFeaturesAMD const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCoherentMemoryFeaturesAMD &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCoherentMemoryFeaturesAMD &
setDeviceCoherentMemory(VULKAN_HPP_NAMESPACE::Bool32 deviceCoherentMemory_) VULKAN_HPP_NOEXCEPT
{
deviceCoherentMemory = deviceCoherentMemory_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceCoherentMemoryFeaturesAMD const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceCoherentMemoryFeaturesAMD *>(this);
}
explicit operator VkPhysicalDeviceCoherentMemoryFeaturesAMD &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceCoherentMemoryFeaturesAMD *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, deviceCoherentMemory);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceCoherentMemoryFeaturesAMD const &) const = default;
#else
bool operator==(PhysicalDeviceCoherentMemoryFeaturesAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (deviceCoherentMemory == rhs.deviceCoherentMemory);
# endif
}
bool operator!=(PhysicalDeviceCoherentMemoryFeaturesAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCoherentMemoryFeaturesAMD;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 deviceCoherentMemory = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceCoherentMemoryFeaturesAMD) == sizeof(VkPhysicalDeviceCoherentMemoryFeaturesAMD),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceCoherentMemoryFeaturesAMD>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceCoherentMemoryFeaturesAMD>::value,
"PhysicalDeviceCoherentMemoryFeaturesAMD is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceCoherentMemoryFeaturesAMD>
{
using Type = PhysicalDeviceCoherentMemoryFeaturesAMD;
};
struct PhysicalDeviceColorWriteEnableFeaturesEXT
{
using NativeType = VkPhysicalDeviceColorWriteEnableFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceColorWriteEnableFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceColorWriteEnableFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 colorWriteEnable_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
colorWriteEnable(colorWriteEnable_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceColorWriteEnableFeaturesEXT(PhysicalDeviceColorWriteEnableFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceColorWriteEnableFeaturesEXT(VkPhysicalDeviceColorWriteEnableFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceColorWriteEnableFeaturesEXT(*reinterpret_cast<PhysicalDeviceColorWriteEnableFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceColorWriteEnableFeaturesEXT &operator=(PhysicalDeviceColorWriteEnableFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceColorWriteEnableFeaturesEXT &operator=(VkPhysicalDeviceColorWriteEnableFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceColorWriteEnableFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceColorWriteEnableFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceColorWriteEnableFeaturesEXT &
setColorWriteEnable(VULKAN_HPP_NAMESPACE::Bool32 colorWriteEnable_) VULKAN_HPP_NOEXCEPT
{
colorWriteEnable = colorWriteEnable_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceColorWriteEnableFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceColorWriteEnableFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceColorWriteEnableFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceColorWriteEnableFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, colorWriteEnable);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceColorWriteEnableFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceColorWriteEnableFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (colorWriteEnable == rhs.colorWriteEnable);
# endif
}
bool operator!=(PhysicalDeviceColorWriteEnableFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceColorWriteEnableFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 colorWriteEnable = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceColorWriteEnableFeaturesEXT) == sizeof(VkPhysicalDeviceColorWriteEnableFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceColorWriteEnableFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceColorWriteEnableFeaturesEXT>::value,
"PhysicalDeviceColorWriteEnableFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceColorWriteEnableFeaturesEXT>
{
using Type = PhysicalDeviceColorWriteEnableFeaturesEXT;
};
struct PhysicalDeviceComputeShaderDerivativesFeaturesNV
{
using NativeType = VkPhysicalDeviceComputeShaderDerivativesFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceComputeShaderDerivativesFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupQuads_ = {},
VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupLinear_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
computeDerivativeGroupQuads(computeDerivativeGroupQuads_),
computeDerivativeGroupLinear(computeDerivativeGroupLinear_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceComputeShaderDerivativesFeaturesNV(PhysicalDeviceComputeShaderDerivativesFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceComputeShaderDerivativesFeaturesNV(VkPhysicalDeviceComputeShaderDerivativesFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceComputeShaderDerivativesFeaturesNV(*reinterpret_cast<PhysicalDeviceComputeShaderDerivativesFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceComputeShaderDerivativesFeaturesNV &operator=(PhysicalDeviceComputeShaderDerivativesFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceComputeShaderDerivativesFeaturesNV &operator=(VkPhysicalDeviceComputeShaderDerivativesFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceComputeShaderDerivativesFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceComputeShaderDerivativesFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceComputeShaderDerivativesFeaturesNV &
setComputeDerivativeGroupQuads(VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupQuads_) VULKAN_HPP_NOEXCEPT
{
computeDerivativeGroupQuads = computeDerivativeGroupQuads_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceComputeShaderDerivativesFeaturesNV &
setComputeDerivativeGroupLinear(VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupLinear_) VULKAN_HPP_NOEXCEPT
{
computeDerivativeGroupLinear = computeDerivativeGroupLinear_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceComputeShaderDerivativesFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceComputeShaderDerivativesFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceComputeShaderDerivativesFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, computeDerivativeGroupQuads, computeDerivativeGroupLinear);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceComputeShaderDerivativesFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceComputeShaderDerivativesFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (computeDerivativeGroupQuads == rhs.computeDerivativeGroupQuads) &&
(computeDerivativeGroupLinear == rhs.computeDerivativeGroupLinear);
# endif
}
bool operator!=(PhysicalDeviceComputeShaderDerivativesFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupQuads = {};
VULKAN_HPP_NAMESPACE::Bool32 computeDerivativeGroupLinear = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceComputeShaderDerivativesFeaturesNV) ==
sizeof(VkPhysicalDeviceComputeShaderDerivativesFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceComputeShaderDerivativesFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceComputeShaderDerivativesFeaturesNV>::value,
"PhysicalDeviceComputeShaderDerivativesFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV>
{
using Type = PhysicalDeviceComputeShaderDerivativesFeaturesNV;
};
struct PhysicalDeviceConditionalRenderingFeaturesEXT
{
using NativeType = VkPhysicalDeviceConditionalRenderingFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceConditionalRenderingFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceConditionalRenderingFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 conditionalRendering_ = {},
VULKAN_HPP_NAMESPACE::Bool32 inheritedConditionalRendering_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
conditionalRendering(conditionalRendering_),
inheritedConditionalRendering(inheritedConditionalRendering_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceConditionalRenderingFeaturesEXT(PhysicalDeviceConditionalRenderingFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceConditionalRenderingFeaturesEXT(VkPhysicalDeviceConditionalRenderingFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceConditionalRenderingFeaturesEXT(*reinterpret_cast<PhysicalDeviceConditionalRenderingFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceConditionalRenderingFeaturesEXT &operator=(PhysicalDeviceConditionalRenderingFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceConditionalRenderingFeaturesEXT &operator=(VkPhysicalDeviceConditionalRenderingFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceConditionalRenderingFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceConditionalRenderingFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceConditionalRenderingFeaturesEXT &
setConditionalRendering(VULKAN_HPP_NAMESPACE::Bool32 conditionalRendering_) VULKAN_HPP_NOEXCEPT
{
conditionalRendering = conditionalRendering_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceConditionalRenderingFeaturesEXT &
setInheritedConditionalRendering(VULKAN_HPP_NAMESPACE::Bool32 inheritedConditionalRendering_) VULKAN_HPP_NOEXCEPT
{
inheritedConditionalRendering = inheritedConditionalRendering_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceConditionalRenderingFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceConditionalRenderingFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceConditionalRenderingFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceConditionalRenderingFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, conditionalRendering, inheritedConditionalRendering);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceConditionalRenderingFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceConditionalRenderingFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (conditionalRendering == rhs.conditionalRendering) &&
(inheritedConditionalRendering == rhs.inheritedConditionalRendering);
# endif
}
bool operator!=(PhysicalDeviceConditionalRenderingFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceConditionalRenderingFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 conditionalRendering = {};
VULKAN_HPP_NAMESPACE::Bool32 inheritedConditionalRendering = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceConditionalRenderingFeaturesEXT) ==
sizeof(VkPhysicalDeviceConditionalRenderingFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceConditionalRenderingFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceConditionalRenderingFeaturesEXT>::value,
"PhysicalDeviceConditionalRenderingFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceConditionalRenderingFeaturesEXT>
{
using Type = PhysicalDeviceConditionalRenderingFeaturesEXT;
};
struct PhysicalDeviceConservativeRasterizationPropertiesEXT
{
using NativeType = VkPhysicalDeviceConservativeRasterizationPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceConservativeRasterizationPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceConservativeRasterizationPropertiesEXT(float primitiveOverestimationSize_ = {},
float maxExtraPrimitiveOverestimationSize_ = {},
float extraPrimitiveOverestimationSizeGranularity_ = {},
VULKAN_HPP_NAMESPACE::Bool32 primitiveUnderestimation_ = {},
VULKAN_HPP_NAMESPACE::Bool32 conservativePointAndLineRasterization_ = {},
VULKAN_HPP_NAMESPACE::Bool32 degenerateTrianglesRasterized_ = {},
VULKAN_HPP_NAMESPACE::Bool32 degenerateLinesRasterized_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fullyCoveredFragmentShaderInputVariable_ = {},
VULKAN_HPP_NAMESPACE::Bool32 conservativeRasterizationPostDepthCoverage_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
primitiveOverestimationSize(primitiveOverestimationSize_),
maxExtraPrimitiveOverestimationSize(maxExtraPrimitiveOverestimationSize_),
extraPrimitiveOverestimationSizeGranularity(extraPrimitiveOverestimationSizeGranularity_),
primitiveUnderestimation(primitiveUnderestimation_),
conservativePointAndLineRasterization(conservativePointAndLineRasterization_),
degenerateTrianglesRasterized(degenerateTrianglesRasterized_),
degenerateLinesRasterized(degenerateLinesRasterized_),
fullyCoveredFragmentShaderInputVariable(fullyCoveredFragmentShaderInputVariable_),
conservativeRasterizationPostDepthCoverage(conservativeRasterizationPostDepthCoverage_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceConservativeRasterizationPropertiesEXT(PhysicalDeviceConservativeRasterizationPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceConservativeRasterizationPropertiesEXT(VkPhysicalDeviceConservativeRasterizationPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceConservativeRasterizationPropertiesEXT(*reinterpret_cast<PhysicalDeviceConservativeRasterizationPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceConservativeRasterizationPropertiesEXT &
operator=(PhysicalDeviceConservativeRasterizationPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceConservativeRasterizationPropertiesEXT &operator=(VkPhysicalDeviceConservativeRasterizationPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceConservativeRasterizationPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceConservativeRasterizationPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceConservativeRasterizationPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceConservativeRasterizationPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceConservativeRasterizationPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
float const &,
float const &,
float const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
primitiveOverestimationSize,
maxExtraPrimitiveOverestimationSize,
extraPrimitiveOverestimationSizeGranularity,
primitiveUnderestimation,
conservativePointAndLineRasterization,
degenerateTrianglesRasterized,
degenerateLinesRasterized,
fullyCoveredFragmentShaderInputVariable,
conservativeRasterizationPostDepthCoverage);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceConservativeRasterizationPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceConservativeRasterizationPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (primitiveOverestimationSize == rhs.primitiveOverestimationSize) &&
(maxExtraPrimitiveOverestimationSize == rhs.maxExtraPrimitiveOverestimationSize) &&
(extraPrimitiveOverestimationSizeGranularity == rhs.extraPrimitiveOverestimationSizeGranularity) &&
(primitiveUnderestimation == rhs.primitiveUnderestimation) &&
(conservativePointAndLineRasterization == rhs.conservativePointAndLineRasterization) &&
(degenerateTrianglesRasterized == rhs.degenerateTrianglesRasterized) && (degenerateLinesRasterized == rhs.degenerateLinesRasterized) &&
(fullyCoveredFragmentShaderInputVariable == rhs.fullyCoveredFragmentShaderInputVariable) &&
(conservativeRasterizationPostDepthCoverage == rhs.conservativeRasterizationPostDepthCoverage);
# endif
}
bool operator!=(PhysicalDeviceConservativeRasterizationPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceConservativeRasterizationPropertiesEXT;
void *pNext = {};
float primitiveOverestimationSize = {};
float maxExtraPrimitiveOverestimationSize = {};
float extraPrimitiveOverestimationSizeGranularity = {};
VULKAN_HPP_NAMESPACE::Bool32 primitiveUnderestimation = {};
VULKAN_HPP_NAMESPACE::Bool32 conservativePointAndLineRasterization = {};
VULKAN_HPP_NAMESPACE::Bool32 degenerateTrianglesRasterized = {};
VULKAN_HPP_NAMESPACE::Bool32 degenerateLinesRasterized = {};
VULKAN_HPP_NAMESPACE::Bool32 fullyCoveredFragmentShaderInputVariable = {};
VULKAN_HPP_NAMESPACE::Bool32 conservativeRasterizationPostDepthCoverage = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceConservativeRasterizationPropertiesEXT) ==
sizeof(VkPhysicalDeviceConservativeRasterizationPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceConservativeRasterizationPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceConservativeRasterizationPropertiesEXT>::value,
"PhysicalDeviceConservativeRasterizationPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceConservativeRasterizationPropertiesEXT>
{
using Type = PhysicalDeviceConservativeRasterizationPropertiesEXT;
};
struct PhysicalDeviceCooperativeMatrixFeaturesNV
{
using NativeType = VkPhysicalDeviceCooperativeMatrixFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCooperativeMatrixFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceCooperativeMatrixFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrix_ = {},
VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrixRobustBufferAccess_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
cooperativeMatrix(cooperativeMatrix_),
cooperativeMatrixRobustBufferAccess(cooperativeMatrixRobustBufferAccess_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceCooperativeMatrixFeaturesNV(PhysicalDeviceCooperativeMatrixFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCooperativeMatrixFeaturesNV(VkPhysicalDeviceCooperativeMatrixFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceCooperativeMatrixFeaturesNV(*reinterpret_cast<PhysicalDeviceCooperativeMatrixFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceCooperativeMatrixFeaturesNV &operator=(PhysicalDeviceCooperativeMatrixFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCooperativeMatrixFeaturesNV &operator=(VkPhysicalDeviceCooperativeMatrixFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCooperativeMatrixFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCooperativeMatrixFeaturesNV &
setCooperativeMatrix(VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrix_) VULKAN_HPP_NOEXCEPT
{
cooperativeMatrix = cooperativeMatrix_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCooperativeMatrixFeaturesNV &
setCooperativeMatrixRobustBufferAccess(VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrixRobustBufferAccess_) VULKAN_HPP_NOEXCEPT
{
cooperativeMatrixRobustBufferAccess = cooperativeMatrixRobustBufferAccess_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceCooperativeMatrixFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceCooperativeMatrixFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceCooperativeMatrixFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, cooperativeMatrix, cooperativeMatrixRobustBufferAccess);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceCooperativeMatrixFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceCooperativeMatrixFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (cooperativeMatrix == rhs.cooperativeMatrix) &&
(cooperativeMatrixRobustBufferAccess == rhs.cooperativeMatrixRobustBufferAccess);
# endif
}
bool operator!=(PhysicalDeviceCooperativeMatrixFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCooperativeMatrixFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrix = {};
VULKAN_HPP_NAMESPACE::Bool32 cooperativeMatrixRobustBufferAccess = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixFeaturesNV) == sizeof(VkPhysicalDeviceCooperativeMatrixFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixFeaturesNV>::value,
"PhysicalDeviceCooperativeMatrixFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceCooperativeMatrixFeaturesNV>
{
using Type = PhysicalDeviceCooperativeMatrixFeaturesNV;
};
struct PhysicalDeviceCooperativeMatrixPropertiesNV
{
using NativeType = VkPhysicalDeviceCooperativeMatrixPropertiesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCooperativeMatrixPropertiesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceCooperativeMatrixPropertiesNV(VULKAN_HPP_NAMESPACE::ShaderStageFlags cooperativeMatrixSupportedStages_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
cooperativeMatrixSupportedStages(cooperativeMatrixSupportedStages_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceCooperativeMatrixPropertiesNV(PhysicalDeviceCooperativeMatrixPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCooperativeMatrixPropertiesNV(VkPhysicalDeviceCooperativeMatrixPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceCooperativeMatrixPropertiesNV(*reinterpret_cast<PhysicalDeviceCooperativeMatrixPropertiesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceCooperativeMatrixPropertiesNV &operator=(PhysicalDeviceCooperativeMatrixPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCooperativeMatrixPropertiesNV &operator=(VkPhysicalDeviceCooperativeMatrixPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixPropertiesNV const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceCooperativeMatrixPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixPropertiesNV *>(this);
}
explicit operator VkPhysicalDeviceCooperativeMatrixPropertiesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceCooperativeMatrixPropertiesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::ShaderStageFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, cooperativeMatrixSupportedStages);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceCooperativeMatrixPropertiesNV const &) const = default;
#else
bool operator==(PhysicalDeviceCooperativeMatrixPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (cooperativeMatrixSupportedStages == rhs.cooperativeMatrixSupportedStages);
# endif
}
bool operator!=(PhysicalDeviceCooperativeMatrixPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCooperativeMatrixPropertiesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ShaderStageFlags cooperativeMatrixSupportedStages = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixPropertiesNV) ==
sizeof(VkPhysicalDeviceCooperativeMatrixPropertiesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixPropertiesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixPropertiesNV>::value,
"PhysicalDeviceCooperativeMatrixPropertiesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceCooperativeMatrixPropertiesNV>
{
using Type = PhysicalDeviceCooperativeMatrixPropertiesNV;
};
struct PhysicalDeviceCornerSampledImageFeaturesNV
{
using NativeType = VkPhysicalDeviceCornerSampledImageFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCornerSampledImageFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceCornerSampledImageFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 cornerSampledImage_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
cornerSampledImage(cornerSampledImage_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceCornerSampledImageFeaturesNV(PhysicalDeviceCornerSampledImageFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCornerSampledImageFeaturesNV(VkPhysicalDeviceCornerSampledImageFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceCornerSampledImageFeaturesNV(*reinterpret_cast<PhysicalDeviceCornerSampledImageFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceCornerSampledImageFeaturesNV &operator=(PhysicalDeviceCornerSampledImageFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCornerSampledImageFeaturesNV &operator=(VkPhysicalDeviceCornerSampledImageFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCornerSampledImageFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCornerSampledImageFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCornerSampledImageFeaturesNV &
setCornerSampledImage(VULKAN_HPP_NAMESPACE::Bool32 cornerSampledImage_) VULKAN_HPP_NOEXCEPT
{
cornerSampledImage = cornerSampledImage_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceCornerSampledImageFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceCornerSampledImageFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceCornerSampledImageFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceCornerSampledImageFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, cornerSampledImage);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceCornerSampledImageFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceCornerSampledImageFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (cornerSampledImage == rhs.cornerSampledImage);
# endif
}
bool operator!=(PhysicalDeviceCornerSampledImageFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCornerSampledImageFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 cornerSampledImage = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceCornerSampledImageFeaturesNV) ==
sizeof(VkPhysicalDeviceCornerSampledImageFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceCornerSampledImageFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceCornerSampledImageFeaturesNV>::value,
"PhysicalDeviceCornerSampledImageFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceCornerSampledImageFeaturesNV>
{
using Type = PhysicalDeviceCornerSampledImageFeaturesNV;
};
struct PhysicalDeviceCoverageReductionModeFeaturesNV
{
using NativeType = VkPhysicalDeviceCoverageReductionModeFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCoverageReductionModeFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceCoverageReductionModeFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 coverageReductionMode_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
coverageReductionMode(coverageReductionMode_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceCoverageReductionModeFeaturesNV(PhysicalDeviceCoverageReductionModeFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCoverageReductionModeFeaturesNV(VkPhysicalDeviceCoverageReductionModeFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceCoverageReductionModeFeaturesNV(*reinterpret_cast<PhysicalDeviceCoverageReductionModeFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceCoverageReductionModeFeaturesNV &operator=(PhysicalDeviceCoverageReductionModeFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCoverageReductionModeFeaturesNV &operator=(VkPhysicalDeviceCoverageReductionModeFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCoverageReductionModeFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCoverageReductionModeFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCoverageReductionModeFeaturesNV &
setCoverageReductionMode(VULKAN_HPP_NAMESPACE::Bool32 coverageReductionMode_) VULKAN_HPP_NOEXCEPT
{
coverageReductionMode = coverageReductionMode_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceCoverageReductionModeFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceCoverageReductionModeFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceCoverageReductionModeFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceCoverageReductionModeFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, coverageReductionMode);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceCoverageReductionModeFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceCoverageReductionModeFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (coverageReductionMode == rhs.coverageReductionMode);
# endif
}
bool operator!=(PhysicalDeviceCoverageReductionModeFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCoverageReductionModeFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 coverageReductionMode = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceCoverageReductionModeFeaturesNV) ==
sizeof(VkPhysicalDeviceCoverageReductionModeFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceCoverageReductionModeFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceCoverageReductionModeFeaturesNV>::value,
"PhysicalDeviceCoverageReductionModeFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceCoverageReductionModeFeaturesNV>
{
using Type = PhysicalDeviceCoverageReductionModeFeaturesNV;
};
struct PhysicalDeviceCustomBorderColorFeaturesEXT
{
using NativeType = VkPhysicalDeviceCustomBorderColorFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCustomBorderColorFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceCustomBorderColorFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 customBorderColors_ = {},
VULKAN_HPP_NAMESPACE::Bool32 customBorderColorWithoutFormat_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
customBorderColors(customBorderColors_),
customBorderColorWithoutFormat(customBorderColorWithoutFormat_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceCustomBorderColorFeaturesEXT(PhysicalDeviceCustomBorderColorFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCustomBorderColorFeaturesEXT(VkPhysicalDeviceCustomBorderColorFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceCustomBorderColorFeaturesEXT(*reinterpret_cast<PhysicalDeviceCustomBorderColorFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceCustomBorderColorFeaturesEXT &operator=(PhysicalDeviceCustomBorderColorFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCustomBorderColorFeaturesEXT &operator=(VkPhysicalDeviceCustomBorderColorFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCustomBorderColorFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCustomBorderColorFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCustomBorderColorFeaturesEXT &
setCustomBorderColors(VULKAN_HPP_NAMESPACE::Bool32 customBorderColors_) VULKAN_HPP_NOEXCEPT
{
customBorderColors = customBorderColors_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceCustomBorderColorFeaturesEXT &
setCustomBorderColorWithoutFormat(VULKAN_HPP_NAMESPACE::Bool32 customBorderColorWithoutFormat_) VULKAN_HPP_NOEXCEPT
{
customBorderColorWithoutFormat = customBorderColorWithoutFormat_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceCustomBorderColorFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceCustomBorderColorFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceCustomBorderColorFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceCustomBorderColorFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, customBorderColors, customBorderColorWithoutFormat);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceCustomBorderColorFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceCustomBorderColorFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (customBorderColors == rhs.customBorderColors) &&
(customBorderColorWithoutFormat == rhs.customBorderColorWithoutFormat);
# endif
}
bool operator!=(PhysicalDeviceCustomBorderColorFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCustomBorderColorFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 customBorderColors = {};
VULKAN_HPP_NAMESPACE::Bool32 customBorderColorWithoutFormat = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceCustomBorderColorFeaturesEXT) ==
sizeof(VkPhysicalDeviceCustomBorderColorFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceCustomBorderColorFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceCustomBorderColorFeaturesEXT>::value,
"PhysicalDeviceCustomBorderColorFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceCustomBorderColorFeaturesEXT>
{
using Type = PhysicalDeviceCustomBorderColorFeaturesEXT;
};
struct PhysicalDeviceCustomBorderColorPropertiesEXT
{
using NativeType = VkPhysicalDeviceCustomBorderColorPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceCustomBorderColorPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceCustomBorderColorPropertiesEXT(uint32_t maxCustomBorderColorSamplers_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxCustomBorderColorSamplers(maxCustomBorderColorSamplers_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceCustomBorderColorPropertiesEXT(PhysicalDeviceCustomBorderColorPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCustomBorderColorPropertiesEXT(VkPhysicalDeviceCustomBorderColorPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceCustomBorderColorPropertiesEXT(*reinterpret_cast<PhysicalDeviceCustomBorderColorPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceCustomBorderColorPropertiesEXT &operator=(PhysicalDeviceCustomBorderColorPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceCustomBorderColorPropertiesEXT &operator=(VkPhysicalDeviceCustomBorderColorPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceCustomBorderColorPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceCustomBorderColorPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceCustomBorderColorPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceCustomBorderColorPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceCustomBorderColorPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxCustomBorderColorSamplers);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceCustomBorderColorPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceCustomBorderColorPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxCustomBorderColorSamplers == rhs.maxCustomBorderColorSamplers);
# endif
}
bool operator!=(PhysicalDeviceCustomBorderColorPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceCustomBorderColorPropertiesEXT;
void *pNext = {};
uint32_t maxCustomBorderColorSamplers = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceCustomBorderColorPropertiesEXT) ==
sizeof(VkPhysicalDeviceCustomBorderColorPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceCustomBorderColorPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceCustomBorderColorPropertiesEXT>::value,
"PhysicalDeviceCustomBorderColorPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceCustomBorderColorPropertiesEXT>
{
using Type = PhysicalDeviceCustomBorderColorPropertiesEXT;
};
struct PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
{
using NativeType = VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocationImageAliasing_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
dedicatedAllocationImageAliasing(dedicatedAllocationImageAliasing_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const &rhs)
VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(*reinterpret_cast<PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV &
operator=(PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV &
operator=(VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV &
setDedicatedAllocationImageAliasing(VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocationImageAliasing_) VULKAN_HPP_NOEXCEPT
{
dedicatedAllocationImageAliasing = dedicatedAllocationImageAliasing_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, dedicatedAllocationImageAliasing);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (dedicatedAllocationImageAliasing == rhs.dedicatedAllocationImageAliasing);
# endif
}
bool operator!=(PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 dedicatedAllocationImageAliasing = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV) ==
sizeof(VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>::value,
"PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>
{
using Type = PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV;
};
struct PhysicalDeviceDepthClipControlFeaturesEXT
{
using NativeType = VkPhysicalDeviceDepthClipControlFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDepthClipControlFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthClipControlFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 depthClipControl_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
depthClipControl(depthClipControl_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthClipControlFeaturesEXT(PhysicalDeviceDepthClipControlFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDepthClipControlFeaturesEXT(VkPhysicalDeviceDepthClipControlFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDepthClipControlFeaturesEXT(*reinterpret_cast<PhysicalDeviceDepthClipControlFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDepthClipControlFeaturesEXT &operator=(PhysicalDeviceDepthClipControlFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDepthClipControlFeaturesEXT &operator=(VkPhysicalDeviceDepthClipControlFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthClipControlFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDepthClipControlFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDepthClipControlFeaturesEXT &
setDepthClipControl(VULKAN_HPP_NAMESPACE::Bool32 depthClipControl_) VULKAN_HPP_NOEXCEPT
{
depthClipControl = depthClipControl_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceDepthClipControlFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDepthClipControlFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceDepthClipControlFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDepthClipControlFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, depthClipControl);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDepthClipControlFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceDepthClipControlFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (depthClipControl == rhs.depthClipControl);
# endif
}
bool operator!=(PhysicalDeviceDepthClipControlFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDepthClipControlFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 depthClipControl = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthClipControlFeaturesEXT) == sizeof(VkPhysicalDeviceDepthClipControlFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthClipControlFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthClipControlFeaturesEXT>::value,
"PhysicalDeviceDepthClipControlFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDepthClipControlFeaturesEXT>
{
using Type = PhysicalDeviceDepthClipControlFeaturesEXT;
};
struct PhysicalDeviceDepthClipEnableFeaturesEXT
{
using NativeType = VkPhysicalDeviceDepthClipEnableFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthClipEnableFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
depthClipEnable(depthClipEnable_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthClipEnableFeaturesEXT(PhysicalDeviceDepthClipEnableFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDepthClipEnableFeaturesEXT(VkPhysicalDeviceDepthClipEnableFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDepthClipEnableFeaturesEXT(*reinterpret_cast<PhysicalDeviceDepthClipEnableFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDepthClipEnableFeaturesEXT &operator=(PhysicalDeviceDepthClipEnableFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDepthClipEnableFeaturesEXT &operator=(VkPhysicalDeviceDepthClipEnableFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthClipEnableFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDepthClipEnableFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDepthClipEnableFeaturesEXT &setDepthClipEnable(VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable_) VULKAN_HPP_NOEXCEPT
{
depthClipEnable = depthClipEnable_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceDepthClipEnableFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDepthClipEnableFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceDepthClipEnableFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDepthClipEnableFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, depthClipEnable);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDepthClipEnableFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceDepthClipEnableFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (depthClipEnable == rhs.depthClipEnable);
# endif
}
bool operator!=(PhysicalDeviceDepthClipEnableFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthClipEnableFeaturesEXT) == sizeof(VkPhysicalDeviceDepthClipEnableFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthClipEnableFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthClipEnableFeaturesEXT>::value,
"PhysicalDeviceDepthClipEnableFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT>
{
using Type = PhysicalDeviceDepthClipEnableFeaturesEXT;
};
struct PhysicalDeviceDepthStencilResolveProperties
{
using NativeType = VkPhysicalDeviceDepthStencilResolveProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDepthStencilResolveProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthStencilResolveProperties(VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedDepthResolveModes_ = {},
VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedStencilResolveModes_ = {},
VULKAN_HPP_NAMESPACE::Bool32 independentResolveNone_ = {},
VULKAN_HPP_NAMESPACE::Bool32 independentResolve_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
supportedDepthResolveModes(supportedDepthResolveModes_),
supportedStencilResolveModes(supportedStencilResolveModes_),
independentResolveNone(independentResolveNone_),
independentResolve(independentResolve_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceDepthStencilResolveProperties(PhysicalDeviceDepthStencilResolveProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDepthStencilResolveProperties(VkPhysicalDeviceDepthStencilResolveProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDepthStencilResolveProperties(*reinterpret_cast<PhysicalDeviceDepthStencilResolveProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDepthStencilResolveProperties &operator=(PhysicalDeviceDepthStencilResolveProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDepthStencilResolveProperties &operator=(VkPhysicalDeviceDepthStencilResolveProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthStencilResolveProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceDepthStencilResolveProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDepthStencilResolveProperties *>(this);
}
explicit operator VkPhysicalDeviceDepthStencilResolveProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDepthStencilResolveProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ResolveModeFlags const &,
VULKAN_HPP_NAMESPACE::ResolveModeFlags const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, supportedDepthResolveModes, supportedStencilResolveModes, independentResolveNone, independentResolve);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDepthStencilResolveProperties const &) const = default;
#else
bool operator==(PhysicalDeviceDepthStencilResolveProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (supportedDepthResolveModes == rhs.supportedDepthResolveModes) &&
(supportedStencilResolveModes == rhs.supportedStencilResolveModes) && (independentResolveNone == rhs.independentResolveNone) &&
(independentResolve == rhs.independentResolve);
# endif
}
bool operator!=(PhysicalDeviceDepthStencilResolveProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDepthStencilResolveProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedDepthResolveModes = {};
VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedStencilResolveModes = {};
VULKAN_HPP_NAMESPACE::Bool32 independentResolveNone = {};
VULKAN_HPP_NAMESPACE::Bool32 independentResolve = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthStencilResolveProperties) ==
sizeof(VkPhysicalDeviceDepthStencilResolveProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthStencilResolveProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDepthStencilResolveProperties>::value,
"PhysicalDeviceDepthStencilResolveProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDepthStencilResolveProperties>
{
using Type = PhysicalDeviceDepthStencilResolveProperties;
};
using PhysicalDeviceDepthStencilResolvePropertiesKHR = PhysicalDeviceDepthStencilResolveProperties;
struct PhysicalDeviceDescriptorIndexingFeatures
{
using NativeType = VkPhysicalDeviceDescriptorIndexingFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDescriptorIndexingFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorIndexingFeatures(VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount_ = {},
VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderInputAttachmentArrayDynamicIndexing(shaderInputAttachmentArrayDynamicIndexing_),
shaderUniformTexelBufferArrayDynamicIndexing(shaderUniformTexelBufferArrayDynamicIndexing_),
shaderStorageTexelBufferArrayDynamicIndexing(shaderStorageTexelBufferArrayDynamicIndexing_),
shaderUniformBufferArrayNonUniformIndexing(shaderUniformBufferArrayNonUniformIndexing_),
shaderSampledImageArrayNonUniformIndexing(shaderSampledImageArrayNonUniformIndexing_),
shaderStorageBufferArrayNonUniformIndexing(shaderStorageBufferArrayNonUniformIndexing_),
shaderStorageImageArrayNonUniformIndexing(shaderStorageImageArrayNonUniformIndexing_),
shaderInputAttachmentArrayNonUniformIndexing(shaderInputAttachmentArrayNonUniformIndexing_),
shaderUniformTexelBufferArrayNonUniformIndexing(shaderUniformTexelBufferArrayNonUniformIndexing_),
shaderStorageTexelBufferArrayNonUniformIndexing(shaderStorageTexelBufferArrayNonUniformIndexing_),
descriptorBindingUniformBufferUpdateAfterBind(descriptorBindingUniformBufferUpdateAfterBind_),
descriptorBindingSampledImageUpdateAfterBind(descriptorBindingSampledImageUpdateAfterBind_),
descriptorBindingStorageImageUpdateAfterBind(descriptorBindingStorageImageUpdateAfterBind_),
descriptorBindingStorageBufferUpdateAfterBind(descriptorBindingStorageBufferUpdateAfterBind_),
descriptorBindingUniformTexelBufferUpdateAfterBind(descriptorBindingUniformTexelBufferUpdateAfterBind_),
descriptorBindingStorageTexelBufferUpdateAfterBind(descriptorBindingStorageTexelBufferUpdateAfterBind_),
descriptorBindingUpdateUnusedWhilePending(descriptorBindingUpdateUnusedWhilePending_),
descriptorBindingPartiallyBound(descriptorBindingPartiallyBound_),
descriptorBindingVariableDescriptorCount(descriptorBindingVariableDescriptorCount_),
runtimeDescriptorArray(runtimeDescriptorArray_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorIndexingFeatures(PhysicalDeviceDescriptorIndexingFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDescriptorIndexingFeatures(VkPhysicalDeviceDescriptorIndexingFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDescriptorIndexingFeatures(*reinterpret_cast<PhysicalDeviceDescriptorIndexingFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDescriptorIndexingFeatures &operator=(PhysicalDeviceDescriptorIndexingFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDescriptorIndexingFeatures &operator=(VkPhysicalDeviceDescriptorIndexingFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorIndexingFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setShaderInputAttachmentArrayDynamicIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setShaderUniformTexelBufferArrayDynamicIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setShaderStorageTexelBufferArrayDynamicIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setShaderUniformBufferArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setShaderSampledImageArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setShaderStorageBufferArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setShaderStorageImageArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setShaderInputAttachmentArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setShaderUniformTexelBufferArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setShaderStorageTexelBufferArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setDescriptorBindingUniformBufferUpdateAfterBind(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setDescriptorBindingSampledImageUpdateAfterBind(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setDescriptorBindingStorageImageUpdateAfterBind(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setDescriptorBindingStorageBufferUpdateAfterBind(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &setDescriptorBindingUniformTexelBufferUpdateAfterBind(
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &setDescriptorBindingStorageTexelBufferUpdateAfterBind(
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setDescriptorBindingUpdateUnusedWhilePending(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setDescriptorBindingPartiallyBound(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingPartiallyBound = descriptorBindingPartiallyBound_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setDescriptorBindingVariableDescriptorCount(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorIndexingFeatures &
setRuntimeDescriptorArray(VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray_) VULKAN_HPP_NOEXCEPT
{
runtimeDescriptorArray = runtimeDescriptorArray_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceDescriptorIndexingFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingFeatures *>(this);
}
explicit operator VkPhysicalDeviceDescriptorIndexingFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDescriptorIndexingFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
shaderInputAttachmentArrayDynamicIndexing,
shaderUniformTexelBufferArrayDynamicIndexing,
shaderStorageTexelBufferArrayDynamicIndexing,
shaderUniformBufferArrayNonUniformIndexing,
shaderSampledImageArrayNonUniformIndexing,
shaderStorageBufferArrayNonUniformIndexing,
shaderStorageImageArrayNonUniformIndexing,
shaderInputAttachmentArrayNonUniformIndexing,
shaderUniformTexelBufferArrayNonUniformIndexing,
shaderStorageTexelBufferArrayNonUniformIndexing,
descriptorBindingUniformBufferUpdateAfterBind,
descriptorBindingSampledImageUpdateAfterBind,
descriptorBindingStorageImageUpdateAfterBind,
descriptorBindingStorageBufferUpdateAfterBind,
descriptorBindingUniformTexelBufferUpdateAfterBind,
descriptorBindingStorageTexelBufferUpdateAfterBind,
descriptorBindingUpdateUnusedWhilePending,
descriptorBindingPartiallyBound,
descriptorBindingVariableDescriptorCount,
runtimeDescriptorArray);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDescriptorIndexingFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceDescriptorIndexingFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) &&
(shaderInputAttachmentArrayDynamicIndexing == rhs.shaderInputAttachmentArrayDynamicIndexing) &&
(shaderUniformTexelBufferArrayDynamicIndexing == rhs.shaderUniformTexelBufferArrayDynamicIndexing) &&
(shaderStorageTexelBufferArrayDynamicIndexing == rhs.shaderStorageTexelBufferArrayDynamicIndexing) &&
(shaderUniformBufferArrayNonUniformIndexing == rhs.shaderUniformBufferArrayNonUniformIndexing) &&
(shaderSampledImageArrayNonUniformIndexing == rhs.shaderSampledImageArrayNonUniformIndexing) &&
(shaderStorageBufferArrayNonUniformIndexing == rhs.shaderStorageBufferArrayNonUniformIndexing) &&
(shaderStorageImageArrayNonUniformIndexing == rhs.shaderStorageImageArrayNonUniformIndexing) &&
(shaderInputAttachmentArrayNonUniformIndexing == rhs.shaderInputAttachmentArrayNonUniformIndexing) &&
(shaderUniformTexelBufferArrayNonUniformIndexing == rhs.shaderUniformTexelBufferArrayNonUniformIndexing) &&
(shaderStorageTexelBufferArrayNonUniformIndexing == rhs.shaderStorageTexelBufferArrayNonUniformIndexing) &&
(descriptorBindingUniformBufferUpdateAfterBind == rhs.descriptorBindingUniformBufferUpdateAfterBind) &&
(descriptorBindingSampledImageUpdateAfterBind == rhs.descriptorBindingSampledImageUpdateAfterBind) &&
(descriptorBindingStorageImageUpdateAfterBind == rhs.descriptorBindingStorageImageUpdateAfterBind) &&
(descriptorBindingStorageBufferUpdateAfterBind == rhs.descriptorBindingStorageBufferUpdateAfterBind) &&
(descriptorBindingUniformTexelBufferUpdateAfterBind == rhs.descriptorBindingUniformTexelBufferUpdateAfterBind) &&
(descriptorBindingStorageTexelBufferUpdateAfterBind == rhs.descriptorBindingStorageTexelBufferUpdateAfterBind) &&
(descriptorBindingUpdateUnusedWhilePending == rhs.descriptorBindingUpdateUnusedWhilePending) &&
(descriptorBindingPartiallyBound == rhs.descriptorBindingPartiallyBound) &&
(descriptorBindingVariableDescriptorCount == rhs.descriptorBindingVariableDescriptorCount) &&
(runtimeDescriptorArray == rhs.runtimeDescriptorArray);
# endif
}
bool operator!=(PhysicalDeviceDescriptorIndexingFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDescriptorIndexingFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount = {};
VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorIndexingFeatures) == sizeof(VkPhysicalDeviceDescriptorIndexingFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorIndexingFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorIndexingFeatures>::value,
"PhysicalDeviceDescriptorIndexingFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDescriptorIndexingFeatures>
{
using Type = PhysicalDeviceDescriptorIndexingFeatures;
};
using PhysicalDeviceDescriptorIndexingFeaturesEXT = PhysicalDeviceDescriptorIndexingFeatures;
struct PhysicalDeviceDescriptorIndexingProperties
{
using NativeType = VkPhysicalDeviceDescriptorIndexingProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDescriptorIndexingProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorIndexingProperties(uint32_t maxUpdateAfterBindDescriptorsInAllPools_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexingNative_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexingNative_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexingNative_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexingNative_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexingNative_ = {},
VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccessUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 quadDivergentImplicitLod_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindSamplers_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments_ = {},
uint32_t maxPerStageUpdateAfterBindResources_ = {},
uint32_t maxDescriptorSetUpdateAfterBindSamplers_ = {},
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers_ = {},
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic_ = {},
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers_ = {},
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic_ = {},
uint32_t maxDescriptorSetUpdateAfterBindSampledImages_ = {},
uint32_t maxDescriptorSetUpdateAfterBindStorageImages_ = {},
uint32_t maxDescriptorSetUpdateAfterBindInputAttachments_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxUpdateAfterBindDescriptorsInAllPools(maxUpdateAfterBindDescriptorsInAllPools_),
shaderUniformBufferArrayNonUniformIndexingNative(shaderUniformBufferArrayNonUniformIndexingNative_),
shaderSampledImageArrayNonUniformIndexingNative(shaderSampledImageArrayNonUniformIndexingNative_),
shaderStorageBufferArrayNonUniformIndexingNative(shaderStorageBufferArrayNonUniformIndexingNative_),
shaderStorageImageArrayNonUniformIndexingNative(shaderStorageImageArrayNonUniformIndexingNative_),
shaderInputAttachmentArrayNonUniformIndexingNative(shaderInputAttachmentArrayNonUniformIndexingNative_),
robustBufferAccessUpdateAfterBind(robustBufferAccessUpdateAfterBind_),
quadDivergentImplicitLod(quadDivergentImplicitLod_),
maxPerStageDescriptorUpdateAfterBindSamplers(maxPerStageDescriptorUpdateAfterBindSamplers_),
maxPerStageDescriptorUpdateAfterBindUniformBuffers(maxPerStageDescriptorUpdateAfterBindUniformBuffers_),
maxPerStageDescriptorUpdateAfterBindStorageBuffers(maxPerStageDescriptorUpdateAfterBindStorageBuffers_),
maxPerStageDescriptorUpdateAfterBindSampledImages(maxPerStageDescriptorUpdateAfterBindSampledImages_),
maxPerStageDescriptorUpdateAfterBindStorageImages(maxPerStageDescriptorUpdateAfterBindStorageImages_),
maxPerStageDescriptorUpdateAfterBindInputAttachments(maxPerStageDescriptorUpdateAfterBindInputAttachments_),
maxPerStageUpdateAfterBindResources(maxPerStageUpdateAfterBindResources_),
maxDescriptorSetUpdateAfterBindSamplers(maxDescriptorSetUpdateAfterBindSamplers_),
maxDescriptorSetUpdateAfterBindUniformBuffers(maxDescriptorSetUpdateAfterBindUniformBuffers_),
maxDescriptorSetUpdateAfterBindUniformBuffersDynamic(maxDescriptorSetUpdateAfterBindUniformBuffersDynamic_),
maxDescriptorSetUpdateAfterBindStorageBuffers(maxDescriptorSetUpdateAfterBindStorageBuffers_),
maxDescriptorSetUpdateAfterBindStorageBuffersDynamic(maxDescriptorSetUpdateAfterBindStorageBuffersDynamic_),
maxDescriptorSetUpdateAfterBindSampledImages(maxDescriptorSetUpdateAfterBindSampledImages_),
maxDescriptorSetUpdateAfterBindStorageImages(maxDescriptorSetUpdateAfterBindStorageImages_),
maxDescriptorSetUpdateAfterBindInputAttachments(maxDescriptorSetUpdateAfterBindInputAttachments_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorIndexingProperties(PhysicalDeviceDescriptorIndexingProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDescriptorIndexingProperties(VkPhysicalDeviceDescriptorIndexingProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDescriptorIndexingProperties(*reinterpret_cast<PhysicalDeviceDescriptorIndexingProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDescriptorIndexingProperties &operator=(PhysicalDeviceDescriptorIndexingProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDescriptorIndexingProperties &operator=(VkPhysicalDeviceDescriptorIndexingProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorIndexingProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceDescriptorIndexingProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingProperties *>(this);
}
explicit operator VkPhysicalDeviceDescriptorIndexingProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDescriptorIndexingProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
maxUpdateAfterBindDescriptorsInAllPools,
shaderUniformBufferArrayNonUniformIndexingNative,
shaderSampledImageArrayNonUniformIndexingNative,
shaderStorageBufferArrayNonUniformIndexingNative,
shaderStorageImageArrayNonUniformIndexingNative,
shaderInputAttachmentArrayNonUniformIndexingNative,
robustBufferAccessUpdateAfterBind,
quadDivergentImplicitLod,
maxPerStageDescriptorUpdateAfterBindSamplers,
maxPerStageDescriptorUpdateAfterBindUniformBuffers,
maxPerStageDescriptorUpdateAfterBindStorageBuffers,
maxPerStageDescriptorUpdateAfterBindSampledImages,
maxPerStageDescriptorUpdateAfterBindStorageImages,
maxPerStageDescriptorUpdateAfterBindInputAttachments,
maxPerStageUpdateAfterBindResources,
maxDescriptorSetUpdateAfterBindSamplers,
maxDescriptorSetUpdateAfterBindUniformBuffers,
maxDescriptorSetUpdateAfterBindUniformBuffersDynamic,
maxDescriptorSetUpdateAfterBindStorageBuffers,
maxDescriptorSetUpdateAfterBindStorageBuffersDynamic,
maxDescriptorSetUpdateAfterBindSampledImages,
maxDescriptorSetUpdateAfterBindStorageImages,
maxDescriptorSetUpdateAfterBindInputAttachments);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDescriptorIndexingProperties const &) const = default;
#else
bool operator==(PhysicalDeviceDescriptorIndexingProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxUpdateAfterBindDescriptorsInAllPools == rhs.maxUpdateAfterBindDescriptorsInAllPools) &&
(shaderUniformBufferArrayNonUniformIndexingNative == rhs.shaderUniformBufferArrayNonUniformIndexingNative) &&
(shaderSampledImageArrayNonUniformIndexingNative == rhs.shaderSampledImageArrayNonUniformIndexingNative) &&
(shaderStorageBufferArrayNonUniformIndexingNative == rhs.shaderStorageBufferArrayNonUniformIndexingNative) &&
(shaderStorageImageArrayNonUniformIndexingNative == rhs.shaderStorageImageArrayNonUniformIndexingNative) &&
(shaderInputAttachmentArrayNonUniformIndexingNative == rhs.shaderInputAttachmentArrayNonUniformIndexingNative) &&
(robustBufferAccessUpdateAfterBind == rhs.robustBufferAccessUpdateAfterBind) && (quadDivergentImplicitLod == rhs.quadDivergentImplicitLod) &&
(maxPerStageDescriptorUpdateAfterBindSamplers == rhs.maxPerStageDescriptorUpdateAfterBindSamplers) &&
(maxPerStageDescriptorUpdateAfterBindUniformBuffers == rhs.maxPerStageDescriptorUpdateAfterBindUniformBuffers) &&
(maxPerStageDescriptorUpdateAfterBindStorageBuffers == rhs.maxPerStageDescriptorUpdateAfterBindStorageBuffers) &&
(maxPerStageDescriptorUpdateAfterBindSampledImages == rhs.maxPerStageDescriptorUpdateAfterBindSampledImages) &&
(maxPerStageDescriptorUpdateAfterBindStorageImages == rhs.maxPerStageDescriptorUpdateAfterBindStorageImages) &&
(maxPerStageDescriptorUpdateAfterBindInputAttachments == rhs.maxPerStageDescriptorUpdateAfterBindInputAttachments) &&
(maxPerStageUpdateAfterBindResources == rhs.maxPerStageUpdateAfterBindResources) &&
(maxDescriptorSetUpdateAfterBindSamplers == rhs.maxDescriptorSetUpdateAfterBindSamplers) &&
(maxDescriptorSetUpdateAfterBindUniformBuffers == rhs.maxDescriptorSetUpdateAfterBindUniformBuffers) &&
(maxDescriptorSetUpdateAfterBindUniformBuffersDynamic == rhs.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic) &&
(maxDescriptorSetUpdateAfterBindStorageBuffers == rhs.maxDescriptorSetUpdateAfterBindStorageBuffers) &&
(maxDescriptorSetUpdateAfterBindStorageBuffersDynamic == rhs.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic) &&
(maxDescriptorSetUpdateAfterBindSampledImages == rhs.maxDescriptorSetUpdateAfterBindSampledImages) &&
(maxDescriptorSetUpdateAfterBindStorageImages == rhs.maxDescriptorSetUpdateAfterBindStorageImages) &&
(maxDescriptorSetUpdateAfterBindInputAttachments == rhs.maxDescriptorSetUpdateAfterBindInputAttachments);
# endif
}
bool operator!=(PhysicalDeviceDescriptorIndexingProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDescriptorIndexingProperties;
void *pNext = {};
uint32_t maxUpdateAfterBindDescriptorsInAllPools = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexingNative = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexingNative = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexingNative = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexingNative = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexingNative = {};
VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccessUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 quadDivergentImplicitLod = {};
uint32_t maxPerStageDescriptorUpdateAfterBindSamplers = {};
uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers = {};
uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers = {};
uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages = {};
uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages = {};
uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments = {};
uint32_t maxPerStageUpdateAfterBindResources = {};
uint32_t maxDescriptorSetUpdateAfterBindSamplers = {};
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers = {};
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = {};
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers = {};
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = {};
uint32_t maxDescriptorSetUpdateAfterBindSampledImages = {};
uint32_t maxDescriptorSetUpdateAfterBindStorageImages = {};
uint32_t maxDescriptorSetUpdateAfterBindInputAttachments = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorIndexingProperties) ==
sizeof(VkPhysicalDeviceDescriptorIndexingProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorIndexingProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorIndexingProperties>::value,
"PhysicalDeviceDescriptorIndexingProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDescriptorIndexingProperties>
{
using Type = PhysicalDeviceDescriptorIndexingProperties;
};
using PhysicalDeviceDescriptorIndexingPropertiesEXT = PhysicalDeviceDescriptorIndexingProperties;
struct PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE
{
using NativeType = VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDescriptorSetHostMappingFeaturesVALVE;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE(VULKAN_HPP_NAMESPACE::Bool32 descriptorSetHostMapping_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
descriptorSetHostMapping(descriptorSetHostMapping_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE(PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE(VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE(*reinterpret_cast<PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE &
operator=(PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE &operator=(VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE &
setDescriptorSetHostMapping(VULKAN_HPP_NAMESPACE::Bool32 descriptorSetHostMapping_) VULKAN_HPP_NOEXCEPT
{
descriptorSetHostMapping = descriptorSetHostMapping_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE *>(this);
}
explicit operator VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, descriptorSetHostMapping);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE const &) const = default;
#else
bool operator==(PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (descriptorSetHostMapping == rhs.descriptorSetHostMapping);
# endif
}
bool operator!=(PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDescriptorSetHostMappingFeaturesVALVE;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorSetHostMapping = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE) ==
sizeof(VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE>::value,
"PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDescriptorSetHostMappingFeaturesVALVE>
{
using Type = PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE;
};
struct PhysicalDeviceDeviceGeneratedCommandsFeaturesNV
{
using NativeType = VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceGeneratedCommandsFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 deviceGeneratedCommands_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
deviceGeneratedCommands(deviceGeneratedCommands_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceDeviceGeneratedCommandsFeaturesNV(PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDeviceGeneratedCommandsFeaturesNV(VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDeviceGeneratedCommandsFeaturesNV(*reinterpret_cast<PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDeviceGeneratedCommandsFeaturesNV &operator=(PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDeviceGeneratedCommandsFeaturesNV &operator=(VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDeviceGeneratedCommandsFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDeviceGeneratedCommandsFeaturesNV &
setDeviceGeneratedCommands(VULKAN_HPP_NAMESPACE::Bool32 deviceGeneratedCommands_) VULKAN_HPP_NOEXCEPT
{
deviceGeneratedCommands = deviceGeneratedCommands_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, deviceGeneratedCommands);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (deviceGeneratedCommands == rhs.deviceGeneratedCommands);
# endif
}
bool operator!=(PhysicalDeviceDeviceGeneratedCommandsFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 deviceGeneratedCommands = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceGeneratedCommandsFeaturesNV) ==
sizeof(VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceGeneratedCommandsFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceGeneratedCommandsFeaturesNV>::value,
"PhysicalDeviceDeviceGeneratedCommandsFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV>
{
using Type = PhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
};
struct PhysicalDeviceDeviceGeneratedCommandsPropertiesNV
{
using NativeType = VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceGeneratedCommandsPropertiesNV(uint32_t maxGraphicsShaderGroupCount_ = {},
uint32_t maxIndirectSequenceCount_ = {},
uint32_t maxIndirectCommandsTokenCount_ = {},
uint32_t maxIndirectCommandsStreamCount_ = {},
uint32_t maxIndirectCommandsTokenOffset_ = {},
uint32_t maxIndirectCommandsStreamStride_ = {},
uint32_t minSequencesCountBufferOffsetAlignment_ = {},
uint32_t minSequencesIndexBufferOffsetAlignment_ = {},
uint32_t minIndirectCommandsBufferOffsetAlignment_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxGraphicsShaderGroupCount(maxGraphicsShaderGroupCount_),
maxIndirectSequenceCount(maxIndirectSequenceCount_),
maxIndirectCommandsTokenCount(maxIndirectCommandsTokenCount_),
maxIndirectCommandsStreamCount(maxIndirectCommandsStreamCount_),
maxIndirectCommandsTokenOffset(maxIndirectCommandsTokenOffset_),
maxIndirectCommandsStreamStride(maxIndirectCommandsStreamStride_),
minSequencesCountBufferOffsetAlignment(minSequencesCountBufferOffsetAlignment_),
minSequencesIndexBufferOffsetAlignment(minSequencesIndexBufferOffsetAlignment_),
minIndirectCommandsBufferOffsetAlignment(minIndirectCommandsBufferOffsetAlignment_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceDeviceGeneratedCommandsPropertiesNV(PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDeviceGeneratedCommandsPropertiesNV(VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDeviceGeneratedCommandsPropertiesNV(*reinterpret_cast<PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDeviceGeneratedCommandsPropertiesNV &
operator=(PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDeviceGeneratedCommandsPropertiesNV &operator=(VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV *>(this);
}
explicit operator VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
maxGraphicsShaderGroupCount,
maxIndirectSequenceCount,
maxIndirectCommandsTokenCount,
maxIndirectCommandsStreamCount,
maxIndirectCommandsTokenOffset,
maxIndirectCommandsStreamStride,
minSequencesCountBufferOffsetAlignment,
minSequencesIndexBufferOffsetAlignment,
minIndirectCommandsBufferOffsetAlignment);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const &) const = default;
#else
bool operator==(PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxGraphicsShaderGroupCount == rhs.maxGraphicsShaderGroupCount) &&
(maxIndirectSequenceCount == rhs.maxIndirectSequenceCount) && (maxIndirectCommandsTokenCount == rhs.maxIndirectCommandsTokenCount) &&
(maxIndirectCommandsStreamCount == rhs.maxIndirectCommandsStreamCount) &&
(maxIndirectCommandsTokenOffset == rhs.maxIndirectCommandsTokenOffset) &&
(maxIndirectCommandsStreamStride == rhs.maxIndirectCommandsStreamStride) &&
(minSequencesCountBufferOffsetAlignment == rhs.minSequencesCountBufferOffsetAlignment) &&
(minSequencesIndexBufferOffsetAlignment == rhs.minSequencesIndexBufferOffsetAlignment) &&
(minIndirectCommandsBufferOffsetAlignment == rhs.minIndirectCommandsBufferOffsetAlignment);
# endif
}
bool operator!=(PhysicalDeviceDeviceGeneratedCommandsPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
void *pNext = {};
uint32_t maxGraphicsShaderGroupCount = {};
uint32_t maxIndirectSequenceCount = {};
uint32_t maxIndirectCommandsTokenCount = {};
uint32_t maxIndirectCommandsStreamCount = {};
uint32_t maxIndirectCommandsTokenOffset = {};
uint32_t maxIndirectCommandsStreamStride = {};
uint32_t minSequencesCountBufferOffsetAlignment = {};
uint32_t minSequencesIndexBufferOffsetAlignment = {};
uint32_t minIndirectCommandsBufferOffsetAlignment = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceGeneratedCommandsPropertiesNV) ==
sizeof(VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceGeneratedCommandsPropertiesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceGeneratedCommandsPropertiesNV>::value,
"PhysicalDeviceDeviceGeneratedCommandsPropertiesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV>
{
using Type = PhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
};
struct PhysicalDeviceDeviceMemoryReportFeaturesEXT
{
using NativeType = VkPhysicalDeviceDeviceMemoryReportFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDeviceMemoryReportFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceMemoryReportFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 deviceMemoryReport_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
deviceMemoryReport(deviceMemoryReport_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceDeviceMemoryReportFeaturesEXT(PhysicalDeviceDeviceMemoryReportFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDeviceMemoryReportFeaturesEXT(VkPhysicalDeviceDeviceMemoryReportFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDeviceMemoryReportFeaturesEXT(*reinterpret_cast<PhysicalDeviceDeviceMemoryReportFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDeviceMemoryReportFeaturesEXT &operator=(PhysicalDeviceDeviceMemoryReportFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDeviceMemoryReportFeaturesEXT &operator=(VkPhysicalDeviceDeviceMemoryReportFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceMemoryReportFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDeviceMemoryReportFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDeviceMemoryReportFeaturesEXT &
setDeviceMemoryReport(VULKAN_HPP_NAMESPACE::Bool32 deviceMemoryReport_) VULKAN_HPP_NOEXCEPT
{
deviceMemoryReport = deviceMemoryReport_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceDeviceMemoryReportFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceDeviceMemoryReportFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDeviceMemoryReportFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, deviceMemoryReport);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDeviceMemoryReportFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceDeviceMemoryReportFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (deviceMemoryReport == rhs.deviceMemoryReport);
# endif
}
bool operator!=(PhysicalDeviceDeviceMemoryReportFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDeviceMemoryReportFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 deviceMemoryReport = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceMemoryReportFeaturesEXT) ==
sizeof(VkPhysicalDeviceDeviceMemoryReportFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceMemoryReportFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDeviceMemoryReportFeaturesEXT>::value,
"PhysicalDeviceDeviceMemoryReportFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDeviceMemoryReportFeaturesEXT>
{
using Type = PhysicalDeviceDeviceMemoryReportFeaturesEXT;
};
struct PhysicalDeviceDiagnosticsConfigFeaturesNV
{
using NativeType = VkPhysicalDeviceDiagnosticsConfigFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDiagnosticsConfigFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 diagnosticsConfig_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
diagnosticsConfig(diagnosticsConfig_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceDiagnosticsConfigFeaturesNV(PhysicalDeviceDiagnosticsConfigFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDiagnosticsConfigFeaturesNV(VkPhysicalDeviceDiagnosticsConfigFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDiagnosticsConfigFeaturesNV(*reinterpret_cast<PhysicalDeviceDiagnosticsConfigFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDiagnosticsConfigFeaturesNV &operator=(PhysicalDeviceDiagnosticsConfigFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDiagnosticsConfigFeaturesNV &operator=(VkPhysicalDeviceDiagnosticsConfigFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDiagnosticsConfigFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDiagnosticsConfigFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDiagnosticsConfigFeaturesNV &
setDiagnosticsConfig(VULKAN_HPP_NAMESPACE::Bool32 diagnosticsConfig_) VULKAN_HPP_NOEXCEPT
{
diagnosticsConfig = diagnosticsConfig_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceDiagnosticsConfigFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDiagnosticsConfigFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceDiagnosticsConfigFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDiagnosticsConfigFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, diagnosticsConfig);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDiagnosticsConfigFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceDiagnosticsConfigFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (diagnosticsConfig == rhs.diagnosticsConfig);
# endif
}
bool operator!=(PhysicalDeviceDiagnosticsConfigFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 diagnosticsConfig = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDiagnosticsConfigFeaturesNV) == sizeof(VkPhysicalDeviceDiagnosticsConfigFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDiagnosticsConfigFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDiagnosticsConfigFeaturesNV>::value,
"PhysicalDeviceDiagnosticsConfigFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV>
{
using Type = PhysicalDeviceDiagnosticsConfigFeaturesNV;
};
struct PhysicalDeviceDiscardRectanglePropertiesEXT
{
using NativeType = VkPhysicalDeviceDiscardRectanglePropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDiscardRectanglePropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDiscardRectanglePropertiesEXT(uint32_t maxDiscardRectangles_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxDiscardRectangles(maxDiscardRectangles_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceDiscardRectanglePropertiesEXT(PhysicalDeviceDiscardRectanglePropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDiscardRectanglePropertiesEXT(VkPhysicalDeviceDiscardRectanglePropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDiscardRectanglePropertiesEXT(*reinterpret_cast<PhysicalDeviceDiscardRectanglePropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDiscardRectanglePropertiesEXT &operator=(PhysicalDeviceDiscardRectanglePropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDiscardRectanglePropertiesEXT &operator=(VkPhysicalDeviceDiscardRectanglePropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDiscardRectanglePropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceDiscardRectanglePropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDiscardRectanglePropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceDiscardRectanglePropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDiscardRectanglePropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxDiscardRectangles);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDiscardRectanglePropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceDiscardRectanglePropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxDiscardRectangles == rhs.maxDiscardRectangles);
# endif
}
bool operator!=(PhysicalDeviceDiscardRectanglePropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDiscardRectanglePropertiesEXT;
void *pNext = {};
uint32_t maxDiscardRectangles = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDiscardRectanglePropertiesEXT) ==
sizeof(VkPhysicalDeviceDiscardRectanglePropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDiscardRectanglePropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDiscardRectanglePropertiesEXT>::value,
"PhysicalDeviceDiscardRectanglePropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDiscardRectanglePropertiesEXT>
{
using Type = PhysicalDeviceDiscardRectanglePropertiesEXT;
};
struct PhysicalDeviceDriverProperties
{
using NativeType = VkPhysicalDeviceDriverProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDriverProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDriverProperties(VULKAN_HPP_NAMESPACE::DriverId driverID_ = VULKAN_HPP_NAMESPACE::DriverId::eAmdProprietary,
std::array<char, VK_MAX_DRIVER_NAME_SIZE> const &driverName_ = {},
std::array<char, VK_MAX_DRIVER_INFO_SIZE> const &driverInfo_ = {},
VULKAN_HPP_NAMESPACE::ConformanceVersion conformanceVersion_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
driverID(driverID_),
driverName(driverName_),
driverInfo(driverInfo_),
conformanceVersion(conformanceVersion_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDriverProperties(PhysicalDeviceDriverProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDriverProperties(VkPhysicalDeviceDriverProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDriverProperties(*reinterpret_cast<PhysicalDeviceDriverProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDriverProperties &operator=(PhysicalDeviceDriverProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDriverProperties &operator=(VkPhysicalDeviceDriverProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDriverProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceDriverProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDriverProperties *>(this);
}
explicit operator VkPhysicalDeviceDriverProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDriverProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::DriverId const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_NAME_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_INFO_SIZE> const &,
VULKAN_HPP_NAMESPACE::ConformanceVersion const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, driverID, driverName, driverInfo, conformanceVersion);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDriverProperties const &) const = default;
#else
bool operator==(PhysicalDeviceDriverProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (driverID == rhs.driverID) && (driverName == rhs.driverName) &&
(driverInfo == rhs.driverInfo) && (conformanceVersion == rhs.conformanceVersion);
# endif
}
bool operator!=(PhysicalDeviceDriverProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDriverProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DriverId driverID = VULKAN_HPP_NAMESPACE::DriverId::eAmdProprietary;
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_NAME_SIZE> driverName = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_INFO_SIZE> driverInfo = {};
VULKAN_HPP_NAMESPACE::ConformanceVersion conformanceVersion = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDriverProperties) == sizeof(VkPhysicalDeviceDriverProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDriverProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDriverProperties>::value,
"PhysicalDeviceDriverProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDriverProperties>
{
using Type = PhysicalDeviceDriverProperties;
};
using PhysicalDeviceDriverPropertiesKHR = PhysicalDeviceDriverProperties;
struct PhysicalDeviceDrmPropertiesEXT
{
using NativeType = VkPhysicalDeviceDrmPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDrmPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDrmPropertiesEXT(VULKAN_HPP_NAMESPACE::Bool32 hasPrimary_ = {},
VULKAN_HPP_NAMESPACE::Bool32 hasRender_ = {},
int64_t primaryMajor_ = {},
int64_t primaryMinor_ = {},
int64_t renderMajor_ = {},
int64_t renderMinor_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
hasPrimary(hasPrimary_),
hasRender(hasRender_),
primaryMajor(primaryMajor_),
primaryMinor(primaryMinor_),
renderMajor(renderMajor_),
renderMinor(renderMinor_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceDrmPropertiesEXT(PhysicalDeviceDrmPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDrmPropertiesEXT(VkPhysicalDeviceDrmPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDrmPropertiesEXT(*reinterpret_cast<PhysicalDeviceDrmPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDrmPropertiesEXT &operator=(PhysicalDeviceDrmPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDrmPropertiesEXT &operator=(VkPhysicalDeviceDrmPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDrmPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceDrmPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDrmPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceDrmPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDrmPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
int64_t const &,
int64_t const &,
int64_t const &,
int64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, hasPrimary, hasRender, primaryMajor, primaryMinor, renderMajor, renderMinor);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDrmPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceDrmPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (hasPrimary == rhs.hasPrimary) && (hasRender == rhs.hasRender) &&
(primaryMajor == rhs.primaryMajor) && (primaryMinor == rhs.primaryMinor) && (renderMajor == rhs.renderMajor) &&
(renderMinor == rhs.renderMinor);
# endif
}
bool operator!=(PhysicalDeviceDrmPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDrmPropertiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 hasPrimary = {};
VULKAN_HPP_NAMESPACE::Bool32 hasRender = {};
int64_t primaryMajor = {};
int64_t primaryMinor = {};
int64_t renderMajor = {};
int64_t renderMinor = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDrmPropertiesEXT) == sizeof(VkPhysicalDeviceDrmPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDrmPropertiesEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDrmPropertiesEXT>::value,
"PhysicalDeviceDrmPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDrmPropertiesEXT>
{
using Type = PhysicalDeviceDrmPropertiesEXT;
};
struct PhysicalDeviceDynamicRenderingFeatures
{
using NativeType = VkPhysicalDeviceDynamicRenderingFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDynamicRenderingFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceDynamicRenderingFeatures(VULKAN_HPP_NAMESPACE::Bool32 dynamicRendering_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
dynamicRendering(dynamicRendering_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceDynamicRenderingFeatures(PhysicalDeviceDynamicRenderingFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDynamicRenderingFeatures(VkPhysicalDeviceDynamicRenderingFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceDynamicRenderingFeatures(*reinterpret_cast<PhysicalDeviceDynamicRenderingFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceDynamicRenderingFeatures &operator=(PhysicalDeviceDynamicRenderingFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceDynamicRenderingFeatures &operator=(VkPhysicalDeviceDynamicRenderingFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceDynamicRenderingFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDynamicRenderingFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDynamicRenderingFeatures &setDynamicRendering(VULKAN_HPP_NAMESPACE::Bool32 dynamicRendering_) VULKAN_HPP_NOEXCEPT
{
dynamicRendering = dynamicRendering_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceDynamicRenderingFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceDynamicRenderingFeatures *>(this);
}
explicit operator VkPhysicalDeviceDynamicRenderingFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceDynamicRenderingFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, dynamicRendering);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceDynamicRenderingFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceDynamicRenderingFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (dynamicRendering == rhs.dynamicRendering);
# endif
}
bool operator!=(PhysicalDeviceDynamicRenderingFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceDynamicRenderingFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 dynamicRendering = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceDynamicRenderingFeatures) == sizeof(VkPhysicalDeviceDynamicRenderingFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDynamicRenderingFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDynamicRenderingFeatures>::value,
"PhysicalDeviceDynamicRenderingFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceDynamicRenderingFeatures>
{
using Type = PhysicalDeviceDynamicRenderingFeatures;
};
using PhysicalDeviceDynamicRenderingFeaturesKHR = PhysicalDeviceDynamicRenderingFeatures;
struct PhysicalDeviceExclusiveScissorFeaturesNV
{
using NativeType = VkPhysicalDeviceExclusiveScissorFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceExclusiveScissorFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 exclusiveScissor_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
exclusiveScissor(exclusiveScissor_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceExclusiveScissorFeaturesNV(PhysicalDeviceExclusiveScissorFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExclusiveScissorFeaturesNV(VkPhysicalDeviceExclusiveScissorFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceExclusiveScissorFeaturesNV(*reinterpret_cast<PhysicalDeviceExclusiveScissorFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceExclusiveScissorFeaturesNV &operator=(PhysicalDeviceExclusiveScissorFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExclusiveScissorFeaturesNV &operator=(VkPhysicalDeviceExclusiveScissorFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExclusiveScissorFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExclusiveScissorFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExclusiveScissorFeaturesNV &setExclusiveScissor(VULKAN_HPP_NAMESPACE::Bool32 exclusiveScissor_) VULKAN_HPP_NOEXCEPT
{
exclusiveScissor = exclusiveScissor_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceExclusiveScissorFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceExclusiveScissorFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceExclusiveScissorFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceExclusiveScissorFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, exclusiveScissor);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceExclusiveScissorFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceExclusiveScissorFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (exclusiveScissor == rhs.exclusiveScissor);
# endif
}
bool operator!=(PhysicalDeviceExclusiveScissorFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 exclusiveScissor = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceExclusiveScissorFeaturesNV) == sizeof(VkPhysicalDeviceExclusiveScissorFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceExclusiveScissorFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceExclusiveScissorFeaturesNV>::value,
"PhysicalDeviceExclusiveScissorFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV>
{
using Type = PhysicalDeviceExclusiveScissorFeaturesNV;
};
struct PhysicalDeviceExtendedDynamicState2FeaturesEXT
{
using NativeType = VkPhysicalDeviceExtendedDynamicState2FeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExtendedDynamicState2FeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceExtendedDynamicState2FeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2_ = {},
VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2LogicOp_ = {},
VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2PatchControlPoints_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
extendedDynamicState2(extendedDynamicState2_),
extendedDynamicState2LogicOp(extendedDynamicState2LogicOp_),
extendedDynamicState2PatchControlPoints(extendedDynamicState2PatchControlPoints_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceExtendedDynamicState2FeaturesEXT(PhysicalDeviceExtendedDynamicState2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExtendedDynamicState2FeaturesEXT(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceExtendedDynamicState2FeaturesEXT(*reinterpret_cast<PhysicalDeviceExtendedDynamicState2FeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceExtendedDynamicState2FeaturesEXT &operator=(PhysicalDeviceExtendedDynamicState2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExtendedDynamicState2FeaturesEXT &operator=(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedDynamicState2FeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExtendedDynamicState2FeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExtendedDynamicState2FeaturesEXT &
setExtendedDynamicState2(VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2_) VULKAN_HPP_NOEXCEPT
{
extendedDynamicState2 = extendedDynamicState2_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExtendedDynamicState2FeaturesEXT &
setExtendedDynamicState2LogicOp(VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2LogicOp_) VULKAN_HPP_NOEXCEPT
{
extendedDynamicState2LogicOp = extendedDynamicState2LogicOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExtendedDynamicState2FeaturesEXT &
setExtendedDynamicState2PatchControlPoints(VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2PatchControlPoints_) VULKAN_HPP_NOEXCEPT
{
extendedDynamicState2PatchControlPoints = extendedDynamicState2PatchControlPoints_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceExtendedDynamicState2FeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceExtendedDynamicState2FeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, extendedDynamicState2, extendedDynamicState2LogicOp, extendedDynamicState2PatchControlPoints);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceExtendedDynamicState2FeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceExtendedDynamicState2FeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (extendedDynamicState2 == rhs.extendedDynamicState2) &&
(extendedDynamicState2LogicOp == rhs.extendedDynamicState2LogicOp) &&
(extendedDynamicState2PatchControlPoints == rhs.extendedDynamicState2PatchControlPoints);
# endif
}
bool operator!=(PhysicalDeviceExtendedDynamicState2FeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExtendedDynamicState2FeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2 = {};
VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2LogicOp = {};
VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState2PatchControlPoints = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedDynamicState2FeaturesEXT) ==
sizeof(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedDynamicState2FeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedDynamicState2FeaturesEXT>::value,
"PhysicalDeviceExtendedDynamicState2FeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceExtendedDynamicState2FeaturesEXT>
{
using Type = PhysicalDeviceExtendedDynamicState2FeaturesEXT;
};
struct PhysicalDeviceExtendedDynamicStateFeaturesEXT
{
using NativeType = VkPhysicalDeviceExtendedDynamicStateFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceExtendedDynamicStateFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
extendedDynamicState(extendedDynamicState_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceExtendedDynamicStateFeaturesEXT(PhysicalDeviceExtendedDynamicStateFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExtendedDynamicStateFeaturesEXT(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceExtendedDynamicStateFeaturesEXT(*reinterpret_cast<PhysicalDeviceExtendedDynamicStateFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceExtendedDynamicStateFeaturesEXT &operator=(PhysicalDeviceExtendedDynamicStateFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExtendedDynamicStateFeaturesEXT &operator=(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedDynamicStateFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExtendedDynamicStateFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExtendedDynamicStateFeaturesEXT &
setExtendedDynamicState(VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState_) VULKAN_HPP_NOEXCEPT
{
extendedDynamicState = extendedDynamicState_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceExtendedDynamicStateFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceExtendedDynamicStateFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceExtendedDynamicStateFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, extendedDynamicState);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceExtendedDynamicStateFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceExtendedDynamicStateFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (extendedDynamicState == rhs.extendedDynamicState);
# endif
}
bool operator!=(PhysicalDeviceExtendedDynamicStateFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 extendedDynamicState = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedDynamicStateFeaturesEXT) ==
sizeof(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedDynamicStateFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedDynamicStateFeaturesEXT>::value,
"PhysicalDeviceExtendedDynamicStateFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT>
{
using Type = PhysicalDeviceExtendedDynamicStateFeaturesEXT;
};
struct PhysicalDeviceExternalBufferInfo
{
using NativeType = VkPhysicalDeviceExternalBufferInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalBufferInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalBufferInfo(
VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_ = {},
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
usage(usage_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalBufferInfo(PhysicalDeviceExternalBufferInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExternalBufferInfo(VkPhysicalDeviceExternalBufferInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceExternalBufferInfo(*reinterpret_cast<PhysicalDeviceExternalBufferInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceExternalBufferInfo &operator=(PhysicalDeviceExternalBufferInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExternalBufferInfo &operator=(VkPhysicalDeviceExternalBufferInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalBufferInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalBufferInfo &setFlags(VULKAN_HPP_NAMESPACE::BufferCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalBufferInfo &setUsage(VULKAN_HPP_NAMESPACE::BufferUsageFlags usage_) VULKAN_HPP_NOEXCEPT
{
usage = usage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalBufferInfo &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceExternalBufferInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceExternalBufferInfo *>(this);
}
explicit operator VkPhysicalDeviceExternalBufferInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceExternalBufferInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::BufferCreateFlags const &,
VULKAN_HPP_NAMESPACE::BufferUsageFlags const &,
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, usage, handleType);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceExternalBufferInfo const &) const = default;
#else
bool operator==(PhysicalDeviceExternalBufferInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (usage == rhs.usage) && (handleType == rhs.handleType);
# endif
}
bool operator!=(PhysicalDeviceExternalBufferInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalBufferInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::BufferCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::BufferUsageFlags usage = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo) == sizeof(VkPhysicalDeviceExternalBufferInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalBufferInfo>::value,
"PhysicalDeviceExternalBufferInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceExternalBufferInfo>
{
using Type = PhysicalDeviceExternalBufferInfo;
};
using PhysicalDeviceExternalBufferInfoKHR = PhysicalDeviceExternalBufferInfo;
struct PhysicalDeviceExternalFenceInfo
{
using NativeType = VkPhysicalDeviceExternalFenceInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalFenceInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalFenceInfo(
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalFenceInfo(PhysicalDeviceExternalFenceInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExternalFenceInfo(VkPhysicalDeviceExternalFenceInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceExternalFenceInfo(*reinterpret_cast<PhysicalDeviceExternalFenceInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceExternalFenceInfo &operator=(PhysicalDeviceExternalFenceInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExternalFenceInfo &operator=(VkPhysicalDeviceExternalFenceInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalFenceInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalFenceInfo &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceExternalFenceInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceExternalFenceInfo *>(this);
}
explicit operator VkPhysicalDeviceExternalFenceInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceExternalFenceInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleType);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceExternalFenceInfo const &) const = default;
#else
bool operator==(PhysicalDeviceExternalFenceInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleType == rhs.handleType);
# endif
}
bool operator!=(PhysicalDeviceExternalFenceInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalFenceInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalFenceHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo) == sizeof(VkPhysicalDeviceExternalFenceInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalFenceInfo>::value,
"PhysicalDeviceExternalFenceInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceExternalFenceInfo>
{
using Type = PhysicalDeviceExternalFenceInfo;
};
using PhysicalDeviceExternalFenceInfoKHR = PhysicalDeviceExternalFenceInfo;
struct PhysicalDeviceExternalImageFormatInfo
{
using NativeType = VkPhysicalDeviceExternalImageFormatInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalImageFormatInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalImageFormatInfo(
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalImageFormatInfo(PhysicalDeviceExternalImageFormatInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExternalImageFormatInfo(VkPhysicalDeviceExternalImageFormatInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceExternalImageFormatInfo(*reinterpret_cast<PhysicalDeviceExternalImageFormatInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceExternalImageFormatInfo &operator=(PhysicalDeviceExternalImageFormatInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExternalImageFormatInfo &operator=(VkPhysicalDeviceExternalImageFormatInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalImageFormatInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalImageFormatInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalImageFormatInfo &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceExternalImageFormatInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceExternalImageFormatInfo *>(this);
}
explicit operator VkPhysicalDeviceExternalImageFormatInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceExternalImageFormatInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleType);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceExternalImageFormatInfo const &) const = default;
#else
bool operator==(PhysicalDeviceExternalImageFormatInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleType == rhs.handleType);
# endif
}
bool operator!=(PhysicalDeviceExternalImageFormatInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalImageFormatInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalMemoryHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalImageFormatInfo) == sizeof(VkPhysicalDeviceExternalImageFormatInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalImageFormatInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalImageFormatInfo>::value,
"PhysicalDeviceExternalImageFormatInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceExternalImageFormatInfo>
{
using Type = PhysicalDeviceExternalImageFormatInfo;
};
using PhysicalDeviceExternalImageFormatInfoKHR = PhysicalDeviceExternalImageFormatInfo;
struct PhysicalDeviceExternalMemoryHostPropertiesEXT
{
using NativeType = VkPhysicalDeviceExternalMemoryHostPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalMemoryHostPropertiesEXT(VULKAN_HPP_NAMESPACE::DeviceSize minImportedHostPointerAlignment_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
minImportedHostPointerAlignment(minImportedHostPointerAlignment_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceExternalMemoryHostPropertiesEXT(PhysicalDeviceExternalMemoryHostPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExternalMemoryHostPropertiesEXT(VkPhysicalDeviceExternalMemoryHostPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceExternalMemoryHostPropertiesEXT(*reinterpret_cast<PhysicalDeviceExternalMemoryHostPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceExternalMemoryHostPropertiesEXT &operator=(PhysicalDeviceExternalMemoryHostPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExternalMemoryHostPropertiesEXT &operator=(VkPhysicalDeviceExternalMemoryHostPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalMemoryHostPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceExternalMemoryHostPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceExternalMemoryHostPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceExternalMemoryHostPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceExternalMemoryHostPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, minImportedHostPointerAlignment);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceExternalMemoryHostPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceExternalMemoryHostPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (minImportedHostPointerAlignment == rhs.minImportedHostPointerAlignment);
# endif
}
bool operator!=(PhysicalDeviceExternalMemoryHostPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceSize minImportedHostPointerAlignment = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalMemoryHostPropertiesEXT) ==
sizeof(VkPhysicalDeviceExternalMemoryHostPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalMemoryHostPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalMemoryHostPropertiesEXT>::value,
"PhysicalDeviceExternalMemoryHostPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT>
{
using Type = PhysicalDeviceExternalMemoryHostPropertiesEXT;
};
struct PhysicalDeviceExternalMemoryRDMAFeaturesNV
{
using NativeType = VkPhysicalDeviceExternalMemoryRDMAFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalMemoryRdmaFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalMemoryRDMAFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 externalMemoryRDMA_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
externalMemoryRDMA(externalMemoryRDMA_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalMemoryRDMAFeaturesNV(PhysicalDeviceExternalMemoryRDMAFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExternalMemoryRDMAFeaturesNV(VkPhysicalDeviceExternalMemoryRDMAFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceExternalMemoryRDMAFeaturesNV(*reinterpret_cast<PhysicalDeviceExternalMemoryRDMAFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceExternalMemoryRDMAFeaturesNV &operator=(PhysicalDeviceExternalMemoryRDMAFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExternalMemoryRDMAFeaturesNV &operator=(VkPhysicalDeviceExternalMemoryRDMAFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalMemoryRDMAFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalMemoryRDMAFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalMemoryRDMAFeaturesNV &
setExternalMemoryRDMA(VULKAN_HPP_NAMESPACE::Bool32 externalMemoryRDMA_) VULKAN_HPP_NOEXCEPT
{
externalMemoryRDMA = externalMemoryRDMA_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceExternalMemoryRDMAFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceExternalMemoryRDMAFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, externalMemoryRDMA);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceExternalMemoryRDMAFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceExternalMemoryRDMAFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (externalMemoryRDMA == rhs.externalMemoryRDMA);
# endif
}
bool operator!=(PhysicalDeviceExternalMemoryRDMAFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalMemoryRdmaFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 externalMemoryRDMA = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalMemoryRDMAFeaturesNV) ==
sizeof(VkPhysicalDeviceExternalMemoryRDMAFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalMemoryRDMAFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalMemoryRDMAFeaturesNV>::value,
"PhysicalDeviceExternalMemoryRDMAFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceExternalMemoryRdmaFeaturesNV>
{
using Type = PhysicalDeviceExternalMemoryRDMAFeaturesNV;
};
struct PhysicalDeviceExternalSemaphoreInfo
{
using NativeType = VkPhysicalDeviceExternalSemaphoreInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceExternalSemaphoreInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalSemaphoreInfo(
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceExternalSemaphoreInfo(PhysicalDeviceExternalSemaphoreInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExternalSemaphoreInfo(VkPhysicalDeviceExternalSemaphoreInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceExternalSemaphoreInfo(*reinterpret_cast<PhysicalDeviceExternalSemaphoreInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceExternalSemaphoreInfo &operator=(PhysicalDeviceExternalSemaphoreInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceExternalSemaphoreInfo &operator=(VkPhysicalDeviceExternalSemaphoreInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalSemaphoreInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceExternalSemaphoreInfo &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceExternalSemaphoreInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceExternalSemaphoreInfo *>(this);
}
explicit operator VkPhysicalDeviceExternalSemaphoreInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceExternalSemaphoreInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, handleType);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceExternalSemaphoreInfo const &) const = default;
#else
bool operator==(PhysicalDeviceExternalSemaphoreInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (handleType == rhs.handleType);
# endif
}
bool operator!=(PhysicalDeviceExternalSemaphoreInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceExternalSemaphoreInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo) == sizeof(VkPhysicalDeviceExternalSemaphoreInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceExternalSemaphoreInfo>::value,
"PhysicalDeviceExternalSemaphoreInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceExternalSemaphoreInfo>
{
using Type = PhysicalDeviceExternalSemaphoreInfo;
};
using PhysicalDeviceExternalSemaphoreInfoKHR = PhysicalDeviceExternalSemaphoreInfo;
struct PhysicalDeviceFeatures2
{
using NativeType = VkPhysicalDeviceFeatures2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFeatures2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFeatures2(VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures features_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
features(features_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceFeatures2(PhysicalDeviceFeatures2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFeatures2(VkPhysicalDeviceFeatures2 const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFeatures2(*reinterpret_cast<PhysicalDeviceFeatures2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFeatures2 &operator=(PhysicalDeviceFeatures2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFeatures2 &operator=(VkPhysicalDeviceFeatures2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures2 &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFeatures2 &setFeatures(VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures const &features_) VULKAN_HPP_NOEXCEPT
{
features = features_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceFeatures2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFeatures2 *>(this);
}
explicit operator VkPhysicalDeviceFeatures2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFeatures2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, features);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFeatures2 const &) const = default;
#else
bool operator==(PhysicalDeviceFeatures2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (features == rhs.features);
# endif
}
bool operator!=(PhysicalDeviceFeatures2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFeatures2;
void *pNext = {};
VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures features = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2) == sizeof(VkPhysicalDeviceFeatures2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFeatures2>::value,
"PhysicalDeviceFeatures2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFeatures2>
{
using Type = PhysicalDeviceFeatures2;
};
using PhysicalDeviceFeatures2KHR = PhysicalDeviceFeatures2;
struct PhysicalDeviceFloatControlsProperties
{
using NativeType = VkPhysicalDeviceFloatControlsProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFloatControlsProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFloatControlsProperties(
VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence denormBehaviorIndependence_ = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly,
VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence roundingModeIndependence_ = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly,
VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat32_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat64_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat32_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat64_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat32_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat64_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat32_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat64_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat32_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat64_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
denormBehaviorIndependence(denormBehaviorIndependence_),
roundingModeIndependence(roundingModeIndependence_),
shaderSignedZeroInfNanPreserveFloat16(shaderSignedZeroInfNanPreserveFloat16_),
shaderSignedZeroInfNanPreserveFloat32(shaderSignedZeroInfNanPreserveFloat32_),
shaderSignedZeroInfNanPreserveFloat64(shaderSignedZeroInfNanPreserveFloat64_),
shaderDenormPreserveFloat16(shaderDenormPreserveFloat16_),
shaderDenormPreserveFloat32(shaderDenormPreserveFloat32_),
shaderDenormPreserveFloat64(shaderDenormPreserveFloat64_),
shaderDenormFlushToZeroFloat16(shaderDenormFlushToZeroFloat16_),
shaderDenormFlushToZeroFloat32(shaderDenormFlushToZeroFloat32_),
shaderDenormFlushToZeroFloat64(shaderDenormFlushToZeroFloat64_),
shaderRoundingModeRTEFloat16(shaderRoundingModeRTEFloat16_),
shaderRoundingModeRTEFloat32(shaderRoundingModeRTEFloat32_),
shaderRoundingModeRTEFloat64(shaderRoundingModeRTEFloat64_),
shaderRoundingModeRTZFloat16(shaderRoundingModeRTZFloat16_),
shaderRoundingModeRTZFloat32(shaderRoundingModeRTZFloat32_),
shaderRoundingModeRTZFloat64(shaderRoundingModeRTZFloat64_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceFloatControlsProperties(PhysicalDeviceFloatControlsProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFloatControlsProperties(VkPhysicalDeviceFloatControlsProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFloatControlsProperties(*reinterpret_cast<PhysicalDeviceFloatControlsProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFloatControlsProperties &operator=(PhysicalDeviceFloatControlsProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFloatControlsProperties &operator=(VkPhysicalDeviceFloatControlsProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFloatControlsProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceFloatControlsProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFloatControlsProperties *>(this);
}
explicit operator VkPhysicalDeviceFloatControlsProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFloatControlsProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence const &,
VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
denormBehaviorIndependence,
roundingModeIndependence,
shaderSignedZeroInfNanPreserveFloat16,
shaderSignedZeroInfNanPreserveFloat32,
shaderSignedZeroInfNanPreserveFloat64,
shaderDenormPreserveFloat16,
shaderDenormPreserveFloat32,
shaderDenormPreserveFloat64,
shaderDenormFlushToZeroFloat16,
shaderDenormFlushToZeroFloat32,
shaderDenormFlushToZeroFloat64,
shaderRoundingModeRTEFloat16,
shaderRoundingModeRTEFloat32,
shaderRoundingModeRTEFloat64,
shaderRoundingModeRTZFloat16,
shaderRoundingModeRTZFloat32,
shaderRoundingModeRTZFloat64);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFloatControlsProperties const &) const = default;
#else
bool operator==(PhysicalDeviceFloatControlsProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (denormBehaviorIndependence == rhs.denormBehaviorIndependence) &&
(roundingModeIndependence == rhs.roundingModeIndependence) &&
(shaderSignedZeroInfNanPreserveFloat16 == rhs.shaderSignedZeroInfNanPreserveFloat16) &&
(shaderSignedZeroInfNanPreserveFloat32 == rhs.shaderSignedZeroInfNanPreserveFloat32) &&
(shaderSignedZeroInfNanPreserveFloat64 == rhs.shaderSignedZeroInfNanPreserveFloat64) &&
(shaderDenormPreserveFloat16 == rhs.shaderDenormPreserveFloat16) && (shaderDenormPreserveFloat32 == rhs.shaderDenormPreserveFloat32) &&
(shaderDenormPreserveFloat64 == rhs.shaderDenormPreserveFloat64) && (shaderDenormFlushToZeroFloat16 == rhs.shaderDenormFlushToZeroFloat16) &&
(shaderDenormFlushToZeroFloat32 == rhs.shaderDenormFlushToZeroFloat32) &&
(shaderDenormFlushToZeroFloat64 == rhs.shaderDenormFlushToZeroFloat64) && (shaderRoundingModeRTEFloat16 == rhs.shaderRoundingModeRTEFloat16) &&
(shaderRoundingModeRTEFloat32 == rhs.shaderRoundingModeRTEFloat32) && (shaderRoundingModeRTEFloat64 == rhs.shaderRoundingModeRTEFloat64) &&
(shaderRoundingModeRTZFloat16 == rhs.shaderRoundingModeRTZFloat16) && (shaderRoundingModeRTZFloat32 == rhs.shaderRoundingModeRTZFloat32) &&
(shaderRoundingModeRTZFloat64 == rhs.shaderRoundingModeRTZFloat64);
# endif
}
bool operator!=(PhysicalDeviceFloatControlsProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFloatControlsProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence denormBehaviorIndependence = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly;
VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence roundingModeIndependence = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly;
VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat32 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat64 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat32 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat64 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat32 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat64 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat32 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat64 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat32 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat64 = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFloatControlsProperties) == sizeof(VkPhysicalDeviceFloatControlsProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFloatControlsProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFloatControlsProperties>::value,
"PhysicalDeviceFloatControlsProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFloatControlsProperties>
{
using Type = PhysicalDeviceFloatControlsProperties;
};
using PhysicalDeviceFloatControlsPropertiesKHR = PhysicalDeviceFloatControlsProperties;
struct PhysicalDeviceFragmentDensityMap2FeaturesEXT
{
using NativeType = VkPhysicalDeviceFragmentDensityMap2FeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMap2FeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDeferred_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fragmentDensityMapDeferred(fragmentDensityMapDeferred_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMap2FeaturesEXT(PhysicalDeviceFragmentDensityMap2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentDensityMap2FeaturesEXT(VkPhysicalDeviceFragmentDensityMap2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentDensityMap2FeaturesEXT(*reinterpret_cast<PhysicalDeviceFragmentDensityMap2FeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentDensityMap2FeaturesEXT &operator=(PhysicalDeviceFragmentDensityMap2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentDensityMap2FeaturesEXT &operator=(VkPhysicalDeviceFragmentDensityMap2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMap2FeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMap2FeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMap2FeaturesEXT &
setFragmentDensityMapDeferred(VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDeferred_) VULKAN_HPP_NOEXCEPT
{
fragmentDensityMapDeferred = fragmentDensityMapDeferred_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceFragmentDensityMap2FeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceFragmentDensityMap2FeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMap2FeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fragmentDensityMapDeferred);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentDensityMap2FeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentDensityMap2FeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fragmentDensityMapDeferred == rhs.fragmentDensityMapDeferred);
# endif
}
bool operator!=(PhysicalDeviceFragmentDensityMap2FeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDeferred = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMap2FeaturesEXT) ==
sizeof(VkPhysicalDeviceFragmentDensityMap2FeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMap2FeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMap2FeaturesEXT>::value,
"PhysicalDeviceFragmentDensityMap2FeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT>
{
using Type = PhysicalDeviceFragmentDensityMap2FeaturesEXT;
};
struct PhysicalDeviceFragmentDensityMap2PropertiesEXT
{
using NativeType = VkPhysicalDeviceFragmentDensityMap2PropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMap2PropertiesEXT(VULKAN_HPP_NAMESPACE::Bool32 subsampledLoads_ = {},
VULKAN_HPP_NAMESPACE::Bool32 subsampledCoarseReconstructionEarlyAccess_ = {},
uint32_t maxSubsampledArrayLayers_ = {},
uint32_t maxDescriptorSetSubsampledSamplers_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
subsampledLoads(subsampledLoads_),
subsampledCoarseReconstructionEarlyAccess(subsampledCoarseReconstructionEarlyAccess_),
maxSubsampledArrayLayers(maxSubsampledArrayLayers_),
maxDescriptorSetSubsampledSamplers(maxDescriptorSetSubsampledSamplers_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceFragmentDensityMap2PropertiesEXT(PhysicalDeviceFragmentDensityMap2PropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentDensityMap2PropertiesEXT(VkPhysicalDeviceFragmentDensityMap2PropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentDensityMap2PropertiesEXT(*reinterpret_cast<PhysicalDeviceFragmentDensityMap2PropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentDensityMap2PropertiesEXT &operator=(PhysicalDeviceFragmentDensityMap2PropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentDensityMap2PropertiesEXT &operator=(VkPhysicalDeviceFragmentDensityMap2PropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMap2PropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceFragmentDensityMap2PropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceFragmentDensityMap2PropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMap2PropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, subsampledLoads, subsampledCoarseReconstructionEarlyAccess, maxSubsampledArrayLayers, maxDescriptorSetSubsampledSamplers);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentDensityMap2PropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentDensityMap2PropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (subsampledLoads == rhs.subsampledLoads) &&
(subsampledCoarseReconstructionEarlyAccess == rhs.subsampledCoarseReconstructionEarlyAccess) &&
(maxSubsampledArrayLayers == rhs.maxSubsampledArrayLayers) && (maxDescriptorSetSubsampledSamplers == rhs.maxDescriptorSetSubsampledSamplers);
# endif
}
bool operator!=(PhysicalDeviceFragmentDensityMap2PropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 subsampledLoads = {};
VULKAN_HPP_NAMESPACE::Bool32 subsampledCoarseReconstructionEarlyAccess = {};
uint32_t maxSubsampledArrayLayers = {};
uint32_t maxDescriptorSetSubsampledSamplers = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMap2PropertiesEXT) ==
sizeof(VkPhysicalDeviceFragmentDensityMap2PropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMap2PropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMap2PropertiesEXT>::value,
"PhysicalDeviceFragmentDensityMap2PropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT>
{
using Type = PhysicalDeviceFragmentDensityMap2PropertiesEXT;
};
struct PhysicalDeviceFragmentDensityMapFeaturesEXT
{
using NativeType = VkPhysicalDeviceFragmentDensityMapFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentDensityMapFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMap_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDynamic_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapNonSubsampledImages_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fragmentDensityMap(fragmentDensityMap_),
fragmentDensityMapDynamic(fragmentDensityMapDynamic_),
fragmentDensityMapNonSubsampledImages(fragmentDensityMapNonSubsampledImages_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapFeaturesEXT(PhysicalDeviceFragmentDensityMapFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentDensityMapFeaturesEXT(VkPhysicalDeviceFragmentDensityMapFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentDensityMapFeaturesEXT(*reinterpret_cast<PhysicalDeviceFragmentDensityMapFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentDensityMapFeaturesEXT &operator=(PhysicalDeviceFragmentDensityMapFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentDensityMapFeaturesEXT &operator=(VkPhysicalDeviceFragmentDensityMapFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMapFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMapFeaturesEXT &
setFragmentDensityMap(VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMap_) VULKAN_HPP_NOEXCEPT
{
fragmentDensityMap = fragmentDensityMap_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMapFeaturesEXT &
setFragmentDensityMapDynamic(VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDynamic_) VULKAN_HPP_NOEXCEPT
{
fragmentDensityMapDynamic = fragmentDensityMapDynamic_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMapFeaturesEXT &
setFragmentDensityMapNonSubsampledImages(VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapNonSubsampledImages_) VULKAN_HPP_NOEXCEPT
{
fragmentDensityMapNonSubsampledImages = fragmentDensityMapNonSubsampledImages_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceFragmentDensityMapFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceFragmentDensityMapFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMapFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fragmentDensityMap, fragmentDensityMapDynamic, fragmentDensityMapNonSubsampledImages);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentDensityMapFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentDensityMapFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fragmentDensityMap == rhs.fragmentDensityMap) &&
(fragmentDensityMapDynamic == rhs.fragmentDensityMapDynamic) &&
(fragmentDensityMapNonSubsampledImages == rhs.fragmentDensityMapNonSubsampledImages);
# endif
}
bool operator!=(PhysicalDeviceFragmentDensityMapFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMapFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMap = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapDynamic = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapNonSubsampledImages = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapFeaturesEXT) ==
sizeof(VkPhysicalDeviceFragmentDensityMapFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapFeaturesEXT>::value,
"PhysicalDeviceFragmentDensityMapFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMapFeaturesEXT>
{
using Type = PhysicalDeviceFragmentDensityMapFeaturesEXT;
};
struct PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM
{
using NativeType = VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM(VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapOffset_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fragmentDensityMapOffset(fragmentDensityMapOffset_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM(PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM(VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM(*reinterpret_cast<PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM &
operator=(PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM &operator=(VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM &
setFragmentDensityMapOffset(VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapOffset_) VULKAN_HPP_NOEXCEPT
{
fragmentDensityMapOffset = fragmentDensityMapOffset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM *>(this);
}
explicit operator VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fragmentDensityMapOffset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fragmentDensityMapOffset == rhs.fragmentDensityMapOffset);
# endif
}
bool operator!=(PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityMapOffset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM) ==
sizeof(VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM>::value,
"PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM>
{
using Type = PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM;
};
struct PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM
{
using NativeType = VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM(VULKAN_HPP_NAMESPACE::Extent2D fragmentDensityOffsetGranularity_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fragmentDensityOffsetGranularity(fragmentDensityOffsetGranularity_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM(PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM(VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM(*reinterpret_cast<PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM &
operator=(PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM &operator=(VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM *>(this);
}
explicit operator VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Extent2D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fragmentDensityOffsetGranularity);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fragmentDensityOffsetGranularity == rhs.fragmentDensityOffsetGranularity);
# endif
}
bool operator!=(PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Extent2D fragmentDensityOffsetGranularity = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM) ==
sizeof(VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM>::value,
"PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM>
{
using Type = PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM;
};
struct PhysicalDeviceFragmentDensityMapPropertiesEXT
{
using NativeType = VkPhysicalDeviceFragmentDensityMapPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentDensityMapPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentDensityMapPropertiesEXT(VULKAN_HPP_NAMESPACE::Extent2D minFragmentDensityTexelSize_ = {},
VULKAN_HPP_NAMESPACE::Extent2D maxFragmentDensityTexelSize_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityInvocations_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
minFragmentDensityTexelSize(minFragmentDensityTexelSize_),
maxFragmentDensityTexelSize(maxFragmentDensityTexelSize_),
fragmentDensityInvocations(fragmentDensityInvocations_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceFragmentDensityMapPropertiesEXT(PhysicalDeviceFragmentDensityMapPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentDensityMapPropertiesEXT(VkPhysicalDeviceFragmentDensityMapPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentDensityMapPropertiesEXT(*reinterpret_cast<PhysicalDeviceFragmentDensityMapPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentDensityMapPropertiesEXT &operator=(PhysicalDeviceFragmentDensityMapPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentDensityMapPropertiesEXT &operator=(VkPhysicalDeviceFragmentDensityMapPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceFragmentDensityMapPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceFragmentDensityMapPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentDensityMapPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, minFragmentDensityTexelSize, maxFragmentDensityTexelSize, fragmentDensityInvocations);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentDensityMapPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentDensityMapPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (minFragmentDensityTexelSize == rhs.minFragmentDensityTexelSize) &&
(maxFragmentDensityTexelSize == rhs.maxFragmentDensityTexelSize) && (fragmentDensityInvocations == rhs.fragmentDensityInvocations);
# endif
}
bool operator!=(PhysicalDeviceFragmentDensityMapPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentDensityMapPropertiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Extent2D minFragmentDensityTexelSize = {};
VULKAN_HPP_NAMESPACE::Extent2D maxFragmentDensityTexelSize = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentDensityInvocations = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapPropertiesEXT) ==
sizeof(VkPhysicalDeviceFragmentDensityMapPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapPropertiesEXT>::value,
"PhysicalDeviceFragmentDensityMapPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentDensityMapPropertiesEXT>
{
using Type = PhysicalDeviceFragmentDensityMapPropertiesEXT;
};
struct PhysicalDeviceFragmentShaderBarycentricFeaturesNV
{
using NativeType = VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShaderBarycentricFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderBarycentric_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fragmentShaderBarycentric(fragmentShaderBarycentric_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceFragmentShaderBarycentricFeaturesNV(PhysicalDeviceFragmentShaderBarycentricFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShaderBarycentricFeaturesNV(VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentShaderBarycentricFeaturesNV(*reinterpret_cast<PhysicalDeviceFragmentShaderBarycentricFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentShaderBarycentricFeaturesNV &
operator=(PhysicalDeviceFragmentShaderBarycentricFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShaderBarycentricFeaturesNV &operator=(VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShaderBarycentricFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShaderBarycentricFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShaderBarycentricFeaturesNV &
setFragmentShaderBarycentric(VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderBarycentric_) VULKAN_HPP_NOEXCEPT
{
fragmentShaderBarycentric = fragmentShaderBarycentric_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fragmentShaderBarycentric);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentShaderBarycentricFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentShaderBarycentricFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fragmentShaderBarycentric == rhs.fragmentShaderBarycentric);
# endif
}
bool operator!=(PhysicalDeviceFragmentShaderBarycentricFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderBarycentric = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShaderBarycentricFeaturesNV) ==
sizeof(VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShaderBarycentricFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShaderBarycentricFeaturesNV>::value,
"PhysicalDeviceFragmentShaderBarycentricFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesNV>
{
using Type = PhysicalDeviceFragmentShaderBarycentricFeaturesNV;
};
struct PhysicalDeviceFragmentShaderInterlockFeaturesEXT
{
using NativeType = VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShaderInterlockFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderSampleInterlock_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderPixelInterlock_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderShadingRateInterlock_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fragmentShaderSampleInterlock(fragmentShaderSampleInterlock_),
fragmentShaderPixelInterlock(fragmentShaderPixelInterlock_),
fragmentShaderShadingRateInterlock(fragmentShaderShadingRateInterlock_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceFragmentShaderInterlockFeaturesEXT(PhysicalDeviceFragmentShaderInterlockFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShaderInterlockFeaturesEXT(VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentShaderInterlockFeaturesEXT(*reinterpret_cast<PhysicalDeviceFragmentShaderInterlockFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentShaderInterlockFeaturesEXT &operator=(PhysicalDeviceFragmentShaderInterlockFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShaderInterlockFeaturesEXT &operator=(VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShaderInterlockFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShaderInterlockFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShaderInterlockFeaturesEXT &
setFragmentShaderSampleInterlock(VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderSampleInterlock_) VULKAN_HPP_NOEXCEPT
{
fragmentShaderSampleInterlock = fragmentShaderSampleInterlock_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShaderInterlockFeaturesEXT &
setFragmentShaderPixelInterlock(VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderPixelInterlock_) VULKAN_HPP_NOEXCEPT
{
fragmentShaderPixelInterlock = fragmentShaderPixelInterlock_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShaderInterlockFeaturesEXT &
setFragmentShaderShadingRateInterlock(VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderShadingRateInterlock_) VULKAN_HPP_NOEXCEPT
{
fragmentShaderShadingRateInterlock = fragmentShaderShadingRateInterlock_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fragmentShaderSampleInterlock, fragmentShaderPixelInterlock, fragmentShaderShadingRateInterlock);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentShaderInterlockFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentShaderInterlockFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fragmentShaderSampleInterlock == rhs.fragmentShaderSampleInterlock) &&
(fragmentShaderPixelInterlock == rhs.fragmentShaderPixelInterlock) &&
(fragmentShaderShadingRateInterlock == rhs.fragmentShaderShadingRateInterlock);
# endif
}
bool operator!=(PhysicalDeviceFragmentShaderInterlockFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderSampleInterlock = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderPixelInterlock = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShaderShadingRateInterlock = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShaderInterlockFeaturesEXT) ==
sizeof(VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShaderInterlockFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShaderInterlockFeaturesEXT>::value,
"PhysicalDeviceFragmentShaderInterlockFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT>
{
using Type = PhysicalDeviceFragmentShaderInterlockFeaturesEXT;
};
struct PhysicalDeviceFragmentShadingRateEnumsFeaturesNV
{
using NativeType = VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateEnums_ = {},
VULKAN_HPP_NAMESPACE::Bool32 supersampleFragmentShadingRates_ = {},
VULKAN_HPP_NAMESPACE::Bool32 noInvocationFragmentShadingRates_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fragmentShadingRateEnums(fragmentShadingRateEnums_),
supersampleFragmentShadingRates(supersampleFragmentShadingRates_),
noInvocationFragmentShadingRates(noInvocationFragmentShadingRates_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV(PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV(VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentShadingRateEnumsFeaturesNV(*reinterpret_cast<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV &operator=(PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShadingRateEnumsFeaturesNV &operator=(VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateEnumsFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateEnumsFeaturesNV &
setFragmentShadingRateEnums(VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateEnums_) VULKAN_HPP_NOEXCEPT
{
fragmentShadingRateEnums = fragmentShadingRateEnums_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateEnumsFeaturesNV &
setSupersampleFragmentShadingRates(VULKAN_HPP_NAMESPACE::Bool32 supersampleFragmentShadingRates_) VULKAN_HPP_NOEXCEPT
{
supersampleFragmentShadingRates = supersampleFragmentShadingRates_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateEnumsFeaturesNV &
setNoInvocationFragmentShadingRates(VULKAN_HPP_NAMESPACE::Bool32 noInvocationFragmentShadingRates_) VULKAN_HPP_NOEXCEPT
{
noInvocationFragmentShadingRates = noInvocationFragmentShadingRates_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fragmentShadingRateEnums, supersampleFragmentShadingRates, noInvocationFragmentShadingRates);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fragmentShadingRateEnums == rhs.fragmentShadingRateEnums) &&
(supersampleFragmentShadingRates == rhs.supersampleFragmentShadingRates) &&
(noInvocationFragmentShadingRates == rhs.noInvocationFragmentShadingRates);
# endif
}
bool operator!=(PhysicalDeviceFragmentShadingRateEnumsFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateEnums = {};
VULKAN_HPP_NAMESPACE::Bool32 supersampleFragmentShadingRates = {};
VULKAN_HPP_NAMESPACE::Bool32 noInvocationFragmentShadingRates = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsFeaturesNV) ==
sizeof(VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsFeaturesNV>::value,
"PhysicalDeviceFragmentShadingRateEnumsFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV>
{
using Type = PhysicalDeviceFragmentShadingRateEnumsFeaturesNV;
};
struct PhysicalDeviceFragmentShadingRateEnumsPropertiesNV
{
using NativeType = VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(
VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateInvocationCount_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxFragmentShadingRateInvocationCount(maxFragmentShadingRateInvocationCount_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentShadingRateEnumsPropertiesNV(*reinterpret_cast<PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV &
operator=(PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShadingRateEnumsPropertiesNV &operator=(VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateEnumsPropertiesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateEnumsPropertiesNV &
setMaxFragmentShadingRateInvocationCount(VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateInvocationCount_) VULKAN_HPP_NOEXCEPT
{
maxFragmentShadingRateInvocationCount = maxFragmentShadingRateInvocationCount_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV *>(this);
}
explicit operator VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::SampleCountFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxFragmentShadingRateInvocationCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxFragmentShadingRateInvocationCount == rhs.maxFragmentShadingRateInvocationCount);
# endif
}
bool operator!=(PhysicalDeviceFragmentShadingRateEnumsPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateInvocationCount = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsPropertiesNV) ==
sizeof(VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsPropertiesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateEnumsPropertiesNV>::value,
"PhysicalDeviceFragmentShadingRateEnumsPropertiesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV>
{
using Type = PhysicalDeviceFragmentShadingRateEnumsPropertiesNV;
};
struct PhysicalDeviceFragmentShadingRateFeaturesKHR
{
using NativeType = VkPhysicalDeviceFragmentShadingRateFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShadingRateFeaturesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 pipelineFragmentShadingRate_ = {},
VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRate_ = {},
VULKAN_HPP_NAMESPACE::Bool32 attachmentFragmentShadingRate_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pipelineFragmentShadingRate(pipelineFragmentShadingRate_),
primitiveFragmentShadingRate(primitiveFragmentShadingRate_),
attachmentFragmentShadingRate(attachmentFragmentShadingRate_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateFeaturesKHR(PhysicalDeviceFragmentShadingRateFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShadingRateFeaturesKHR(VkPhysicalDeviceFragmentShadingRateFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentShadingRateFeaturesKHR(*reinterpret_cast<PhysicalDeviceFragmentShadingRateFeaturesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentShadingRateFeaturesKHR &operator=(PhysicalDeviceFragmentShadingRateFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShadingRateFeaturesKHR &operator=(VkPhysicalDeviceFragmentShadingRateFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateFeaturesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateFeaturesKHR &
setPipelineFragmentShadingRate(VULKAN_HPP_NAMESPACE::Bool32 pipelineFragmentShadingRate_) VULKAN_HPP_NOEXCEPT
{
pipelineFragmentShadingRate = pipelineFragmentShadingRate_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateFeaturesKHR &
setPrimitiveFragmentShadingRate(VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRate_) VULKAN_HPP_NOEXCEPT
{
primitiveFragmentShadingRate = primitiveFragmentShadingRate_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentShadingRateFeaturesKHR &
setAttachmentFragmentShadingRate(VULKAN_HPP_NAMESPACE::Bool32 attachmentFragmentShadingRate_) VULKAN_HPP_NOEXCEPT
{
attachmentFragmentShadingRate = attachmentFragmentShadingRate_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceFragmentShadingRateFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateFeaturesKHR *>(this);
}
explicit operator VkPhysicalDeviceFragmentShadingRateFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateFeaturesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pipelineFragmentShadingRate, primitiveFragmentShadingRate, attachmentFragmentShadingRate);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentShadingRateFeaturesKHR const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentShadingRateFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pipelineFragmentShadingRate == rhs.pipelineFragmentShadingRate) &&
(primitiveFragmentShadingRate == rhs.primitiveFragmentShadingRate) && (attachmentFragmentShadingRate == rhs.attachmentFragmentShadingRate);
# endif
}
bool operator!=(PhysicalDeviceFragmentShadingRateFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 pipelineFragmentShadingRate = {};
VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRate = {};
VULKAN_HPP_NAMESPACE::Bool32 attachmentFragmentShadingRate = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateFeaturesKHR) ==
sizeof(VkPhysicalDeviceFragmentShadingRateFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateFeaturesKHR>::value,
"PhysicalDeviceFragmentShadingRateFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateFeaturesKHR>
{
using Type = PhysicalDeviceFragmentShadingRateFeaturesKHR;
};
struct PhysicalDeviceFragmentShadingRateKHR
{
using NativeType = VkPhysicalDeviceFragmentShadingRateKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShadingRateKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateKHR(VULKAN_HPP_NAMESPACE::SampleCountFlags sampleCounts_ = {},
VULKAN_HPP_NAMESPACE::Extent2D fragmentSize_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
sampleCounts(sampleCounts_),
fragmentSize(fragmentSize_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRateKHR(PhysicalDeviceFragmentShadingRateKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShadingRateKHR(VkPhysicalDeviceFragmentShadingRateKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentShadingRateKHR(*reinterpret_cast<PhysicalDeviceFragmentShadingRateKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentShadingRateKHR &operator=(PhysicalDeviceFragmentShadingRateKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShadingRateKHR &operator=(VkPhysicalDeviceFragmentShadingRateKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceFragmentShadingRateKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateKHR *>(this);
}
explicit operator VkPhysicalDeviceFragmentShadingRateKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRateKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::
tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::SampleCountFlags const &, VULKAN_HPP_NAMESPACE::Extent2D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, sampleCounts, fragmentSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentShadingRateKHR const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentShadingRateKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (sampleCounts == rhs.sampleCounts) && (fragmentSize == rhs.fragmentSize);
# endif
}
bool operator!=(PhysicalDeviceFragmentShadingRateKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRateKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags sampleCounts = {};
VULKAN_HPP_NAMESPACE::Extent2D fragmentSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR) == sizeof(VkPhysicalDeviceFragmentShadingRateKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRateKHR>::value,
"PhysicalDeviceFragmentShadingRateKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRateKHR>
{
using Type = PhysicalDeviceFragmentShadingRateKHR;
};
struct PhysicalDeviceFragmentShadingRatePropertiesKHR
{
using NativeType = VkPhysicalDeviceFragmentShadingRatePropertiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceFragmentShadingRatePropertiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceFragmentShadingRatePropertiesKHR(
VULKAN_HPP_NAMESPACE::Extent2D minFragmentShadingRateAttachmentTexelSize_ = {},
VULKAN_HPP_NAMESPACE::Extent2D maxFragmentShadingRateAttachmentTexelSize_ = {},
uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio_ = {},
VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRateWithMultipleViewports_ = {},
VULKAN_HPP_NAMESPACE::Bool32 layeredShadingRateAttachments_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateNonTrivialCombinerOps_ = {},
VULKAN_HPP_NAMESPACE::Extent2D maxFragmentSize_ = {},
uint32_t maxFragmentSizeAspectRatio_ = {},
uint32_t maxFragmentShadingRateCoverageSamples_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateRasterizationSamples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithShaderDepthStencilWrites_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithSampleMask_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithShaderSampleMask_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithConservativeRasterization_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithFragmentShaderInterlock_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithCustomSampleLocations_ = {},
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateStrictMultiplyCombiner_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
minFragmentShadingRateAttachmentTexelSize(minFragmentShadingRateAttachmentTexelSize_),
maxFragmentShadingRateAttachmentTexelSize(maxFragmentShadingRateAttachmentTexelSize_),
maxFragmentShadingRateAttachmentTexelSizeAspectRatio(maxFragmentShadingRateAttachmentTexelSizeAspectRatio_),
primitiveFragmentShadingRateWithMultipleViewports(primitiveFragmentShadingRateWithMultipleViewports_),
layeredShadingRateAttachments(layeredShadingRateAttachments_),
fragmentShadingRateNonTrivialCombinerOps(fragmentShadingRateNonTrivialCombinerOps_),
maxFragmentSize(maxFragmentSize_),
maxFragmentSizeAspectRatio(maxFragmentSizeAspectRatio_),
maxFragmentShadingRateCoverageSamples(maxFragmentShadingRateCoverageSamples_),
maxFragmentShadingRateRasterizationSamples(maxFragmentShadingRateRasterizationSamples_),
fragmentShadingRateWithShaderDepthStencilWrites(fragmentShadingRateWithShaderDepthStencilWrites_),
fragmentShadingRateWithSampleMask(fragmentShadingRateWithSampleMask_),
fragmentShadingRateWithShaderSampleMask(fragmentShadingRateWithShaderSampleMask_),
fragmentShadingRateWithConservativeRasterization(fragmentShadingRateWithConservativeRasterization_),
fragmentShadingRateWithFragmentShaderInterlock(fragmentShadingRateWithFragmentShaderInterlock_),
fragmentShadingRateWithCustomSampleLocations(fragmentShadingRateWithCustomSampleLocations_),
fragmentShadingRateStrictMultiplyCombiner(fragmentShadingRateStrictMultiplyCombiner_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceFragmentShadingRatePropertiesKHR(PhysicalDeviceFragmentShadingRatePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShadingRatePropertiesKHR(VkPhysicalDeviceFragmentShadingRatePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceFragmentShadingRatePropertiesKHR(*reinterpret_cast<PhysicalDeviceFragmentShadingRatePropertiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceFragmentShadingRatePropertiesKHR &operator=(PhysicalDeviceFragmentShadingRatePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceFragmentShadingRatePropertiesKHR &operator=(VkPhysicalDeviceFragmentShadingRatePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRatePropertiesKHR const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceFragmentShadingRatePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceFragmentShadingRatePropertiesKHR *>(this);
}
explicit operator VkPhysicalDeviceFragmentShadingRatePropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceFragmentShadingRatePropertiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
minFragmentShadingRateAttachmentTexelSize,
maxFragmentShadingRateAttachmentTexelSize,
maxFragmentShadingRateAttachmentTexelSizeAspectRatio,
primitiveFragmentShadingRateWithMultipleViewports,
layeredShadingRateAttachments,
fragmentShadingRateNonTrivialCombinerOps,
maxFragmentSize,
maxFragmentSizeAspectRatio,
maxFragmentShadingRateCoverageSamples,
maxFragmentShadingRateRasterizationSamples,
fragmentShadingRateWithShaderDepthStencilWrites,
fragmentShadingRateWithSampleMask,
fragmentShadingRateWithShaderSampleMask,
fragmentShadingRateWithConservativeRasterization,
fragmentShadingRateWithFragmentShaderInterlock,
fragmentShadingRateWithCustomSampleLocations,
fragmentShadingRateStrictMultiplyCombiner);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceFragmentShadingRatePropertiesKHR const &) const = default;
#else
bool operator==(PhysicalDeviceFragmentShadingRatePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) &&
(minFragmentShadingRateAttachmentTexelSize == rhs.minFragmentShadingRateAttachmentTexelSize) &&
(maxFragmentShadingRateAttachmentTexelSize == rhs.maxFragmentShadingRateAttachmentTexelSize) &&
(maxFragmentShadingRateAttachmentTexelSizeAspectRatio == rhs.maxFragmentShadingRateAttachmentTexelSizeAspectRatio) &&
(primitiveFragmentShadingRateWithMultipleViewports == rhs.primitiveFragmentShadingRateWithMultipleViewports) &&
(layeredShadingRateAttachments == rhs.layeredShadingRateAttachments) &&
(fragmentShadingRateNonTrivialCombinerOps == rhs.fragmentShadingRateNonTrivialCombinerOps) && (maxFragmentSize == rhs.maxFragmentSize) &&
(maxFragmentSizeAspectRatio == rhs.maxFragmentSizeAspectRatio) &&
(maxFragmentShadingRateCoverageSamples == rhs.maxFragmentShadingRateCoverageSamples) &&
(maxFragmentShadingRateRasterizationSamples == rhs.maxFragmentShadingRateRasterizationSamples) &&
(fragmentShadingRateWithShaderDepthStencilWrites == rhs.fragmentShadingRateWithShaderDepthStencilWrites) &&
(fragmentShadingRateWithSampleMask == rhs.fragmentShadingRateWithSampleMask) &&
(fragmentShadingRateWithShaderSampleMask == rhs.fragmentShadingRateWithShaderSampleMask) &&
(fragmentShadingRateWithConservativeRasterization == rhs.fragmentShadingRateWithConservativeRasterization) &&
(fragmentShadingRateWithFragmentShaderInterlock == rhs.fragmentShadingRateWithFragmentShaderInterlock) &&
(fragmentShadingRateWithCustomSampleLocations == rhs.fragmentShadingRateWithCustomSampleLocations) &&
(fragmentShadingRateStrictMultiplyCombiner == rhs.fragmentShadingRateStrictMultiplyCombiner);
# endif
}
bool operator!=(PhysicalDeviceFragmentShadingRatePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceFragmentShadingRatePropertiesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Extent2D minFragmentShadingRateAttachmentTexelSize = {};
VULKAN_HPP_NAMESPACE::Extent2D maxFragmentShadingRateAttachmentTexelSize = {};
uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio = {};
VULKAN_HPP_NAMESPACE::Bool32 primitiveFragmentShadingRateWithMultipleViewports = {};
VULKAN_HPP_NAMESPACE::Bool32 layeredShadingRateAttachments = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateNonTrivialCombinerOps = {};
VULKAN_HPP_NAMESPACE::Extent2D maxFragmentSize = {};
uint32_t maxFragmentSizeAspectRatio = {};
uint32_t maxFragmentShadingRateCoverageSamples = {};
VULKAN_HPP_NAMESPACE::SampleCountFlagBits maxFragmentShadingRateRasterizationSamples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithShaderDepthStencilWrites = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithSampleMask = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithShaderSampleMask = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithConservativeRasterization = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithFragmentShaderInterlock = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateWithCustomSampleLocations = {};
VULKAN_HPP_NAMESPACE::Bool32 fragmentShadingRateStrictMultiplyCombiner = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRatePropertiesKHR) ==
sizeof(VkPhysicalDeviceFragmentShadingRatePropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRatePropertiesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentShadingRatePropertiesKHR>::value,
"PhysicalDeviceFragmentShadingRatePropertiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceFragmentShadingRatePropertiesKHR>
{
using Type = PhysicalDeviceFragmentShadingRatePropertiesKHR;
};
struct PhysicalDeviceGlobalPriorityQueryFeaturesKHR
{
using NativeType = VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceGlobalPriorityQueryFeaturesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceGlobalPriorityQueryFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 globalPriorityQuery_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
globalPriorityQuery(globalPriorityQuery_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceGlobalPriorityQueryFeaturesKHR(PhysicalDeviceGlobalPriorityQueryFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceGlobalPriorityQueryFeaturesKHR(VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceGlobalPriorityQueryFeaturesKHR(*reinterpret_cast<PhysicalDeviceGlobalPriorityQueryFeaturesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceGlobalPriorityQueryFeaturesKHR &operator=(PhysicalDeviceGlobalPriorityQueryFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceGlobalPriorityQueryFeaturesKHR &operator=(VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceGlobalPriorityQueryFeaturesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGlobalPriorityQueryFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGlobalPriorityQueryFeaturesKHR &
setGlobalPriorityQuery(VULKAN_HPP_NAMESPACE::Bool32 globalPriorityQuery_) VULKAN_HPP_NOEXCEPT
{
globalPriorityQuery = globalPriorityQuery_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR *>(this);
}
explicit operator VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, globalPriorityQuery);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceGlobalPriorityQueryFeaturesKHR const &) const = default;
#else
bool operator==(PhysicalDeviceGlobalPriorityQueryFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (globalPriorityQuery == rhs.globalPriorityQuery);
# endif
}
bool operator!=(PhysicalDeviceGlobalPriorityQueryFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceGlobalPriorityQueryFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 globalPriorityQuery = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceGlobalPriorityQueryFeaturesKHR) ==
sizeof(VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceGlobalPriorityQueryFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceGlobalPriorityQueryFeaturesKHR>::value,
"PhysicalDeviceGlobalPriorityQueryFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceGlobalPriorityQueryFeaturesKHR>
{
using Type = PhysicalDeviceGlobalPriorityQueryFeaturesKHR;
};
using PhysicalDeviceGlobalPriorityQueryFeaturesEXT = PhysicalDeviceGlobalPriorityQueryFeaturesKHR;
struct PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT
{
using NativeType = VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceGraphicsPipelineLibraryFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 graphicsPipelineLibrary_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
graphicsPipelineLibrary(graphicsPipelineLibrary_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(*reinterpret_cast<PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT &operator=(PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT &operator=(VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT &
setGraphicsPipelineLibrary(VULKAN_HPP_NAMESPACE::Bool32 graphicsPipelineLibrary_) VULKAN_HPP_NOEXCEPT
{
graphicsPipelineLibrary = graphicsPipelineLibrary_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, graphicsPipelineLibrary);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (graphicsPipelineLibrary == rhs.graphicsPipelineLibrary);
# endif
}
bool operator!=(PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceGraphicsPipelineLibraryFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 graphicsPipelineLibrary = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT) ==
sizeof(VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT>::value,
"PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceGraphicsPipelineLibraryFeaturesEXT>
{
using Type = PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT;
};
struct PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT
{
using NativeType = VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceGraphicsPipelineLibraryPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(VULKAN_HPP_NAMESPACE::Bool32 graphicsPipelineLibraryFastLinking_ = {},
VULKAN_HPP_NAMESPACE::Bool32 graphicsPipelineLibraryIndependentInterpolationDecoration_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
graphicsPipelineLibraryFastLinking(graphicsPipelineLibraryFastLinking_),
graphicsPipelineLibraryIndependentInterpolationDecoration(graphicsPipelineLibraryIndependentInterpolationDecoration_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(*reinterpret_cast<PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT &
operator=(PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT &operator=(VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT &
setGraphicsPipelineLibraryFastLinking(VULKAN_HPP_NAMESPACE::Bool32 graphicsPipelineLibraryFastLinking_) VULKAN_HPP_NOEXCEPT
{
graphicsPipelineLibraryFastLinking = graphicsPipelineLibraryFastLinking_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT &setGraphicsPipelineLibraryIndependentInterpolationDecoration(
VULKAN_HPP_NAMESPACE::Bool32 graphicsPipelineLibraryIndependentInterpolationDecoration_) VULKAN_HPP_NOEXCEPT
{
graphicsPipelineLibraryIndependentInterpolationDecoration = graphicsPipelineLibraryIndependentInterpolationDecoration_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, graphicsPipelineLibraryFastLinking, graphicsPipelineLibraryIndependentInterpolationDecoration);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (graphicsPipelineLibraryFastLinking == rhs.graphicsPipelineLibraryFastLinking) &&
(graphicsPipelineLibraryIndependentInterpolationDecoration == rhs.graphicsPipelineLibraryIndependentInterpolationDecoration);
# endif
}
bool operator!=(PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceGraphicsPipelineLibraryPropertiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 graphicsPipelineLibraryFastLinking = {};
VULKAN_HPP_NAMESPACE::Bool32 graphicsPipelineLibraryIndependentInterpolationDecoration = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT) ==
sizeof(VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT>::value,
"PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceGraphicsPipelineLibraryPropertiesEXT>
{
using Type = PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT;
};
struct PhysicalDeviceGroupProperties
{
using NativeType = VkPhysicalDeviceGroupProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceGroupProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14
PhysicalDeviceGroupProperties(uint32_t physicalDeviceCount_ = {},
std::array<VULKAN_HPP_NAMESPACE::PhysicalDevice, VK_MAX_DEVICE_GROUP_SIZE> const &physicalDevices_ = {},
VULKAN_HPP_NAMESPACE::Bool32 subsetAllocation_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
physicalDeviceCount(physicalDeviceCount_),
physicalDevices(physicalDevices_),
subsetAllocation(subsetAllocation_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceGroupProperties(PhysicalDeviceGroupProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceGroupProperties(VkPhysicalDeviceGroupProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceGroupProperties(*reinterpret_cast<PhysicalDeviceGroupProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceGroupProperties &operator=(PhysicalDeviceGroupProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceGroupProperties &operator=(VkPhysicalDeviceGroupProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceGroupProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceGroupProperties *>(this);
}
explicit operator VkPhysicalDeviceGroupProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceGroupProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::PhysicalDevice, VK_MAX_DEVICE_GROUP_SIZE> const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, physicalDeviceCount, physicalDevices, subsetAllocation);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceGroupProperties const &) const = default;
#else
bool operator==(PhysicalDeviceGroupProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (physicalDeviceCount == rhs.physicalDeviceCount) &&
(physicalDevices == rhs.physicalDevices) && (subsetAllocation == rhs.subsetAllocation);
# endif
}
bool operator!=(PhysicalDeviceGroupProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceGroupProperties;
void *pNext = {};
uint32_t physicalDeviceCount = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::PhysicalDevice, VK_MAX_DEVICE_GROUP_SIZE> physicalDevices = {};
VULKAN_HPP_NAMESPACE::Bool32 subsetAllocation = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties) == sizeof(VkPhysicalDeviceGroupProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceGroupProperties>::value,
"PhysicalDeviceGroupProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceGroupProperties>
{
using Type = PhysicalDeviceGroupProperties;
};
using PhysicalDeviceGroupPropertiesKHR = PhysicalDeviceGroupProperties;
struct PhysicalDeviceHostQueryResetFeatures
{
using NativeType = VkPhysicalDeviceHostQueryResetFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceHostQueryResetFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceHostQueryResetFeatures(VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
hostQueryReset(hostQueryReset_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceHostQueryResetFeatures(PhysicalDeviceHostQueryResetFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceHostQueryResetFeatures(VkPhysicalDeviceHostQueryResetFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceHostQueryResetFeatures(*reinterpret_cast<PhysicalDeviceHostQueryResetFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceHostQueryResetFeatures &operator=(PhysicalDeviceHostQueryResetFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceHostQueryResetFeatures &operator=(VkPhysicalDeviceHostQueryResetFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceHostQueryResetFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceHostQueryResetFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceHostQueryResetFeatures &setHostQueryReset(VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset_) VULKAN_HPP_NOEXCEPT
{
hostQueryReset = hostQueryReset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceHostQueryResetFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceHostQueryResetFeatures *>(this);
}
explicit operator VkPhysicalDeviceHostQueryResetFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceHostQueryResetFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, hostQueryReset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceHostQueryResetFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceHostQueryResetFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (hostQueryReset == rhs.hostQueryReset);
# endif
}
bool operator!=(PhysicalDeviceHostQueryResetFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceHostQueryResetFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceHostQueryResetFeatures) == sizeof(VkPhysicalDeviceHostQueryResetFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceHostQueryResetFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceHostQueryResetFeatures>::value,
"PhysicalDeviceHostQueryResetFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceHostQueryResetFeatures>
{
using Type = PhysicalDeviceHostQueryResetFeatures;
};
using PhysicalDeviceHostQueryResetFeaturesEXT = PhysicalDeviceHostQueryResetFeatures;
struct PhysicalDeviceIDProperties
{
using NativeType = VkPhysicalDeviceIDProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceIdProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceIDProperties(std::array<uint8_t, VK_UUID_SIZE> const &deviceUUID_ = {},
std::array<uint8_t, VK_UUID_SIZE> const &driverUUID_ = {},
std::array<uint8_t, VK_LUID_SIZE> const &deviceLUID_ = {},
uint32_t deviceNodeMask_ = {},
VULKAN_HPP_NAMESPACE::Bool32 deviceLUIDValid_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
deviceUUID(deviceUUID_),
driverUUID(driverUUID_),
deviceLUID(deviceLUID_),
deviceNodeMask(deviceNodeMask_),
deviceLUIDValid(deviceLUIDValid_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceIDProperties(PhysicalDeviceIDProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceIDProperties(VkPhysicalDeviceIDProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceIDProperties(*reinterpret_cast<PhysicalDeviceIDProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceIDProperties &operator=(PhysicalDeviceIDProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceIDProperties &operator=(VkPhysicalDeviceIDProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceIDProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceIDProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceIDProperties *>(this);
}
explicit operator VkPhysicalDeviceIDProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceIDProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_LUID_SIZE> const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, deviceUUID, driverUUID, deviceLUID, deviceNodeMask, deviceLUIDValid);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceIDProperties const &) const = default;
#else
bool operator==(PhysicalDeviceIDProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (deviceUUID == rhs.deviceUUID) && (driverUUID == rhs.driverUUID) &&
(deviceLUID == rhs.deviceLUID) && (deviceNodeMask == rhs.deviceNodeMask) && (deviceLUIDValid == rhs.deviceLUIDValid);
# endif
}
bool operator!=(PhysicalDeviceIDProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceIdProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> deviceUUID = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> driverUUID = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_LUID_SIZE> deviceLUID = {};
uint32_t deviceNodeMask = {};
VULKAN_HPP_NAMESPACE::Bool32 deviceLUIDValid = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceIDProperties) == sizeof(VkPhysicalDeviceIDProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceIDProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceIDProperties>::value,
"PhysicalDeviceIDProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceIdProperties>
{
using Type = PhysicalDeviceIDProperties;
};
using PhysicalDeviceIDPropertiesKHR = PhysicalDeviceIDProperties;
struct PhysicalDeviceImage2DViewOf3DFeaturesEXT
{
using NativeType = VkPhysicalDeviceImage2DViewOf3DFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImage2DViewOf3DFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceImage2DViewOf3DFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 image2DViewOf3D_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sampler2DViewOf3D_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
image2DViewOf3D(image2DViewOf3D_),
sampler2DViewOf3D(sampler2DViewOf3D_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceImage2DViewOf3DFeaturesEXT(PhysicalDeviceImage2DViewOf3DFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImage2DViewOf3DFeaturesEXT(VkPhysicalDeviceImage2DViewOf3DFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceImage2DViewOf3DFeaturesEXT(*reinterpret_cast<PhysicalDeviceImage2DViewOf3DFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceImage2DViewOf3DFeaturesEXT &operator=(PhysicalDeviceImage2DViewOf3DFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImage2DViewOf3DFeaturesEXT &operator=(VkPhysicalDeviceImage2DViewOf3DFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImage2DViewOf3DFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImage2DViewOf3DFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImage2DViewOf3DFeaturesEXT &setImage2DViewOf3D(VULKAN_HPP_NAMESPACE::Bool32 image2DViewOf3D_) VULKAN_HPP_NOEXCEPT
{
image2DViewOf3D = image2DViewOf3D_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImage2DViewOf3DFeaturesEXT &
setSampler2DViewOf3D(VULKAN_HPP_NAMESPACE::Bool32 sampler2DViewOf3D_) VULKAN_HPP_NOEXCEPT
{
sampler2DViewOf3D = sampler2DViewOf3D_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceImage2DViewOf3DFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceImage2DViewOf3DFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceImage2DViewOf3DFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceImage2DViewOf3DFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, image2DViewOf3D, sampler2DViewOf3D);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceImage2DViewOf3DFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceImage2DViewOf3DFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (image2DViewOf3D == rhs.image2DViewOf3D) && (sampler2DViewOf3D == rhs.sampler2DViewOf3D);
# endif
}
bool operator!=(PhysicalDeviceImage2DViewOf3DFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImage2DViewOf3DFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 image2DViewOf3D = {};
VULKAN_HPP_NAMESPACE::Bool32 sampler2DViewOf3D = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceImage2DViewOf3DFeaturesEXT) == sizeof(VkPhysicalDeviceImage2DViewOf3DFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceImage2DViewOf3DFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceImage2DViewOf3DFeaturesEXT>::value,
"PhysicalDeviceImage2DViewOf3DFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceImage2DViewOf3DFeaturesEXT>
{
using Type = PhysicalDeviceImage2DViewOf3DFeaturesEXT;
};
struct PhysicalDeviceImageDrmFormatModifierInfoEXT
{
using NativeType = VkPhysicalDeviceImageDrmFormatModifierInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImageDrmFormatModifierInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PhysicalDeviceImageDrmFormatModifierInfoEXT(uint64_t drmFormatModifier_ = {},
VULKAN_HPP_NAMESPACE::SharingMode sharingMode_ = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive,
uint32_t queueFamilyIndexCount_ = {},
const uint32_t *pQueueFamilyIndices_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
drmFormatModifier(drmFormatModifier_),
sharingMode(sharingMode_),
queueFamilyIndexCount(queueFamilyIndexCount_),
pQueueFamilyIndices(pQueueFamilyIndices_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceImageDrmFormatModifierInfoEXT(PhysicalDeviceImageDrmFormatModifierInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImageDrmFormatModifierInfoEXT(VkPhysicalDeviceImageDrmFormatModifierInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceImageDrmFormatModifierInfoEXT(*reinterpret_cast<PhysicalDeviceImageDrmFormatModifierInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PhysicalDeviceImageDrmFormatModifierInfoEXT(uint64_t drmFormatModifier_,
VULKAN_HPP_NAMESPACE::SharingMode sharingMode_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &queueFamilyIndices_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, drmFormatModifier(drmFormatModifier_)
, sharingMode(sharingMode_)
, queueFamilyIndexCount(static_cast<uint32_t>(queueFamilyIndices_.size()))
, pQueueFamilyIndices(queueFamilyIndices_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceImageDrmFormatModifierInfoEXT &operator=(PhysicalDeviceImageDrmFormatModifierInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImageDrmFormatModifierInfoEXT &operator=(VkPhysicalDeviceImageDrmFormatModifierInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageDrmFormatModifierInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageDrmFormatModifierInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageDrmFormatModifierInfoEXT &setDrmFormatModifier(uint64_t drmFormatModifier_) VULKAN_HPP_NOEXCEPT
{
drmFormatModifier = drmFormatModifier_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageDrmFormatModifierInfoEXT &setSharingMode(VULKAN_HPP_NAMESPACE::SharingMode sharingMode_) VULKAN_HPP_NOEXCEPT
{
sharingMode = sharingMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageDrmFormatModifierInfoEXT &setQueueFamilyIndexCount(uint32_t queueFamilyIndexCount_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndexCount = queueFamilyIndexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageDrmFormatModifierInfoEXT &setPQueueFamilyIndices(const uint32_t *pQueueFamilyIndices_) VULKAN_HPP_NOEXCEPT
{
pQueueFamilyIndices = pQueueFamilyIndices_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PhysicalDeviceImageDrmFormatModifierInfoEXT &
setQueueFamilyIndices(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &queueFamilyIndices_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndexCount = static_cast<uint32_t>(queueFamilyIndices_.size());
pQueueFamilyIndices = queueFamilyIndices_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceImageDrmFormatModifierInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceImageDrmFormatModifierInfoEXT *>(this);
}
explicit operator VkPhysicalDeviceImageDrmFormatModifierInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceImageDrmFormatModifierInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint64_t const &,
VULKAN_HPP_NAMESPACE::SharingMode const &,
uint32_t const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, drmFormatModifier, sharingMode, queueFamilyIndexCount, pQueueFamilyIndices);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceImageDrmFormatModifierInfoEXT const &) const = default;
#else
bool operator==(PhysicalDeviceImageDrmFormatModifierInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (drmFormatModifier == rhs.drmFormatModifier) && (sharingMode == rhs.sharingMode) &&
(queueFamilyIndexCount == rhs.queueFamilyIndexCount) && (pQueueFamilyIndices == rhs.pQueueFamilyIndices);
# endif
}
bool operator!=(PhysicalDeviceImageDrmFormatModifierInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageDrmFormatModifierInfoEXT;
const void *pNext = {};
uint64_t drmFormatModifier = {};
VULKAN_HPP_NAMESPACE::SharingMode sharingMode = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive;
uint32_t queueFamilyIndexCount = {};
const uint32_t *pQueueFamilyIndices = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceImageDrmFormatModifierInfoEXT) ==
sizeof(VkPhysicalDeviceImageDrmFormatModifierInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageDrmFormatModifierInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageDrmFormatModifierInfoEXT>::value,
"PhysicalDeviceImageDrmFormatModifierInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceImageDrmFormatModifierInfoEXT>
{
using Type = PhysicalDeviceImageDrmFormatModifierInfoEXT;
};
struct PhysicalDeviceImageFormatInfo2
{
using NativeType = VkPhysicalDeviceImageFormatInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImageFormatInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceImageFormatInfo2(VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::ImageType type_ = VULKAN_HPP_NAMESPACE::ImageType::e1D,
VULKAN_HPP_NAMESPACE::ImageTiling tiling_ = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal,
VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {},
VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
format(format_),
type(type_),
tiling(tiling_),
usage(usage_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceImageFormatInfo2(PhysicalDeviceImageFormatInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImageFormatInfo2(VkPhysicalDeviceImageFormatInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceImageFormatInfo2(*reinterpret_cast<PhysicalDeviceImageFormatInfo2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceImageFormatInfo2 &operator=(PhysicalDeviceImageFormatInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImageFormatInfo2 &operator=(VkPhysicalDeviceImageFormatInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageFormatInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageFormatInfo2 &setFormat(VULKAN_HPP_NAMESPACE::Format format_) VULKAN_HPP_NOEXCEPT
{
format = format_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageFormatInfo2 &setType(VULKAN_HPP_NAMESPACE::ImageType type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageFormatInfo2 &setTiling(VULKAN_HPP_NAMESPACE::ImageTiling tiling_) VULKAN_HPP_NOEXCEPT
{
tiling = tiling_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageFormatInfo2 &setUsage(VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_) VULKAN_HPP_NOEXCEPT
{
usage = usage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageFormatInfo2 &setFlags(VULKAN_HPP_NAMESPACE::ImageCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceImageFormatInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceImageFormatInfo2 *>(this);
}
explicit operator VkPhysicalDeviceImageFormatInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceImageFormatInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::ImageType const &,
VULKAN_HPP_NAMESPACE::ImageTiling const &,
VULKAN_HPP_NAMESPACE::ImageUsageFlags const &,
VULKAN_HPP_NAMESPACE::ImageCreateFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, format, type, tiling, usage, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceImageFormatInfo2 const &) const = default;
#else
bool operator==(PhysicalDeviceImageFormatInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (format == rhs.format) && (type == rhs.type) && (tiling == rhs.tiling) &&
(usage == rhs.usage) && (flags == rhs.flags);
# endif
}
bool operator!=(PhysicalDeviceImageFormatInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageFormatInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::ImageType type = VULKAN_HPP_NAMESPACE::ImageType::e1D;
VULKAN_HPP_NAMESPACE::ImageTiling tiling = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal;
VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
VULKAN_HPP_NAMESPACE::ImageCreateFlags flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2) == sizeof(VkPhysicalDeviceImageFormatInfo2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageFormatInfo2>::value,
"PhysicalDeviceImageFormatInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceImageFormatInfo2>
{
using Type = PhysicalDeviceImageFormatInfo2;
};
using PhysicalDeviceImageFormatInfo2KHR = PhysicalDeviceImageFormatInfo2;
struct PhysicalDeviceImageRobustnessFeatures
{
using NativeType = VkPhysicalDeviceImageRobustnessFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImageRobustnessFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceImageRobustnessFeatures(VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
robustImageAccess(robustImageAccess_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceImageRobustnessFeatures(PhysicalDeviceImageRobustnessFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImageRobustnessFeatures(VkPhysicalDeviceImageRobustnessFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceImageRobustnessFeatures(*reinterpret_cast<PhysicalDeviceImageRobustnessFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceImageRobustnessFeatures &operator=(PhysicalDeviceImageRobustnessFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImageRobustnessFeatures &operator=(VkPhysicalDeviceImageRobustnessFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageRobustnessFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageRobustnessFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageRobustnessFeatures &setRobustImageAccess(VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess_) VULKAN_HPP_NOEXCEPT
{
robustImageAccess = robustImageAccess_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceImageRobustnessFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceImageRobustnessFeatures *>(this);
}
explicit operator VkPhysicalDeviceImageRobustnessFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceImageRobustnessFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, robustImageAccess);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceImageRobustnessFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceImageRobustnessFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (robustImageAccess == rhs.robustImageAccess);
# endif
}
bool operator!=(PhysicalDeviceImageRobustnessFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageRobustnessFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceImageRobustnessFeatures) == sizeof(VkPhysicalDeviceImageRobustnessFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageRobustnessFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageRobustnessFeatures>::value,
"PhysicalDeviceImageRobustnessFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceImageRobustnessFeatures>
{
using Type = PhysicalDeviceImageRobustnessFeatures;
};
using PhysicalDeviceImageRobustnessFeaturesEXT = PhysicalDeviceImageRobustnessFeatures;
struct PhysicalDeviceImageViewImageFormatInfoEXT
{
using NativeType = VkPhysicalDeviceImageViewImageFormatInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PhysicalDeviceImageViewImageFormatInfoEXT(VULKAN_HPP_NAMESPACE::ImageViewType imageViewType_ = VULKAN_HPP_NAMESPACE::ImageViewType::e1D,
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
imageViewType(imageViewType_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceImageViewImageFormatInfoEXT(PhysicalDeviceImageViewImageFormatInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImageViewImageFormatInfoEXT(VkPhysicalDeviceImageViewImageFormatInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceImageViewImageFormatInfoEXT(*reinterpret_cast<PhysicalDeviceImageViewImageFormatInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceImageViewImageFormatInfoEXT &operator=(PhysicalDeviceImageViewImageFormatInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImageViewImageFormatInfoEXT &operator=(VkPhysicalDeviceImageViewImageFormatInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageViewImageFormatInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageViewImageFormatInfoEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageViewImageFormatInfoEXT &
setImageViewType(VULKAN_HPP_NAMESPACE::ImageViewType imageViewType_) VULKAN_HPP_NOEXCEPT
{
imageViewType = imageViewType_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceImageViewImageFormatInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceImageViewImageFormatInfoEXT *>(this);
}
explicit operator VkPhysicalDeviceImageViewImageFormatInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceImageViewImageFormatInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::ImageViewType const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, imageViewType);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceImageViewImageFormatInfoEXT const &) const = default;
#else
bool operator==(PhysicalDeviceImageViewImageFormatInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (imageViewType == rhs.imageViewType);
# endif
}
bool operator!=(PhysicalDeviceImageViewImageFormatInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageViewType imageViewType = VULKAN_HPP_NAMESPACE::ImageViewType::e1D;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceImageViewImageFormatInfoEXT) == sizeof(VkPhysicalDeviceImageViewImageFormatInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageViewImageFormatInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageViewImageFormatInfoEXT>::value,
"PhysicalDeviceImageViewImageFormatInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT>
{
using Type = PhysicalDeviceImageViewImageFormatInfoEXT;
};
struct PhysicalDeviceImageViewMinLodFeaturesEXT
{
using NativeType = VkPhysicalDeviceImageViewMinLodFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImageViewMinLodFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceImageViewMinLodFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 minLod_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
minLod(minLod_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceImageViewMinLodFeaturesEXT(PhysicalDeviceImageViewMinLodFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImageViewMinLodFeaturesEXT(VkPhysicalDeviceImageViewMinLodFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceImageViewMinLodFeaturesEXT(*reinterpret_cast<PhysicalDeviceImageViewMinLodFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceImageViewMinLodFeaturesEXT &operator=(PhysicalDeviceImageViewMinLodFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImageViewMinLodFeaturesEXT &operator=(VkPhysicalDeviceImageViewMinLodFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageViewMinLodFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageViewMinLodFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImageViewMinLodFeaturesEXT &setMinLod(VULKAN_HPP_NAMESPACE::Bool32 minLod_) VULKAN_HPP_NOEXCEPT
{
minLod = minLod_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceImageViewMinLodFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceImageViewMinLodFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceImageViewMinLodFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceImageViewMinLodFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, minLod);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceImageViewMinLodFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceImageViewMinLodFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (minLod == rhs.minLod);
# endif
}
bool operator!=(PhysicalDeviceImageViewMinLodFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImageViewMinLodFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 minLod = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceImageViewMinLodFeaturesEXT) == sizeof(VkPhysicalDeviceImageViewMinLodFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageViewMinLodFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageViewMinLodFeaturesEXT>::value,
"PhysicalDeviceImageViewMinLodFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceImageViewMinLodFeaturesEXT>
{
using Type = PhysicalDeviceImageViewMinLodFeaturesEXT;
};
struct PhysicalDeviceImagelessFramebufferFeatures
{
using NativeType = VkPhysicalDeviceImagelessFramebufferFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceImagelessFramebufferFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceImagelessFramebufferFeatures(VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
imagelessFramebuffer(imagelessFramebuffer_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceImagelessFramebufferFeatures(PhysicalDeviceImagelessFramebufferFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImagelessFramebufferFeatures(VkPhysicalDeviceImagelessFramebufferFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceImagelessFramebufferFeatures(*reinterpret_cast<PhysicalDeviceImagelessFramebufferFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceImagelessFramebufferFeatures &operator=(PhysicalDeviceImagelessFramebufferFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceImagelessFramebufferFeatures &operator=(VkPhysicalDeviceImagelessFramebufferFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceImagelessFramebufferFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImagelessFramebufferFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceImagelessFramebufferFeatures &
setImagelessFramebuffer(VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer_) VULKAN_HPP_NOEXCEPT
{
imagelessFramebuffer = imagelessFramebuffer_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceImagelessFramebufferFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceImagelessFramebufferFeatures *>(this);
}
explicit operator VkPhysicalDeviceImagelessFramebufferFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceImagelessFramebufferFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, imagelessFramebuffer);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceImagelessFramebufferFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceImagelessFramebufferFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (imagelessFramebuffer == rhs.imagelessFramebuffer);
# endif
}
bool operator!=(PhysicalDeviceImagelessFramebufferFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceImagelessFramebufferFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceImagelessFramebufferFeatures) ==
sizeof(VkPhysicalDeviceImagelessFramebufferFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceImagelessFramebufferFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceImagelessFramebufferFeatures>::value,
"PhysicalDeviceImagelessFramebufferFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceImagelessFramebufferFeatures>
{
using Type = PhysicalDeviceImagelessFramebufferFeatures;
};
using PhysicalDeviceImagelessFramebufferFeaturesKHR = PhysicalDeviceImagelessFramebufferFeatures;
struct PhysicalDeviceIndexTypeUint8FeaturesEXT
{
using NativeType = VkPhysicalDeviceIndexTypeUint8FeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceIndexTypeUint8FeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceIndexTypeUint8FeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 indexTypeUint8_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
indexTypeUint8(indexTypeUint8_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceIndexTypeUint8FeaturesEXT(PhysicalDeviceIndexTypeUint8FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceIndexTypeUint8FeaturesEXT(VkPhysicalDeviceIndexTypeUint8FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceIndexTypeUint8FeaturesEXT(*reinterpret_cast<PhysicalDeviceIndexTypeUint8FeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceIndexTypeUint8FeaturesEXT &operator=(PhysicalDeviceIndexTypeUint8FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceIndexTypeUint8FeaturesEXT &operator=(VkPhysicalDeviceIndexTypeUint8FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceIndexTypeUint8FeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceIndexTypeUint8FeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceIndexTypeUint8FeaturesEXT &setIndexTypeUint8(VULKAN_HPP_NAMESPACE::Bool32 indexTypeUint8_) VULKAN_HPP_NOEXCEPT
{
indexTypeUint8 = indexTypeUint8_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceIndexTypeUint8FeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceIndexTypeUint8FeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceIndexTypeUint8FeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceIndexTypeUint8FeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, indexTypeUint8);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceIndexTypeUint8FeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceIndexTypeUint8FeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (indexTypeUint8 == rhs.indexTypeUint8);
# endif
}
bool operator!=(PhysicalDeviceIndexTypeUint8FeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceIndexTypeUint8FeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 indexTypeUint8 = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceIndexTypeUint8FeaturesEXT) == sizeof(VkPhysicalDeviceIndexTypeUint8FeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceIndexTypeUint8FeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceIndexTypeUint8FeaturesEXT>::value,
"PhysicalDeviceIndexTypeUint8FeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceIndexTypeUint8FeaturesEXT>
{
using Type = PhysicalDeviceIndexTypeUint8FeaturesEXT;
};
struct PhysicalDeviceInheritedViewportScissorFeaturesNV
{
using NativeType = VkPhysicalDeviceInheritedViewportScissorFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceInheritedViewportScissorFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceInheritedViewportScissorFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 inheritedViewportScissor2D_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
inheritedViewportScissor2D(inheritedViewportScissor2D_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceInheritedViewportScissorFeaturesNV(PhysicalDeviceInheritedViewportScissorFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceInheritedViewportScissorFeaturesNV(VkPhysicalDeviceInheritedViewportScissorFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceInheritedViewportScissorFeaturesNV(*reinterpret_cast<PhysicalDeviceInheritedViewportScissorFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceInheritedViewportScissorFeaturesNV &operator=(PhysicalDeviceInheritedViewportScissorFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceInheritedViewportScissorFeaturesNV &operator=(VkPhysicalDeviceInheritedViewportScissorFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceInheritedViewportScissorFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceInheritedViewportScissorFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceInheritedViewportScissorFeaturesNV &
setInheritedViewportScissor2D(VULKAN_HPP_NAMESPACE::Bool32 inheritedViewportScissor2D_) VULKAN_HPP_NOEXCEPT
{
inheritedViewportScissor2D = inheritedViewportScissor2D_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceInheritedViewportScissorFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceInheritedViewportScissorFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceInheritedViewportScissorFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceInheritedViewportScissorFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, inheritedViewportScissor2D);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceInheritedViewportScissorFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceInheritedViewportScissorFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (inheritedViewportScissor2D == rhs.inheritedViewportScissor2D);
# endif
}
bool operator!=(PhysicalDeviceInheritedViewportScissorFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceInheritedViewportScissorFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 inheritedViewportScissor2D = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceInheritedViewportScissorFeaturesNV) ==
sizeof(VkPhysicalDeviceInheritedViewportScissorFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceInheritedViewportScissorFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceInheritedViewportScissorFeaturesNV>::value,
"PhysicalDeviceInheritedViewportScissorFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceInheritedViewportScissorFeaturesNV>
{
using Type = PhysicalDeviceInheritedViewportScissorFeaturesNV;
};
struct PhysicalDeviceInlineUniformBlockFeatures
{
using NativeType = VkPhysicalDeviceInlineUniformBlockFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceInlineUniformBlockFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceInlineUniformBlockFeatures(VULKAN_HPP_NAMESPACE::Bool32 inlineUniformBlock_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingInlineUniformBlockUpdateAfterBind_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
inlineUniformBlock(inlineUniformBlock_),
descriptorBindingInlineUniformBlockUpdateAfterBind(descriptorBindingInlineUniformBlockUpdateAfterBind_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceInlineUniformBlockFeatures(PhysicalDeviceInlineUniformBlockFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceInlineUniformBlockFeatures(VkPhysicalDeviceInlineUniformBlockFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceInlineUniformBlockFeatures(*reinterpret_cast<PhysicalDeviceInlineUniformBlockFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceInlineUniformBlockFeatures &operator=(PhysicalDeviceInlineUniformBlockFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceInlineUniformBlockFeatures &operator=(VkPhysicalDeviceInlineUniformBlockFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceInlineUniformBlockFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceInlineUniformBlockFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceInlineUniformBlockFeatures &
setInlineUniformBlock(VULKAN_HPP_NAMESPACE::Bool32 inlineUniformBlock_) VULKAN_HPP_NOEXCEPT
{
inlineUniformBlock = inlineUniformBlock_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceInlineUniformBlockFeatures &setDescriptorBindingInlineUniformBlockUpdateAfterBind(
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingInlineUniformBlockUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingInlineUniformBlockUpdateAfterBind = descriptorBindingInlineUniformBlockUpdateAfterBind_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceInlineUniformBlockFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockFeatures *>(this);
}
explicit operator VkPhysicalDeviceInlineUniformBlockFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceInlineUniformBlockFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, inlineUniformBlock, descriptorBindingInlineUniformBlockUpdateAfterBind);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceInlineUniformBlockFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceInlineUniformBlockFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (inlineUniformBlock == rhs.inlineUniformBlock) &&
(descriptorBindingInlineUniformBlockUpdateAfterBind == rhs.descriptorBindingInlineUniformBlockUpdateAfterBind);
# endif
}
bool operator!=(PhysicalDeviceInlineUniformBlockFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceInlineUniformBlockFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 inlineUniformBlock = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingInlineUniformBlockUpdateAfterBind = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceInlineUniformBlockFeatures) == sizeof(VkPhysicalDeviceInlineUniformBlockFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceInlineUniformBlockFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceInlineUniformBlockFeatures>::value,
"PhysicalDeviceInlineUniformBlockFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceInlineUniformBlockFeatures>
{
using Type = PhysicalDeviceInlineUniformBlockFeatures;
};
using PhysicalDeviceInlineUniformBlockFeaturesEXT = PhysicalDeviceInlineUniformBlockFeatures;
struct PhysicalDeviceInlineUniformBlockProperties
{
using NativeType = VkPhysicalDeviceInlineUniformBlockProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceInlineUniformBlockProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceInlineUniformBlockProperties(uint32_t maxInlineUniformBlockSize_ = {},
uint32_t maxPerStageDescriptorInlineUniformBlocks_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_ = {},
uint32_t maxDescriptorSetInlineUniformBlocks_ = {},
uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxInlineUniformBlockSize(maxInlineUniformBlockSize_),
maxPerStageDescriptorInlineUniformBlocks(maxPerStageDescriptorInlineUniformBlocks_),
maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks(maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_),
maxDescriptorSetInlineUniformBlocks(maxDescriptorSetInlineUniformBlocks_),
maxDescriptorSetUpdateAfterBindInlineUniformBlocks(maxDescriptorSetUpdateAfterBindInlineUniformBlocks_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceInlineUniformBlockProperties(PhysicalDeviceInlineUniformBlockProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceInlineUniformBlockProperties(VkPhysicalDeviceInlineUniformBlockProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceInlineUniformBlockProperties(*reinterpret_cast<PhysicalDeviceInlineUniformBlockProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceInlineUniformBlockProperties &operator=(PhysicalDeviceInlineUniformBlockProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceInlineUniformBlockProperties &operator=(VkPhysicalDeviceInlineUniformBlockProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceInlineUniformBlockProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceInlineUniformBlockProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockProperties *>(this);
}
explicit operator VkPhysicalDeviceInlineUniformBlockProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceInlineUniformBlockProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
maxInlineUniformBlockSize,
maxPerStageDescriptorInlineUniformBlocks,
maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks,
maxDescriptorSetInlineUniformBlocks,
maxDescriptorSetUpdateAfterBindInlineUniformBlocks);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceInlineUniformBlockProperties const &) const = default;
#else
bool operator==(PhysicalDeviceInlineUniformBlockProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxInlineUniformBlockSize == rhs.maxInlineUniformBlockSize) &&
(maxPerStageDescriptorInlineUniformBlocks == rhs.maxPerStageDescriptorInlineUniformBlocks) &&
(maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks == rhs.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks) &&
(maxDescriptorSetInlineUniformBlocks == rhs.maxDescriptorSetInlineUniformBlocks) &&
(maxDescriptorSetUpdateAfterBindInlineUniformBlocks == rhs.maxDescriptorSetUpdateAfterBindInlineUniformBlocks);
# endif
}
bool operator!=(PhysicalDeviceInlineUniformBlockProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceInlineUniformBlockProperties;
void *pNext = {};
uint32_t maxInlineUniformBlockSize = {};
uint32_t maxPerStageDescriptorInlineUniformBlocks = {};
uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = {};
uint32_t maxDescriptorSetInlineUniformBlocks = {};
uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceInlineUniformBlockProperties) ==
sizeof(VkPhysicalDeviceInlineUniformBlockProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceInlineUniformBlockProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceInlineUniformBlockProperties>::value,
"PhysicalDeviceInlineUniformBlockProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceInlineUniformBlockProperties>
{
using Type = PhysicalDeviceInlineUniformBlockProperties;
};
using PhysicalDeviceInlineUniformBlockPropertiesEXT = PhysicalDeviceInlineUniformBlockProperties;
struct PhysicalDeviceInvocationMaskFeaturesHUAWEI
{
using NativeType = VkPhysicalDeviceInvocationMaskFeaturesHUAWEI;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceInvocationMaskFeaturesHUAWEI;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceInvocationMaskFeaturesHUAWEI(VULKAN_HPP_NAMESPACE::Bool32 invocationMask_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
invocationMask(invocationMask_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceInvocationMaskFeaturesHUAWEI(PhysicalDeviceInvocationMaskFeaturesHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceInvocationMaskFeaturesHUAWEI(VkPhysicalDeviceInvocationMaskFeaturesHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceInvocationMaskFeaturesHUAWEI(*reinterpret_cast<PhysicalDeviceInvocationMaskFeaturesHUAWEI const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceInvocationMaskFeaturesHUAWEI &operator=(PhysicalDeviceInvocationMaskFeaturesHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceInvocationMaskFeaturesHUAWEI &operator=(VkPhysicalDeviceInvocationMaskFeaturesHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceInvocationMaskFeaturesHUAWEI const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceInvocationMaskFeaturesHUAWEI &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceInvocationMaskFeaturesHUAWEI &setInvocationMask(VULKAN_HPP_NAMESPACE::Bool32 invocationMask_) VULKAN_HPP_NOEXCEPT
{
invocationMask = invocationMask_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceInvocationMaskFeaturesHUAWEI const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI *>(this);
}
explicit operator VkPhysicalDeviceInvocationMaskFeaturesHUAWEI &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, invocationMask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceInvocationMaskFeaturesHUAWEI const &) const = default;
#else
bool operator==(PhysicalDeviceInvocationMaskFeaturesHUAWEI const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (invocationMask == rhs.invocationMask);
# endif
}
bool operator!=(PhysicalDeviceInvocationMaskFeaturesHUAWEI const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceInvocationMaskFeaturesHUAWEI;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 invocationMask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceInvocationMaskFeaturesHUAWEI) ==
sizeof(VkPhysicalDeviceInvocationMaskFeaturesHUAWEI),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceInvocationMaskFeaturesHUAWEI>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceInvocationMaskFeaturesHUAWEI>::value,
"PhysicalDeviceInvocationMaskFeaturesHUAWEI is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceInvocationMaskFeaturesHUAWEI>
{
using Type = PhysicalDeviceInvocationMaskFeaturesHUAWEI;
};
struct PhysicalDeviceLimits
{
using NativeType = VkPhysicalDeviceLimits;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLimits(uint32_t maxImageDimension1D_ = {},
uint32_t maxImageDimension2D_ = {},
uint32_t maxImageDimension3D_ = {},
uint32_t maxImageDimensionCube_ = {},
uint32_t maxImageArrayLayers_ = {},
uint32_t maxTexelBufferElements_ = {},
uint32_t maxUniformBufferRange_ = {},
uint32_t maxStorageBufferRange_ = {},
uint32_t maxPushConstantsSize_ = {},
uint32_t maxMemoryAllocationCount_ = {},
uint32_t maxSamplerAllocationCount_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize bufferImageGranularity_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize sparseAddressSpaceSize_ = {},
uint32_t maxBoundDescriptorSets_ = {},
uint32_t maxPerStageDescriptorSamplers_ = {},
uint32_t maxPerStageDescriptorUniformBuffers_ = {},
uint32_t maxPerStageDescriptorStorageBuffers_ = {},
uint32_t maxPerStageDescriptorSampledImages_ = {},
uint32_t maxPerStageDescriptorStorageImages_ = {},
uint32_t maxPerStageDescriptorInputAttachments_ = {},
uint32_t maxPerStageResources_ = {},
uint32_t maxDescriptorSetSamplers_ = {},
uint32_t maxDescriptorSetUniformBuffers_ = {},
uint32_t maxDescriptorSetUniformBuffersDynamic_ = {},
uint32_t maxDescriptorSetStorageBuffers_ = {},
uint32_t maxDescriptorSetStorageBuffersDynamic_ = {},
uint32_t maxDescriptorSetSampledImages_ = {},
uint32_t maxDescriptorSetStorageImages_ = {},
uint32_t maxDescriptorSetInputAttachments_ = {},
uint32_t maxVertexInputAttributes_ = {},
uint32_t maxVertexInputBindings_ = {},
uint32_t maxVertexInputAttributeOffset_ = {},
uint32_t maxVertexInputBindingStride_ = {},
uint32_t maxVertexOutputComponents_ = {},
uint32_t maxTessellationGenerationLevel_ = {},
uint32_t maxTessellationPatchSize_ = {},
uint32_t maxTessellationControlPerVertexInputComponents_ = {},
uint32_t maxTessellationControlPerVertexOutputComponents_ = {},
uint32_t maxTessellationControlPerPatchOutputComponents_ = {},
uint32_t maxTessellationControlTotalOutputComponents_ = {},
uint32_t maxTessellationEvaluationInputComponents_ = {},
uint32_t maxTessellationEvaluationOutputComponents_ = {},
uint32_t maxGeometryShaderInvocations_ = {},
uint32_t maxGeometryInputComponents_ = {},
uint32_t maxGeometryOutputComponents_ = {},
uint32_t maxGeometryOutputVertices_ = {},
uint32_t maxGeometryTotalOutputComponents_ = {},
uint32_t maxFragmentInputComponents_ = {},
uint32_t maxFragmentOutputAttachments_ = {},
uint32_t maxFragmentDualSrcAttachments_ = {},
uint32_t maxFragmentCombinedOutputResources_ = {},
uint32_t maxComputeSharedMemorySize_ = {},
std::array<uint32_t, 3> const &maxComputeWorkGroupCount_ = {},
uint32_t maxComputeWorkGroupInvocations_ = {},
std::array<uint32_t, 3> const &maxComputeWorkGroupSize_ = {},
uint32_t subPixelPrecisionBits_ = {},
uint32_t subTexelPrecisionBits_ = {},
uint32_t mipmapPrecisionBits_ = {},
uint32_t maxDrawIndexedIndexValue_ = {},
uint32_t maxDrawIndirectCount_ = {},
float maxSamplerLodBias_ = {},
float maxSamplerAnisotropy_ = {},
uint32_t maxViewports_ = {},
std::array<uint32_t, 2> const &maxViewportDimensions_ = {},
std::array<float, 2> const &viewportBoundsRange_ = {},
uint32_t viewportSubPixelBits_ = {},
size_t minMemoryMapAlignment_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize minTexelBufferOffsetAlignment_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize minUniformBufferOffsetAlignment_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize minStorageBufferOffsetAlignment_ = {},
int32_t minTexelOffset_ = {},
uint32_t maxTexelOffset_ = {},
int32_t minTexelGatherOffset_ = {},
uint32_t maxTexelGatherOffset_ = {},
float minInterpolationOffset_ = {},
float maxInterpolationOffset_ = {},
uint32_t subPixelInterpolationOffsetBits_ = {},
uint32_t maxFramebufferWidth_ = {},
uint32_t maxFramebufferHeight_ = {},
uint32_t maxFramebufferLayers_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferColorSampleCounts_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferDepthSampleCounts_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferStencilSampleCounts_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferNoAttachmentsSampleCounts_ = {},
uint32_t maxColorAttachments_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageColorSampleCounts_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageIntegerSampleCounts_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageDepthSampleCounts_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageStencilSampleCounts_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlags storageImageSampleCounts_ = {},
uint32_t maxSampleMaskWords_ = {},
VULKAN_HPP_NAMESPACE::Bool32 timestampComputeAndGraphics_ = {},
float timestampPeriod_ = {},
uint32_t maxClipDistances_ = {},
uint32_t maxCullDistances_ = {},
uint32_t maxCombinedClipAndCullDistances_ = {},
uint32_t discreteQueuePriorities_ = {},
std::array<float, 2> const &pointSizeRange_ = {},
std::array<float, 2> const &lineWidthRange_ = {},
float pointSizeGranularity_ = {},
float lineWidthGranularity_ = {},
VULKAN_HPP_NAMESPACE::Bool32 strictLines_ = {},
VULKAN_HPP_NAMESPACE::Bool32 standardSampleLocations_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize optimalBufferCopyOffsetAlignment_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize optimalBufferCopyRowPitchAlignment_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize nonCoherentAtomSize_ = {}) VULKAN_HPP_NOEXCEPT
: maxImageDimension1D(maxImageDimension1D_),
maxImageDimension2D(maxImageDimension2D_),
maxImageDimension3D(maxImageDimension3D_),
maxImageDimensionCube(maxImageDimensionCube_),
maxImageArrayLayers(maxImageArrayLayers_),
maxTexelBufferElements(maxTexelBufferElements_),
maxUniformBufferRange(maxUniformBufferRange_),
maxStorageBufferRange(maxStorageBufferRange_),
maxPushConstantsSize(maxPushConstantsSize_),
maxMemoryAllocationCount(maxMemoryAllocationCount_),
maxSamplerAllocationCount(maxSamplerAllocationCount_),
bufferImageGranularity(bufferImageGranularity_),
sparseAddressSpaceSize(sparseAddressSpaceSize_),
maxBoundDescriptorSets(maxBoundDescriptorSets_),
maxPerStageDescriptorSamplers(maxPerStageDescriptorSamplers_),
maxPerStageDescriptorUniformBuffers(maxPerStageDescriptorUniformBuffers_),
maxPerStageDescriptorStorageBuffers(maxPerStageDescriptorStorageBuffers_),
maxPerStageDescriptorSampledImages(maxPerStageDescriptorSampledImages_),
maxPerStageDescriptorStorageImages(maxPerStageDescriptorStorageImages_),
maxPerStageDescriptorInputAttachments(maxPerStageDescriptorInputAttachments_),
maxPerStageResources(maxPerStageResources_),
maxDescriptorSetSamplers(maxDescriptorSetSamplers_),
maxDescriptorSetUniformBuffers(maxDescriptorSetUniformBuffers_),
maxDescriptorSetUniformBuffersDynamic(maxDescriptorSetUniformBuffersDynamic_),
maxDescriptorSetStorageBuffers(maxDescriptorSetStorageBuffers_),
maxDescriptorSetStorageBuffersDynamic(maxDescriptorSetStorageBuffersDynamic_),
maxDescriptorSetSampledImages(maxDescriptorSetSampledImages_),
maxDescriptorSetStorageImages(maxDescriptorSetStorageImages_),
maxDescriptorSetInputAttachments(maxDescriptorSetInputAttachments_),
maxVertexInputAttributes(maxVertexInputAttributes_),
maxVertexInputBindings(maxVertexInputBindings_),
maxVertexInputAttributeOffset(maxVertexInputAttributeOffset_),
maxVertexInputBindingStride(maxVertexInputBindingStride_),
maxVertexOutputComponents(maxVertexOutputComponents_),
maxTessellationGenerationLevel(maxTessellationGenerationLevel_),
maxTessellationPatchSize(maxTessellationPatchSize_),
maxTessellationControlPerVertexInputComponents(maxTessellationControlPerVertexInputComponents_),
maxTessellationControlPerVertexOutputComponents(maxTessellationControlPerVertexOutputComponents_),
maxTessellationControlPerPatchOutputComponents(maxTessellationControlPerPatchOutputComponents_),
maxTessellationControlTotalOutputComponents(maxTessellationControlTotalOutputComponents_),
maxTessellationEvaluationInputComponents(maxTessellationEvaluationInputComponents_),
maxTessellationEvaluationOutputComponents(maxTessellationEvaluationOutputComponents_),
maxGeometryShaderInvocations(maxGeometryShaderInvocations_),
maxGeometryInputComponents(maxGeometryInputComponents_),
maxGeometryOutputComponents(maxGeometryOutputComponents_),
maxGeometryOutputVertices(maxGeometryOutputVertices_),
maxGeometryTotalOutputComponents(maxGeometryTotalOutputComponents_),
maxFragmentInputComponents(maxFragmentInputComponents_),
maxFragmentOutputAttachments(maxFragmentOutputAttachments_),
maxFragmentDualSrcAttachments(maxFragmentDualSrcAttachments_),
maxFragmentCombinedOutputResources(maxFragmentCombinedOutputResources_),
maxComputeSharedMemorySize(maxComputeSharedMemorySize_),
maxComputeWorkGroupCount(maxComputeWorkGroupCount_),
maxComputeWorkGroupInvocations(maxComputeWorkGroupInvocations_),
maxComputeWorkGroupSize(maxComputeWorkGroupSize_),
subPixelPrecisionBits(subPixelPrecisionBits_),
subTexelPrecisionBits(subTexelPrecisionBits_),
mipmapPrecisionBits(mipmapPrecisionBits_),
maxDrawIndexedIndexValue(maxDrawIndexedIndexValue_),
maxDrawIndirectCount(maxDrawIndirectCount_),
maxSamplerLodBias(maxSamplerLodBias_),
maxSamplerAnisotropy(maxSamplerAnisotropy_),
maxViewports(maxViewports_),
maxViewportDimensions(maxViewportDimensions_),
viewportBoundsRange(viewportBoundsRange_),
viewportSubPixelBits(viewportSubPixelBits_),
minMemoryMapAlignment(minMemoryMapAlignment_),
minTexelBufferOffsetAlignment(minTexelBufferOffsetAlignment_),
minUniformBufferOffsetAlignment(minUniformBufferOffsetAlignment_),
minStorageBufferOffsetAlignment(minStorageBufferOffsetAlignment_),
minTexelOffset(minTexelOffset_),
maxTexelOffset(maxTexelOffset_),
minTexelGatherOffset(minTexelGatherOffset_),
maxTexelGatherOffset(maxTexelGatherOffset_),
minInterpolationOffset(minInterpolationOffset_),
maxInterpolationOffset(maxInterpolationOffset_),
subPixelInterpolationOffsetBits(subPixelInterpolationOffsetBits_),
maxFramebufferWidth(maxFramebufferWidth_),
maxFramebufferHeight(maxFramebufferHeight_),
maxFramebufferLayers(maxFramebufferLayers_),
framebufferColorSampleCounts(framebufferColorSampleCounts_),
framebufferDepthSampleCounts(framebufferDepthSampleCounts_),
framebufferStencilSampleCounts(framebufferStencilSampleCounts_),
framebufferNoAttachmentsSampleCounts(framebufferNoAttachmentsSampleCounts_),
maxColorAttachments(maxColorAttachments_),
sampledImageColorSampleCounts(sampledImageColorSampleCounts_),
sampledImageIntegerSampleCounts(sampledImageIntegerSampleCounts_),
sampledImageDepthSampleCounts(sampledImageDepthSampleCounts_),
sampledImageStencilSampleCounts(sampledImageStencilSampleCounts_),
storageImageSampleCounts(storageImageSampleCounts_),
maxSampleMaskWords(maxSampleMaskWords_),
timestampComputeAndGraphics(timestampComputeAndGraphics_),
timestampPeriod(timestampPeriod_),
maxClipDistances(maxClipDistances_),
maxCullDistances(maxCullDistances_),
maxCombinedClipAndCullDistances(maxCombinedClipAndCullDistances_),
discreteQueuePriorities(discreteQueuePriorities_),
pointSizeRange(pointSizeRange_),
lineWidthRange(lineWidthRange_),
pointSizeGranularity(pointSizeGranularity_),
lineWidthGranularity(lineWidthGranularity_),
strictLines(strictLines_),
standardSampleLocations(standardSampleLocations_),
optimalBufferCopyOffsetAlignment(optimalBufferCopyOffsetAlignment_),
optimalBufferCopyRowPitchAlignment(optimalBufferCopyRowPitchAlignment_),
nonCoherentAtomSize(nonCoherentAtomSize_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLimits(PhysicalDeviceLimits const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceLimits(VkPhysicalDeviceLimits const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceLimits(*reinterpret_cast<PhysicalDeviceLimits const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceLimits &operator=(PhysicalDeviceLimits const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceLimits &operator=(VkPhysicalDeviceLimits const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceLimits const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceLimits *>(this);
}
explicit operator VkPhysicalDeviceLimits &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceLimits *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
float const &,
float const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 2> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> const &,
uint32_t const &,
size_t const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
int32_t const &,
uint32_t const &,
int32_t const &,
uint32_t const &,
float const &,
float const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
float const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> const &,
float const &,
float const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(maxImageDimension1D,
maxImageDimension2D,
maxImageDimension3D,
maxImageDimensionCube,
maxImageArrayLayers,
maxTexelBufferElements,
maxUniformBufferRange,
maxStorageBufferRange,
maxPushConstantsSize,
maxMemoryAllocationCount,
maxSamplerAllocationCount,
bufferImageGranularity,
sparseAddressSpaceSize,
maxBoundDescriptorSets,
maxPerStageDescriptorSamplers,
maxPerStageDescriptorUniformBuffers,
maxPerStageDescriptorStorageBuffers,
maxPerStageDescriptorSampledImages,
maxPerStageDescriptorStorageImages,
maxPerStageDescriptorInputAttachments,
maxPerStageResources,
maxDescriptorSetSamplers,
maxDescriptorSetUniformBuffers,
maxDescriptorSetUniformBuffersDynamic,
maxDescriptorSetStorageBuffers,
maxDescriptorSetStorageBuffersDynamic,
maxDescriptorSetSampledImages,
maxDescriptorSetStorageImages,
maxDescriptorSetInputAttachments,
maxVertexInputAttributes,
maxVertexInputBindings,
maxVertexInputAttributeOffset,
maxVertexInputBindingStride,
maxVertexOutputComponents,
maxTessellationGenerationLevel,
maxTessellationPatchSize,
maxTessellationControlPerVertexInputComponents,
maxTessellationControlPerVertexOutputComponents,
maxTessellationControlPerPatchOutputComponents,
maxTessellationControlTotalOutputComponents,
maxTessellationEvaluationInputComponents,
maxTessellationEvaluationOutputComponents,
maxGeometryShaderInvocations,
maxGeometryInputComponents,
maxGeometryOutputComponents,
maxGeometryOutputVertices,
maxGeometryTotalOutputComponents,
maxFragmentInputComponents,
maxFragmentOutputAttachments,
maxFragmentDualSrcAttachments,
maxFragmentCombinedOutputResources,
maxComputeSharedMemorySize,
maxComputeWorkGroupCount,
maxComputeWorkGroupInvocations,
maxComputeWorkGroupSize,
subPixelPrecisionBits,
subTexelPrecisionBits,
mipmapPrecisionBits,
maxDrawIndexedIndexValue,
maxDrawIndirectCount,
maxSamplerLodBias,
maxSamplerAnisotropy,
maxViewports,
maxViewportDimensions,
viewportBoundsRange,
viewportSubPixelBits,
minMemoryMapAlignment,
minTexelBufferOffsetAlignment,
minUniformBufferOffsetAlignment,
minStorageBufferOffsetAlignment,
minTexelOffset,
maxTexelOffset,
minTexelGatherOffset,
maxTexelGatherOffset,
minInterpolationOffset,
maxInterpolationOffset,
subPixelInterpolationOffsetBits,
maxFramebufferWidth,
maxFramebufferHeight,
maxFramebufferLayers,
framebufferColorSampleCounts,
framebufferDepthSampleCounts,
framebufferStencilSampleCounts,
framebufferNoAttachmentsSampleCounts,
maxColorAttachments,
sampledImageColorSampleCounts,
sampledImageIntegerSampleCounts,
sampledImageDepthSampleCounts,
sampledImageStencilSampleCounts,
storageImageSampleCounts,
maxSampleMaskWords,
timestampComputeAndGraphics,
timestampPeriod,
maxClipDistances,
maxCullDistances,
maxCombinedClipAndCullDistances,
discreteQueuePriorities,
pointSizeRange,
lineWidthRange,
pointSizeGranularity,
lineWidthGranularity,
strictLines,
standardSampleLocations,
optimalBufferCopyOffsetAlignment,
optimalBufferCopyRowPitchAlignment,
nonCoherentAtomSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceLimits const &) const = default;
#else
bool operator==(PhysicalDeviceLimits const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (maxImageDimension1D == rhs.maxImageDimension1D) && (maxImageDimension2D == rhs.maxImageDimension2D) &&
(maxImageDimension3D == rhs.maxImageDimension3D) && (maxImageDimensionCube == rhs.maxImageDimensionCube) &&
(maxImageArrayLayers == rhs.maxImageArrayLayers) && (maxTexelBufferElements == rhs.maxTexelBufferElements) &&
(maxUniformBufferRange == rhs.maxUniformBufferRange) && (maxStorageBufferRange == rhs.maxStorageBufferRange) &&
(maxPushConstantsSize == rhs.maxPushConstantsSize) && (maxMemoryAllocationCount == rhs.maxMemoryAllocationCount) &&
(maxSamplerAllocationCount == rhs.maxSamplerAllocationCount) && (bufferImageGranularity == rhs.bufferImageGranularity) &&
(sparseAddressSpaceSize == rhs.sparseAddressSpaceSize) && (maxBoundDescriptorSets == rhs.maxBoundDescriptorSets) &&
(maxPerStageDescriptorSamplers == rhs.maxPerStageDescriptorSamplers) &&
(maxPerStageDescriptorUniformBuffers == rhs.maxPerStageDescriptorUniformBuffers) &&
(maxPerStageDescriptorStorageBuffers == rhs.maxPerStageDescriptorStorageBuffers) &&
(maxPerStageDescriptorSampledImages == rhs.maxPerStageDescriptorSampledImages) &&
(maxPerStageDescriptorStorageImages == rhs.maxPerStageDescriptorStorageImages) &&
(maxPerStageDescriptorInputAttachments == rhs.maxPerStageDescriptorInputAttachments) && (maxPerStageResources == rhs.maxPerStageResources) &&
(maxDescriptorSetSamplers == rhs.maxDescriptorSetSamplers) && (maxDescriptorSetUniformBuffers == rhs.maxDescriptorSetUniformBuffers) &&
(maxDescriptorSetUniformBuffersDynamic == rhs.maxDescriptorSetUniformBuffersDynamic) &&
(maxDescriptorSetStorageBuffers == rhs.maxDescriptorSetStorageBuffers) &&
(maxDescriptorSetStorageBuffersDynamic == rhs.maxDescriptorSetStorageBuffersDynamic) &&
(maxDescriptorSetSampledImages == rhs.maxDescriptorSetSampledImages) && (maxDescriptorSetStorageImages == rhs.maxDescriptorSetStorageImages) &&
(maxDescriptorSetInputAttachments == rhs.maxDescriptorSetInputAttachments) && (maxVertexInputAttributes == rhs.maxVertexInputAttributes) &&
(maxVertexInputBindings == rhs.maxVertexInputBindings) && (maxVertexInputAttributeOffset == rhs.maxVertexInputAttributeOffset) &&
(maxVertexInputBindingStride == rhs.maxVertexInputBindingStride) && (maxVertexOutputComponents == rhs.maxVertexOutputComponents) &&
(maxTessellationGenerationLevel == rhs.maxTessellationGenerationLevel) && (maxTessellationPatchSize == rhs.maxTessellationPatchSize) &&
(maxTessellationControlPerVertexInputComponents == rhs.maxTessellationControlPerVertexInputComponents) &&
(maxTessellationControlPerVertexOutputComponents == rhs.maxTessellationControlPerVertexOutputComponents) &&
(maxTessellationControlPerPatchOutputComponents == rhs.maxTessellationControlPerPatchOutputComponents) &&
(maxTessellationControlTotalOutputComponents == rhs.maxTessellationControlTotalOutputComponents) &&
(maxTessellationEvaluationInputComponents == rhs.maxTessellationEvaluationInputComponents) &&
(maxTessellationEvaluationOutputComponents == rhs.maxTessellationEvaluationOutputComponents) &&
(maxGeometryShaderInvocations == rhs.maxGeometryShaderInvocations) && (maxGeometryInputComponents == rhs.maxGeometryInputComponents) &&
(maxGeometryOutputComponents == rhs.maxGeometryOutputComponents) && (maxGeometryOutputVertices == rhs.maxGeometryOutputVertices) &&
(maxGeometryTotalOutputComponents == rhs.maxGeometryTotalOutputComponents) && (maxFragmentInputComponents == rhs.maxFragmentInputComponents) &&
(maxFragmentOutputAttachments == rhs.maxFragmentOutputAttachments) && (maxFragmentDualSrcAttachments == rhs.maxFragmentDualSrcAttachments) &&
(maxFragmentCombinedOutputResources == rhs.maxFragmentCombinedOutputResources) &&
(maxComputeSharedMemorySize == rhs.maxComputeSharedMemorySize) && (maxComputeWorkGroupCount == rhs.maxComputeWorkGroupCount) &&
(maxComputeWorkGroupInvocations == rhs.maxComputeWorkGroupInvocations) && (maxComputeWorkGroupSize == rhs.maxComputeWorkGroupSize) &&
(subPixelPrecisionBits == rhs.subPixelPrecisionBits) && (subTexelPrecisionBits == rhs.subTexelPrecisionBits) &&
(mipmapPrecisionBits == rhs.mipmapPrecisionBits) && (maxDrawIndexedIndexValue == rhs.maxDrawIndexedIndexValue) &&
(maxDrawIndirectCount == rhs.maxDrawIndirectCount) && (maxSamplerLodBias == rhs.maxSamplerLodBias) &&
(maxSamplerAnisotropy == rhs.maxSamplerAnisotropy) && (maxViewports == rhs.maxViewports) &&
(maxViewportDimensions == rhs.maxViewportDimensions) && (viewportBoundsRange == rhs.viewportBoundsRange) &&
(viewportSubPixelBits == rhs.viewportSubPixelBits) && (minMemoryMapAlignment == rhs.minMemoryMapAlignment) &&
(minTexelBufferOffsetAlignment == rhs.minTexelBufferOffsetAlignment) &&
(minUniformBufferOffsetAlignment == rhs.minUniformBufferOffsetAlignment) &&
(minStorageBufferOffsetAlignment == rhs.minStorageBufferOffsetAlignment) && (minTexelOffset == rhs.minTexelOffset) &&
(maxTexelOffset == rhs.maxTexelOffset) && (minTexelGatherOffset == rhs.minTexelGatherOffset) &&
(maxTexelGatherOffset == rhs.maxTexelGatherOffset) && (minInterpolationOffset == rhs.minInterpolationOffset) &&
(maxInterpolationOffset == rhs.maxInterpolationOffset) && (subPixelInterpolationOffsetBits == rhs.subPixelInterpolationOffsetBits) &&
(maxFramebufferWidth == rhs.maxFramebufferWidth) && (maxFramebufferHeight == rhs.maxFramebufferHeight) &&
(maxFramebufferLayers == rhs.maxFramebufferLayers) && (framebufferColorSampleCounts == rhs.framebufferColorSampleCounts) &&
(framebufferDepthSampleCounts == rhs.framebufferDepthSampleCounts) && (framebufferStencilSampleCounts == rhs.framebufferStencilSampleCounts) &&
(framebufferNoAttachmentsSampleCounts == rhs.framebufferNoAttachmentsSampleCounts) && (maxColorAttachments == rhs.maxColorAttachments) &&
(sampledImageColorSampleCounts == rhs.sampledImageColorSampleCounts) &&
(sampledImageIntegerSampleCounts == rhs.sampledImageIntegerSampleCounts) &&
(sampledImageDepthSampleCounts == rhs.sampledImageDepthSampleCounts) &&
(sampledImageStencilSampleCounts == rhs.sampledImageStencilSampleCounts) && (storageImageSampleCounts == rhs.storageImageSampleCounts) &&
(maxSampleMaskWords == rhs.maxSampleMaskWords) && (timestampComputeAndGraphics == rhs.timestampComputeAndGraphics) &&
(timestampPeriod == rhs.timestampPeriod) && (maxClipDistances == rhs.maxClipDistances) && (maxCullDistances == rhs.maxCullDistances) &&
(maxCombinedClipAndCullDistances == rhs.maxCombinedClipAndCullDistances) && (discreteQueuePriorities == rhs.discreteQueuePriorities) &&
(pointSizeRange == rhs.pointSizeRange) && (lineWidthRange == rhs.lineWidthRange) && (pointSizeGranularity == rhs.pointSizeGranularity) &&
(lineWidthGranularity == rhs.lineWidthGranularity) && (strictLines == rhs.strictLines) &&
(standardSampleLocations == rhs.standardSampleLocations) && (optimalBufferCopyOffsetAlignment == rhs.optimalBufferCopyOffsetAlignment) &&
(optimalBufferCopyRowPitchAlignment == rhs.optimalBufferCopyRowPitchAlignment) && (nonCoherentAtomSize == rhs.nonCoherentAtomSize);
# endif
}
bool operator!=(PhysicalDeviceLimits const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t maxImageDimension1D = {};
uint32_t maxImageDimension2D = {};
uint32_t maxImageDimension3D = {};
uint32_t maxImageDimensionCube = {};
uint32_t maxImageArrayLayers = {};
uint32_t maxTexelBufferElements = {};
uint32_t maxUniformBufferRange = {};
uint32_t maxStorageBufferRange = {};
uint32_t maxPushConstantsSize = {};
uint32_t maxMemoryAllocationCount = {};
uint32_t maxSamplerAllocationCount = {};
VULKAN_HPP_NAMESPACE::DeviceSize bufferImageGranularity = {};
VULKAN_HPP_NAMESPACE::DeviceSize sparseAddressSpaceSize = {};
uint32_t maxBoundDescriptorSets = {};
uint32_t maxPerStageDescriptorSamplers = {};
uint32_t maxPerStageDescriptorUniformBuffers = {};
uint32_t maxPerStageDescriptorStorageBuffers = {};
uint32_t maxPerStageDescriptorSampledImages = {};
uint32_t maxPerStageDescriptorStorageImages = {};
uint32_t maxPerStageDescriptorInputAttachments = {};
uint32_t maxPerStageResources = {};
uint32_t maxDescriptorSetSamplers = {};
uint32_t maxDescriptorSetUniformBuffers = {};
uint32_t maxDescriptorSetUniformBuffersDynamic = {};
uint32_t maxDescriptorSetStorageBuffers = {};
uint32_t maxDescriptorSetStorageBuffersDynamic = {};
uint32_t maxDescriptorSetSampledImages = {};
uint32_t maxDescriptorSetStorageImages = {};
uint32_t maxDescriptorSetInputAttachments = {};
uint32_t maxVertexInputAttributes = {};
uint32_t maxVertexInputBindings = {};
uint32_t maxVertexInputAttributeOffset = {};
uint32_t maxVertexInputBindingStride = {};
uint32_t maxVertexOutputComponents = {};
uint32_t maxTessellationGenerationLevel = {};
uint32_t maxTessellationPatchSize = {};
uint32_t maxTessellationControlPerVertexInputComponents = {};
uint32_t maxTessellationControlPerVertexOutputComponents = {};
uint32_t maxTessellationControlPerPatchOutputComponents = {};
uint32_t maxTessellationControlTotalOutputComponents = {};
uint32_t maxTessellationEvaluationInputComponents = {};
uint32_t maxTessellationEvaluationOutputComponents = {};
uint32_t maxGeometryShaderInvocations = {};
uint32_t maxGeometryInputComponents = {};
uint32_t maxGeometryOutputComponents = {};
uint32_t maxGeometryOutputVertices = {};
uint32_t maxGeometryTotalOutputComponents = {};
uint32_t maxFragmentInputComponents = {};
uint32_t maxFragmentOutputAttachments = {};
uint32_t maxFragmentDualSrcAttachments = {};
uint32_t maxFragmentCombinedOutputResources = {};
uint32_t maxComputeSharedMemorySize = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> maxComputeWorkGroupCount = {};
uint32_t maxComputeWorkGroupInvocations = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> maxComputeWorkGroupSize = {};
uint32_t subPixelPrecisionBits = {};
uint32_t subTexelPrecisionBits = {};
uint32_t mipmapPrecisionBits = {};
uint32_t maxDrawIndexedIndexValue = {};
uint32_t maxDrawIndirectCount = {};
float maxSamplerLodBias = {};
float maxSamplerAnisotropy = {};
uint32_t maxViewports = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 2> maxViewportDimensions = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> viewportBoundsRange = {};
uint32_t viewportSubPixelBits = {};
size_t minMemoryMapAlignment = {};
VULKAN_HPP_NAMESPACE::DeviceSize minTexelBufferOffsetAlignment = {};
VULKAN_HPP_NAMESPACE::DeviceSize minUniformBufferOffsetAlignment = {};
VULKAN_HPP_NAMESPACE::DeviceSize minStorageBufferOffsetAlignment = {};
int32_t minTexelOffset = {};
uint32_t maxTexelOffset = {};
int32_t minTexelGatherOffset = {};
uint32_t maxTexelGatherOffset = {};
float minInterpolationOffset = {};
float maxInterpolationOffset = {};
uint32_t subPixelInterpolationOffsetBits = {};
uint32_t maxFramebufferWidth = {};
uint32_t maxFramebufferHeight = {};
uint32_t maxFramebufferLayers = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferColorSampleCounts = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferDepthSampleCounts = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferStencilSampleCounts = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferNoAttachmentsSampleCounts = {};
uint32_t maxColorAttachments = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageColorSampleCounts = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageIntegerSampleCounts = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageDepthSampleCounts = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags sampledImageStencilSampleCounts = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags storageImageSampleCounts = {};
uint32_t maxSampleMaskWords = {};
VULKAN_HPP_NAMESPACE::Bool32 timestampComputeAndGraphics = {};
float timestampPeriod = {};
uint32_t maxClipDistances = {};
uint32_t maxCullDistances = {};
uint32_t maxCombinedClipAndCullDistances = {};
uint32_t discreteQueuePriorities = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> pointSizeRange = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> lineWidthRange = {};
float pointSizeGranularity = {};
float lineWidthGranularity = {};
VULKAN_HPP_NAMESPACE::Bool32 strictLines = {};
VULKAN_HPP_NAMESPACE::Bool32 standardSampleLocations = {};
VULKAN_HPP_NAMESPACE::DeviceSize optimalBufferCopyOffsetAlignment = {};
VULKAN_HPP_NAMESPACE::DeviceSize optimalBufferCopyRowPitchAlignment = {};
VULKAN_HPP_NAMESPACE::DeviceSize nonCoherentAtomSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits) == sizeof(VkPhysicalDeviceLimits),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits>::value,
"PhysicalDeviceLimits is not nothrow_move_constructible!");
struct PhysicalDeviceLineRasterizationFeaturesEXT
{
using NativeType = VkPhysicalDeviceLineRasterizationFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceLineRasterizationFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceLineRasterizationFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 rectangularLines_ = {},
VULKAN_HPP_NAMESPACE::Bool32 bresenhamLines_ = {},
VULKAN_HPP_NAMESPACE::Bool32 smoothLines_ = {},
VULKAN_HPP_NAMESPACE::Bool32 stippledRectangularLines_ = {},
VULKAN_HPP_NAMESPACE::Bool32 stippledBresenhamLines_ = {},
VULKAN_HPP_NAMESPACE::Bool32 stippledSmoothLines_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
rectangularLines(rectangularLines_),
bresenhamLines(bresenhamLines_),
smoothLines(smoothLines_),
stippledRectangularLines(stippledRectangularLines_),
stippledBresenhamLines(stippledBresenhamLines_),
stippledSmoothLines(stippledSmoothLines_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceLineRasterizationFeaturesEXT(PhysicalDeviceLineRasterizationFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceLineRasterizationFeaturesEXT(VkPhysicalDeviceLineRasterizationFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceLineRasterizationFeaturesEXT(*reinterpret_cast<PhysicalDeviceLineRasterizationFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceLineRasterizationFeaturesEXT &operator=(PhysicalDeviceLineRasterizationFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceLineRasterizationFeaturesEXT &operator=(VkPhysicalDeviceLineRasterizationFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceLineRasterizationFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLineRasterizationFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLineRasterizationFeaturesEXT &
setRectangularLines(VULKAN_HPP_NAMESPACE::Bool32 rectangularLines_) VULKAN_HPP_NOEXCEPT
{
rectangularLines = rectangularLines_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLineRasterizationFeaturesEXT &setBresenhamLines(VULKAN_HPP_NAMESPACE::Bool32 bresenhamLines_) VULKAN_HPP_NOEXCEPT
{
bresenhamLines = bresenhamLines_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLineRasterizationFeaturesEXT &setSmoothLines(VULKAN_HPP_NAMESPACE::Bool32 smoothLines_) VULKAN_HPP_NOEXCEPT
{
smoothLines = smoothLines_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLineRasterizationFeaturesEXT &
setStippledRectangularLines(VULKAN_HPP_NAMESPACE::Bool32 stippledRectangularLines_) VULKAN_HPP_NOEXCEPT
{
stippledRectangularLines = stippledRectangularLines_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLineRasterizationFeaturesEXT &
setStippledBresenhamLines(VULKAN_HPP_NAMESPACE::Bool32 stippledBresenhamLines_) VULKAN_HPP_NOEXCEPT
{
stippledBresenhamLines = stippledBresenhamLines_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLineRasterizationFeaturesEXT &
setStippledSmoothLines(VULKAN_HPP_NAMESPACE::Bool32 stippledSmoothLines_) VULKAN_HPP_NOEXCEPT
{
stippledSmoothLines = stippledSmoothLines_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceLineRasterizationFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceLineRasterizationFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceLineRasterizationFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceLineRasterizationFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, rectangularLines, bresenhamLines, smoothLines, stippledRectangularLines, stippledBresenhamLines, stippledSmoothLines);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceLineRasterizationFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceLineRasterizationFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (rectangularLines == rhs.rectangularLines) && (bresenhamLines == rhs.bresenhamLines) &&
(smoothLines == rhs.smoothLines) && (stippledRectangularLines == rhs.stippledRectangularLines) &&
(stippledBresenhamLines == rhs.stippledBresenhamLines) && (stippledSmoothLines == rhs.stippledSmoothLines);
# endif
}
bool operator!=(PhysicalDeviceLineRasterizationFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceLineRasterizationFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 rectangularLines = {};
VULKAN_HPP_NAMESPACE::Bool32 bresenhamLines = {};
VULKAN_HPP_NAMESPACE::Bool32 smoothLines = {};
VULKAN_HPP_NAMESPACE::Bool32 stippledRectangularLines = {};
VULKAN_HPP_NAMESPACE::Bool32 stippledBresenhamLines = {};
VULKAN_HPP_NAMESPACE::Bool32 stippledSmoothLines = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceLineRasterizationFeaturesEXT) ==
sizeof(VkPhysicalDeviceLineRasterizationFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceLineRasterizationFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceLineRasterizationFeaturesEXT>::value,
"PhysicalDeviceLineRasterizationFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceLineRasterizationFeaturesEXT>
{
using Type = PhysicalDeviceLineRasterizationFeaturesEXT;
};
struct PhysicalDeviceLineRasterizationPropertiesEXT
{
using NativeType = VkPhysicalDeviceLineRasterizationPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceLineRasterizationPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceLineRasterizationPropertiesEXT(uint32_t lineSubPixelPrecisionBits_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
lineSubPixelPrecisionBits(lineSubPixelPrecisionBits_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceLineRasterizationPropertiesEXT(PhysicalDeviceLineRasterizationPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceLineRasterizationPropertiesEXT(VkPhysicalDeviceLineRasterizationPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceLineRasterizationPropertiesEXT(*reinterpret_cast<PhysicalDeviceLineRasterizationPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceLineRasterizationPropertiesEXT &operator=(PhysicalDeviceLineRasterizationPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceLineRasterizationPropertiesEXT &operator=(VkPhysicalDeviceLineRasterizationPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceLineRasterizationPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceLineRasterizationPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceLineRasterizationPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceLineRasterizationPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceLineRasterizationPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, lineSubPixelPrecisionBits);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceLineRasterizationPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceLineRasterizationPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (lineSubPixelPrecisionBits == rhs.lineSubPixelPrecisionBits);
# endif
}
bool operator!=(PhysicalDeviceLineRasterizationPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceLineRasterizationPropertiesEXT;
void *pNext = {};
uint32_t lineSubPixelPrecisionBits = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceLineRasterizationPropertiesEXT) ==
sizeof(VkPhysicalDeviceLineRasterizationPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceLineRasterizationPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceLineRasterizationPropertiesEXT>::value,
"PhysicalDeviceLineRasterizationPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceLineRasterizationPropertiesEXT>
{
using Type = PhysicalDeviceLineRasterizationPropertiesEXT;
};
struct PhysicalDeviceLinearColorAttachmentFeaturesNV
{
using NativeType = VkPhysicalDeviceLinearColorAttachmentFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceLinearColorAttachmentFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceLinearColorAttachmentFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 linearColorAttachment_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
linearColorAttachment(linearColorAttachment_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceLinearColorAttachmentFeaturesNV(PhysicalDeviceLinearColorAttachmentFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceLinearColorAttachmentFeaturesNV(VkPhysicalDeviceLinearColorAttachmentFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceLinearColorAttachmentFeaturesNV(*reinterpret_cast<PhysicalDeviceLinearColorAttachmentFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceLinearColorAttachmentFeaturesNV &operator=(PhysicalDeviceLinearColorAttachmentFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceLinearColorAttachmentFeaturesNV &operator=(VkPhysicalDeviceLinearColorAttachmentFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceLinearColorAttachmentFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLinearColorAttachmentFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceLinearColorAttachmentFeaturesNV &
setLinearColorAttachment(VULKAN_HPP_NAMESPACE::Bool32 linearColorAttachment_) VULKAN_HPP_NOEXCEPT
{
linearColorAttachment = linearColorAttachment_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceLinearColorAttachmentFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceLinearColorAttachmentFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceLinearColorAttachmentFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceLinearColorAttachmentFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, linearColorAttachment);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceLinearColorAttachmentFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceLinearColorAttachmentFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (linearColorAttachment == rhs.linearColorAttachment);
# endif
}
bool operator!=(PhysicalDeviceLinearColorAttachmentFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceLinearColorAttachmentFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 linearColorAttachment = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceLinearColorAttachmentFeaturesNV) ==
sizeof(VkPhysicalDeviceLinearColorAttachmentFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceLinearColorAttachmentFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceLinearColorAttachmentFeaturesNV>::value,
"PhysicalDeviceLinearColorAttachmentFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceLinearColorAttachmentFeaturesNV>
{
using Type = PhysicalDeviceLinearColorAttachmentFeaturesNV;
};
struct PhysicalDeviceMaintenance3Properties
{
using NativeType = VkPhysicalDeviceMaintenance3Properties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMaintenance3Properties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceMaintenance3Properties(uint32_t maxPerSetDescriptors_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize maxMemoryAllocationSize_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxPerSetDescriptors(maxPerSetDescriptors_),
maxMemoryAllocationSize(maxMemoryAllocationSize_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceMaintenance3Properties(PhysicalDeviceMaintenance3Properties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMaintenance3Properties(VkPhysicalDeviceMaintenance3Properties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMaintenance3Properties(*reinterpret_cast<PhysicalDeviceMaintenance3Properties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMaintenance3Properties &operator=(PhysicalDeviceMaintenance3Properties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMaintenance3Properties &operator=(VkPhysicalDeviceMaintenance3Properties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance3Properties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceMaintenance3Properties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMaintenance3Properties *>(this);
}
explicit operator VkPhysicalDeviceMaintenance3Properties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMaintenance3Properties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &, VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxPerSetDescriptors, maxMemoryAllocationSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMaintenance3Properties const &) const = default;
#else
bool operator==(PhysicalDeviceMaintenance3Properties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxPerSetDescriptors == rhs.maxPerSetDescriptors) &&
(maxMemoryAllocationSize == rhs.maxMemoryAllocationSize);
# endif
}
bool operator!=(PhysicalDeviceMaintenance3Properties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMaintenance3Properties;
void *pNext = {};
uint32_t maxPerSetDescriptors = {};
VULKAN_HPP_NAMESPACE::DeviceSize maxMemoryAllocationSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance3Properties) == sizeof(VkPhysicalDeviceMaintenance3Properties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance3Properties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance3Properties>::value,
"PhysicalDeviceMaintenance3Properties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMaintenance3Properties>
{
using Type = PhysicalDeviceMaintenance3Properties;
};
using PhysicalDeviceMaintenance3PropertiesKHR = PhysicalDeviceMaintenance3Properties;
struct PhysicalDeviceMaintenance4Features
{
using NativeType = VkPhysicalDeviceMaintenance4Features;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMaintenance4Features;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceMaintenance4Features(VULKAN_HPP_NAMESPACE::Bool32 maintenance4_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maintenance4(maintenance4_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceMaintenance4Features(PhysicalDeviceMaintenance4Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMaintenance4Features(VkPhysicalDeviceMaintenance4Features const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMaintenance4Features(*reinterpret_cast<PhysicalDeviceMaintenance4Features const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMaintenance4Features &operator=(PhysicalDeviceMaintenance4Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMaintenance4Features &operator=(VkPhysicalDeviceMaintenance4Features const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance4Features const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMaintenance4Features &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMaintenance4Features &setMaintenance4(VULKAN_HPP_NAMESPACE::Bool32 maintenance4_) VULKAN_HPP_NOEXCEPT
{
maintenance4 = maintenance4_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceMaintenance4Features const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMaintenance4Features *>(this);
}
explicit operator VkPhysicalDeviceMaintenance4Features &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMaintenance4Features *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maintenance4);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMaintenance4Features const &) const = default;
#else
bool operator==(PhysicalDeviceMaintenance4Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maintenance4 == rhs.maintenance4);
# endif
}
bool operator!=(PhysicalDeviceMaintenance4Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMaintenance4Features;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 maintenance4 = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance4Features) == sizeof(VkPhysicalDeviceMaintenance4Features),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance4Features>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance4Features>::value,
"PhysicalDeviceMaintenance4Features is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMaintenance4Features>
{
using Type = PhysicalDeviceMaintenance4Features;
};
using PhysicalDeviceMaintenance4FeaturesKHR = PhysicalDeviceMaintenance4Features;
struct PhysicalDeviceMaintenance4Properties
{
using NativeType = VkPhysicalDeviceMaintenance4Properties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMaintenance4Properties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceMaintenance4Properties(VULKAN_HPP_NAMESPACE::DeviceSize maxBufferSize_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxBufferSize(maxBufferSize_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceMaintenance4Properties(PhysicalDeviceMaintenance4Properties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMaintenance4Properties(VkPhysicalDeviceMaintenance4Properties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMaintenance4Properties(*reinterpret_cast<PhysicalDeviceMaintenance4Properties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMaintenance4Properties &operator=(PhysicalDeviceMaintenance4Properties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMaintenance4Properties &operator=(VkPhysicalDeviceMaintenance4Properties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance4Properties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceMaintenance4Properties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMaintenance4Properties *>(this);
}
explicit operator VkPhysicalDeviceMaintenance4Properties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMaintenance4Properties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxBufferSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMaintenance4Properties const &) const = default;
#else
bool operator==(PhysicalDeviceMaintenance4Properties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxBufferSize == rhs.maxBufferSize);
# endif
}
bool operator!=(PhysicalDeviceMaintenance4Properties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMaintenance4Properties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceSize maxBufferSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance4Properties) == sizeof(VkPhysicalDeviceMaintenance4Properties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance4Properties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance4Properties>::value,
"PhysicalDeviceMaintenance4Properties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMaintenance4Properties>
{
using Type = PhysicalDeviceMaintenance4Properties;
};
using PhysicalDeviceMaintenance4PropertiesKHR = PhysicalDeviceMaintenance4Properties;
struct PhysicalDeviceMemoryBudgetPropertiesEXT
{
using NativeType = VkPhysicalDeviceMemoryBudgetPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMemoryBudgetPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryBudgetPropertiesEXT(std::array<VULKAN_HPP_NAMESPACE::DeviceSize, VK_MAX_MEMORY_HEAPS> const &heapBudget_ = {},
std::array<VULKAN_HPP_NAMESPACE::DeviceSize, VK_MAX_MEMORY_HEAPS> const &heapUsage_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
heapBudget(heapBudget_),
heapUsage(heapUsage_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryBudgetPropertiesEXT(PhysicalDeviceMemoryBudgetPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMemoryBudgetPropertiesEXT(VkPhysicalDeviceMemoryBudgetPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMemoryBudgetPropertiesEXT(*reinterpret_cast<PhysicalDeviceMemoryBudgetPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMemoryBudgetPropertiesEXT &operator=(PhysicalDeviceMemoryBudgetPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMemoryBudgetPropertiesEXT &operator=(VkPhysicalDeviceMemoryBudgetPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryBudgetPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceMemoryBudgetPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMemoryBudgetPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceMemoryBudgetPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMemoryBudgetPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::DeviceSize, VK_MAX_MEMORY_HEAPS> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::DeviceSize, VK_MAX_MEMORY_HEAPS> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, heapBudget, heapUsage);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMemoryBudgetPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceMemoryBudgetPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (heapBudget == rhs.heapBudget) && (heapUsage == rhs.heapUsage);
# endif
}
bool operator!=(PhysicalDeviceMemoryBudgetPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMemoryBudgetPropertiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::DeviceSize, VK_MAX_MEMORY_HEAPS> heapBudget = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::DeviceSize, VK_MAX_MEMORY_HEAPS> heapUsage = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryBudgetPropertiesEXT) == sizeof(VkPhysicalDeviceMemoryBudgetPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryBudgetPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryBudgetPropertiesEXT>::value,
"PhysicalDeviceMemoryBudgetPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMemoryBudgetPropertiesEXT>
{
using Type = PhysicalDeviceMemoryBudgetPropertiesEXT;
};
struct PhysicalDeviceMemoryPriorityFeaturesEXT
{
using NativeType = VkPhysicalDeviceMemoryPriorityFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMemoryPriorityFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceMemoryPriorityFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 memoryPriority_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memoryPriority(memoryPriority_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceMemoryPriorityFeaturesEXT(PhysicalDeviceMemoryPriorityFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMemoryPriorityFeaturesEXT(VkPhysicalDeviceMemoryPriorityFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMemoryPriorityFeaturesEXT(*reinterpret_cast<PhysicalDeviceMemoryPriorityFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMemoryPriorityFeaturesEXT &operator=(PhysicalDeviceMemoryPriorityFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMemoryPriorityFeaturesEXT &operator=(VkPhysicalDeviceMemoryPriorityFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryPriorityFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryPriorityFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryPriorityFeaturesEXT &setMemoryPriority(VULKAN_HPP_NAMESPACE::Bool32 memoryPriority_) VULKAN_HPP_NOEXCEPT
{
memoryPriority = memoryPriority_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceMemoryPriorityFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMemoryPriorityFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceMemoryPriorityFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMemoryPriorityFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memoryPriority);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMemoryPriorityFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceMemoryPriorityFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memoryPriority == rhs.memoryPriority);
# endif
}
bool operator!=(PhysicalDeviceMemoryPriorityFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMemoryPriorityFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 memoryPriority = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryPriorityFeaturesEXT) == sizeof(VkPhysicalDeviceMemoryPriorityFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryPriorityFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryPriorityFeaturesEXT>::value,
"PhysicalDeviceMemoryPriorityFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMemoryPriorityFeaturesEXT>
{
using Type = PhysicalDeviceMemoryPriorityFeaturesEXT;
};
struct PhysicalDeviceMemoryProperties
{
using NativeType = VkPhysicalDeviceMemoryProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14
PhysicalDeviceMemoryProperties(uint32_t memoryTypeCount_ = {},
std::array<VULKAN_HPP_NAMESPACE::MemoryType, VK_MAX_MEMORY_TYPES> const &memoryTypes_ = {},
uint32_t memoryHeapCount_ = {},
std::array<VULKAN_HPP_NAMESPACE::MemoryHeap, VK_MAX_MEMORY_HEAPS> const &memoryHeaps_ = {}) VULKAN_HPP_NOEXCEPT
: memoryTypeCount(memoryTypeCount_),
memoryTypes(memoryTypes_),
memoryHeapCount(memoryHeapCount_),
memoryHeaps(memoryHeaps_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryProperties(PhysicalDeviceMemoryProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMemoryProperties(*reinterpret_cast<PhysicalDeviceMemoryProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMemoryProperties &operator=(PhysicalDeviceMemoryProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMemoryProperties &operator=(VkPhysicalDeviceMemoryProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceMemoryProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMemoryProperties *>(this);
}
explicit operator VkPhysicalDeviceMemoryProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMemoryProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::MemoryType, VK_MAX_MEMORY_TYPES> const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::MemoryHeap, VK_MAX_MEMORY_HEAPS> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(memoryTypeCount, memoryTypes, memoryHeapCount, memoryHeaps);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMemoryProperties const &) const = default;
#else
bool operator==(PhysicalDeviceMemoryProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (memoryTypeCount == rhs.memoryTypeCount) && (memoryTypes == rhs.memoryTypes) && (memoryHeapCount == rhs.memoryHeapCount) &&
(memoryHeaps == rhs.memoryHeaps);
# endif
}
bool operator!=(PhysicalDeviceMemoryProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t memoryTypeCount = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::MemoryType, VK_MAX_MEMORY_TYPES> memoryTypes = {};
uint32_t memoryHeapCount = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::MemoryHeap, VK_MAX_MEMORY_HEAPS> memoryHeaps = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties) == sizeof(VkPhysicalDeviceMemoryProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties>::value,
"PhysicalDeviceMemoryProperties is not nothrow_move_constructible!");
struct PhysicalDeviceMemoryProperties2
{
using NativeType = VkPhysicalDeviceMemoryProperties2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMemoryProperties2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryProperties2(VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties memoryProperties_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memoryProperties(memoryProperties_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMemoryProperties2(PhysicalDeviceMemoryProperties2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMemoryProperties2(VkPhysicalDeviceMemoryProperties2 const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMemoryProperties2(*reinterpret_cast<PhysicalDeviceMemoryProperties2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMemoryProperties2 &operator=(PhysicalDeviceMemoryProperties2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMemoryProperties2 &operator=(VkPhysicalDeviceMemoryProperties2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2 const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceMemoryProperties2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMemoryProperties2 *>(this);
}
explicit operator VkPhysicalDeviceMemoryProperties2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMemoryProperties2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memoryProperties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMemoryProperties2 const &) const = default;
#else
bool operator==(PhysicalDeviceMemoryProperties2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memoryProperties == rhs.memoryProperties);
# endif
}
bool operator!=(PhysicalDeviceMemoryProperties2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMemoryProperties2;
void *pNext = {};
VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties memoryProperties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2) == sizeof(VkPhysicalDeviceMemoryProperties2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryProperties2>::value,
"PhysicalDeviceMemoryProperties2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMemoryProperties2>
{
using Type = PhysicalDeviceMemoryProperties2;
};
using PhysicalDeviceMemoryProperties2KHR = PhysicalDeviceMemoryProperties2;
struct PhysicalDeviceMeshShaderFeaturesNV
{
using NativeType = VkPhysicalDeviceMeshShaderFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMeshShaderFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceMeshShaderFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 taskShader_ = {},
VULKAN_HPP_NAMESPACE::Bool32 meshShader_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
taskShader(taskShader_),
meshShader(meshShader_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceMeshShaderFeaturesNV(PhysicalDeviceMeshShaderFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMeshShaderFeaturesNV(VkPhysicalDeviceMeshShaderFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMeshShaderFeaturesNV(*reinterpret_cast<PhysicalDeviceMeshShaderFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMeshShaderFeaturesNV &operator=(PhysicalDeviceMeshShaderFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMeshShaderFeaturesNV &operator=(VkPhysicalDeviceMeshShaderFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMeshShaderFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMeshShaderFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMeshShaderFeaturesNV &setTaskShader(VULKAN_HPP_NAMESPACE::Bool32 taskShader_) VULKAN_HPP_NOEXCEPT
{
taskShader = taskShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMeshShaderFeaturesNV &setMeshShader(VULKAN_HPP_NAMESPACE::Bool32 meshShader_) VULKAN_HPP_NOEXCEPT
{
meshShader = meshShader_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceMeshShaderFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMeshShaderFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceMeshShaderFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMeshShaderFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, taskShader, meshShader);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMeshShaderFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceMeshShaderFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (taskShader == rhs.taskShader) && (meshShader == rhs.meshShader);
# endif
}
bool operator!=(PhysicalDeviceMeshShaderFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMeshShaderFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 taskShader = {};
VULKAN_HPP_NAMESPACE::Bool32 meshShader = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMeshShaderFeaturesNV) == sizeof(VkPhysicalDeviceMeshShaderFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMeshShaderFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMeshShaderFeaturesNV>::value,
"PhysicalDeviceMeshShaderFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMeshShaderFeaturesNV>
{
using Type = PhysicalDeviceMeshShaderFeaturesNV;
};
struct PhysicalDeviceMeshShaderPropertiesNV
{
using NativeType = VkPhysicalDeviceMeshShaderPropertiesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMeshShaderPropertiesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMeshShaderPropertiesNV(uint32_t maxDrawMeshTasksCount_ = {},
uint32_t maxTaskWorkGroupInvocations_ = {},
std::array<uint32_t, 3> const &maxTaskWorkGroupSize_ = {},
uint32_t maxTaskTotalMemorySize_ = {},
uint32_t maxTaskOutputCount_ = {},
uint32_t maxMeshWorkGroupInvocations_ = {},
std::array<uint32_t, 3> const &maxMeshWorkGroupSize_ = {},
uint32_t maxMeshTotalMemorySize_ = {},
uint32_t maxMeshOutputVertices_ = {},
uint32_t maxMeshOutputPrimitives_ = {},
uint32_t maxMeshMultiviewViewCount_ = {},
uint32_t meshOutputPerVertexGranularity_ = {},
uint32_t meshOutputPerPrimitiveGranularity_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxDrawMeshTasksCount(maxDrawMeshTasksCount_),
maxTaskWorkGroupInvocations(maxTaskWorkGroupInvocations_),
maxTaskWorkGroupSize(maxTaskWorkGroupSize_),
maxTaskTotalMemorySize(maxTaskTotalMemorySize_),
maxTaskOutputCount(maxTaskOutputCount_),
maxMeshWorkGroupInvocations(maxMeshWorkGroupInvocations_),
maxMeshWorkGroupSize(maxMeshWorkGroupSize_),
maxMeshTotalMemorySize(maxMeshTotalMemorySize_),
maxMeshOutputVertices(maxMeshOutputVertices_),
maxMeshOutputPrimitives(maxMeshOutputPrimitives_),
maxMeshMultiviewViewCount(maxMeshMultiviewViewCount_),
meshOutputPerVertexGranularity(meshOutputPerVertexGranularity_),
meshOutputPerPrimitiveGranularity(meshOutputPerPrimitiveGranularity_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMeshShaderPropertiesNV(PhysicalDeviceMeshShaderPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMeshShaderPropertiesNV(VkPhysicalDeviceMeshShaderPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMeshShaderPropertiesNV(*reinterpret_cast<PhysicalDeviceMeshShaderPropertiesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMeshShaderPropertiesNV &operator=(PhysicalDeviceMeshShaderPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMeshShaderPropertiesNV &operator=(VkPhysicalDeviceMeshShaderPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMeshShaderPropertiesNV const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceMeshShaderPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMeshShaderPropertiesNV *>(this);
}
explicit operator VkPhysicalDeviceMeshShaderPropertiesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMeshShaderPropertiesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
maxDrawMeshTasksCount,
maxTaskWorkGroupInvocations,
maxTaskWorkGroupSize,
maxTaskTotalMemorySize,
maxTaskOutputCount,
maxMeshWorkGroupInvocations,
maxMeshWorkGroupSize,
maxMeshTotalMemorySize,
maxMeshOutputVertices,
maxMeshOutputPrimitives,
maxMeshMultiviewViewCount,
meshOutputPerVertexGranularity,
meshOutputPerPrimitiveGranularity);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMeshShaderPropertiesNV const &) const = default;
#else
bool operator==(PhysicalDeviceMeshShaderPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxDrawMeshTasksCount == rhs.maxDrawMeshTasksCount) &&
(maxTaskWorkGroupInvocations == rhs.maxTaskWorkGroupInvocations) && (maxTaskWorkGroupSize == rhs.maxTaskWorkGroupSize) &&
(maxTaskTotalMemorySize == rhs.maxTaskTotalMemorySize) && (maxTaskOutputCount == rhs.maxTaskOutputCount) &&
(maxMeshWorkGroupInvocations == rhs.maxMeshWorkGroupInvocations) && (maxMeshWorkGroupSize == rhs.maxMeshWorkGroupSize) &&
(maxMeshTotalMemorySize == rhs.maxMeshTotalMemorySize) && (maxMeshOutputVertices == rhs.maxMeshOutputVertices) &&
(maxMeshOutputPrimitives == rhs.maxMeshOutputPrimitives) && (maxMeshMultiviewViewCount == rhs.maxMeshMultiviewViewCount) &&
(meshOutputPerVertexGranularity == rhs.meshOutputPerVertexGranularity) &&
(meshOutputPerPrimitiveGranularity == rhs.meshOutputPerPrimitiveGranularity);
# endif
}
bool operator!=(PhysicalDeviceMeshShaderPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMeshShaderPropertiesNV;
void *pNext = {};
uint32_t maxDrawMeshTasksCount = {};
uint32_t maxTaskWorkGroupInvocations = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> maxTaskWorkGroupSize = {};
uint32_t maxTaskTotalMemorySize = {};
uint32_t maxTaskOutputCount = {};
uint32_t maxMeshWorkGroupInvocations = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> maxMeshWorkGroupSize = {};
uint32_t maxMeshTotalMemorySize = {};
uint32_t maxMeshOutputVertices = {};
uint32_t maxMeshOutputPrimitives = {};
uint32_t maxMeshMultiviewViewCount = {};
uint32_t meshOutputPerVertexGranularity = {};
uint32_t meshOutputPerPrimitiveGranularity = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMeshShaderPropertiesNV) == sizeof(VkPhysicalDeviceMeshShaderPropertiesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMeshShaderPropertiesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMeshShaderPropertiesNV>::value,
"PhysicalDeviceMeshShaderPropertiesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMeshShaderPropertiesNV>
{
using Type = PhysicalDeviceMeshShaderPropertiesNV;
};
struct PhysicalDeviceMultiDrawFeaturesEXT
{
using NativeType = VkPhysicalDeviceMultiDrawFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMultiDrawFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiDrawFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 multiDraw_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
multiDraw(multiDraw_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiDrawFeaturesEXT(PhysicalDeviceMultiDrawFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMultiDrawFeaturesEXT(VkPhysicalDeviceMultiDrawFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMultiDrawFeaturesEXT(*reinterpret_cast<PhysicalDeviceMultiDrawFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMultiDrawFeaturesEXT &operator=(PhysicalDeviceMultiDrawFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMultiDrawFeaturesEXT &operator=(VkPhysicalDeviceMultiDrawFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiDrawFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMultiDrawFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMultiDrawFeaturesEXT &setMultiDraw(VULKAN_HPP_NAMESPACE::Bool32 multiDraw_) VULKAN_HPP_NOEXCEPT
{
multiDraw = multiDraw_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceMultiDrawFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMultiDrawFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceMultiDrawFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMultiDrawFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, multiDraw);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMultiDrawFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceMultiDrawFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (multiDraw == rhs.multiDraw);
# endif
}
bool operator!=(PhysicalDeviceMultiDrawFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiDrawFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 multiDraw = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiDrawFeaturesEXT) == sizeof(VkPhysicalDeviceMultiDrawFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiDrawFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiDrawFeaturesEXT>::value,
"PhysicalDeviceMultiDrawFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMultiDrawFeaturesEXT>
{
using Type = PhysicalDeviceMultiDrawFeaturesEXT;
};
struct PhysicalDeviceMultiDrawPropertiesEXT
{
using NativeType = VkPhysicalDeviceMultiDrawPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMultiDrawPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiDrawPropertiesEXT(uint32_t maxMultiDrawCount_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxMultiDrawCount(maxMultiDrawCount_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiDrawPropertiesEXT(PhysicalDeviceMultiDrawPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMultiDrawPropertiesEXT(VkPhysicalDeviceMultiDrawPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMultiDrawPropertiesEXT(*reinterpret_cast<PhysicalDeviceMultiDrawPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMultiDrawPropertiesEXT &operator=(PhysicalDeviceMultiDrawPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMultiDrawPropertiesEXT &operator=(VkPhysicalDeviceMultiDrawPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiDrawPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceMultiDrawPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMultiDrawPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceMultiDrawPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMultiDrawPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxMultiDrawCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMultiDrawPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceMultiDrawPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxMultiDrawCount == rhs.maxMultiDrawCount);
# endif
}
bool operator!=(PhysicalDeviceMultiDrawPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiDrawPropertiesEXT;
void *pNext = {};
uint32_t maxMultiDrawCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiDrawPropertiesEXT) == sizeof(VkPhysicalDeviceMultiDrawPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiDrawPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiDrawPropertiesEXT>::value,
"PhysicalDeviceMultiDrawPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMultiDrawPropertiesEXT>
{
using Type = PhysicalDeviceMultiDrawPropertiesEXT;
};
struct PhysicalDeviceMultiviewFeatures
{
using NativeType = VkPhysicalDeviceMultiviewFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMultiviewFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewFeatures(VULKAN_HPP_NAMESPACE::Bool32 multiview_ = {},
VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader_ = {},
VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
multiview(multiview_),
multiviewGeometryShader(multiviewGeometryShader_),
multiviewTessellationShader(multiviewTessellationShader_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewFeatures(PhysicalDeviceMultiviewFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMultiviewFeatures(VkPhysicalDeviceMultiviewFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMultiviewFeatures(*reinterpret_cast<PhysicalDeviceMultiviewFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMultiviewFeatures &operator=(PhysicalDeviceMultiviewFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMultiviewFeatures &operator=(VkPhysicalDeviceMultiviewFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMultiviewFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMultiviewFeatures &setMultiview(VULKAN_HPP_NAMESPACE::Bool32 multiview_) VULKAN_HPP_NOEXCEPT
{
multiview = multiview_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMultiviewFeatures &
setMultiviewGeometryShader(VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader_) VULKAN_HPP_NOEXCEPT
{
multiviewGeometryShader = multiviewGeometryShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMultiviewFeatures &
setMultiviewTessellationShader(VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader_) VULKAN_HPP_NOEXCEPT
{
multiviewTessellationShader = multiviewTessellationShader_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceMultiviewFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMultiviewFeatures *>(this);
}
explicit operator VkPhysicalDeviceMultiviewFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMultiviewFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, multiview, multiviewGeometryShader, multiviewTessellationShader);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMultiviewFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceMultiviewFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (multiview == rhs.multiview) && (multiviewGeometryShader == rhs.multiviewGeometryShader) &&
(multiviewTessellationShader == rhs.multiviewTessellationShader);
# endif
}
bool operator!=(PhysicalDeviceMultiviewFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiviewFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 multiview = {};
VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader = {};
VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewFeatures) == sizeof(VkPhysicalDeviceMultiviewFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewFeatures>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewFeatures>::value,
"PhysicalDeviceMultiviewFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMultiviewFeatures>
{
using Type = PhysicalDeviceMultiviewFeatures;
};
using PhysicalDeviceMultiviewFeaturesKHR = PhysicalDeviceMultiviewFeatures;
struct PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
{
using NativeType = VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(VULKAN_HPP_NAMESPACE::Bool32 perViewPositionAllComponents_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
perViewPositionAllComponents(perViewPositionAllComponents_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(*reinterpret_cast<PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX &
operator=(PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX &operator=(VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX *>(this);
}
explicit operator VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, perViewPositionAllComponents);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const &) const = default;
#else
bool operator==(PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (perViewPositionAllComponents == rhs.perViewPositionAllComponents);
# endif
}
bool operator!=(PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 perViewPositionAllComponents = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) ==
sizeof(VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>::value,
"PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>
{
using Type = PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX;
};
struct PhysicalDeviceMultiviewProperties
{
using NativeType = VkPhysicalDeviceMultiviewProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMultiviewProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewProperties(uint32_t maxMultiviewViewCount_ = {},
uint32_t maxMultiviewInstanceIndex_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxMultiviewViewCount(maxMultiviewViewCount_),
maxMultiviewInstanceIndex(maxMultiviewInstanceIndex_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceMultiviewProperties(PhysicalDeviceMultiviewProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMultiviewProperties(VkPhysicalDeviceMultiviewProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMultiviewProperties(*reinterpret_cast<PhysicalDeviceMultiviewProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMultiviewProperties &operator=(PhysicalDeviceMultiviewProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMultiviewProperties &operator=(VkPhysicalDeviceMultiviewProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceMultiviewProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMultiviewProperties *>(this);
}
explicit operator VkPhysicalDeviceMultiviewProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMultiviewProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxMultiviewViewCount, maxMultiviewInstanceIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMultiviewProperties const &) const = default;
#else
bool operator==(PhysicalDeviceMultiviewProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxMultiviewViewCount == rhs.maxMultiviewViewCount) &&
(maxMultiviewInstanceIndex == rhs.maxMultiviewInstanceIndex);
# endif
}
bool operator!=(PhysicalDeviceMultiviewProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMultiviewProperties;
void *pNext = {};
uint32_t maxMultiviewViewCount = {};
uint32_t maxMultiviewInstanceIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewProperties) == sizeof(VkPhysicalDeviceMultiviewProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewProperties>::value,
"PhysicalDeviceMultiviewProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMultiviewProperties>
{
using Type = PhysicalDeviceMultiviewProperties;
};
using PhysicalDeviceMultiviewPropertiesKHR = PhysicalDeviceMultiviewProperties;
struct PhysicalDeviceMutableDescriptorTypeFeaturesVALVE
{
using NativeType = VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceMutableDescriptorTypeFeaturesVALVE(VULKAN_HPP_NAMESPACE::Bool32 mutableDescriptorType_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
mutableDescriptorType(mutableDescriptorType_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceMutableDescriptorTypeFeaturesVALVE(PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMutableDescriptorTypeFeaturesVALVE(VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceMutableDescriptorTypeFeaturesVALVE(*reinterpret_cast<PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceMutableDescriptorTypeFeaturesVALVE &operator=(PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceMutableDescriptorTypeFeaturesVALVE &operator=(VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMutableDescriptorTypeFeaturesVALVE &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceMutableDescriptorTypeFeaturesVALVE &
setMutableDescriptorType(VULKAN_HPP_NAMESPACE::Bool32 mutableDescriptorType_) VULKAN_HPP_NOEXCEPT
{
mutableDescriptorType = mutableDescriptorType_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE *>(this);
}
explicit operator VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, mutableDescriptorType);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const &) const = default;
#else
bool operator==(PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (mutableDescriptorType == rhs.mutableDescriptorType);
# endif
}
bool operator!=(PhysicalDeviceMutableDescriptorTypeFeaturesVALVE const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 mutableDescriptorType = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceMutableDescriptorTypeFeaturesVALVE) ==
sizeof(VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMutableDescriptorTypeFeaturesVALVE>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMutableDescriptorTypeFeaturesVALVE>::value,
"PhysicalDeviceMutableDescriptorTypeFeaturesVALVE is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceMutableDescriptorTypeFeaturesVALVE>
{
using Type = PhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
};
struct PhysicalDevicePCIBusInfoPropertiesEXT
{
using NativeType = VkPhysicalDevicePCIBusInfoPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePciBusInfoPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePCIBusInfoPropertiesEXT(
uint32_t pciDomain_ = {}, uint32_t pciBus_ = {}, uint32_t pciDevice_ = {}, uint32_t pciFunction_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pciDomain(pciDomain_),
pciBus(pciBus_),
pciDevice(pciDevice_),
pciFunction(pciFunction_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevicePCIBusInfoPropertiesEXT(PhysicalDevicePCIBusInfoPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePCIBusInfoPropertiesEXT(VkPhysicalDevicePCIBusInfoPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePCIBusInfoPropertiesEXT(*reinterpret_cast<PhysicalDevicePCIBusInfoPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePCIBusInfoPropertiesEXT &operator=(PhysicalDevicePCIBusInfoPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePCIBusInfoPropertiesEXT &operator=(VkPhysicalDevicePCIBusInfoPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePCIBusInfoPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDevicePCIBusInfoPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePCIBusInfoPropertiesEXT *>(this);
}
explicit operator VkPhysicalDevicePCIBusInfoPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePCIBusInfoPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &, uint32_t const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pciDomain, pciBus, pciDevice, pciFunction);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePCIBusInfoPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDevicePCIBusInfoPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pciDomain == rhs.pciDomain) && (pciBus == rhs.pciBus) && (pciDevice == rhs.pciDevice) &&
(pciFunction == rhs.pciFunction);
# endif
}
bool operator!=(PhysicalDevicePCIBusInfoPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePciBusInfoPropertiesEXT;
void *pNext = {};
uint32_t pciDomain = {};
uint32_t pciBus = {};
uint32_t pciDevice = {};
uint32_t pciFunction = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePCIBusInfoPropertiesEXT) == sizeof(VkPhysicalDevicePCIBusInfoPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePCIBusInfoPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePCIBusInfoPropertiesEXT>::value,
"PhysicalDevicePCIBusInfoPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePciBusInfoPropertiesEXT>
{
using Type = PhysicalDevicePCIBusInfoPropertiesEXT;
};
struct PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT
{
using NativeType = VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePageableDeviceLocalMemoryFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 pageableDeviceLocalMemory_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pageableDeviceLocalMemory(pageableDeviceLocalMemory_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(*reinterpret_cast<PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT &
operator=(PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT &operator=(VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT &
setPageableDeviceLocalMemory(VULKAN_HPP_NAMESPACE::Bool32 pageableDeviceLocalMemory_) VULKAN_HPP_NOEXCEPT
{
pageableDeviceLocalMemory = pageableDeviceLocalMemory_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT *>(this);
}
explicit operator VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pageableDeviceLocalMemory);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pageableDeviceLocalMemory == rhs.pageableDeviceLocalMemory);
# endif
}
bool operator!=(PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePageableDeviceLocalMemoryFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 pageableDeviceLocalMemory = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT) ==
sizeof(VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>::value,
"PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>
{
using Type = PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT;
};
struct PhysicalDevicePerformanceQueryFeaturesKHR
{
using NativeType = VkPhysicalDevicePerformanceQueryFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePerformanceQueryFeaturesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePerformanceQueryFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 performanceCounterQueryPools_ = {},
VULKAN_HPP_NAMESPACE::Bool32 performanceCounterMultipleQueryPools_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
performanceCounterQueryPools(performanceCounterQueryPools_),
performanceCounterMultipleQueryPools(performanceCounterMultipleQueryPools_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevicePerformanceQueryFeaturesKHR(PhysicalDevicePerformanceQueryFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePerformanceQueryFeaturesKHR(VkPhysicalDevicePerformanceQueryFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePerformanceQueryFeaturesKHR(*reinterpret_cast<PhysicalDevicePerformanceQueryFeaturesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePerformanceQueryFeaturesKHR &operator=(PhysicalDevicePerformanceQueryFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePerformanceQueryFeaturesKHR &operator=(VkPhysicalDevicePerformanceQueryFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePerformanceQueryFeaturesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePerformanceQueryFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePerformanceQueryFeaturesKHR &
setPerformanceCounterQueryPools(VULKAN_HPP_NAMESPACE::Bool32 performanceCounterQueryPools_) VULKAN_HPP_NOEXCEPT
{
performanceCounterQueryPools = performanceCounterQueryPools_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePerformanceQueryFeaturesKHR &
setPerformanceCounterMultipleQueryPools(VULKAN_HPP_NAMESPACE::Bool32 performanceCounterMultipleQueryPools_) VULKAN_HPP_NOEXCEPT
{
performanceCounterMultipleQueryPools = performanceCounterMultipleQueryPools_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevicePerformanceQueryFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePerformanceQueryFeaturesKHR *>(this);
}
explicit operator VkPhysicalDevicePerformanceQueryFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePerformanceQueryFeaturesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, performanceCounterQueryPools, performanceCounterMultipleQueryPools);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePerformanceQueryFeaturesKHR const &) const = default;
#else
bool operator==(PhysicalDevicePerformanceQueryFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (performanceCounterQueryPools == rhs.performanceCounterQueryPools) &&
(performanceCounterMultipleQueryPools == rhs.performanceCounterMultipleQueryPools);
# endif
}
bool operator!=(PhysicalDevicePerformanceQueryFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePerformanceQueryFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 performanceCounterQueryPools = {};
VULKAN_HPP_NAMESPACE::Bool32 performanceCounterMultipleQueryPools = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePerformanceQueryFeaturesKHR) == sizeof(VkPhysicalDevicePerformanceQueryFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePerformanceQueryFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePerformanceQueryFeaturesKHR>::value,
"PhysicalDevicePerformanceQueryFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePerformanceQueryFeaturesKHR>
{
using Type = PhysicalDevicePerformanceQueryFeaturesKHR;
};
struct PhysicalDevicePerformanceQueryPropertiesKHR
{
using NativeType = VkPhysicalDevicePerformanceQueryPropertiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePerformanceQueryPropertiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePerformanceQueryPropertiesKHR(VULKAN_HPP_NAMESPACE::Bool32 allowCommandBufferQueryCopies_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
allowCommandBufferQueryCopies(allowCommandBufferQueryCopies_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevicePerformanceQueryPropertiesKHR(PhysicalDevicePerformanceQueryPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePerformanceQueryPropertiesKHR(VkPhysicalDevicePerformanceQueryPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePerformanceQueryPropertiesKHR(*reinterpret_cast<PhysicalDevicePerformanceQueryPropertiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePerformanceQueryPropertiesKHR &operator=(PhysicalDevicePerformanceQueryPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePerformanceQueryPropertiesKHR &operator=(VkPhysicalDevicePerformanceQueryPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePerformanceQueryPropertiesKHR const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDevicePerformanceQueryPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePerformanceQueryPropertiesKHR *>(this);
}
explicit operator VkPhysicalDevicePerformanceQueryPropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePerformanceQueryPropertiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, allowCommandBufferQueryCopies);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePerformanceQueryPropertiesKHR const &) const = default;
#else
bool operator==(PhysicalDevicePerformanceQueryPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (allowCommandBufferQueryCopies == rhs.allowCommandBufferQueryCopies);
# endif
}
bool operator!=(PhysicalDevicePerformanceQueryPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePerformanceQueryPropertiesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 allowCommandBufferQueryCopies = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePerformanceQueryPropertiesKHR) ==
sizeof(VkPhysicalDevicePerformanceQueryPropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePerformanceQueryPropertiesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePerformanceQueryPropertiesKHR>::value,
"PhysicalDevicePerformanceQueryPropertiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePerformanceQueryPropertiesKHR>
{
using Type = PhysicalDevicePerformanceQueryPropertiesKHR;
};
struct PhysicalDevicePipelineCreationCacheControlFeatures
{
using NativeType = VkPhysicalDevicePipelineCreationCacheControlFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePipelineCreationCacheControlFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePipelineCreationCacheControlFeatures(VULKAN_HPP_NAMESPACE::Bool32 pipelineCreationCacheControl_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pipelineCreationCacheControl(pipelineCreationCacheControl_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDevicePipelineCreationCacheControlFeatures(PhysicalDevicePipelineCreationCacheControlFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePipelineCreationCacheControlFeatures(VkPhysicalDevicePipelineCreationCacheControlFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePipelineCreationCacheControlFeatures(*reinterpret_cast<PhysicalDevicePipelineCreationCacheControlFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePipelineCreationCacheControlFeatures &
operator=(PhysicalDevicePipelineCreationCacheControlFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePipelineCreationCacheControlFeatures &operator=(VkPhysicalDevicePipelineCreationCacheControlFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineCreationCacheControlFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePipelineCreationCacheControlFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePipelineCreationCacheControlFeatures &
setPipelineCreationCacheControl(VULKAN_HPP_NAMESPACE::Bool32 pipelineCreationCacheControl_) VULKAN_HPP_NOEXCEPT
{
pipelineCreationCacheControl = pipelineCreationCacheControl_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevicePipelineCreationCacheControlFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePipelineCreationCacheControlFeatures *>(this);
}
explicit operator VkPhysicalDevicePipelineCreationCacheControlFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePipelineCreationCacheControlFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pipelineCreationCacheControl);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePipelineCreationCacheControlFeatures const &) const = default;
#else
bool operator==(PhysicalDevicePipelineCreationCacheControlFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pipelineCreationCacheControl == rhs.pipelineCreationCacheControl);
# endif
}
bool operator!=(PhysicalDevicePipelineCreationCacheControlFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePipelineCreationCacheControlFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 pipelineCreationCacheControl = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineCreationCacheControlFeatures) ==
sizeof(VkPhysicalDevicePipelineCreationCacheControlFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineCreationCacheControlFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineCreationCacheControlFeatures>::value,
"PhysicalDevicePipelineCreationCacheControlFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePipelineCreationCacheControlFeatures>
{
using Type = PhysicalDevicePipelineCreationCacheControlFeatures;
};
using PhysicalDevicePipelineCreationCacheControlFeaturesEXT = PhysicalDevicePipelineCreationCacheControlFeatures;
struct PhysicalDevicePipelineExecutablePropertiesFeaturesKHR
{
using NativeType = VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePipelineExecutablePropertiesFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 pipelineExecutableInfo_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pipelineExecutableInfo(pipelineExecutableInfo_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDevicePipelineExecutablePropertiesFeaturesKHR(PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePipelineExecutablePropertiesFeaturesKHR(VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePipelineExecutablePropertiesFeaturesKHR(*reinterpret_cast<PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePipelineExecutablePropertiesFeaturesKHR &
operator=(PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePipelineExecutablePropertiesFeaturesKHR &operator=(VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePipelineExecutablePropertiesFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePipelineExecutablePropertiesFeaturesKHR &
setPipelineExecutableInfo(VULKAN_HPP_NAMESPACE::Bool32 pipelineExecutableInfo_) VULKAN_HPP_NOEXCEPT
{
pipelineExecutableInfo = pipelineExecutableInfo_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR *>(this);
}
explicit operator VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pipelineExecutableInfo);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const &) const = default;
#else
bool operator==(PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pipelineExecutableInfo == rhs.pipelineExecutableInfo);
# endif
}
bool operator!=(PhysicalDevicePipelineExecutablePropertiesFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 pipelineExecutableInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineExecutablePropertiesFeaturesKHR) ==
sizeof(VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineExecutablePropertiesFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineExecutablePropertiesFeaturesKHR>::value,
"PhysicalDevicePipelineExecutablePropertiesFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR>
{
using Type = PhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
};
struct PhysicalDevicePointClippingProperties
{
using NativeType = VkPhysicalDevicePointClippingProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePointClippingProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePointClippingProperties(
VULKAN_HPP_NAMESPACE::PointClippingBehavior pointClippingBehavior_ = VULKAN_HPP_NAMESPACE::PointClippingBehavior::eAllClipPlanes,
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pointClippingBehavior(pointClippingBehavior_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevicePointClippingProperties(PhysicalDevicePointClippingProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePointClippingProperties(VkPhysicalDevicePointClippingProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePointClippingProperties(*reinterpret_cast<PhysicalDevicePointClippingProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePointClippingProperties &operator=(PhysicalDevicePointClippingProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePointClippingProperties &operator=(VkPhysicalDevicePointClippingProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePointClippingProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDevicePointClippingProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePointClippingProperties *>(this);
}
explicit operator VkPhysicalDevicePointClippingProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePointClippingProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::PointClippingBehavior const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pointClippingBehavior);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePointClippingProperties const &) const = default;
#else
bool operator==(PhysicalDevicePointClippingProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pointClippingBehavior == rhs.pointClippingBehavior);
# endif
}
bool operator!=(PhysicalDevicePointClippingProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePointClippingProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::PointClippingBehavior pointClippingBehavior = VULKAN_HPP_NAMESPACE::PointClippingBehavior::eAllClipPlanes;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePointClippingProperties) == sizeof(VkPhysicalDevicePointClippingProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePointClippingProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePointClippingProperties>::value,
"PhysicalDevicePointClippingProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePointClippingProperties>
{
using Type = PhysicalDevicePointClippingProperties;
};
using PhysicalDevicePointClippingPropertiesKHR = PhysicalDevicePointClippingProperties;
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct PhysicalDevicePortabilitySubsetFeaturesKHR
{
using NativeType = VkPhysicalDevicePortabilitySubsetFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePortabilitySubsetFeaturesKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePortabilitySubsetFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 constantAlphaColorBlendFactors_ = {},
VULKAN_HPP_NAMESPACE::Bool32 events_ = {},
VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatReinterpretation_ = {},
VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatSwizzle_ = {},
VULKAN_HPP_NAMESPACE::Bool32 imageView2DOn3DImage_ = {},
VULKAN_HPP_NAMESPACE::Bool32 multisampleArrayImage_ = {},
VULKAN_HPP_NAMESPACE::Bool32 mutableComparisonSamplers_ = {},
VULKAN_HPP_NAMESPACE::Bool32 pointPolygons_ = {},
VULKAN_HPP_NAMESPACE::Bool32 samplerMipLodBias_ = {},
VULKAN_HPP_NAMESPACE::Bool32 separateStencilMaskRef_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSampleRateInterpolationFunctions_ = {},
VULKAN_HPP_NAMESPACE::Bool32 tessellationIsolines_ = {},
VULKAN_HPP_NAMESPACE::Bool32 tessellationPointMode_ = {},
VULKAN_HPP_NAMESPACE::Bool32 triangleFans_ = {},
VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeAccessBeyondStride_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
constantAlphaColorBlendFactors(constantAlphaColorBlendFactors_),
events(events_),
imageViewFormatReinterpretation(imageViewFormatReinterpretation_),
imageViewFormatSwizzle(imageViewFormatSwizzle_),
imageView2DOn3DImage(imageView2DOn3DImage_),
multisampleArrayImage(multisampleArrayImage_),
mutableComparisonSamplers(mutableComparisonSamplers_),
pointPolygons(pointPolygons_),
samplerMipLodBias(samplerMipLodBias_),
separateStencilMaskRef(separateStencilMaskRef_),
shaderSampleRateInterpolationFunctions(shaderSampleRateInterpolationFunctions_),
tessellationIsolines(tessellationIsolines_),
tessellationPointMode(tessellationPointMode_),
triangleFans(triangleFans_),
vertexAttributeAccessBeyondStride(vertexAttributeAccessBeyondStride_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevicePortabilitySubsetFeaturesKHR(PhysicalDevicePortabilitySubsetFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePortabilitySubsetFeaturesKHR(VkPhysicalDevicePortabilitySubsetFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePortabilitySubsetFeaturesKHR(*reinterpret_cast<PhysicalDevicePortabilitySubsetFeaturesKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePortabilitySubsetFeaturesKHR &operator=(PhysicalDevicePortabilitySubsetFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePortabilitySubsetFeaturesKHR &operator=(VkPhysicalDevicePortabilitySubsetFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePortabilitySubsetFeaturesKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
setConstantAlphaColorBlendFactors(VULKAN_HPP_NAMESPACE::Bool32 constantAlphaColorBlendFactors_) VULKAN_HPP_NOEXCEPT
{
constantAlphaColorBlendFactors = constantAlphaColorBlendFactors_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &setEvents(VULKAN_HPP_NAMESPACE::Bool32 events_) VULKAN_HPP_NOEXCEPT
{
events = events_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
setImageViewFormatReinterpretation(VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatReinterpretation_) VULKAN_HPP_NOEXCEPT
{
imageViewFormatReinterpretation = imageViewFormatReinterpretation_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
setImageViewFormatSwizzle(VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatSwizzle_) VULKAN_HPP_NOEXCEPT
{
imageViewFormatSwizzle = imageViewFormatSwizzle_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
setImageView2DOn3DImage(VULKAN_HPP_NAMESPACE::Bool32 imageView2DOn3DImage_) VULKAN_HPP_NOEXCEPT
{
imageView2DOn3DImage = imageView2DOn3DImage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
setMultisampleArrayImage(VULKAN_HPP_NAMESPACE::Bool32 multisampleArrayImage_) VULKAN_HPP_NOEXCEPT
{
multisampleArrayImage = multisampleArrayImage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
setMutableComparisonSamplers(VULKAN_HPP_NAMESPACE::Bool32 mutableComparisonSamplers_) VULKAN_HPP_NOEXCEPT
{
mutableComparisonSamplers = mutableComparisonSamplers_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &setPointPolygons(VULKAN_HPP_NAMESPACE::Bool32 pointPolygons_) VULKAN_HPP_NOEXCEPT
{
pointPolygons = pointPolygons_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
setSamplerMipLodBias(VULKAN_HPP_NAMESPACE::Bool32 samplerMipLodBias_) VULKAN_HPP_NOEXCEPT
{
samplerMipLodBias = samplerMipLodBias_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
setSeparateStencilMaskRef(VULKAN_HPP_NAMESPACE::Bool32 separateStencilMaskRef_) VULKAN_HPP_NOEXCEPT
{
separateStencilMaskRef = separateStencilMaskRef_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
setShaderSampleRateInterpolationFunctions(VULKAN_HPP_NAMESPACE::Bool32 shaderSampleRateInterpolationFunctions_) VULKAN_HPP_NOEXCEPT
{
shaderSampleRateInterpolationFunctions = shaderSampleRateInterpolationFunctions_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
setTessellationIsolines(VULKAN_HPP_NAMESPACE::Bool32 tessellationIsolines_) VULKAN_HPP_NOEXCEPT
{
tessellationIsolines = tessellationIsolines_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
setTessellationPointMode(VULKAN_HPP_NAMESPACE::Bool32 tessellationPointMode_) VULKAN_HPP_NOEXCEPT
{
tessellationPointMode = tessellationPointMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &setTriangleFans(VULKAN_HPP_NAMESPACE::Bool32 triangleFans_) VULKAN_HPP_NOEXCEPT
{
triangleFans = triangleFans_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetFeaturesKHR &
setVertexAttributeAccessBeyondStride(VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeAccessBeyondStride_) VULKAN_HPP_NOEXCEPT
{
vertexAttributeAccessBeyondStride = vertexAttributeAccessBeyondStride_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevicePortabilitySubsetFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePortabilitySubsetFeaturesKHR *>(this);
}
explicit operator VkPhysicalDevicePortabilitySubsetFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePortabilitySubsetFeaturesKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
constantAlphaColorBlendFactors,
events,
imageViewFormatReinterpretation,
imageViewFormatSwizzle,
imageView2DOn3DImage,
multisampleArrayImage,
mutableComparisonSamplers,
pointPolygons,
samplerMipLodBias,
separateStencilMaskRef,
shaderSampleRateInterpolationFunctions,
tessellationIsolines,
tessellationPointMode,
triangleFans,
vertexAttributeAccessBeyondStride);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePortabilitySubsetFeaturesKHR const &) const = default;
# else
bool operator==(PhysicalDevicePortabilitySubsetFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (constantAlphaColorBlendFactors == rhs.constantAlphaColorBlendFactors) &&
(events == rhs.events) && (imageViewFormatReinterpretation == rhs.imageViewFormatReinterpretation) &&
(imageViewFormatSwizzle == rhs.imageViewFormatSwizzle) && (imageView2DOn3DImage == rhs.imageView2DOn3DImage) &&
(multisampleArrayImage == rhs.multisampleArrayImage) && (mutableComparisonSamplers == rhs.mutableComparisonSamplers) &&
(pointPolygons == rhs.pointPolygons) && (samplerMipLodBias == rhs.samplerMipLodBias) &&
(separateStencilMaskRef == rhs.separateStencilMaskRef) &&
(shaderSampleRateInterpolationFunctions == rhs.shaderSampleRateInterpolationFunctions) && (tessellationIsolines == rhs.tessellationIsolines) &&
(tessellationPointMode == rhs.tessellationPointMode) && (triangleFans == rhs.triangleFans) &&
(vertexAttributeAccessBeyondStride == rhs.vertexAttributeAccessBeyondStride);
# endif
}
bool operator!=(PhysicalDevicePortabilitySubsetFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePortabilitySubsetFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 constantAlphaColorBlendFactors = {};
VULKAN_HPP_NAMESPACE::Bool32 events = {};
VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatReinterpretation = {};
VULKAN_HPP_NAMESPACE::Bool32 imageViewFormatSwizzle = {};
VULKAN_HPP_NAMESPACE::Bool32 imageView2DOn3DImage = {};
VULKAN_HPP_NAMESPACE::Bool32 multisampleArrayImage = {};
VULKAN_HPP_NAMESPACE::Bool32 mutableComparisonSamplers = {};
VULKAN_HPP_NAMESPACE::Bool32 pointPolygons = {};
VULKAN_HPP_NAMESPACE::Bool32 samplerMipLodBias = {};
VULKAN_HPP_NAMESPACE::Bool32 separateStencilMaskRef = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSampleRateInterpolationFunctions = {};
VULKAN_HPP_NAMESPACE::Bool32 tessellationIsolines = {};
VULKAN_HPP_NAMESPACE::Bool32 tessellationPointMode = {};
VULKAN_HPP_NAMESPACE::Bool32 triangleFans = {};
VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeAccessBeyondStride = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePortabilitySubsetFeaturesKHR) ==
sizeof(VkPhysicalDevicePortabilitySubsetFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePortabilitySubsetFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePortabilitySubsetFeaturesKHR>::value,
"PhysicalDevicePortabilitySubsetFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePortabilitySubsetFeaturesKHR>
{
using Type = PhysicalDevicePortabilitySubsetFeaturesKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct PhysicalDevicePortabilitySubsetPropertiesKHR
{
using NativeType = VkPhysicalDevicePortabilitySubsetPropertiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePortabilitySubsetPropertiesKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePortabilitySubsetPropertiesKHR(uint32_t minVertexInputBindingStrideAlignment_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
minVertexInputBindingStrideAlignment(minVertexInputBindingStrideAlignment_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevicePortabilitySubsetPropertiesKHR(PhysicalDevicePortabilitySubsetPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePortabilitySubsetPropertiesKHR(VkPhysicalDevicePortabilitySubsetPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePortabilitySubsetPropertiesKHR(*reinterpret_cast<PhysicalDevicePortabilitySubsetPropertiesKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePortabilitySubsetPropertiesKHR &operator=(PhysicalDevicePortabilitySubsetPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePortabilitySubsetPropertiesKHR &operator=(VkPhysicalDevicePortabilitySubsetPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePortabilitySubsetPropertiesKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetPropertiesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePortabilitySubsetPropertiesKHR &
setMinVertexInputBindingStrideAlignment(uint32_t minVertexInputBindingStrideAlignment_) VULKAN_HPP_NOEXCEPT
{
minVertexInputBindingStrideAlignment = minVertexInputBindingStrideAlignment_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevicePortabilitySubsetPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePortabilitySubsetPropertiesKHR *>(this);
}
explicit operator VkPhysicalDevicePortabilitySubsetPropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePortabilitySubsetPropertiesKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, minVertexInputBindingStrideAlignment);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePortabilitySubsetPropertiesKHR const &) const = default;
# else
bool operator==(PhysicalDevicePortabilitySubsetPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (minVertexInputBindingStrideAlignment == rhs.minVertexInputBindingStrideAlignment);
# endif
}
bool operator!=(PhysicalDevicePortabilitySubsetPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePortabilitySubsetPropertiesKHR;
void *pNext = {};
uint32_t minVertexInputBindingStrideAlignment = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePortabilitySubsetPropertiesKHR) ==
sizeof(VkPhysicalDevicePortabilitySubsetPropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePortabilitySubsetPropertiesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePortabilitySubsetPropertiesKHR>::value,
"PhysicalDevicePortabilitySubsetPropertiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePortabilitySubsetPropertiesKHR>
{
using Type = PhysicalDevicePortabilitySubsetPropertiesKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
struct PhysicalDevicePresentIdFeaturesKHR
{
using NativeType = VkPhysicalDevicePresentIdFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePresentIdFeaturesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePresentIdFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 presentId_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
presentId(presentId_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevicePresentIdFeaturesKHR(PhysicalDevicePresentIdFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePresentIdFeaturesKHR(VkPhysicalDevicePresentIdFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePresentIdFeaturesKHR(*reinterpret_cast<PhysicalDevicePresentIdFeaturesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePresentIdFeaturesKHR &operator=(PhysicalDevicePresentIdFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePresentIdFeaturesKHR &operator=(VkPhysicalDevicePresentIdFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentIdFeaturesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePresentIdFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePresentIdFeaturesKHR &setPresentId(VULKAN_HPP_NAMESPACE::Bool32 presentId_) VULKAN_HPP_NOEXCEPT
{
presentId = presentId_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevicePresentIdFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePresentIdFeaturesKHR *>(this);
}
explicit operator VkPhysicalDevicePresentIdFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePresentIdFeaturesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, presentId);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePresentIdFeaturesKHR const &) const = default;
#else
bool operator==(PhysicalDevicePresentIdFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (presentId == rhs.presentId);
# endif
}
bool operator!=(PhysicalDevicePresentIdFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePresentIdFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 presentId = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePresentIdFeaturesKHR) == sizeof(VkPhysicalDevicePresentIdFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentIdFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentIdFeaturesKHR>::value,
"PhysicalDevicePresentIdFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePresentIdFeaturesKHR>
{
using Type = PhysicalDevicePresentIdFeaturesKHR;
};
struct PhysicalDevicePresentWaitFeaturesKHR
{
using NativeType = VkPhysicalDevicePresentWaitFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePresentWaitFeaturesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePresentWaitFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 presentWait_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
presentWait(presentWait_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevicePresentWaitFeaturesKHR(PhysicalDevicePresentWaitFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePresentWaitFeaturesKHR(VkPhysicalDevicePresentWaitFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePresentWaitFeaturesKHR(*reinterpret_cast<PhysicalDevicePresentWaitFeaturesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePresentWaitFeaturesKHR &operator=(PhysicalDevicePresentWaitFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePresentWaitFeaturesKHR &operator=(VkPhysicalDevicePresentWaitFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentWaitFeaturesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePresentWaitFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePresentWaitFeaturesKHR &setPresentWait(VULKAN_HPP_NAMESPACE::Bool32 presentWait_) VULKAN_HPP_NOEXCEPT
{
presentWait = presentWait_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevicePresentWaitFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePresentWaitFeaturesKHR *>(this);
}
explicit operator VkPhysicalDevicePresentWaitFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePresentWaitFeaturesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, presentWait);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePresentWaitFeaturesKHR const &) const = default;
#else
bool operator==(PhysicalDevicePresentWaitFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (presentWait == rhs.presentWait);
# endif
}
bool operator!=(PhysicalDevicePresentWaitFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePresentWaitFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 presentWait = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePresentWaitFeaturesKHR) == sizeof(VkPhysicalDevicePresentWaitFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentWaitFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentWaitFeaturesKHR>::value,
"PhysicalDevicePresentWaitFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePresentWaitFeaturesKHR>
{
using Type = PhysicalDevicePresentWaitFeaturesKHR;
};
struct PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT
{
using NativeType = VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePrimitiveTopologyListRestartFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 primitiveTopologyListRestart_ = {},
VULKAN_HPP_NAMESPACE::Bool32 primitiveTopologyPatchListRestart_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
primitiveTopologyListRestart(primitiveTopologyListRestart_),
primitiveTopologyPatchListRestart(primitiveTopologyPatchListRestart_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(*reinterpret_cast<PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT &
operator=(PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT &operator=(VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT &
setPrimitiveTopologyListRestart(VULKAN_HPP_NAMESPACE::Bool32 primitiveTopologyListRestart_) VULKAN_HPP_NOEXCEPT
{
primitiveTopologyListRestart = primitiveTopologyListRestart_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT &
setPrimitiveTopologyPatchListRestart(VULKAN_HPP_NAMESPACE::Bool32 primitiveTopologyPatchListRestart_) VULKAN_HPP_NOEXCEPT
{
primitiveTopologyPatchListRestart = primitiveTopologyPatchListRestart_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT *>(this);
}
explicit operator VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, primitiveTopologyListRestart, primitiveTopologyPatchListRestart);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (primitiveTopologyListRestart == rhs.primitiveTopologyListRestart) &&
(primitiveTopologyPatchListRestart == rhs.primitiveTopologyPatchListRestart);
# endif
}
bool operator!=(PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePrimitiveTopologyListRestartFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 primitiveTopologyListRestart = {};
VULKAN_HPP_NAMESPACE::Bool32 primitiveTopologyPatchListRestart = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT) ==
sizeof(VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT>::value,
"PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePrimitiveTopologyListRestartFeaturesEXT>
{
using Type = PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT;
};
struct PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT
{
using NativeType = VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePrimitivesGeneratedQueryFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 primitivesGeneratedQuery_ = {},
VULKAN_HPP_NAMESPACE::Bool32 primitivesGeneratedQueryWithRasterizerDiscard_ = {},
VULKAN_HPP_NAMESPACE::Bool32 primitivesGeneratedQueryWithNonZeroStreams_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
primitivesGeneratedQuery(primitivesGeneratedQuery_),
primitivesGeneratedQueryWithRasterizerDiscard(primitivesGeneratedQueryWithRasterizerDiscard_),
primitivesGeneratedQueryWithNonZeroStreams(primitivesGeneratedQueryWithNonZeroStreams_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT(PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT(VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT(*reinterpret_cast<PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT &
operator=(PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT &operator=(VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT &
setPrimitivesGeneratedQuery(VULKAN_HPP_NAMESPACE::Bool32 primitivesGeneratedQuery_) VULKAN_HPP_NOEXCEPT
{
primitivesGeneratedQuery = primitivesGeneratedQuery_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT &
setPrimitivesGeneratedQueryWithRasterizerDiscard(VULKAN_HPP_NAMESPACE::Bool32 primitivesGeneratedQueryWithRasterizerDiscard_) VULKAN_HPP_NOEXCEPT
{
primitivesGeneratedQueryWithRasterizerDiscard = primitivesGeneratedQueryWithRasterizerDiscard_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT &
setPrimitivesGeneratedQueryWithNonZeroStreams(VULKAN_HPP_NAMESPACE::Bool32 primitivesGeneratedQueryWithNonZeroStreams_) VULKAN_HPP_NOEXCEPT
{
primitivesGeneratedQueryWithNonZeroStreams = primitivesGeneratedQueryWithNonZeroStreams_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT *>(this);
}
explicit operator VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, primitivesGeneratedQuery, primitivesGeneratedQueryWithRasterizerDiscard, primitivesGeneratedQueryWithNonZeroStreams);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (primitivesGeneratedQuery == rhs.primitivesGeneratedQuery) &&
(primitivesGeneratedQueryWithRasterizerDiscard == rhs.primitivesGeneratedQueryWithRasterizerDiscard) &&
(primitivesGeneratedQueryWithNonZeroStreams == rhs.primitivesGeneratedQueryWithNonZeroStreams);
# endif
}
bool operator!=(PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePrimitivesGeneratedQueryFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 primitivesGeneratedQuery = {};
VULKAN_HPP_NAMESPACE::Bool32 primitivesGeneratedQueryWithRasterizerDiscard = {};
VULKAN_HPP_NAMESPACE::Bool32 primitivesGeneratedQueryWithNonZeroStreams = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT) ==
sizeof(VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT>::value,
"PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePrimitivesGeneratedQueryFeaturesEXT>
{
using Type = PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT;
};
struct PhysicalDevicePrivateDataFeatures
{
using NativeType = VkPhysicalDevicePrivateDataFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePrivateDataFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePrivateDataFeatures(VULKAN_HPP_NAMESPACE::Bool32 privateData_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
privateData(privateData_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevicePrivateDataFeatures(PhysicalDevicePrivateDataFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePrivateDataFeatures(VkPhysicalDevicePrivateDataFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePrivateDataFeatures(*reinterpret_cast<PhysicalDevicePrivateDataFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePrivateDataFeatures &operator=(PhysicalDevicePrivateDataFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePrivateDataFeatures &operator=(VkPhysicalDevicePrivateDataFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePrivateDataFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePrivateDataFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDevicePrivateDataFeatures &setPrivateData(VULKAN_HPP_NAMESPACE::Bool32 privateData_) VULKAN_HPP_NOEXCEPT
{
privateData = privateData_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDevicePrivateDataFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePrivateDataFeatures *>(this);
}
explicit operator VkPhysicalDevicePrivateDataFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePrivateDataFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, privateData);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePrivateDataFeatures const &) const = default;
#else
bool operator==(PhysicalDevicePrivateDataFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (privateData == rhs.privateData);
# endif
}
bool operator!=(PhysicalDevicePrivateDataFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePrivateDataFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 privateData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePrivateDataFeatures) == sizeof(VkPhysicalDevicePrivateDataFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePrivateDataFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePrivateDataFeatures>::value,
"PhysicalDevicePrivateDataFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePrivateDataFeatures>
{
using Type = PhysicalDevicePrivateDataFeatures;
};
using PhysicalDevicePrivateDataFeaturesEXT = PhysicalDevicePrivateDataFeatures;
struct PhysicalDeviceSparseProperties
{
using NativeType = VkPhysicalDeviceSparseProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceSparseProperties(VULKAN_HPP_NAMESPACE::Bool32 residencyStandard2DBlockShape_ = {},
VULKAN_HPP_NAMESPACE::Bool32 residencyStandard2DMultisampleBlockShape_ = {},
VULKAN_HPP_NAMESPACE::Bool32 residencyStandard3DBlockShape_ = {},
VULKAN_HPP_NAMESPACE::Bool32 residencyAlignedMipSize_ = {},
VULKAN_HPP_NAMESPACE::Bool32 residencyNonResidentStrict_ = {}) VULKAN_HPP_NOEXCEPT
: residencyStandard2DBlockShape(residencyStandard2DBlockShape_),
residencyStandard2DMultisampleBlockShape(residencyStandard2DMultisampleBlockShape_),
residencyStandard3DBlockShape(residencyStandard3DBlockShape_),
residencyAlignedMipSize(residencyAlignedMipSize_),
residencyNonResidentStrict(residencyNonResidentStrict_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceSparseProperties(PhysicalDeviceSparseProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSparseProperties(VkPhysicalDeviceSparseProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSparseProperties(*reinterpret_cast<PhysicalDeviceSparseProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSparseProperties &operator=(PhysicalDeviceSparseProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSparseProperties &operator=(VkPhysicalDeviceSparseProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceSparseProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSparseProperties *>(this);
}
explicit operator VkPhysicalDeviceSparseProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSparseProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(residencyStandard2DBlockShape,
residencyStandard2DMultisampleBlockShape,
residencyStandard3DBlockShape,
residencyAlignedMipSize,
residencyNonResidentStrict);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSparseProperties const &) const = default;
#else
bool operator==(PhysicalDeviceSparseProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (residencyStandard2DBlockShape == rhs.residencyStandard2DBlockShape) &&
(residencyStandard2DMultisampleBlockShape == rhs.residencyStandard2DMultisampleBlockShape) &&
(residencyStandard3DBlockShape == rhs.residencyStandard3DBlockShape) && (residencyAlignedMipSize == rhs.residencyAlignedMipSize) &&
(residencyNonResidentStrict == rhs.residencyNonResidentStrict);
# endif
}
bool operator!=(PhysicalDeviceSparseProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Bool32 residencyStandard2DBlockShape = {};
VULKAN_HPP_NAMESPACE::Bool32 residencyStandard2DMultisampleBlockShape = {};
VULKAN_HPP_NAMESPACE::Bool32 residencyStandard3DBlockShape = {};
VULKAN_HPP_NAMESPACE::Bool32 residencyAlignedMipSize = {};
VULKAN_HPP_NAMESPACE::Bool32 residencyNonResidentStrict = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties) == sizeof(VkPhysicalDeviceSparseProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties>::value,
"PhysicalDeviceSparseProperties is not nothrow_move_constructible!");
struct PhysicalDeviceProperties
{
using NativeType = VkPhysicalDeviceProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProperties(uint32_t apiVersion_ = {},
uint32_t driverVersion_ = {},
uint32_t vendorID_ = {},
uint32_t deviceID_ = {},
VULKAN_HPP_NAMESPACE::PhysicalDeviceType deviceType_ = VULKAN_HPP_NAMESPACE::PhysicalDeviceType::eOther,
std::array<char, VK_MAX_PHYSICAL_DEVICE_NAME_SIZE> const &deviceName_ = {},
std::array<uint8_t, VK_UUID_SIZE> const &pipelineCacheUUID_ = {},
VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits limits_ = {},
VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties sparseProperties_ = {}) VULKAN_HPP_NOEXCEPT
: apiVersion(apiVersion_),
driverVersion(driverVersion_),
vendorID(vendorID_),
deviceID(deviceID_),
deviceType(deviceType_),
deviceName(deviceName_),
pipelineCacheUUID(pipelineCacheUUID_),
limits(limits_),
sparseProperties(sparseProperties_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProperties(PhysicalDeviceProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceProperties(VkPhysicalDeviceProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceProperties(*reinterpret_cast<PhysicalDeviceProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceProperties &operator=(PhysicalDeviceProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceProperties &operator=(VkPhysicalDeviceProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceProperties *>(this);
}
explicit operator VkPhysicalDeviceProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::PhysicalDeviceType const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_PHYSICAL_DEVICE_NAME_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> const &,
VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits const &,
VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(apiVersion, driverVersion, vendorID, deviceID, deviceType, deviceName, pipelineCacheUUID, limits, sparseProperties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceProperties const &) const = default;
#else
bool operator==(PhysicalDeviceProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (apiVersion == rhs.apiVersion) && (driverVersion == rhs.driverVersion) && (vendorID == rhs.vendorID) && (deviceID == rhs.deviceID) &&
(deviceType == rhs.deviceType) && (deviceName == rhs.deviceName) && (pipelineCacheUUID == rhs.pipelineCacheUUID) &&
(limits == rhs.limits) && (sparseProperties == rhs.sparseProperties);
# endif
}
bool operator!=(PhysicalDeviceProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t apiVersion = {};
uint32_t driverVersion = {};
uint32_t vendorID = {};
uint32_t deviceID = {};
VULKAN_HPP_NAMESPACE::PhysicalDeviceType deviceType = VULKAN_HPP_NAMESPACE::PhysicalDeviceType::eOther;
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_PHYSICAL_DEVICE_NAME_SIZE> deviceName = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> pipelineCacheUUID = {};
VULKAN_HPP_NAMESPACE::PhysicalDeviceLimits limits = {};
VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseProperties sparseProperties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties) == sizeof(VkPhysicalDeviceProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties>::value,
"PhysicalDeviceProperties is not nothrow_move_constructible!");
struct PhysicalDeviceProperties2
{
using NativeType = VkPhysicalDeviceProperties2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceProperties2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProperties2(VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties properties_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
properties(properties_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProperties2(PhysicalDeviceProperties2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceProperties2(VkPhysicalDeviceProperties2 const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceProperties2(*reinterpret_cast<PhysicalDeviceProperties2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceProperties2 &operator=(PhysicalDeviceProperties2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceProperties2 &operator=(VkPhysicalDeviceProperties2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2 const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceProperties2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceProperties2 *>(this);
}
explicit operator VkPhysicalDeviceProperties2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceProperties2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, properties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceProperties2 const &) const = default;
#else
bool operator==(PhysicalDeviceProperties2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (properties == rhs.properties);
# endif
}
bool operator!=(PhysicalDeviceProperties2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProperties2;
void *pNext = {};
VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties properties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2) == sizeof(VkPhysicalDeviceProperties2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceProperties2>::value,
"PhysicalDeviceProperties2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceProperties2>
{
using Type = PhysicalDeviceProperties2;
};
using PhysicalDeviceProperties2KHR = PhysicalDeviceProperties2;
struct PhysicalDeviceProtectedMemoryFeatures
{
using NativeType = VkPhysicalDeviceProtectedMemoryFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceProtectedMemoryFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceProtectedMemoryFeatures(VULKAN_HPP_NAMESPACE::Bool32 protectedMemory_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
protectedMemory(protectedMemory_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceProtectedMemoryFeatures(PhysicalDeviceProtectedMemoryFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceProtectedMemoryFeatures(VkPhysicalDeviceProtectedMemoryFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceProtectedMemoryFeatures(*reinterpret_cast<PhysicalDeviceProtectedMemoryFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceProtectedMemoryFeatures &operator=(PhysicalDeviceProtectedMemoryFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceProtectedMemoryFeatures &operator=(VkPhysicalDeviceProtectedMemoryFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProtectedMemoryFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProtectedMemoryFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProtectedMemoryFeatures &setProtectedMemory(VULKAN_HPP_NAMESPACE::Bool32 protectedMemory_) VULKAN_HPP_NOEXCEPT
{
protectedMemory = protectedMemory_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceProtectedMemoryFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceProtectedMemoryFeatures *>(this);
}
explicit operator VkPhysicalDeviceProtectedMemoryFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceProtectedMemoryFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, protectedMemory);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceProtectedMemoryFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceProtectedMemoryFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (protectedMemory == rhs.protectedMemory);
# endif
}
bool operator!=(PhysicalDeviceProtectedMemoryFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProtectedMemoryFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 protectedMemory = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceProtectedMemoryFeatures) == sizeof(VkPhysicalDeviceProtectedMemoryFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceProtectedMemoryFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceProtectedMemoryFeatures>::value,
"PhysicalDeviceProtectedMemoryFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceProtectedMemoryFeatures>
{
using Type = PhysicalDeviceProtectedMemoryFeatures;
};
struct PhysicalDeviceProtectedMemoryProperties
{
using NativeType = VkPhysicalDeviceProtectedMemoryProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceProtectedMemoryProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceProtectedMemoryProperties(VULKAN_HPP_NAMESPACE::Bool32 protectedNoFault_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
protectedNoFault(protectedNoFault_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceProtectedMemoryProperties(PhysicalDeviceProtectedMemoryProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceProtectedMemoryProperties(VkPhysicalDeviceProtectedMemoryProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceProtectedMemoryProperties(*reinterpret_cast<PhysicalDeviceProtectedMemoryProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceProtectedMemoryProperties &operator=(PhysicalDeviceProtectedMemoryProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceProtectedMemoryProperties &operator=(VkPhysicalDeviceProtectedMemoryProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProtectedMemoryProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceProtectedMemoryProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceProtectedMemoryProperties *>(this);
}
explicit operator VkPhysicalDeviceProtectedMemoryProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceProtectedMemoryProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, protectedNoFault);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceProtectedMemoryProperties const &) const = default;
#else
bool operator==(PhysicalDeviceProtectedMemoryProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (protectedNoFault == rhs.protectedNoFault);
# endif
}
bool operator!=(PhysicalDeviceProtectedMemoryProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProtectedMemoryProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 protectedNoFault = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceProtectedMemoryProperties) == sizeof(VkPhysicalDeviceProtectedMemoryProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceProtectedMemoryProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceProtectedMemoryProperties>::value,
"PhysicalDeviceProtectedMemoryProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceProtectedMemoryProperties>
{
using Type = PhysicalDeviceProtectedMemoryProperties;
};
struct PhysicalDeviceProvokingVertexFeaturesEXT
{
using NativeType = VkPhysicalDeviceProvokingVertexFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceProvokingVertexFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceProvokingVertexFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 provokingVertexLast_ = {},
VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackPreservesProvokingVertex_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
provokingVertexLast(provokingVertexLast_),
transformFeedbackPreservesProvokingVertex(transformFeedbackPreservesProvokingVertex_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceProvokingVertexFeaturesEXT(PhysicalDeviceProvokingVertexFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceProvokingVertexFeaturesEXT(VkPhysicalDeviceProvokingVertexFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceProvokingVertexFeaturesEXT(*reinterpret_cast<PhysicalDeviceProvokingVertexFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceProvokingVertexFeaturesEXT &operator=(PhysicalDeviceProvokingVertexFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceProvokingVertexFeaturesEXT &operator=(VkPhysicalDeviceProvokingVertexFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProvokingVertexFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProvokingVertexFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProvokingVertexFeaturesEXT &
setProvokingVertexLast(VULKAN_HPP_NAMESPACE::Bool32 provokingVertexLast_) VULKAN_HPP_NOEXCEPT
{
provokingVertexLast = provokingVertexLast_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceProvokingVertexFeaturesEXT &
setTransformFeedbackPreservesProvokingVertex(VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackPreservesProvokingVertex_) VULKAN_HPP_NOEXCEPT
{
transformFeedbackPreservesProvokingVertex = transformFeedbackPreservesProvokingVertex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceProvokingVertexFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceProvokingVertexFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceProvokingVertexFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceProvokingVertexFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, provokingVertexLast, transformFeedbackPreservesProvokingVertex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceProvokingVertexFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceProvokingVertexFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (provokingVertexLast == rhs.provokingVertexLast) &&
(transformFeedbackPreservesProvokingVertex == rhs.transformFeedbackPreservesProvokingVertex);
# endif
}
bool operator!=(PhysicalDeviceProvokingVertexFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProvokingVertexFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 provokingVertexLast = {};
VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackPreservesProvokingVertex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceProvokingVertexFeaturesEXT) == sizeof(VkPhysicalDeviceProvokingVertexFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceProvokingVertexFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceProvokingVertexFeaturesEXT>::value,
"PhysicalDeviceProvokingVertexFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceProvokingVertexFeaturesEXT>
{
using Type = PhysicalDeviceProvokingVertexFeaturesEXT;
};
struct PhysicalDeviceProvokingVertexPropertiesEXT
{
using NativeType = VkPhysicalDeviceProvokingVertexPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceProvokingVertexPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceProvokingVertexPropertiesEXT(VULKAN_HPP_NAMESPACE::Bool32 provokingVertexModePerPipeline_ = {},
VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackPreservesTriangleFanProvokingVertex_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
provokingVertexModePerPipeline(provokingVertexModePerPipeline_),
transformFeedbackPreservesTriangleFanProvokingVertex(transformFeedbackPreservesTriangleFanProvokingVertex_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceProvokingVertexPropertiesEXT(PhysicalDeviceProvokingVertexPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceProvokingVertexPropertiesEXT(VkPhysicalDeviceProvokingVertexPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceProvokingVertexPropertiesEXT(*reinterpret_cast<PhysicalDeviceProvokingVertexPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceProvokingVertexPropertiesEXT &operator=(PhysicalDeviceProvokingVertexPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceProvokingVertexPropertiesEXT &operator=(VkPhysicalDeviceProvokingVertexPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceProvokingVertexPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceProvokingVertexPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceProvokingVertexPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceProvokingVertexPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceProvokingVertexPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, provokingVertexModePerPipeline, transformFeedbackPreservesTriangleFanProvokingVertex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceProvokingVertexPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceProvokingVertexPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (provokingVertexModePerPipeline == rhs.provokingVertexModePerPipeline) &&
(transformFeedbackPreservesTriangleFanProvokingVertex == rhs.transformFeedbackPreservesTriangleFanProvokingVertex);
# endif
}
bool operator!=(PhysicalDeviceProvokingVertexPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceProvokingVertexPropertiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 provokingVertexModePerPipeline = {};
VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackPreservesTriangleFanProvokingVertex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceProvokingVertexPropertiesEXT) ==
sizeof(VkPhysicalDeviceProvokingVertexPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceProvokingVertexPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceProvokingVertexPropertiesEXT>::value,
"PhysicalDeviceProvokingVertexPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceProvokingVertexPropertiesEXT>
{
using Type = PhysicalDeviceProvokingVertexPropertiesEXT;
};
struct PhysicalDevicePushDescriptorPropertiesKHR
{
using NativeType = VkPhysicalDevicePushDescriptorPropertiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDevicePushDescriptorPropertiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDevicePushDescriptorPropertiesKHR(uint32_t maxPushDescriptors_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxPushDescriptors(maxPushDescriptors_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDevicePushDescriptorPropertiesKHR(PhysicalDevicePushDescriptorPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePushDescriptorPropertiesKHR(VkPhysicalDevicePushDescriptorPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDevicePushDescriptorPropertiesKHR(*reinterpret_cast<PhysicalDevicePushDescriptorPropertiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDevicePushDescriptorPropertiesKHR &operator=(PhysicalDevicePushDescriptorPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDevicePushDescriptorPropertiesKHR &operator=(VkPhysicalDevicePushDescriptorPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDevicePushDescriptorPropertiesKHR const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDevicePushDescriptorPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDevicePushDescriptorPropertiesKHR *>(this);
}
explicit operator VkPhysicalDevicePushDescriptorPropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDevicePushDescriptorPropertiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxPushDescriptors);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDevicePushDescriptorPropertiesKHR const &) const = default;
#else
bool operator==(PhysicalDevicePushDescriptorPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxPushDescriptors == rhs.maxPushDescriptors);
# endif
}
bool operator!=(PhysicalDevicePushDescriptorPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDevicePushDescriptorPropertiesKHR;
void *pNext = {};
uint32_t maxPushDescriptors = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDevicePushDescriptorPropertiesKHR) == sizeof(VkPhysicalDevicePushDescriptorPropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePushDescriptorPropertiesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePushDescriptorPropertiesKHR>::value,
"PhysicalDevicePushDescriptorPropertiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDevicePushDescriptorPropertiesKHR>
{
using Type = PhysicalDevicePushDescriptorPropertiesKHR;
};
struct PhysicalDeviceRGBA10X6FormatsFeaturesEXT
{
using NativeType = VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRgba10X6FormatsFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceRGBA10X6FormatsFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 formatRgba10x6WithoutYCbCrSampler_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
formatRgba10x6WithoutYCbCrSampler(formatRgba10x6WithoutYCbCrSampler_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceRGBA10X6FormatsFeaturesEXT(PhysicalDeviceRGBA10X6FormatsFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRGBA10X6FormatsFeaturesEXT(VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceRGBA10X6FormatsFeaturesEXT(*reinterpret_cast<PhysicalDeviceRGBA10X6FormatsFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceRGBA10X6FormatsFeaturesEXT &operator=(PhysicalDeviceRGBA10X6FormatsFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRGBA10X6FormatsFeaturesEXT &operator=(VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRGBA10X6FormatsFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRGBA10X6FormatsFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRGBA10X6FormatsFeaturesEXT &
setFormatRgba10x6WithoutYCbCrSampler(VULKAN_HPP_NAMESPACE::Bool32 formatRgba10x6WithoutYCbCrSampler_) VULKAN_HPP_NOEXCEPT
{
formatRgba10x6WithoutYCbCrSampler = formatRgba10x6WithoutYCbCrSampler_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, formatRgba10x6WithoutYCbCrSampler);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceRGBA10X6FormatsFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceRGBA10X6FormatsFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (formatRgba10x6WithoutYCbCrSampler == rhs.formatRgba10x6WithoutYCbCrSampler);
# endif
}
bool operator!=(PhysicalDeviceRGBA10X6FormatsFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRgba10X6FormatsFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 formatRgba10x6WithoutYCbCrSampler = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceRGBA10X6FormatsFeaturesEXT) == sizeof(VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceRGBA10X6FormatsFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceRGBA10X6FormatsFeaturesEXT>::value,
"PhysicalDeviceRGBA10X6FormatsFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceRgba10X6FormatsFeaturesEXT>
{
using Type = PhysicalDeviceRGBA10X6FormatsFeaturesEXT;
};
struct PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM
{
using NativeType = VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM(VULKAN_HPP_NAMESPACE::Bool32 rasterizationOrderColorAttachmentAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 rasterizationOrderDepthAttachmentAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 rasterizationOrderStencilAttachmentAccess_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
rasterizationOrderColorAttachmentAccess(rasterizationOrderColorAttachmentAccess_),
rasterizationOrderDepthAttachmentAccess(rasterizationOrderDepthAttachmentAccess_),
rasterizationOrderStencilAttachmentAccess(rasterizationOrderStencilAttachmentAccess_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM(PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM const &rhs)
VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM(VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM(
*reinterpret_cast<PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM &
operator=(PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM &
operator=(VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM &
setRasterizationOrderColorAttachmentAccess(VULKAN_HPP_NAMESPACE::Bool32 rasterizationOrderColorAttachmentAccess_) VULKAN_HPP_NOEXCEPT
{
rasterizationOrderColorAttachmentAccess = rasterizationOrderColorAttachmentAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM &
setRasterizationOrderDepthAttachmentAccess(VULKAN_HPP_NAMESPACE::Bool32 rasterizationOrderDepthAttachmentAccess_) VULKAN_HPP_NOEXCEPT
{
rasterizationOrderDepthAttachmentAccess = rasterizationOrderDepthAttachmentAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM &
setRasterizationOrderStencilAttachmentAccess(VULKAN_HPP_NAMESPACE::Bool32 rasterizationOrderStencilAttachmentAccess_) VULKAN_HPP_NOEXCEPT
{
rasterizationOrderStencilAttachmentAccess = rasterizationOrderStencilAttachmentAccess_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM *>(this);
}
explicit operator VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, rasterizationOrderColorAttachmentAccess, rasterizationOrderDepthAttachmentAccess, rasterizationOrderStencilAttachmentAccess);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM const &) const = default;
#else
bool operator==(PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (rasterizationOrderColorAttachmentAccess == rhs.rasterizationOrderColorAttachmentAccess) &&
(rasterizationOrderDepthAttachmentAccess == rhs.rasterizationOrderDepthAttachmentAccess) &&
(rasterizationOrderStencilAttachmentAccess == rhs.rasterizationOrderStencilAttachmentAccess);
# endif
}
bool operator!=(PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 rasterizationOrderColorAttachmentAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 rasterizationOrderDepthAttachmentAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 rasterizationOrderStencilAttachmentAccess = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM) ==
sizeof(VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM>::value,
"PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM>
{
using Type = PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM;
};
struct PhysicalDeviceRayQueryFeaturesKHR
{
using NativeType = VkPhysicalDeviceRayQueryFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRayQueryFeaturesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceRayQueryFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 rayQuery_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
rayQuery(rayQuery_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceRayQueryFeaturesKHR(PhysicalDeviceRayQueryFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRayQueryFeaturesKHR(VkPhysicalDeviceRayQueryFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceRayQueryFeaturesKHR(*reinterpret_cast<PhysicalDeviceRayQueryFeaturesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceRayQueryFeaturesKHR &operator=(PhysicalDeviceRayQueryFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRayQueryFeaturesKHR &operator=(VkPhysicalDeviceRayQueryFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayQueryFeaturesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayQueryFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayQueryFeaturesKHR &setRayQuery(VULKAN_HPP_NAMESPACE::Bool32 rayQuery_) VULKAN_HPP_NOEXCEPT
{
rayQuery = rayQuery_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceRayQueryFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceRayQueryFeaturesKHR *>(this);
}
explicit operator VkPhysicalDeviceRayQueryFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceRayQueryFeaturesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, rayQuery);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceRayQueryFeaturesKHR const &) const = default;
#else
bool operator==(PhysicalDeviceRayQueryFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (rayQuery == rhs.rayQuery);
# endif
}
bool operator!=(PhysicalDeviceRayQueryFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayQueryFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 rayQuery = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceRayQueryFeaturesKHR) == sizeof(VkPhysicalDeviceRayQueryFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayQueryFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayQueryFeaturesKHR>::value,
"PhysicalDeviceRayQueryFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceRayQueryFeaturesKHR>
{
using Type = PhysicalDeviceRayQueryFeaturesKHR;
};
struct PhysicalDeviceRayTracingMotionBlurFeaturesNV
{
using NativeType = VkPhysicalDeviceRayTracingMotionBlurFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRayTracingMotionBlurFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingMotionBlurFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 rayTracingMotionBlur_ = {},
VULKAN_HPP_NAMESPACE::Bool32 rayTracingMotionBlurPipelineTraceRaysIndirect_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
rayTracingMotionBlur(rayTracingMotionBlur_),
rayTracingMotionBlurPipelineTraceRaysIndirect(rayTracingMotionBlurPipelineTraceRaysIndirect_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingMotionBlurFeaturesNV(PhysicalDeviceRayTracingMotionBlurFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRayTracingMotionBlurFeaturesNV(VkPhysicalDeviceRayTracingMotionBlurFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceRayTracingMotionBlurFeaturesNV(*reinterpret_cast<PhysicalDeviceRayTracingMotionBlurFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceRayTracingMotionBlurFeaturesNV &operator=(PhysicalDeviceRayTracingMotionBlurFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRayTracingMotionBlurFeaturesNV &operator=(VkPhysicalDeviceRayTracingMotionBlurFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingMotionBlurFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingMotionBlurFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingMotionBlurFeaturesNV &
setRayTracingMotionBlur(VULKAN_HPP_NAMESPACE::Bool32 rayTracingMotionBlur_) VULKAN_HPP_NOEXCEPT
{
rayTracingMotionBlur = rayTracingMotionBlur_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingMotionBlurFeaturesNV &
setRayTracingMotionBlurPipelineTraceRaysIndirect(VULKAN_HPP_NAMESPACE::Bool32 rayTracingMotionBlurPipelineTraceRaysIndirect_) VULKAN_HPP_NOEXCEPT
{
rayTracingMotionBlurPipelineTraceRaysIndirect = rayTracingMotionBlurPipelineTraceRaysIndirect_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceRayTracingMotionBlurFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceRayTracingMotionBlurFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, rayTracingMotionBlur, rayTracingMotionBlurPipelineTraceRaysIndirect);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceRayTracingMotionBlurFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceRayTracingMotionBlurFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (rayTracingMotionBlur == rhs.rayTracingMotionBlur) &&
(rayTracingMotionBlurPipelineTraceRaysIndirect == rhs.rayTracingMotionBlurPipelineTraceRaysIndirect);
# endif
}
bool operator!=(PhysicalDeviceRayTracingMotionBlurFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayTracingMotionBlurFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 rayTracingMotionBlur = {};
VULKAN_HPP_NAMESPACE::Bool32 rayTracingMotionBlurPipelineTraceRaysIndirect = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingMotionBlurFeaturesNV) ==
sizeof(VkPhysicalDeviceRayTracingMotionBlurFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingMotionBlurFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingMotionBlurFeaturesNV>::value,
"PhysicalDeviceRayTracingMotionBlurFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceRayTracingMotionBlurFeaturesNV>
{
using Type = PhysicalDeviceRayTracingMotionBlurFeaturesNV;
};
struct PhysicalDeviceRayTracingPipelineFeaturesKHR
{
using NativeType = VkPhysicalDeviceRayTracingPipelineFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRayTracingPipelineFeaturesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPipelineFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipeline_ = {},
VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplay_ = {},
VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed_ = {},
VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineTraceRaysIndirect_ = {},
VULKAN_HPP_NAMESPACE::Bool32 rayTraversalPrimitiveCulling_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
rayTracingPipeline(rayTracingPipeline_),
rayTracingPipelineShaderGroupHandleCaptureReplay(rayTracingPipelineShaderGroupHandleCaptureReplay_),
rayTracingPipelineShaderGroupHandleCaptureReplayMixed(rayTracingPipelineShaderGroupHandleCaptureReplayMixed_),
rayTracingPipelineTraceRaysIndirect(rayTracingPipelineTraceRaysIndirect_),
rayTraversalPrimitiveCulling(rayTraversalPrimitiveCulling_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPipelineFeaturesKHR(PhysicalDeviceRayTracingPipelineFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRayTracingPipelineFeaturesKHR(VkPhysicalDeviceRayTracingPipelineFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceRayTracingPipelineFeaturesKHR(*reinterpret_cast<PhysicalDeviceRayTracingPipelineFeaturesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceRayTracingPipelineFeaturesKHR &operator=(PhysicalDeviceRayTracingPipelineFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRayTracingPipelineFeaturesKHR &operator=(VkPhysicalDeviceRayTracingPipelineFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPipelineFeaturesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingPipelineFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingPipelineFeaturesKHR &
setRayTracingPipeline(VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipeline_) VULKAN_HPP_NOEXCEPT
{
rayTracingPipeline = rayTracingPipeline_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingPipelineFeaturesKHR &
setRayTracingPipelineShaderGroupHandleCaptureReplay(VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplay_) VULKAN_HPP_NOEXCEPT
{
rayTracingPipelineShaderGroupHandleCaptureReplay = rayTracingPipelineShaderGroupHandleCaptureReplay_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingPipelineFeaturesKHR &setRayTracingPipelineShaderGroupHandleCaptureReplayMixed(
VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed_) VULKAN_HPP_NOEXCEPT
{
rayTracingPipelineShaderGroupHandleCaptureReplayMixed = rayTracingPipelineShaderGroupHandleCaptureReplayMixed_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingPipelineFeaturesKHR &
setRayTracingPipelineTraceRaysIndirect(VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineTraceRaysIndirect_) VULKAN_HPP_NOEXCEPT
{
rayTracingPipelineTraceRaysIndirect = rayTracingPipelineTraceRaysIndirect_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRayTracingPipelineFeaturesKHR &
setRayTraversalPrimitiveCulling(VULKAN_HPP_NAMESPACE::Bool32 rayTraversalPrimitiveCulling_) VULKAN_HPP_NOEXCEPT
{
rayTraversalPrimitiveCulling = rayTraversalPrimitiveCulling_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceRayTracingPipelineFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceRayTracingPipelineFeaturesKHR *>(this);
}
explicit operator VkPhysicalDeviceRayTracingPipelineFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceRayTracingPipelineFeaturesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
rayTracingPipeline,
rayTracingPipelineShaderGroupHandleCaptureReplay,
rayTracingPipelineShaderGroupHandleCaptureReplayMixed,
rayTracingPipelineTraceRaysIndirect,
rayTraversalPrimitiveCulling);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceRayTracingPipelineFeaturesKHR const &) const = default;
#else
bool operator==(PhysicalDeviceRayTracingPipelineFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (rayTracingPipeline == rhs.rayTracingPipeline) &&
(rayTracingPipelineShaderGroupHandleCaptureReplay == rhs.rayTracingPipelineShaderGroupHandleCaptureReplay) &&
(rayTracingPipelineShaderGroupHandleCaptureReplayMixed == rhs.rayTracingPipelineShaderGroupHandleCaptureReplayMixed) &&
(rayTracingPipelineTraceRaysIndirect == rhs.rayTracingPipelineTraceRaysIndirect) &&
(rayTraversalPrimitiveCulling == rhs.rayTraversalPrimitiveCulling);
# endif
}
bool operator!=(PhysicalDeviceRayTracingPipelineFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayTracingPipelineFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipeline = {};
VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplay = {};
VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed = {};
VULKAN_HPP_NAMESPACE::Bool32 rayTracingPipelineTraceRaysIndirect = {};
VULKAN_HPP_NAMESPACE::Bool32 rayTraversalPrimitiveCulling = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPipelineFeaturesKHR) ==
sizeof(VkPhysicalDeviceRayTracingPipelineFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPipelineFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPipelineFeaturesKHR>::value,
"PhysicalDeviceRayTracingPipelineFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceRayTracingPipelineFeaturesKHR>
{
using Type = PhysicalDeviceRayTracingPipelineFeaturesKHR;
};
struct PhysicalDeviceRayTracingPipelinePropertiesKHR
{
using NativeType = VkPhysicalDeviceRayTracingPipelinePropertiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRayTracingPipelinePropertiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPipelinePropertiesKHR(uint32_t shaderGroupHandleSize_ = {},
uint32_t maxRayRecursionDepth_ = {},
uint32_t maxShaderGroupStride_ = {},
uint32_t shaderGroupBaseAlignment_ = {},
uint32_t shaderGroupHandleCaptureReplaySize_ = {},
uint32_t maxRayDispatchInvocationCount_ = {},
uint32_t shaderGroupHandleAlignment_ = {},
uint32_t maxRayHitAttributeSize_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderGroupHandleSize(shaderGroupHandleSize_),
maxRayRecursionDepth(maxRayRecursionDepth_),
maxShaderGroupStride(maxShaderGroupStride_),
shaderGroupBaseAlignment(shaderGroupBaseAlignment_),
shaderGroupHandleCaptureReplaySize(shaderGroupHandleCaptureReplaySize_),
maxRayDispatchInvocationCount(maxRayDispatchInvocationCount_),
shaderGroupHandleAlignment(shaderGroupHandleAlignment_),
maxRayHitAttributeSize(maxRayHitAttributeSize_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceRayTracingPipelinePropertiesKHR(PhysicalDeviceRayTracingPipelinePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRayTracingPipelinePropertiesKHR(VkPhysicalDeviceRayTracingPipelinePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceRayTracingPipelinePropertiesKHR(*reinterpret_cast<PhysicalDeviceRayTracingPipelinePropertiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceRayTracingPipelinePropertiesKHR &operator=(PhysicalDeviceRayTracingPipelinePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRayTracingPipelinePropertiesKHR &operator=(VkPhysicalDeviceRayTracingPipelinePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPipelinePropertiesKHR const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceRayTracingPipelinePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceRayTracingPipelinePropertiesKHR *>(this);
}
explicit operator VkPhysicalDeviceRayTracingPipelinePropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceRayTracingPipelinePropertiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
shaderGroupHandleSize,
maxRayRecursionDepth,
maxShaderGroupStride,
shaderGroupBaseAlignment,
shaderGroupHandleCaptureReplaySize,
maxRayDispatchInvocationCount,
shaderGroupHandleAlignment,
maxRayHitAttributeSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceRayTracingPipelinePropertiesKHR const &) const = default;
#else
bool operator==(PhysicalDeviceRayTracingPipelinePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderGroupHandleSize == rhs.shaderGroupHandleSize) &&
(maxRayRecursionDepth == rhs.maxRayRecursionDepth) && (maxShaderGroupStride == rhs.maxShaderGroupStride) &&
(shaderGroupBaseAlignment == rhs.shaderGroupBaseAlignment) && (shaderGroupHandleCaptureReplaySize == rhs.shaderGroupHandleCaptureReplaySize) &&
(maxRayDispatchInvocationCount == rhs.maxRayDispatchInvocationCount) && (shaderGroupHandleAlignment == rhs.shaderGroupHandleAlignment) &&
(maxRayHitAttributeSize == rhs.maxRayHitAttributeSize);
# endif
}
bool operator!=(PhysicalDeviceRayTracingPipelinePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayTracingPipelinePropertiesKHR;
void *pNext = {};
uint32_t shaderGroupHandleSize = {};
uint32_t maxRayRecursionDepth = {};
uint32_t maxShaderGroupStride = {};
uint32_t shaderGroupBaseAlignment = {};
uint32_t shaderGroupHandleCaptureReplaySize = {};
uint32_t maxRayDispatchInvocationCount = {};
uint32_t shaderGroupHandleAlignment = {};
uint32_t maxRayHitAttributeSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPipelinePropertiesKHR) ==
sizeof(VkPhysicalDeviceRayTracingPipelinePropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPipelinePropertiesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPipelinePropertiesKHR>::value,
"PhysicalDeviceRayTracingPipelinePropertiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceRayTracingPipelinePropertiesKHR>
{
using Type = PhysicalDeviceRayTracingPipelinePropertiesKHR;
};
struct PhysicalDeviceRayTracingPropertiesNV
{
using NativeType = VkPhysicalDeviceRayTracingPropertiesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRayTracingPropertiesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPropertiesNV(uint32_t shaderGroupHandleSize_ = {},
uint32_t maxRecursionDepth_ = {},
uint32_t maxShaderGroupStride_ = {},
uint32_t shaderGroupBaseAlignment_ = {},
uint64_t maxGeometryCount_ = {},
uint64_t maxInstanceCount_ = {},
uint64_t maxTriangleCount_ = {},
uint32_t maxDescriptorSetAccelerationStructures_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderGroupHandleSize(shaderGroupHandleSize_),
maxRecursionDepth(maxRecursionDepth_),
maxShaderGroupStride(maxShaderGroupStride_),
shaderGroupBaseAlignment(shaderGroupBaseAlignment_),
maxGeometryCount(maxGeometryCount_),
maxInstanceCount(maxInstanceCount_),
maxTriangleCount(maxTriangleCount_),
maxDescriptorSetAccelerationStructures(maxDescriptorSetAccelerationStructures_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceRayTracingPropertiesNV(PhysicalDeviceRayTracingPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRayTracingPropertiesNV(VkPhysicalDeviceRayTracingPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceRayTracingPropertiesNV(*reinterpret_cast<PhysicalDeviceRayTracingPropertiesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceRayTracingPropertiesNV &operator=(PhysicalDeviceRayTracingPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRayTracingPropertiesNV &operator=(VkPhysicalDeviceRayTracingPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPropertiesNV const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceRayTracingPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceRayTracingPropertiesNV *>(this);
}
explicit operator VkPhysicalDeviceRayTracingPropertiesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceRayTracingPropertiesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint64_t const &,
uint64_t const &,
uint64_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
shaderGroupHandleSize,
maxRecursionDepth,
maxShaderGroupStride,
shaderGroupBaseAlignment,
maxGeometryCount,
maxInstanceCount,
maxTriangleCount,
maxDescriptorSetAccelerationStructures);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceRayTracingPropertiesNV const &) const = default;
#else
bool operator==(PhysicalDeviceRayTracingPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderGroupHandleSize == rhs.shaderGroupHandleSize) &&
(maxRecursionDepth == rhs.maxRecursionDepth) && (maxShaderGroupStride == rhs.maxShaderGroupStride) &&
(shaderGroupBaseAlignment == rhs.shaderGroupBaseAlignment) && (maxGeometryCount == rhs.maxGeometryCount) &&
(maxInstanceCount == rhs.maxInstanceCount) && (maxTriangleCount == rhs.maxTriangleCount) &&
(maxDescriptorSetAccelerationStructures == rhs.maxDescriptorSetAccelerationStructures);
# endif
}
bool operator!=(PhysicalDeviceRayTracingPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRayTracingPropertiesNV;
void *pNext = {};
uint32_t shaderGroupHandleSize = {};
uint32_t maxRecursionDepth = {};
uint32_t maxShaderGroupStride = {};
uint32_t shaderGroupBaseAlignment = {};
uint64_t maxGeometryCount = {};
uint64_t maxInstanceCount = {};
uint64_t maxTriangleCount = {};
uint32_t maxDescriptorSetAccelerationStructures = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPropertiesNV) == sizeof(VkPhysicalDeviceRayTracingPropertiesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPropertiesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceRayTracingPropertiesNV>::value,
"PhysicalDeviceRayTracingPropertiesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceRayTracingPropertiesNV>
{
using Type = PhysicalDeviceRayTracingPropertiesNV;
};
struct PhysicalDeviceRepresentativeFragmentTestFeaturesNV
{
using NativeType = VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRepresentativeFragmentTestFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceRepresentativeFragmentTestFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTest_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
representativeFragmentTest(representativeFragmentTest_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceRepresentativeFragmentTestFeaturesNV(PhysicalDeviceRepresentativeFragmentTestFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRepresentativeFragmentTestFeaturesNV(VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceRepresentativeFragmentTestFeaturesNV(*reinterpret_cast<PhysicalDeviceRepresentativeFragmentTestFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceRepresentativeFragmentTestFeaturesNV &
operator=(PhysicalDeviceRepresentativeFragmentTestFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRepresentativeFragmentTestFeaturesNV &operator=(VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRepresentativeFragmentTestFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRepresentativeFragmentTestFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRepresentativeFragmentTestFeaturesNV &
setRepresentativeFragmentTest(VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTest_) VULKAN_HPP_NOEXCEPT
{
representativeFragmentTest = representativeFragmentTest_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, representativeFragmentTest);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceRepresentativeFragmentTestFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceRepresentativeFragmentTestFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (representativeFragmentTest == rhs.representativeFragmentTest);
# endif
}
bool operator!=(PhysicalDeviceRepresentativeFragmentTestFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRepresentativeFragmentTestFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTest = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceRepresentativeFragmentTestFeaturesNV) ==
sizeof(VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceRepresentativeFragmentTestFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceRepresentativeFragmentTestFeaturesNV>::value,
"PhysicalDeviceRepresentativeFragmentTestFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceRepresentativeFragmentTestFeaturesNV>
{
using Type = PhysicalDeviceRepresentativeFragmentTestFeaturesNV;
};
struct PhysicalDeviceRobustness2FeaturesEXT
{
using NativeType = VkPhysicalDeviceRobustness2FeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRobustness2FeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceRobustness2FeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess2_ = {},
VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess2_ = {},
VULKAN_HPP_NAMESPACE::Bool32 nullDescriptor_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
robustBufferAccess2(robustBufferAccess2_),
robustImageAccess2(robustImageAccess2_),
nullDescriptor(nullDescriptor_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceRobustness2FeaturesEXT(PhysicalDeviceRobustness2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRobustness2FeaturesEXT(VkPhysicalDeviceRobustness2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceRobustness2FeaturesEXT(*reinterpret_cast<PhysicalDeviceRobustness2FeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceRobustness2FeaturesEXT &operator=(PhysicalDeviceRobustness2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRobustness2FeaturesEXT &operator=(VkPhysicalDeviceRobustness2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRobustness2FeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRobustness2FeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRobustness2FeaturesEXT &
setRobustBufferAccess2(VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess2_) VULKAN_HPP_NOEXCEPT
{
robustBufferAccess2 = robustBufferAccess2_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRobustness2FeaturesEXT &setRobustImageAccess2(VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess2_) VULKAN_HPP_NOEXCEPT
{
robustImageAccess2 = robustImageAccess2_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceRobustness2FeaturesEXT &setNullDescriptor(VULKAN_HPP_NAMESPACE::Bool32 nullDescriptor_) VULKAN_HPP_NOEXCEPT
{
nullDescriptor = nullDescriptor_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceRobustness2FeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceRobustness2FeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceRobustness2FeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceRobustness2FeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, robustBufferAccess2, robustImageAccess2, nullDescriptor);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceRobustness2FeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceRobustness2FeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (robustBufferAccess2 == rhs.robustBufferAccess2) &&
(robustImageAccess2 == rhs.robustImageAccess2) && (nullDescriptor == rhs.nullDescriptor);
# endif
}
bool operator!=(PhysicalDeviceRobustness2FeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRobustness2FeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccess2 = {};
VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess2 = {};
VULKAN_HPP_NAMESPACE::Bool32 nullDescriptor = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceRobustness2FeaturesEXT) == sizeof(VkPhysicalDeviceRobustness2FeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceRobustness2FeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceRobustness2FeaturesEXT>::value,
"PhysicalDeviceRobustness2FeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceRobustness2FeaturesEXT>
{
using Type = PhysicalDeviceRobustness2FeaturesEXT;
};
struct PhysicalDeviceRobustness2PropertiesEXT
{
using NativeType = VkPhysicalDeviceRobustness2PropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceRobustness2PropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceRobustness2PropertiesEXT(VULKAN_HPP_NAMESPACE::DeviceSize robustStorageBufferAccessSizeAlignment_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize robustUniformBufferAccessSizeAlignment_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
robustStorageBufferAccessSizeAlignment(robustStorageBufferAccessSizeAlignment_),
robustUniformBufferAccessSizeAlignment(robustUniformBufferAccessSizeAlignment_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceRobustness2PropertiesEXT(PhysicalDeviceRobustness2PropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRobustness2PropertiesEXT(VkPhysicalDeviceRobustness2PropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceRobustness2PropertiesEXT(*reinterpret_cast<PhysicalDeviceRobustness2PropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceRobustness2PropertiesEXT &operator=(PhysicalDeviceRobustness2PropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceRobustness2PropertiesEXT &operator=(VkPhysicalDeviceRobustness2PropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceRobustness2PropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceRobustness2PropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceRobustness2PropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceRobustness2PropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceRobustness2PropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::DeviceSize const &, VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, robustStorageBufferAccessSizeAlignment, robustUniformBufferAccessSizeAlignment);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceRobustness2PropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceRobustness2PropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (robustStorageBufferAccessSizeAlignment == rhs.robustStorageBufferAccessSizeAlignment) &&
(robustUniformBufferAccessSizeAlignment == rhs.robustUniformBufferAccessSizeAlignment);
# endif
}
bool operator!=(PhysicalDeviceRobustness2PropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceRobustness2PropertiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceSize robustStorageBufferAccessSizeAlignment = {};
VULKAN_HPP_NAMESPACE::DeviceSize robustUniformBufferAccessSizeAlignment = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceRobustness2PropertiesEXT) == sizeof(VkPhysicalDeviceRobustness2PropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceRobustness2PropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceRobustness2PropertiesEXT>::value,
"PhysicalDeviceRobustness2PropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceRobustness2PropertiesEXT>
{
using Type = PhysicalDeviceRobustness2PropertiesEXT;
};
struct PhysicalDeviceSampleLocationsPropertiesEXT
{
using NativeType = VkPhysicalDeviceSampleLocationsPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSampleLocationsPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSampleLocationsPropertiesEXT(VULKAN_HPP_NAMESPACE::SampleCountFlags sampleLocationSampleCounts_ = {},
VULKAN_HPP_NAMESPACE::Extent2D maxSampleLocationGridSize_ = {},
std::array<float, 2> const &sampleLocationCoordinateRange_ = {},
uint32_t sampleLocationSubPixelBits_ = {},
VULKAN_HPP_NAMESPACE::Bool32 variableSampleLocations_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
sampleLocationSampleCounts(sampleLocationSampleCounts_),
maxSampleLocationGridSize(maxSampleLocationGridSize_),
sampleLocationCoordinateRange(sampleLocationCoordinateRange_),
sampleLocationSubPixelBits(sampleLocationSubPixelBits_),
variableSampleLocations(variableSampleLocations_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSampleLocationsPropertiesEXT(PhysicalDeviceSampleLocationsPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSampleLocationsPropertiesEXT(VkPhysicalDeviceSampleLocationsPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSampleLocationsPropertiesEXT(*reinterpret_cast<PhysicalDeviceSampleLocationsPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSampleLocationsPropertiesEXT &operator=(PhysicalDeviceSampleLocationsPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSampleLocationsPropertiesEXT &operator=(VkPhysicalDeviceSampleLocationsPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSampleLocationsPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceSampleLocationsPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSampleLocationsPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceSampleLocationsPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSampleLocationsPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
sampleLocationSampleCounts,
maxSampleLocationGridSize,
sampleLocationCoordinateRange,
sampleLocationSubPixelBits,
variableSampleLocations);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSampleLocationsPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceSampleLocationsPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (sampleLocationSampleCounts == rhs.sampleLocationSampleCounts) &&
(maxSampleLocationGridSize == rhs.maxSampleLocationGridSize) && (sampleLocationCoordinateRange == rhs.sampleLocationCoordinateRange) &&
(sampleLocationSubPixelBits == rhs.sampleLocationSubPixelBits) && (variableSampleLocations == rhs.variableSampleLocations);
# endif
}
bool operator!=(PhysicalDeviceSampleLocationsPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSampleLocationsPropertiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags sampleLocationSampleCounts = {};
VULKAN_HPP_NAMESPACE::Extent2D maxSampleLocationGridSize = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<float, 2> sampleLocationCoordinateRange = {};
uint32_t sampleLocationSubPixelBits = {};
VULKAN_HPP_NAMESPACE::Bool32 variableSampleLocations = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSampleLocationsPropertiesEXT) ==
sizeof(VkPhysicalDeviceSampleLocationsPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSampleLocationsPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSampleLocationsPropertiesEXT>::value,
"PhysicalDeviceSampleLocationsPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceSampleLocationsPropertiesEXT>
{
using Type = PhysicalDeviceSampleLocationsPropertiesEXT;
};
struct PhysicalDeviceSamplerFilterMinmaxProperties
{
using NativeType = VkPhysicalDeviceSamplerFilterMinmaxProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSamplerFilterMinmaxProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceSamplerFilterMinmaxProperties(VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxSingleComponentFormats_ = {},
VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxImageComponentMapping_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
filterMinmaxSingleComponentFormats(filterMinmaxSingleComponentFormats_),
filterMinmaxImageComponentMapping(filterMinmaxImageComponentMapping_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceSamplerFilterMinmaxProperties(PhysicalDeviceSamplerFilterMinmaxProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSamplerFilterMinmaxProperties(VkPhysicalDeviceSamplerFilterMinmaxProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSamplerFilterMinmaxProperties(*reinterpret_cast<PhysicalDeviceSamplerFilterMinmaxProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSamplerFilterMinmaxProperties &operator=(PhysicalDeviceSamplerFilterMinmaxProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSamplerFilterMinmaxProperties &operator=(VkPhysicalDeviceSamplerFilterMinmaxProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSamplerFilterMinmaxProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceSamplerFilterMinmaxProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSamplerFilterMinmaxProperties *>(this);
}
explicit operator VkPhysicalDeviceSamplerFilterMinmaxProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSamplerFilterMinmaxProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, filterMinmaxSingleComponentFormats, filterMinmaxImageComponentMapping);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSamplerFilterMinmaxProperties const &) const = default;
#else
bool operator==(PhysicalDeviceSamplerFilterMinmaxProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (filterMinmaxSingleComponentFormats == rhs.filterMinmaxSingleComponentFormats) &&
(filterMinmaxImageComponentMapping == rhs.filterMinmaxImageComponentMapping);
# endif
}
bool operator!=(PhysicalDeviceSamplerFilterMinmaxProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSamplerFilterMinmaxProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxSingleComponentFormats = {};
VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxImageComponentMapping = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSamplerFilterMinmaxProperties) ==
sizeof(VkPhysicalDeviceSamplerFilterMinmaxProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSamplerFilterMinmaxProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSamplerFilterMinmaxProperties>::value,
"PhysicalDeviceSamplerFilterMinmaxProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceSamplerFilterMinmaxProperties>
{
using Type = PhysicalDeviceSamplerFilterMinmaxProperties;
};
using PhysicalDeviceSamplerFilterMinmaxPropertiesEXT = PhysicalDeviceSamplerFilterMinmaxProperties;
struct PhysicalDeviceSamplerYcbcrConversionFeatures
{
using NativeType = VkPhysicalDeviceSamplerYcbcrConversionFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSamplerYcbcrConversionFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceSamplerYcbcrConversionFeatures(VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
samplerYcbcrConversion(samplerYcbcrConversion_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceSamplerYcbcrConversionFeatures(PhysicalDeviceSamplerYcbcrConversionFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSamplerYcbcrConversionFeatures(VkPhysicalDeviceSamplerYcbcrConversionFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSamplerYcbcrConversionFeatures(*reinterpret_cast<PhysicalDeviceSamplerYcbcrConversionFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSamplerYcbcrConversionFeatures &operator=(PhysicalDeviceSamplerYcbcrConversionFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSamplerYcbcrConversionFeatures &operator=(VkPhysicalDeviceSamplerYcbcrConversionFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSamplerYcbcrConversionFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSamplerYcbcrConversionFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSamplerYcbcrConversionFeatures &
setSamplerYcbcrConversion(VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion_) VULKAN_HPP_NOEXCEPT
{
samplerYcbcrConversion = samplerYcbcrConversion_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceSamplerYcbcrConversionFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSamplerYcbcrConversionFeatures *>(this);
}
explicit operator VkPhysicalDeviceSamplerYcbcrConversionFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSamplerYcbcrConversionFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, samplerYcbcrConversion);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSamplerYcbcrConversionFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceSamplerYcbcrConversionFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (samplerYcbcrConversion == rhs.samplerYcbcrConversion);
# endif
}
bool operator!=(PhysicalDeviceSamplerYcbcrConversionFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSamplerYcbcrConversionFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSamplerYcbcrConversionFeatures) ==
sizeof(VkPhysicalDeviceSamplerYcbcrConversionFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSamplerYcbcrConversionFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSamplerYcbcrConversionFeatures>::value,
"PhysicalDeviceSamplerYcbcrConversionFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceSamplerYcbcrConversionFeatures>
{
using Type = PhysicalDeviceSamplerYcbcrConversionFeatures;
};
using PhysicalDeviceSamplerYcbcrConversionFeaturesKHR = PhysicalDeviceSamplerYcbcrConversionFeatures;
struct PhysicalDeviceScalarBlockLayoutFeatures
{
using NativeType = VkPhysicalDeviceScalarBlockLayoutFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceScalarBlockLayoutFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceScalarBlockLayoutFeatures(VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
scalarBlockLayout(scalarBlockLayout_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceScalarBlockLayoutFeatures(PhysicalDeviceScalarBlockLayoutFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceScalarBlockLayoutFeatures(VkPhysicalDeviceScalarBlockLayoutFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceScalarBlockLayoutFeatures(*reinterpret_cast<PhysicalDeviceScalarBlockLayoutFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceScalarBlockLayoutFeatures &operator=(PhysicalDeviceScalarBlockLayoutFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceScalarBlockLayoutFeatures &operator=(VkPhysicalDeviceScalarBlockLayoutFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceScalarBlockLayoutFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceScalarBlockLayoutFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceScalarBlockLayoutFeatures &
setScalarBlockLayout(VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout_) VULKAN_HPP_NOEXCEPT
{
scalarBlockLayout = scalarBlockLayout_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceScalarBlockLayoutFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceScalarBlockLayoutFeatures *>(this);
}
explicit operator VkPhysicalDeviceScalarBlockLayoutFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceScalarBlockLayoutFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, scalarBlockLayout);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceScalarBlockLayoutFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceScalarBlockLayoutFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (scalarBlockLayout == rhs.scalarBlockLayout);
# endif
}
bool operator!=(PhysicalDeviceScalarBlockLayoutFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceScalarBlockLayoutFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceScalarBlockLayoutFeatures) == sizeof(VkPhysicalDeviceScalarBlockLayoutFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceScalarBlockLayoutFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceScalarBlockLayoutFeatures>::value,
"PhysicalDeviceScalarBlockLayoutFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceScalarBlockLayoutFeatures>
{
using Type = PhysicalDeviceScalarBlockLayoutFeatures;
};
using PhysicalDeviceScalarBlockLayoutFeaturesEXT = PhysicalDeviceScalarBlockLayoutFeatures;
struct PhysicalDeviceSeparateDepthStencilLayoutsFeatures
{
using NativeType = VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSeparateDepthStencilLayoutsFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceSeparateDepthStencilLayoutsFeatures(VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
separateDepthStencilLayouts(separateDepthStencilLayouts_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceSeparateDepthStencilLayoutsFeatures(PhysicalDeviceSeparateDepthStencilLayoutsFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSeparateDepthStencilLayoutsFeatures(VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSeparateDepthStencilLayoutsFeatures(*reinterpret_cast<PhysicalDeviceSeparateDepthStencilLayoutsFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSeparateDepthStencilLayoutsFeatures &
operator=(PhysicalDeviceSeparateDepthStencilLayoutsFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSeparateDepthStencilLayoutsFeatures &operator=(VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSeparateDepthStencilLayoutsFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSeparateDepthStencilLayoutsFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSeparateDepthStencilLayoutsFeatures &
setSeparateDepthStencilLayouts(VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts_) VULKAN_HPP_NOEXCEPT
{
separateDepthStencilLayouts = separateDepthStencilLayouts_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures *>(this);
}
explicit operator VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, separateDepthStencilLayouts);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSeparateDepthStencilLayoutsFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceSeparateDepthStencilLayoutsFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (separateDepthStencilLayouts == rhs.separateDepthStencilLayouts);
# endif
}
bool operator!=(PhysicalDeviceSeparateDepthStencilLayoutsFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSeparateDepthStencilLayoutsFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSeparateDepthStencilLayoutsFeatures) ==
sizeof(VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSeparateDepthStencilLayoutsFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSeparateDepthStencilLayoutsFeatures>::value,
"PhysicalDeviceSeparateDepthStencilLayoutsFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceSeparateDepthStencilLayoutsFeatures>
{
using Type = PhysicalDeviceSeparateDepthStencilLayoutsFeatures;
};
using PhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR = PhysicalDeviceSeparateDepthStencilLayoutsFeatures;
struct PhysicalDeviceShaderAtomicFloat2FeaturesEXT
{
using NativeType = VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderAtomicFloat2FeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicFloat2FeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat16Atomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat16AtomicAdd_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat16AtomicMinMax_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32AtomicMinMax_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64AtomicMinMax_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat16Atomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat16AtomicAdd_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat16AtomicMinMax_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32AtomicMinMax_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64AtomicMinMax_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32AtomicMinMax_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32AtomicMinMax_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderBufferFloat16Atomics(shaderBufferFloat16Atomics_),
shaderBufferFloat16AtomicAdd(shaderBufferFloat16AtomicAdd_),
shaderBufferFloat16AtomicMinMax(shaderBufferFloat16AtomicMinMax_),
shaderBufferFloat32AtomicMinMax(shaderBufferFloat32AtomicMinMax_),
shaderBufferFloat64AtomicMinMax(shaderBufferFloat64AtomicMinMax_),
shaderSharedFloat16Atomics(shaderSharedFloat16Atomics_),
shaderSharedFloat16AtomicAdd(shaderSharedFloat16AtomicAdd_),
shaderSharedFloat16AtomicMinMax(shaderSharedFloat16AtomicMinMax_),
shaderSharedFloat32AtomicMinMax(shaderSharedFloat32AtomicMinMax_),
shaderSharedFloat64AtomicMinMax(shaderSharedFloat64AtomicMinMax_),
shaderImageFloat32AtomicMinMax(shaderImageFloat32AtomicMinMax_),
sparseImageFloat32AtomicMinMax(sparseImageFloat32AtomicMinMax_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicFloat2FeaturesEXT(PhysicalDeviceShaderAtomicFloat2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderAtomicFloat2FeaturesEXT(VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderAtomicFloat2FeaturesEXT(*reinterpret_cast<PhysicalDeviceShaderAtomicFloat2FeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderAtomicFloat2FeaturesEXT &operator=(PhysicalDeviceShaderAtomicFloat2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderAtomicFloat2FeaturesEXT &operator=(VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicFloat2FeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &
setShaderBufferFloat16Atomics(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat16Atomics_) VULKAN_HPP_NOEXCEPT
{
shaderBufferFloat16Atomics = shaderBufferFloat16Atomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &
setShaderBufferFloat16AtomicAdd(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat16AtomicAdd_) VULKAN_HPP_NOEXCEPT
{
shaderBufferFloat16AtomicAdd = shaderBufferFloat16AtomicAdd_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &
setShaderBufferFloat16AtomicMinMax(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat16AtomicMinMax_) VULKAN_HPP_NOEXCEPT
{
shaderBufferFloat16AtomicMinMax = shaderBufferFloat16AtomicMinMax_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &
setShaderBufferFloat32AtomicMinMax(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32AtomicMinMax_) VULKAN_HPP_NOEXCEPT
{
shaderBufferFloat32AtomicMinMax = shaderBufferFloat32AtomicMinMax_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &
setShaderBufferFloat64AtomicMinMax(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64AtomicMinMax_) VULKAN_HPP_NOEXCEPT
{
shaderBufferFloat64AtomicMinMax = shaderBufferFloat64AtomicMinMax_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &
setShaderSharedFloat16Atomics(VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat16Atomics_) VULKAN_HPP_NOEXCEPT
{
shaderSharedFloat16Atomics = shaderSharedFloat16Atomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &
setShaderSharedFloat16AtomicAdd(VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat16AtomicAdd_) VULKAN_HPP_NOEXCEPT
{
shaderSharedFloat16AtomicAdd = shaderSharedFloat16AtomicAdd_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &
setShaderSharedFloat16AtomicMinMax(VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat16AtomicMinMax_) VULKAN_HPP_NOEXCEPT
{
shaderSharedFloat16AtomicMinMax = shaderSharedFloat16AtomicMinMax_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &
setShaderSharedFloat32AtomicMinMax(VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32AtomicMinMax_) VULKAN_HPP_NOEXCEPT
{
shaderSharedFloat32AtomicMinMax = shaderSharedFloat32AtomicMinMax_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &
setShaderSharedFloat64AtomicMinMax(VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64AtomicMinMax_) VULKAN_HPP_NOEXCEPT
{
shaderSharedFloat64AtomicMinMax = shaderSharedFloat64AtomicMinMax_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &
setShaderImageFloat32AtomicMinMax(VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32AtomicMinMax_) VULKAN_HPP_NOEXCEPT
{
shaderImageFloat32AtomicMinMax = shaderImageFloat32AtomicMinMax_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloat2FeaturesEXT &
setSparseImageFloat32AtomicMinMax(VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32AtomicMinMax_) VULKAN_HPP_NOEXCEPT
{
sparseImageFloat32AtomicMinMax = sparseImageFloat32AtomicMinMax_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
shaderBufferFloat16Atomics,
shaderBufferFloat16AtomicAdd,
shaderBufferFloat16AtomicMinMax,
shaderBufferFloat32AtomicMinMax,
shaderBufferFloat64AtomicMinMax,
shaderSharedFloat16Atomics,
shaderSharedFloat16AtomicAdd,
shaderSharedFloat16AtomicMinMax,
shaderSharedFloat32AtomicMinMax,
shaderSharedFloat64AtomicMinMax,
shaderImageFloat32AtomicMinMax,
sparseImageFloat32AtomicMinMax);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderAtomicFloat2FeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceShaderAtomicFloat2FeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderBufferFloat16Atomics == rhs.shaderBufferFloat16Atomics) &&
(shaderBufferFloat16AtomicAdd == rhs.shaderBufferFloat16AtomicAdd) &&
(shaderBufferFloat16AtomicMinMax == rhs.shaderBufferFloat16AtomicMinMax) &&
(shaderBufferFloat32AtomicMinMax == rhs.shaderBufferFloat32AtomicMinMax) &&
(shaderBufferFloat64AtomicMinMax == rhs.shaderBufferFloat64AtomicMinMax) && (shaderSharedFloat16Atomics == rhs.shaderSharedFloat16Atomics) &&
(shaderSharedFloat16AtomicAdd == rhs.shaderSharedFloat16AtomicAdd) &&
(shaderSharedFloat16AtomicMinMax == rhs.shaderSharedFloat16AtomicMinMax) &&
(shaderSharedFloat32AtomicMinMax == rhs.shaderSharedFloat32AtomicMinMax) &&
(shaderSharedFloat64AtomicMinMax == rhs.shaderSharedFloat64AtomicMinMax) &&
(shaderImageFloat32AtomicMinMax == rhs.shaderImageFloat32AtomicMinMax) &&
(sparseImageFloat32AtomicMinMax == rhs.sparseImageFloat32AtomicMinMax);
# endif
}
bool operator!=(PhysicalDeviceShaderAtomicFloat2FeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderAtomicFloat2FeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat16Atomics = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat16AtomicAdd = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat16AtomicMinMax = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32AtomicMinMax = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64AtomicMinMax = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat16Atomics = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat16AtomicAdd = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat16AtomicMinMax = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32AtomicMinMax = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64AtomicMinMax = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32AtomicMinMax = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32AtomicMinMax = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicFloat2FeaturesEXT) ==
sizeof(VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicFloat2FeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicFloat2FeaturesEXT>::value,
"PhysicalDeviceShaderAtomicFloat2FeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderAtomicFloat2FeaturesEXT>
{
using Type = PhysicalDeviceShaderAtomicFloat2FeaturesEXT;
};
struct PhysicalDeviceShaderAtomicFloatFeaturesEXT
{
using NativeType = VkPhysicalDeviceShaderAtomicFloatFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicFloatFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32Atomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32AtomicAdd_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64Atomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64AtomicAdd_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32Atomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32AtomicAdd_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64Atomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64AtomicAdd_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32Atomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32AtomicAdd_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32Atomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32AtomicAdd_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderBufferFloat32Atomics(shaderBufferFloat32Atomics_),
shaderBufferFloat32AtomicAdd(shaderBufferFloat32AtomicAdd_),
shaderBufferFloat64Atomics(shaderBufferFloat64Atomics_),
shaderBufferFloat64AtomicAdd(shaderBufferFloat64AtomicAdd_),
shaderSharedFloat32Atomics(shaderSharedFloat32Atomics_),
shaderSharedFloat32AtomicAdd(shaderSharedFloat32AtomicAdd_),
shaderSharedFloat64Atomics(shaderSharedFloat64Atomics_),
shaderSharedFloat64AtomicAdd(shaderSharedFloat64AtomicAdd_),
shaderImageFloat32Atomics(shaderImageFloat32Atomics_),
shaderImageFloat32AtomicAdd(shaderImageFloat32AtomicAdd_),
sparseImageFloat32Atomics(sparseImageFloat32Atomics_),
sparseImageFloat32AtomicAdd(sparseImageFloat32AtomicAdd_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicFloatFeaturesEXT(PhysicalDeviceShaderAtomicFloatFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderAtomicFloatFeaturesEXT(VkPhysicalDeviceShaderAtomicFloatFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderAtomicFloatFeaturesEXT(*reinterpret_cast<PhysicalDeviceShaderAtomicFloatFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderAtomicFloatFeaturesEXT &operator=(PhysicalDeviceShaderAtomicFloatFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderAtomicFloatFeaturesEXT &operator=(VkPhysicalDeviceShaderAtomicFloatFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicFloatFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
setShaderBufferFloat32Atomics(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32Atomics_) VULKAN_HPP_NOEXCEPT
{
shaderBufferFloat32Atomics = shaderBufferFloat32Atomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
setShaderBufferFloat32AtomicAdd(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32AtomicAdd_) VULKAN_HPP_NOEXCEPT
{
shaderBufferFloat32AtomicAdd = shaderBufferFloat32AtomicAdd_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
setShaderBufferFloat64Atomics(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64Atomics_) VULKAN_HPP_NOEXCEPT
{
shaderBufferFloat64Atomics = shaderBufferFloat64Atomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
setShaderBufferFloat64AtomicAdd(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64AtomicAdd_) VULKAN_HPP_NOEXCEPT
{
shaderBufferFloat64AtomicAdd = shaderBufferFloat64AtomicAdd_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
setShaderSharedFloat32Atomics(VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32Atomics_) VULKAN_HPP_NOEXCEPT
{
shaderSharedFloat32Atomics = shaderSharedFloat32Atomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
setShaderSharedFloat32AtomicAdd(VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32AtomicAdd_) VULKAN_HPP_NOEXCEPT
{
shaderSharedFloat32AtomicAdd = shaderSharedFloat32AtomicAdd_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
setShaderSharedFloat64Atomics(VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64Atomics_) VULKAN_HPP_NOEXCEPT
{
shaderSharedFloat64Atomics = shaderSharedFloat64Atomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
setShaderSharedFloat64AtomicAdd(VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64AtomicAdd_) VULKAN_HPP_NOEXCEPT
{
shaderSharedFloat64AtomicAdd = shaderSharedFloat64AtomicAdd_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
setShaderImageFloat32Atomics(VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32Atomics_) VULKAN_HPP_NOEXCEPT
{
shaderImageFloat32Atomics = shaderImageFloat32Atomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
setShaderImageFloat32AtomicAdd(VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32AtomicAdd_) VULKAN_HPP_NOEXCEPT
{
shaderImageFloat32AtomicAdd = shaderImageFloat32AtomicAdd_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
setSparseImageFloat32Atomics(VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32Atomics_) VULKAN_HPP_NOEXCEPT
{
sparseImageFloat32Atomics = sparseImageFloat32Atomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicFloatFeaturesEXT &
setSparseImageFloat32AtomicAdd(VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32AtomicAdd_) VULKAN_HPP_NOEXCEPT
{
sparseImageFloat32AtomicAdd = sparseImageFloat32AtomicAdd_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderAtomicFloatFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceShaderAtomicFloatFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderAtomicFloatFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
shaderBufferFloat32Atomics,
shaderBufferFloat32AtomicAdd,
shaderBufferFloat64Atomics,
shaderBufferFloat64AtomicAdd,
shaderSharedFloat32Atomics,
shaderSharedFloat32AtomicAdd,
shaderSharedFloat64Atomics,
shaderSharedFloat64AtomicAdd,
shaderImageFloat32Atomics,
shaderImageFloat32AtomicAdd,
sparseImageFloat32Atomics,
sparseImageFloat32AtomicAdd);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderAtomicFloatFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceShaderAtomicFloatFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderBufferFloat32Atomics == rhs.shaderBufferFloat32Atomics) &&
(shaderBufferFloat32AtomicAdd == rhs.shaderBufferFloat32AtomicAdd) && (shaderBufferFloat64Atomics == rhs.shaderBufferFloat64Atomics) &&
(shaderBufferFloat64AtomicAdd == rhs.shaderBufferFloat64AtomicAdd) && (shaderSharedFloat32Atomics == rhs.shaderSharedFloat32Atomics) &&
(shaderSharedFloat32AtomicAdd == rhs.shaderSharedFloat32AtomicAdd) && (shaderSharedFloat64Atomics == rhs.shaderSharedFloat64Atomics) &&
(shaderSharedFloat64AtomicAdd == rhs.shaderSharedFloat64AtomicAdd) && (shaderImageFloat32Atomics == rhs.shaderImageFloat32Atomics) &&
(shaderImageFloat32AtomicAdd == rhs.shaderImageFloat32AtomicAdd) && (sparseImageFloat32Atomics == rhs.sparseImageFloat32Atomics) &&
(sparseImageFloat32AtomicAdd == rhs.sparseImageFloat32AtomicAdd);
# endif
}
bool operator!=(PhysicalDeviceShaderAtomicFloatFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32Atomics = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat32AtomicAdd = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64Atomics = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferFloat64AtomicAdd = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32Atomics = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat32AtomicAdd = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64Atomics = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedFloat64AtomicAdd = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32Atomics = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderImageFloat32AtomicAdd = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32Atomics = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseImageFloat32AtomicAdd = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicFloatFeaturesEXT) ==
sizeof(VkPhysicalDeviceShaderAtomicFloatFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicFloatFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicFloatFeaturesEXT>::value,
"PhysicalDeviceShaderAtomicFloatFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT>
{
using Type = PhysicalDeviceShaderAtomicFloatFeaturesEXT;
};
struct PhysicalDeviceShaderAtomicInt64Features
{
using NativeType = VkPhysicalDeviceShaderAtomicInt64Features;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderAtomicInt64Features;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicInt64Features(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderBufferInt64Atomics(shaderBufferInt64Atomics_),
shaderSharedInt64Atomics(shaderSharedInt64Atomics_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderAtomicInt64Features(PhysicalDeviceShaderAtomicInt64Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderAtomicInt64Features(VkPhysicalDeviceShaderAtomicInt64Features const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderAtomicInt64Features(*reinterpret_cast<PhysicalDeviceShaderAtomicInt64Features const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderAtomicInt64Features &operator=(PhysicalDeviceShaderAtomicInt64Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderAtomicInt64Features &operator=(VkPhysicalDeviceShaderAtomicInt64Features const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicInt64Features const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicInt64Features &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicInt64Features &
setShaderBufferInt64Atomics(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics_) VULKAN_HPP_NOEXCEPT
{
shaderBufferInt64Atomics = shaderBufferInt64Atomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderAtomicInt64Features &
setShaderSharedInt64Atomics(VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics_) VULKAN_HPP_NOEXCEPT
{
shaderSharedInt64Atomics = shaderSharedInt64Atomics_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderAtomicInt64Features const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderAtomicInt64Features *>(this);
}
explicit operator VkPhysicalDeviceShaderAtomicInt64Features &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderAtomicInt64Features *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderBufferInt64Atomics, shaderSharedInt64Atomics);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderAtomicInt64Features const &) const = default;
#else
bool operator==(PhysicalDeviceShaderAtomicInt64Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderBufferInt64Atomics == rhs.shaderBufferInt64Atomics) &&
(shaderSharedInt64Atomics == rhs.shaderSharedInt64Atomics);
# endif
}
bool operator!=(PhysicalDeviceShaderAtomicInt64Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderAtomicInt64Features;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicInt64Features) == sizeof(VkPhysicalDeviceShaderAtomicInt64Features),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicInt64Features>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicInt64Features>::value,
"PhysicalDeviceShaderAtomicInt64Features is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderAtomicInt64Features>
{
using Type = PhysicalDeviceShaderAtomicInt64Features;
};
using PhysicalDeviceShaderAtomicInt64FeaturesKHR = PhysicalDeviceShaderAtomicInt64Features;
struct PhysicalDeviceShaderClockFeaturesKHR
{
using NativeType = VkPhysicalDeviceShaderClockFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderClockFeaturesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderClockFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupClock_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDeviceClock_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderSubgroupClock(shaderSubgroupClock_),
shaderDeviceClock(shaderDeviceClock_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderClockFeaturesKHR(PhysicalDeviceShaderClockFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderClockFeaturesKHR(VkPhysicalDeviceShaderClockFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderClockFeaturesKHR(*reinterpret_cast<PhysicalDeviceShaderClockFeaturesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderClockFeaturesKHR &operator=(PhysicalDeviceShaderClockFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderClockFeaturesKHR &operator=(VkPhysicalDeviceShaderClockFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderClockFeaturesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderClockFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderClockFeaturesKHR &
setShaderSubgroupClock(VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupClock_) VULKAN_HPP_NOEXCEPT
{
shaderSubgroupClock = shaderSubgroupClock_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderClockFeaturesKHR &setShaderDeviceClock(VULKAN_HPP_NAMESPACE::Bool32 shaderDeviceClock_) VULKAN_HPP_NOEXCEPT
{
shaderDeviceClock = shaderDeviceClock_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderClockFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderClockFeaturesKHR *>(this);
}
explicit operator VkPhysicalDeviceShaderClockFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderClockFeaturesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderSubgroupClock, shaderDeviceClock);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderClockFeaturesKHR const &) const = default;
#else
bool operator==(PhysicalDeviceShaderClockFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderSubgroupClock == rhs.shaderSubgroupClock) &&
(shaderDeviceClock == rhs.shaderDeviceClock);
# endif
}
bool operator!=(PhysicalDeviceShaderClockFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderClockFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupClock = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDeviceClock = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderClockFeaturesKHR) == sizeof(VkPhysicalDeviceShaderClockFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderClockFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderClockFeaturesKHR>::value,
"PhysicalDeviceShaderClockFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderClockFeaturesKHR>
{
using Type = PhysicalDeviceShaderClockFeaturesKHR;
};
struct PhysicalDeviceShaderCoreProperties2AMD
{
using NativeType = VkPhysicalDeviceShaderCoreProperties2AMD;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderCoreProperties2AMD;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderCoreProperties2AMD(VULKAN_HPP_NAMESPACE::ShaderCorePropertiesFlagsAMD shaderCoreFeatures_ = {},
uint32_t activeComputeUnitCount_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderCoreFeatures(shaderCoreFeatures_),
activeComputeUnitCount(activeComputeUnitCount_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderCoreProperties2AMD(PhysicalDeviceShaderCoreProperties2AMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderCoreProperties2AMD(VkPhysicalDeviceShaderCoreProperties2AMD const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderCoreProperties2AMD(*reinterpret_cast<PhysicalDeviceShaderCoreProperties2AMD const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderCoreProperties2AMD &operator=(PhysicalDeviceShaderCoreProperties2AMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderCoreProperties2AMD &operator=(VkPhysicalDeviceShaderCoreProperties2AMD const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderCoreProperties2AMD const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceShaderCoreProperties2AMD const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderCoreProperties2AMD *>(this);
}
explicit operator VkPhysicalDeviceShaderCoreProperties2AMD &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderCoreProperties2AMD *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::ShaderCorePropertiesFlagsAMD const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderCoreFeatures, activeComputeUnitCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderCoreProperties2AMD const &) const = default;
#else
bool operator==(PhysicalDeviceShaderCoreProperties2AMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderCoreFeatures == rhs.shaderCoreFeatures) &&
(activeComputeUnitCount == rhs.activeComputeUnitCount);
# endif
}
bool operator!=(PhysicalDeviceShaderCoreProperties2AMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderCoreProperties2AMD;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ShaderCorePropertiesFlagsAMD shaderCoreFeatures = {};
uint32_t activeComputeUnitCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderCoreProperties2AMD) == sizeof(VkPhysicalDeviceShaderCoreProperties2AMD),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderCoreProperties2AMD>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderCoreProperties2AMD>::value,
"PhysicalDeviceShaderCoreProperties2AMD is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderCoreProperties2AMD>
{
using Type = PhysicalDeviceShaderCoreProperties2AMD;
};
struct PhysicalDeviceShaderCorePropertiesAMD
{
using NativeType = VkPhysicalDeviceShaderCorePropertiesAMD;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderCorePropertiesAMD;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderCorePropertiesAMD(uint32_t shaderEngineCount_ = {},
uint32_t shaderArraysPerEngineCount_ = {},
uint32_t computeUnitsPerShaderArray_ = {},
uint32_t simdPerComputeUnit_ = {},
uint32_t wavefrontsPerSimd_ = {},
uint32_t wavefrontSize_ = {},
uint32_t sgprsPerSimd_ = {},
uint32_t minSgprAllocation_ = {},
uint32_t maxSgprAllocation_ = {},
uint32_t sgprAllocationGranularity_ = {},
uint32_t vgprsPerSimd_ = {},
uint32_t minVgprAllocation_ = {},
uint32_t maxVgprAllocation_ = {},
uint32_t vgprAllocationGranularity_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderEngineCount(shaderEngineCount_),
shaderArraysPerEngineCount(shaderArraysPerEngineCount_),
computeUnitsPerShaderArray(computeUnitsPerShaderArray_),
simdPerComputeUnit(simdPerComputeUnit_),
wavefrontsPerSimd(wavefrontsPerSimd_),
wavefrontSize(wavefrontSize_),
sgprsPerSimd(sgprsPerSimd_),
minSgprAllocation(minSgprAllocation_),
maxSgprAllocation(maxSgprAllocation_),
sgprAllocationGranularity(sgprAllocationGranularity_),
vgprsPerSimd(vgprsPerSimd_),
minVgprAllocation(minVgprAllocation_),
maxVgprAllocation(maxVgprAllocation_),
vgprAllocationGranularity(vgprAllocationGranularity_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderCorePropertiesAMD(PhysicalDeviceShaderCorePropertiesAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderCorePropertiesAMD(VkPhysicalDeviceShaderCorePropertiesAMD const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderCorePropertiesAMD(*reinterpret_cast<PhysicalDeviceShaderCorePropertiesAMD const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderCorePropertiesAMD &operator=(PhysicalDeviceShaderCorePropertiesAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderCorePropertiesAMD &operator=(VkPhysicalDeviceShaderCorePropertiesAMD const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderCorePropertiesAMD const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceShaderCorePropertiesAMD const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderCorePropertiesAMD *>(this);
}
explicit operator VkPhysicalDeviceShaderCorePropertiesAMD &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderCorePropertiesAMD *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
shaderEngineCount,
shaderArraysPerEngineCount,
computeUnitsPerShaderArray,
simdPerComputeUnit,
wavefrontsPerSimd,
wavefrontSize,
sgprsPerSimd,
minSgprAllocation,
maxSgprAllocation,
sgprAllocationGranularity,
vgprsPerSimd,
minVgprAllocation,
maxVgprAllocation,
vgprAllocationGranularity);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderCorePropertiesAMD const &) const = default;
#else
bool operator==(PhysicalDeviceShaderCorePropertiesAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderEngineCount == rhs.shaderEngineCount) &&
(shaderArraysPerEngineCount == rhs.shaderArraysPerEngineCount) && (computeUnitsPerShaderArray == rhs.computeUnitsPerShaderArray) &&
(simdPerComputeUnit == rhs.simdPerComputeUnit) && (wavefrontsPerSimd == rhs.wavefrontsPerSimd) && (wavefrontSize == rhs.wavefrontSize) &&
(sgprsPerSimd == rhs.sgprsPerSimd) && (minSgprAllocation == rhs.minSgprAllocation) && (maxSgprAllocation == rhs.maxSgprAllocation) &&
(sgprAllocationGranularity == rhs.sgprAllocationGranularity) && (vgprsPerSimd == rhs.vgprsPerSimd) &&
(minVgprAllocation == rhs.minVgprAllocation) && (maxVgprAllocation == rhs.maxVgprAllocation) &&
(vgprAllocationGranularity == rhs.vgprAllocationGranularity);
# endif
}
bool operator!=(PhysicalDeviceShaderCorePropertiesAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderCorePropertiesAMD;
void *pNext = {};
uint32_t shaderEngineCount = {};
uint32_t shaderArraysPerEngineCount = {};
uint32_t computeUnitsPerShaderArray = {};
uint32_t simdPerComputeUnit = {};
uint32_t wavefrontsPerSimd = {};
uint32_t wavefrontSize = {};
uint32_t sgprsPerSimd = {};
uint32_t minSgprAllocation = {};
uint32_t maxSgprAllocation = {};
uint32_t sgprAllocationGranularity = {};
uint32_t vgprsPerSimd = {};
uint32_t minVgprAllocation = {};
uint32_t maxVgprAllocation = {};
uint32_t vgprAllocationGranularity = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderCorePropertiesAMD) == sizeof(VkPhysicalDeviceShaderCorePropertiesAMD),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderCorePropertiesAMD>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderCorePropertiesAMD>::value,
"PhysicalDeviceShaderCorePropertiesAMD is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderCorePropertiesAMD>
{
using Type = PhysicalDeviceShaderCorePropertiesAMD;
};
struct PhysicalDeviceShaderDemoteToHelperInvocationFeatures
{
using NativeType = VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderDemoteToHelperInvocationFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderDemoteToHelperInvocationFeatures(VULKAN_HPP_NAMESPACE::Bool32 shaderDemoteToHelperInvocation_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderDemoteToHelperInvocation(shaderDemoteToHelperInvocation_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceShaderDemoteToHelperInvocationFeatures(PhysicalDeviceShaderDemoteToHelperInvocationFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderDemoteToHelperInvocationFeatures(VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderDemoteToHelperInvocationFeatures(*reinterpret_cast<PhysicalDeviceShaderDemoteToHelperInvocationFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderDemoteToHelperInvocationFeatures &
operator=(PhysicalDeviceShaderDemoteToHelperInvocationFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderDemoteToHelperInvocationFeatures &operator=(VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderDemoteToHelperInvocationFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderDemoteToHelperInvocationFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderDemoteToHelperInvocationFeatures &
setShaderDemoteToHelperInvocation(VULKAN_HPP_NAMESPACE::Bool32 shaderDemoteToHelperInvocation_) VULKAN_HPP_NOEXCEPT
{
shaderDemoteToHelperInvocation = shaderDemoteToHelperInvocation_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures *>(this);
}
explicit operator VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderDemoteToHelperInvocation);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderDemoteToHelperInvocationFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceShaderDemoteToHelperInvocationFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderDemoteToHelperInvocation == rhs.shaderDemoteToHelperInvocation);
# endif
}
bool operator!=(PhysicalDeviceShaderDemoteToHelperInvocationFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderDemoteToHelperInvocationFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDemoteToHelperInvocation = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderDemoteToHelperInvocationFeatures) ==
sizeof(VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderDemoteToHelperInvocationFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderDemoteToHelperInvocationFeatures>::value,
"PhysicalDeviceShaderDemoteToHelperInvocationFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderDemoteToHelperInvocationFeatures>
{
using Type = PhysicalDeviceShaderDemoteToHelperInvocationFeatures;
};
using PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT = PhysicalDeviceShaderDemoteToHelperInvocationFeatures;
struct PhysicalDeviceShaderDrawParametersFeatures
{
using NativeType = VkPhysicalDeviceShaderDrawParametersFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderDrawParametersFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderDrawParametersFeatures(VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderDrawParameters(shaderDrawParameters_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderDrawParametersFeatures(PhysicalDeviceShaderDrawParametersFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderDrawParametersFeatures(VkPhysicalDeviceShaderDrawParametersFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderDrawParametersFeatures(*reinterpret_cast<PhysicalDeviceShaderDrawParametersFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderDrawParametersFeatures &operator=(PhysicalDeviceShaderDrawParametersFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderDrawParametersFeatures &operator=(VkPhysicalDeviceShaderDrawParametersFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderDrawParametersFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderDrawParametersFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderDrawParametersFeatures &
setShaderDrawParameters(VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters_) VULKAN_HPP_NOEXCEPT
{
shaderDrawParameters = shaderDrawParameters_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderDrawParametersFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderDrawParametersFeatures *>(this);
}
explicit operator VkPhysicalDeviceShaderDrawParametersFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderDrawParametersFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderDrawParameters);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderDrawParametersFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceShaderDrawParametersFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderDrawParameters == rhs.shaderDrawParameters);
# endif
}
bool operator!=(PhysicalDeviceShaderDrawParametersFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderDrawParametersFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderDrawParametersFeatures) ==
sizeof(VkPhysicalDeviceShaderDrawParametersFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderDrawParametersFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderDrawParametersFeatures>::value,
"PhysicalDeviceShaderDrawParametersFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderDrawParametersFeatures>
{
using Type = PhysicalDeviceShaderDrawParametersFeatures;
};
using PhysicalDeviceShaderDrawParameterFeatures = PhysicalDeviceShaderDrawParametersFeatures;
struct PhysicalDeviceShaderFloat16Int8Features
{
using NativeType = VkPhysicalDeviceShaderFloat16Int8Features;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderFloat16Int8Features;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderFloat16Int8Features(VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderInt8_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderFloat16(shaderFloat16_),
shaderInt8(shaderInt8_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderFloat16Int8Features(PhysicalDeviceShaderFloat16Int8Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderFloat16Int8Features(VkPhysicalDeviceShaderFloat16Int8Features const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderFloat16Int8Features(*reinterpret_cast<PhysicalDeviceShaderFloat16Int8Features const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderFloat16Int8Features &operator=(PhysicalDeviceShaderFloat16Int8Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderFloat16Int8Features &operator=(VkPhysicalDeviceShaderFloat16Int8Features const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderFloat16Int8Features const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderFloat16Int8Features &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderFloat16Int8Features &setShaderFloat16(VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16_) VULKAN_HPP_NOEXCEPT
{
shaderFloat16 = shaderFloat16_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderFloat16Int8Features &setShaderInt8(VULKAN_HPP_NAMESPACE::Bool32 shaderInt8_) VULKAN_HPP_NOEXCEPT
{
shaderInt8 = shaderInt8_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderFloat16Int8Features const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderFloat16Int8Features *>(this);
}
explicit operator VkPhysicalDeviceShaderFloat16Int8Features &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderFloat16Int8Features *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderFloat16, shaderInt8);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderFloat16Int8Features const &) const = default;
#else
bool operator==(PhysicalDeviceShaderFloat16Int8Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderFloat16 == rhs.shaderFloat16) && (shaderInt8 == rhs.shaderInt8);
# endif
}
bool operator!=(PhysicalDeviceShaderFloat16Int8Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderFloat16Int8Features;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderInt8 = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderFloat16Int8Features) == sizeof(VkPhysicalDeviceShaderFloat16Int8Features),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderFloat16Int8Features>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderFloat16Int8Features>::value,
"PhysicalDeviceShaderFloat16Int8Features is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderFloat16Int8Features>
{
using Type = PhysicalDeviceShaderFloat16Int8Features;
};
using PhysicalDeviceFloat16Int8FeaturesKHR = PhysicalDeviceShaderFloat16Int8Features;
using PhysicalDeviceShaderFloat16Int8FeaturesKHR = PhysicalDeviceShaderFloat16Int8Features;
struct PhysicalDeviceShaderImageAtomicInt64FeaturesEXT
{
using NativeType = VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderImageAtomicInt64FeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 shaderImageInt64Atomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 sparseImageInt64Atomics_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderImageInt64Atomics(shaderImageInt64Atomics_),
sparseImageInt64Atomics(sparseImageInt64Atomics_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceShaderImageAtomicInt64FeaturesEXT(PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderImageAtomicInt64FeaturesEXT(VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderImageAtomicInt64FeaturesEXT(*reinterpret_cast<PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderImageAtomicInt64FeaturesEXT &operator=(PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderImageAtomicInt64FeaturesEXT &operator=(VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderImageAtomicInt64FeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderImageAtomicInt64FeaturesEXT &
setShaderImageInt64Atomics(VULKAN_HPP_NAMESPACE::Bool32 shaderImageInt64Atomics_) VULKAN_HPP_NOEXCEPT
{
shaderImageInt64Atomics = shaderImageInt64Atomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderImageAtomicInt64FeaturesEXT &
setSparseImageInt64Atomics(VULKAN_HPP_NAMESPACE::Bool32 sparseImageInt64Atomics_) VULKAN_HPP_NOEXCEPT
{
sparseImageInt64Atomics = sparseImageInt64Atomics_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderImageInt64Atomics, sparseImageInt64Atomics);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderImageInt64Atomics == rhs.shaderImageInt64Atomics) &&
(sparseImageInt64Atomics == rhs.sparseImageInt64Atomics);
# endif
}
bool operator!=(PhysicalDeviceShaderImageAtomicInt64FeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderImageInt64Atomics = {};
VULKAN_HPP_NAMESPACE::Bool32 sparseImageInt64Atomics = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderImageAtomicInt64FeaturesEXT) ==
sizeof(VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderImageAtomicInt64FeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderImageAtomicInt64FeaturesEXT>::value,
"PhysicalDeviceShaderImageAtomicInt64FeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT>
{
using Type = PhysicalDeviceShaderImageAtomicInt64FeaturesEXT;
};
struct PhysicalDeviceShaderImageFootprintFeaturesNV
{
using NativeType = VkPhysicalDeviceShaderImageFootprintFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderImageFootprintFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 imageFootprint_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
imageFootprint(imageFootprint_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderImageFootprintFeaturesNV(PhysicalDeviceShaderImageFootprintFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderImageFootprintFeaturesNV(VkPhysicalDeviceShaderImageFootprintFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderImageFootprintFeaturesNV(*reinterpret_cast<PhysicalDeviceShaderImageFootprintFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderImageFootprintFeaturesNV &operator=(PhysicalDeviceShaderImageFootprintFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderImageFootprintFeaturesNV &operator=(VkPhysicalDeviceShaderImageFootprintFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderImageFootprintFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderImageFootprintFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderImageFootprintFeaturesNV &setImageFootprint(VULKAN_HPP_NAMESPACE::Bool32 imageFootprint_) VULKAN_HPP_NOEXCEPT
{
imageFootprint = imageFootprint_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderImageFootprintFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderImageFootprintFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceShaderImageFootprintFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderImageFootprintFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, imageFootprint);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderImageFootprintFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceShaderImageFootprintFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (imageFootprint == rhs.imageFootprint);
# endif
}
bool operator!=(PhysicalDeviceShaderImageFootprintFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 imageFootprint = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderImageFootprintFeaturesNV) ==
sizeof(VkPhysicalDeviceShaderImageFootprintFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderImageFootprintFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderImageFootprintFeaturesNV>::value,
"PhysicalDeviceShaderImageFootprintFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV>
{
using Type = PhysicalDeviceShaderImageFootprintFeaturesNV;
};
struct PhysicalDeviceShaderIntegerDotProductFeatures
{
using NativeType = VkPhysicalDeviceShaderIntegerDotProductFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderIntegerDotProductFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderIntegerDotProductFeatures(VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerDotProduct_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderIntegerDotProduct(shaderIntegerDotProduct_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceShaderIntegerDotProductFeatures(PhysicalDeviceShaderIntegerDotProductFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderIntegerDotProductFeatures(VkPhysicalDeviceShaderIntegerDotProductFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderIntegerDotProductFeatures(*reinterpret_cast<PhysicalDeviceShaderIntegerDotProductFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderIntegerDotProductFeatures &operator=(PhysicalDeviceShaderIntegerDotProductFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderIntegerDotProductFeatures &operator=(VkPhysicalDeviceShaderIntegerDotProductFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerDotProductFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderIntegerDotProductFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderIntegerDotProductFeatures &
setShaderIntegerDotProduct(VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerDotProduct_) VULKAN_HPP_NOEXCEPT
{
shaderIntegerDotProduct = shaderIntegerDotProduct_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderIntegerDotProductFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductFeatures *>(this);
}
explicit operator VkPhysicalDeviceShaderIntegerDotProductFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderIntegerDotProductFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderIntegerDotProduct);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderIntegerDotProductFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceShaderIntegerDotProductFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderIntegerDotProduct == rhs.shaderIntegerDotProduct);
# endif
}
bool operator!=(PhysicalDeviceShaderIntegerDotProductFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderIntegerDotProductFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerDotProduct = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerDotProductFeatures) ==
sizeof(VkPhysicalDeviceShaderIntegerDotProductFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerDotProductFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerDotProductFeatures>::value,
"PhysicalDeviceShaderIntegerDotProductFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderIntegerDotProductFeatures>
{
using Type = PhysicalDeviceShaderIntegerDotProductFeatures;
};
using PhysicalDeviceShaderIntegerDotProductFeaturesKHR = PhysicalDeviceShaderIntegerDotProductFeatures;
struct PhysicalDeviceShaderIntegerDotProductProperties
{
using NativeType = VkPhysicalDeviceShaderIntegerDotProductProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderIntegerDotProductProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderIntegerDotProductProperties(
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct8BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct8BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct8BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct4x8BitPackedUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct4x8BitPackedSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct16BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct16BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct16BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct32BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct32BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct32BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct64BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct64BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct64BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
integerDotProduct8BitUnsignedAccelerated(integerDotProduct8BitUnsignedAccelerated_),
integerDotProduct8BitSignedAccelerated(integerDotProduct8BitSignedAccelerated_),
integerDotProduct8BitMixedSignednessAccelerated(integerDotProduct8BitMixedSignednessAccelerated_),
integerDotProduct4x8BitPackedUnsignedAccelerated(integerDotProduct4x8BitPackedUnsignedAccelerated_),
integerDotProduct4x8BitPackedSignedAccelerated(integerDotProduct4x8BitPackedSignedAccelerated_),
integerDotProduct4x8BitPackedMixedSignednessAccelerated(integerDotProduct4x8BitPackedMixedSignednessAccelerated_),
integerDotProduct16BitUnsignedAccelerated(integerDotProduct16BitUnsignedAccelerated_),
integerDotProduct16BitSignedAccelerated(integerDotProduct16BitSignedAccelerated_),
integerDotProduct16BitMixedSignednessAccelerated(integerDotProduct16BitMixedSignednessAccelerated_),
integerDotProduct32BitUnsignedAccelerated(integerDotProduct32BitUnsignedAccelerated_),
integerDotProduct32BitSignedAccelerated(integerDotProduct32BitSignedAccelerated_),
integerDotProduct32BitMixedSignednessAccelerated(integerDotProduct32BitMixedSignednessAccelerated_),
integerDotProduct64BitUnsignedAccelerated(integerDotProduct64BitUnsignedAccelerated_),
integerDotProduct64BitSignedAccelerated(integerDotProduct64BitSignedAccelerated_),
integerDotProduct64BitMixedSignednessAccelerated(integerDotProduct64BitMixedSignednessAccelerated_),
integerDotProductAccumulatingSaturating8BitUnsignedAccelerated(integerDotProductAccumulatingSaturating8BitUnsignedAccelerated_),
integerDotProductAccumulatingSaturating8BitSignedAccelerated(integerDotProductAccumulatingSaturating8BitSignedAccelerated_),
integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated(integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated_),
integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated(integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated_),
integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated(integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated_),
integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated(
integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated_),
integerDotProductAccumulatingSaturating16BitUnsignedAccelerated(integerDotProductAccumulatingSaturating16BitUnsignedAccelerated_),
integerDotProductAccumulatingSaturating16BitSignedAccelerated(integerDotProductAccumulatingSaturating16BitSignedAccelerated_),
integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated(integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated_),
integerDotProductAccumulatingSaturating32BitUnsignedAccelerated(integerDotProductAccumulatingSaturating32BitUnsignedAccelerated_),
integerDotProductAccumulatingSaturating32BitSignedAccelerated(integerDotProductAccumulatingSaturating32BitSignedAccelerated_),
integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated(integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated_),
integerDotProductAccumulatingSaturating64BitUnsignedAccelerated(integerDotProductAccumulatingSaturating64BitUnsignedAccelerated_),
integerDotProductAccumulatingSaturating64BitSignedAccelerated(integerDotProductAccumulatingSaturating64BitSignedAccelerated_),
integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated(integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceShaderIntegerDotProductProperties(PhysicalDeviceShaderIntegerDotProductProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderIntegerDotProductProperties(VkPhysicalDeviceShaderIntegerDotProductProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderIntegerDotProductProperties(*reinterpret_cast<PhysicalDeviceShaderIntegerDotProductProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderIntegerDotProductProperties &operator=(PhysicalDeviceShaderIntegerDotProductProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderIntegerDotProductProperties &operator=(VkPhysicalDeviceShaderIntegerDotProductProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerDotProductProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceShaderIntegerDotProductProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductProperties *>(this);
}
explicit operator VkPhysicalDeviceShaderIntegerDotProductProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderIntegerDotProductProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
integerDotProduct8BitUnsignedAccelerated,
integerDotProduct8BitSignedAccelerated,
integerDotProduct8BitMixedSignednessAccelerated,
integerDotProduct4x8BitPackedUnsignedAccelerated,
integerDotProduct4x8BitPackedSignedAccelerated,
integerDotProduct4x8BitPackedMixedSignednessAccelerated,
integerDotProduct16BitUnsignedAccelerated,
integerDotProduct16BitSignedAccelerated,
integerDotProduct16BitMixedSignednessAccelerated,
integerDotProduct32BitUnsignedAccelerated,
integerDotProduct32BitSignedAccelerated,
integerDotProduct32BitMixedSignednessAccelerated,
integerDotProduct64BitUnsignedAccelerated,
integerDotProduct64BitSignedAccelerated,
integerDotProduct64BitMixedSignednessAccelerated,
integerDotProductAccumulatingSaturating8BitUnsignedAccelerated,
integerDotProductAccumulatingSaturating8BitSignedAccelerated,
integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated,
integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated,
integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated,
integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated,
integerDotProductAccumulatingSaturating16BitUnsignedAccelerated,
integerDotProductAccumulatingSaturating16BitSignedAccelerated,
integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated,
integerDotProductAccumulatingSaturating32BitUnsignedAccelerated,
integerDotProductAccumulatingSaturating32BitSignedAccelerated,
integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated,
integerDotProductAccumulatingSaturating64BitUnsignedAccelerated,
integerDotProductAccumulatingSaturating64BitSignedAccelerated,
integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderIntegerDotProductProperties const &) const = default;
#else
bool operator==(PhysicalDeviceShaderIntegerDotProductProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (integerDotProduct8BitUnsignedAccelerated == rhs.integerDotProduct8BitUnsignedAccelerated) &&
(integerDotProduct8BitSignedAccelerated == rhs.integerDotProduct8BitSignedAccelerated) &&
(integerDotProduct8BitMixedSignednessAccelerated == rhs.integerDotProduct8BitMixedSignednessAccelerated) &&
(integerDotProduct4x8BitPackedUnsignedAccelerated == rhs.integerDotProduct4x8BitPackedUnsignedAccelerated) &&
(integerDotProduct4x8BitPackedSignedAccelerated == rhs.integerDotProduct4x8BitPackedSignedAccelerated) &&
(integerDotProduct4x8BitPackedMixedSignednessAccelerated == rhs.integerDotProduct4x8BitPackedMixedSignednessAccelerated) &&
(integerDotProduct16BitUnsignedAccelerated == rhs.integerDotProduct16BitUnsignedAccelerated) &&
(integerDotProduct16BitSignedAccelerated == rhs.integerDotProduct16BitSignedAccelerated) &&
(integerDotProduct16BitMixedSignednessAccelerated == rhs.integerDotProduct16BitMixedSignednessAccelerated) &&
(integerDotProduct32BitUnsignedAccelerated == rhs.integerDotProduct32BitUnsignedAccelerated) &&
(integerDotProduct32BitSignedAccelerated == rhs.integerDotProduct32BitSignedAccelerated) &&
(integerDotProduct32BitMixedSignednessAccelerated == rhs.integerDotProduct32BitMixedSignednessAccelerated) &&
(integerDotProduct64BitUnsignedAccelerated == rhs.integerDotProduct64BitUnsignedAccelerated) &&
(integerDotProduct64BitSignedAccelerated == rhs.integerDotProduct64BitSignedAccelerated) &&
(integerDotProduct64BitMixedSignednessAccelerated == rhs.integerDotProduct64BitMixedSignednessAccelerated) &&
(integerDotProductAccumulatingSaturating8BitUnsignedAccelerated == rhs.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated) &&
(integerDotProductAccumulatingSaturating8BitSignedAccelerated == rhs.integerDotProductAccumulatingSaturating8BitSignedAccelerated) &&
(integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated ==
rhs.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated) &&
(integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated ==
rhs.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated) &&
(integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated ==
rhs.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated) &&
(integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated ==
rhs.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated) &&
(integerDotProductAccumulatingSaturating16BitUnsignedAccelerated == rhs.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated) &&
(integerDotProductAccumulatingSaturating16BitSignedAccelerated == rhs.integerDotProductAccumulatingSaturating16BitSignedAccelerated) &&
(integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated ==
rhs.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated) &&
(integerDotProductAccumulatingSaturating32BitUnsignedAccelerated == rhs.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated) &&
(integerDotProductAccumulatingSaturating32BitSignedAccelerated == rhs.integerDotProductAccumulatingSaturating32BitSignedAccelerated) &&
(integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated ==
rhs.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated) &&
(integerDotProductAccumulatingSaturating64BitUnsignedAccelerated == rhs.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated) &&
(integerDotProductAccumulatingSaturating64BitSignedAccelerated == rhs.integerDotProductAccumulatingSaturating64BitSignedAccelerated) &&
(integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated ==
rhs.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated);
# endif
}
bool operator!=(PhysicalDeviceShaderIntegerDotProductProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderIntegerDotProductProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct8BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct8BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct8BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct4x8BitPackedUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct4x8BitPackedSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct16BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct16BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct16BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct32BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct32BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct32BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct64BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct64BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct64BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerDotProductProperties) ==
sizeof(VkPhysicalDeviceShaderIntegerDotProductProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerDotProductProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerDotProductProperties>::value,
"PhysicalDeviceShaderIntegerDotProductProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderIntegerDotProductProperties>
{
using Type = PhysicalDeviceShaderIntegerDotProductProperties;
};
using PhysicalDeviceShaderIntegerDotProductPropertiesKHR = PhysicalDeviceShaderIntegerDotProductProperties;
struct PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
{
using NativeType = VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerFunctions2_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderIntegerFunctions2(shaderIntegerFunctions2_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(*reinterpret_cast<PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL &
operator=(PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL &operator=(VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL &
setShaderIntegerFunctions2(VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerFunctions2_) VULKAN_HPP_NOEXCEPT
{
shaderIntegerFunctions2 = shaderIntegerFunctions2_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL *>(this);
}
explicit operator VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderIntegerFunctions2);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const &) const = default;
#else
bool operator==(PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderIntegerFunctions2 == rhs.shaderIntegerFunctions2);
# endif
}
bool operator!=(PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerFunctions2 = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL) ==
sizeof(VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>::value,
"PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>
{
using Type = PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL;
};
struct PhysicalDeviceShaderSMBuiltinsFeaturesNV
{
using NativeType = VkPhysicalDeviceShaderSMBuiltinsFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderSmBuiltinsFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSMBuiltinsFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 shaderSMBuiltins_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderSMBuiltins(shaderSMBuiltins_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSMBuiltinsFeaturesNV(PhysicalDeviceShaderSMBuiltinsFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderSMBuiltinsFeaturesNV(VkPhysicalDeviceShaderSMBuiltinsFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderSMBuiltinsFeaturesNV(*reinterpret_cast<PhysicalDeviceShaderSMBuiltinsFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderSMBuiltinsFeaturesNV &operator=(PhysicalDeviceShaderSMBuiltinsFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderSMBuiltinsFeaturesNV &operator=(VkPhysicalDeviceShaderSMBuiltinsFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSMBuiltinsFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderSMBuiltinsFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderSMBuiltinsFeaturesNV &setShaderSMBuiltins(VULKAN_HPP_NAMESPACE::Bool32 shaderSMBuiltins_) VULKAN_HPP_NOEXCEPT
{
shaderSMBuiltins = shaderSMBuiltins_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderSMBuiltinsFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceShaderSMBuiltinsFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderSMBuiltinsFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderSMBuiltins);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderSMBuiltinsFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceShaderSMBuiltinsFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderSMBuiltins == rhs.shaderSMBuiltins);
# endif
}
bool operator!=(PhysicalDeviceShaderSMBuiltinsFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderSmBuiltinsFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSMBuiltins = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSMBuiltinsFeaturesNV) == sizeof(VkPhysicalDeviceShaderSMBuiltinsFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSMBuiltinsFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSMBuiltinsFeaturesNV>::value,
"PhysicalDeviceShaderSMBuiltinsFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderSmBuiltinsFeaturesNV>
{
using Type = PhysicalDeviceShaderSMBuiltinsFeaturesNV;
};
struct PhysicalDeviceShaderSMBuiltinsPropertiesNV
{
using NativeType = VkPhysicalDeviceShaderSMBuiltinsPropertiesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderSmBuiltinsPropertiesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PhysicalDeviceShaderSMBuiltinsPropertiesNV(uint32_t shaderSMCount_ = {}, uint32_t shaderWarpsPerSM_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderSMCount(shaderSMCount_),
shaderWarpsPerSM(shaderWarpsPerSM_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSMBuiltinsPropertiesNV(PhysicalDeviceShaderSMBuiltinsPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderSMBuiltinsPropertiesNV(VkPhysicalDeviceShaderSMBuiltinsPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderSMBuiltinsPropertiesNV(*reinterpret_cast<PhysicalDeviceShaderSMBuiltinsPropertiesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderSMBuiltinsPropertiesNV &operator=(PhysicalDeviceShaderSMBuiltinsPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderSMBuiltinsPropertiesNV &operator=(VkPhysicalDeviceShaderSMBuiltinsPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSMBuiltinsPropertiesNV const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceShaderSMBuiltinsPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderSMBuiltinsPropertiesNV *>(this);
}
explicit operator VkPhysicalDeviceShaderSMBuiltinsPropertiesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderSMBuiltinsPropertiesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderSMCount, shaderWarpsPerSM);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderSMBuiltinsPropertiesNV const &) const = default;
#else
bool operator==(PhysicalDeviceShaderSMBuiltinsPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderSMCount == rhs.shaderSMCount) && (shaderWarpsPerSM == rhs.shaderWarpsPerSM);
# endif
}
bool operator!=(PhysicalDeviceShaderSMBuiltinsPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderSmBuiltinsPropertiesNV;
void *pNext = {};
uint32_t shaderSMCount = {};
uint32_t shaderWarpsPerSM = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSMBuiltinsPropertiesNV) ==
sizeof(VkPhysicalDeviceShaderSMBuiltinsPropertiesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSMBuiltinsPropertiesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSMBuiltinsPropertiesNV>::value,
"PhysicalDeviceShaderSMBuiltinsPropertiesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderSmBuiltinsPropertiesNV>
{
using Type = PhysicalDeviceShaderSMBuiltinsPropertiesNV;
};
struct PhysicalDeviceShaderSubgroupExtendedTypesFeatures
{
using NativeType = VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderSubgroupExtendedTypesFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSubgroupExtendedTypesFeatures(VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderSubgroupExtendedTypes(shaderSubgroupExtendedTypes_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceShaderSubgroupExtendedTypesFeatures(PhysicalDeviceShaderSubgroupExtendedTypesFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderSubgroupExtendedTypesFeatures(VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderSubgroupExtendedTypesFeatures(*reinterpret_cast<PhysicalDeviceShaderSubgroupExtendedTypesFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderSubgroupExtendedTypesFeatures &
operator=(PhysicalDeviceShaderSubgroupExtendedTypesFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderSubgroupExtendedTypesFeatures &operator=(VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupExtendedTypesFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderSubgroupExtendedTypesFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderSubgroupExtendedTypesFeatures &
setShaderSubgroupExtendedTypes(VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes_) VULKAN_HPP_NOEXCEPT
{
shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures *>(this);
}
explicit operator VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderSubgroupExtendedTypes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderSubgroupExtendedTypesFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceShaderSubgroupExtendedTypesFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderSubgroupExtendedTypes == rhs.shaderSubgroupExtendedTypes);
# endif
}
bool operator!=(PhysicalDeviceShaderSubgroupExtendedTypesFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderSubgroupExtendedTypesFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupExtendedTypesFeatures) ==
sizeof(VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupExtendedTypesFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupExtendedTypesFeatures>::value,
"PhysicalDeviceShaderSubgroupExtendedTypesFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderSubgroupExtendedTypesFeatures>
{
using Type = PhysicalDeviceShaderSubgroupExtendedTypesFeatures;
};
using PhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR = PhysicalDeviceShaderSubgroupExtendedTypesFeatures;
struct PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR
{
using NativeType = VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupUniformControlFlow_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderSubgroupUniformControlFlow(shaderSubgroupUniformControlFlow_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const &rhs)
VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
*reinterpret_cast<PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR &
operator=(PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR &
operator=(VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR &
setShaderSubgroupUniformControlFlow(VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupUniformControlFlow_) VULKAN_HPP_NOEXCEPT
{
shaderSubgroupUniformControlFlow = shaderSubgroupUniformControlFlow_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR *>(this);
}
explicit operator VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderSubgroupUniformControlFlow);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const &) const = default;
#else
bool operator==(PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderSubgroupUniformControlFlow == rhs.shaderSubgroupUniformControlFlow);
# endif
}
bool operator!=(PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupUniformControlFlow = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR) ==
sizeof(VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>::value,
"PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>
{
using Type = PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR;
};
struct PhysicalDeviceShaderTerminateInvocationFeatures
{
using NativeType = VkPhysicalDeviceShaderTerminateInvocationFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShaderTerminateInvocationFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShaderTerminateInvocationFeatures(VULKAN_HPP_NAMESPACE::Bool32 shaderTerminateInvocation_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderTerminateInvocation(shaderTerminateInvocation_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceShaderTerminateInvocationFeatures(PhysicalDeviceShaderTerminateInvocationFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderTerminateInvocationFeatures(VkPhysicalDeviceShaderTerminateInvocationFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShaderTerminateInvocationFeatures(*reinterpret_cast<PhysicalDeviceShaderTerminateInvocationFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShaderTerminateInvocationFeatures &operator=(PhysicalDeviceShaderTerminateInvocationFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShaderTerminateInvocationFeatures &operator=(VkPhysicalDeviceShaderTerminateInvocationFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderTerminateInvocationFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderTerminateInvocationFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShaderTerminateInvocationFeatures &
setShaderTerminateInvocation(VULKAN_HPP_NAMESPACE::Bool32 shaderTerminateInvocation_) VULKAN_HPP_NOEXCEPT
{
shaderTerminateInvocation = shaderTerminateInvocation_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShaderTerminateInvocationFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShaderTerminateInvocationFeatures *>(this);
}
explicit operator VkPhysicalDeviceShaderTerminateInvocationFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShaderTerminateInvocationFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderTerminateInvocation);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShaderTerminateInvocationFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceShaderTerminateInvocationFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderTerminateInvocation == rhs.shaderTerminateInvocation);
# endif
}
bool operator!=(PhysicalDeviceShaderTerminateInvocationFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShaderTerminateInvocationFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderTerminateInvocation = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderTerminateInvocationFeatures) ==
sizeof(VkPhysicalDeviceShaderTerminateInvocationFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderTerminateInvocationFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderTerminateInvocationFeatures>::value,
"PhysicalDeviceShaderTerminateInvocationFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShaderTerminateInvocationFeatures>
{
using Type = PhysicalDeviceShaderTerminateInvocationFeatures;
};
using PhysicalDeviceShaderTerminateInvocationFeaturesKHR = PhysicalDeviceShaderTerminateInvocationFeatures;
struct PhysicalDeviceShadingRateImageFeaturesNV
{
using NativeType = VkPhysicalDeviceShadingRateImageFeaturesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShadingRateImageFeaturesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShadingRateImageFeaturesNV(VULKAN_HPP_NAMESPACE::Bool32 shadingRateImage_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shadingRateCoarseSampleOrder_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shadingRateImage(shadingRateImage_),
shadingRateCoarseSampleOrder(shadingRateCoarseSampleOrder_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShadingRateImageFeaturesNV(PhysicalDeviceShadingRateImageFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShadingRateImageFeaturesNV(VkPhysicalDeviceShadingRateImageFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShadingRateImageFeaturesNV(*reinterpret_cast<PhysicalDeviceShadingRateImageFeaturesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShadingRateImageFeaturesNV &operator=(PhysicalDeviceShadingRateImageFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShadingRateImageFeaturesNV &operator=(VkPhysicalDeviceShadingRateImageFeaturesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShadingRateImageFeaturesNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShadingRateImageFeaturesNV &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShadingRateImageFeaturesNV &setShadingRateImage(VULKAN_HPP_NAMESPACE::Bool32 shadingRateImage_) VULKAN_HPP_NOEXCEPT
{
shadingRateImage = shadingRateImage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceShadingRateImageFeaturesNV &
setShadingRateCoarseSampleOrder(VULKAN_HPP_NAMESPACE::Bool32 shadingRateCoarseSampleOrder_) VULKAN_HPP_NOEXCEPT
{
shadingRateCoarseSampleOrder = shadingRateCoarseSampleOrder_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceShadingRateImageFeaturesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShadingRateImageFeaturesNV *>(this);
}
explicit operator VkPhysicalDeviceShadingRateImageFeaturesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShadingRateImageFeaturesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shadingRateImage, shadingRateCoarseSampleOrder);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShadingRateImageFeaturesNV const &) const = default;
#else
bool operator==(PhysicalDeviceShadingRateImageFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shadingRateImage == rhs.shadingRateImage) &&
(shadingRateCoarseSampleOrder == rhs.shadingRateCoarseSampleOrder);
# endif
}
bool operator!=(PhysicalDeviceShadingRateImageFeaturesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShadingRateImageFeaturesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shadingRateImage = {};
VULKAN_HPP_NAMESPACE::Bool32 shadingRateCoarseSampleOrder = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShadingRateImageFeaturesNV) == sizeof(VkPhysicalDeviceShadingRateImageFeaturesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShadingRateImageFeaturesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShadingRateImageFeaturesNV>::value,
"PhysicalDeviceShadingRateImageFeaturesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShadingRateImageFeaturesNV>
{
using Type = PhysicalDeviceShadingRateImageFeaturesNV;
};
struct PhysicalDeviceShadingRateImagePropertiesNV
{
using NativeType = VkPhysicalDeviceShadingRateImagePropertiesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceShadingRateImagePropertiesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceShadingRateImagePropertiesNV(VULKAN_HPP_NAMESPACE::Extent2D shadingRateTexelSize_ = {},
uint32_t shadingRatePaletteSize_ = {},
uint32_t shadingRateMaxCoarseSamples_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shadingRateTexelSize(shadingRateTexelSize_),
shadingRatePaletteSize(shadingRatePaletteSize_),
shadingRateMaxCoarseSamples(shadingRateMaxCoarseSamples_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceShadingRateImagePropertiesNV(PhysicalDeviceShadingRateImagePropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShadingRateImagePropertiesNV(VkPhysicalDeviceShadingRateImagePropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceShadingRateImagePropertiesNV(*reinterpret_cast<PhysicalDeviceShadingRateImagePropertiesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceShadingRateImagePropertiesNV &operator=(PhysicalDeviceShadingRateImagePropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceShadingRateImagePropertiesNV &operator=(VkPhysicalDeviceShadingRateImagePropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceShadingRateImagePropertiesNV const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceShadingRateImagePropertiesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceShadingRateImagePropertiesNV *>(this);
}
explicit operator VkPhysicalDeviceShadingRateImagePropertiesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceShadingRateImagePropertiesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Extent2D const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shadingRateTexelSize, shadingRatePaletteSize, shadingRateMaxCoarseSamples);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceShadingRateImagePropertiesNV const &) const = default;
#else
bool operator==(PhysicalDeviceShadingRateImagePropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shadingRateTexelSize == rhs.shadingRateTexelSize) &&
(shadingRatePaletteSize == rhs.shadingRatePaletteSize) && (shadingRateMaxCoarseSamples == rhs.shadingRateMaxCoarseSamples);
# endif
}
bool operator!=(PhysicalDeviceShadingRateImagePropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceShadingRateImagePropertiesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Extent2D shadingRateTexelSize = {};
uint32_t shadingRatePaletteSize = {};
uint32_t shadingRateMaxCoarseSamples = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceShadingRateImagePropertiesNV) ==
sizeof(VkPhysicalDeviceShadingRateImagePropertiesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShadingRateImagePropertiesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShadingRateImagePropertiesNV>::value,
"PhysicalDeviceShadingRateImagePropertiesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceShadingRateImagePropertiesNV>
{
using Type = PhysicalDeviceShadingRateImagePropertiesNV;
};
struct PhysicalDeviceSparseImageFormatInfo2
{
using NativeType = VkPhysicalDeviceSparseImageFormatInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSparseImageFormatInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PhysicalDeviceSparseImageFormatInfo2(VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::ImageType type_ = VULKAN_HPP_NAMESPACE::ImageType::e1D,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_ = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1,
VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_ = {},
VULKAN_HPP_NAMESPACE::ImageTiling tiling_ = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
format(format_),
type(type_),
samples(samples_),
usage(usage_),
tiling(tiling_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceSparseImageFormatInfo2(PhysicalDeviceSparseImageFormatInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSparseImageFormatInfo2(VkPhysicalDeviceSparseImageFormatInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSparseImageFormatInfo2(*reinterpret_cast<PhysicalDeviceSparseImageFormatInfo2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSparseImageFormatInfo2 &operator=(PhysicalDeviceSparseImageFormatInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSparseImageFormatInfo2 &operator=(VkPhysicalDeviceSparseImageFormatInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSparseImageFormatInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSparseImageFormatInfo2 &setFormat(VULKAN_HPP_NAMESPACE::Format format_) VULKAN_HPP_NOEXCEPT
{
format = format_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSparseImageFormatInfo2 &setType(VULKAN_HPP_NAMESPACE::ImageType type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSparseImageFormatInfo2 &setSamples(VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples_) VULKAN_HPP_NOEXCEPT
{
samples = samples_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSparseImageFormatInfo2 &setUsage(VULKAN_HPP_NAMESPACE::ImageUsageFlags usage_) VULKAN_HPP_NOEXCEPT
{
usage = usage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSparseImageFormatInfo2 &setTiling(VULKAN_HPP_NAMESPACE::ImageTiling tiling_) VULKAN_HPP_NOEXCEPT
{
tiling = tiling_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceSparseImageFormatInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSparseImageFormatInfo2 *>(this);
}
explicit operator VkPhysicalDeviceSparseImageFormatInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSparseImageFormatInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::ImageType const &,
VULKAN_HPP_NAMESPACE::SampleCountFlagBits const &,
VULKAN_HPP_NAMESPACE::ImageUsageFlags const &,
VULKAN_HPP_NAMESPACE::ImageTiling const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, format, type, samples, usage, tiling);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSparseImageFormatInfo2 const &) const = default;
#else
bool operator==(PhysicalDeviceSparseImageFormatInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (format == rhs.format) && (type == rhs.type) && (samples == rhs.samples) &&
(usage == rhs.usage) && (tiling == rhs.tiling);
# endif
}
bool operator!=(PhysicalDeviceSparseImageFormatInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSparseImageFormatInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::ImageType type = VULKAN_HPP_NAMESPACE::ImageType::e1D;
VULKAN_HPP_NAMESPACE::SampleCountFlagBits samples = VULKAN_HPP_NAMESPACE::SampleCountFlagBits::e1;
VULKAN_HPP_NAMESPACE::ImageUsageFlags usage = {};
VULKAN_HPP_NAMESPACE::ImageTiling tiling = VULKAN_HPP_NAMESPACE::ImageTiling::eOptimal;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2) == sizeof(VkPhysicalDeviceSparseImageFormatInfo2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSparseImageFormatInfo2>::value,
"PhysicalDeviceSparseImageFormatInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceSparseImageFormatInfo2>
{
using Type = PhysicalDeviceSparseImageFormatInfo2;
};
using PhysicalDeviceSparseImageFormatInfo2KHR = PhysicalDeviceSparseImageFormatInfo2;
struct PhysicalDeviceSubgroupProperties
{
using NativeType = VkPhysicalDeviceSubgroupProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSubgroupProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupProperties(uint32_t subgroupSize_ = {},
VULKAN_HPP_NAMESPACE::ShaderStageFlags supportedStages_ = {},
VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags supportedOperations_ = {},
VULKAN_HPP_NAMESPACE::Bool32 quadOperationsInAllStages_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
subgroupSize(subgroupSize_),
supportedStages(supportedStages_),
supportedOperations(supportedOperations_),
quadOperationsInAllStages(quadOperationsInAllStages_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupProperties(PhysicalDeviceSubgroupProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSubgroupProperties(VkPhysicalDeviceSubgroupProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSubgroupProperties(*reinterpret_cast<PhysicalDeviceSubgroupProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSubgroupProperties &operator=(PhysicalDeviceSubgroupProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSubgroupProperties &operator=(VkPhysicalDeviceSubgroupProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceSubgroupProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSubgroupProperties *>(this);
}
explicit operator VkPhysicalDeviceSubgroupProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSubgroupProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ShaderStageFlags const &,
VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, subgroupSize, supportedStages, supportedOperations, quadOperationsInAllStages);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSubgroupProperties const &) const = default;
#else
bool operator==(PhysicalDeviceSubgroupProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (subgroupSize == rhs.subgroupSize) && (supportedStages == rhs.supportedStages) &&
(supportedOperations == rhs.supportedOperations) && (quadOperationsInAllStages == rhs.quadOperationsInAllStages);
# endif
}
bool operator!=(PhysicalDeviceSubgroupProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubgroupProperties;
void *pNext = {};
uint32_t subgroupSize = {};
VULKAN_HPP_NAMESPACE::ShaderStageFlags supportedStages = {};
VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags supportedOperations = {};
VULKAN_HPP_NAMESPACE::Bool32 quadOperationsInAllStages = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupProperties) == sizeof(VkPhysicalDeviceSubgroupProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupProperties>::value,
"PhysicalDeviceSubgroupProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceSubgroupProperties>
{
using Type = PhysicalDeviceSubgroupProperties;
};
struct PhysicalDeviceSubgroupSizeControlFeatures
{
using NativeType = VkPhysicalDeviceSubgroupSizeControlFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSubgroupSizeControlFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupSizeControlFeatures(VULKAN_HPP_NAMESPACE::Bool32 subgroupSizeControl_ = {},
VULKAN_HPP_NAMESPACE::Bool32 computeFullSubgroups_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
subgroupSizeControl(subgroupSizeControl_),
computeFullSubgroups(computeFullSubgroups_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupSizeControlFeatures(PhysicalDeviceSubgroupSizeControlFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSubgroupSizeControlFeatures(VkPhysicalDeviceSubgroupSizeControlFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSubgroupSizeControlFeatures(*reinterpret_cast<PhysicalDeviceSubgroupSizeControlFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSubgroupSizeControlFeatures &operator=(PhysicalDeviceSubgroupSizeControlFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSubgroupSizeControlFeatures &operator=(VkPhysicalDeviceSubgroupSizeControlFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupSizeControlFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSubgroupSizeControlFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSubgroupSizeControlFeatures &
setSubgroupSizeControl(VULKAN_HPP_NAMESPACE::Bool32 subgroupSizeControl_) VULKAN_HPP_NOEXCEPT
{
subgroupSizeControl = subgroupSizeControl_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSubgroupSizeControlFeatures &
setComputeFullSubgroups(VULKAN_HPP_NAMESPACE::Bool32 computeFullSubgroups_) VULKAN_HPP_NOEXCEPT
{
computeFullSubgroups = computeFullSubgroups_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceSubgroupSizeControlFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlFeatures *>(this);
}
explicit operator VkPhysicalDeviceSubgroupSizeControlFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSubgroupSizeControlFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, subgroupSizeControl, computeFullSubgroups);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSubgroupSizeControlFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceSubgroupSizeControlFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (subgroupSizeControl == rhs.subgroupSizeControl) &&
(computeFullSubgroups == rhs.computeFullSubgroups);
# endif
}
bool operator!=(PhysicalDeviceSubgroupSizeControlFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubgroupSizeControlFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 subgroupSizeControl = {};
VULKAN_HPP_NAMESPACE::Bool32 computeFullSubgroups = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupSizeControlFeatures) == sizeof(VkPhysicalDeviceSubgroupSizeControlFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupSizeControlFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupSizeControlFeatures>::value,
"PhysicalDeviceSubgroupSizeControlFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceSubgroupSizeControlFeatures>
{
using Type = PhysicalDeviceSubgroupSizeControlFeatures;
};
using PhysicalDeviceSubgroupSizeControlFeaturesEXT = PhysicalDeviceSubgroupSizeControlFeatures;
struct PhysicalDeviceSubgroupSizeControlProperties
{
using NativeType = VkPhysicalDeviceSubgroupSizeControlProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSubgroupSizeControlProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupSizeControlProperties(uint32_t minSubgroupSize_ = {},
uint32_t maxSubgroupSize_ = {},
uint32_t maxComputeWorkgroupSubgroups_ = {},
VULKAN_HPP_NAMESPACE::ShaderStageFlags requiredSubgroupSizeStages_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
minSubgroupSize(minSubgroupSize_),
maxSubgroupSize(maxSubgroupSize_),
maxComputeWorkgroupSubgroups(maxComputeWorkgroupSubgroups_),
requiredSubgroupSizeStages(requiredSubgroupSizeStages_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceSubgroupSizeControlProperties(PhysicalDeviceSubgroupSizeControlProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSubgroupSizeControlProperties(VkPhysicalDeviceSubgroupSizeControlProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSubgroupSizeControlProperties(*reinterpret_cast<PhysicalDeviceSubgroupSizeControlProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSubgroupSizeControlProperties &operator=(PhysicalDeviceSubgroupSizeControlProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSubgroupSizeControlProperties &operator=(VkPhysicalDeviceSubgroupSizeControlProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupSizeControlProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceSubgroupSizeControlProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlProperties *>(this);
}
explicit operator VkPhysicalDeviceSubgroupSizeControlProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSubgroupSizeControlProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ShaderStageFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, minSubgroupSize, maxSubgroupSize, maxComputeWorkgroupSubgroups, requiredSubgroupSizeStages);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSubgroupSizeControlProperties const &) const = default;
#else
bool operator==(PhysicalDeviceSubgroupSizeControlProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (minSubgroupSize == rhs.minSubgroupSize) && (maxSubgroupSize == rhs.maxSubgroupSize) &&
(maxComputeWorkgroupSubgroups == rhs.maxComputeWorkgroupSubgroups) && (requiredSubgroupSizeStages == rhs.requiredSubgroupSizeStages);
# endif
}
bool operator!=(PhysicalDeviceSubgroupSizeControlProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubgroupSizeControlProperties;
void *pNext = {};
uint32_t minSubgroupSize = {};
uint32_t maxSubgroupSize = {};
uint32_t maxComputeWorkgroupSubgroups = {};
VULKAN_HPP_NAMESPACE::ShaderStageFlags requiredSubgroupSizeStages = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupSizeControlProperties) ==
sizeof(VkPhysicalDeviceSubgroupSizeControlProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupSizeControlProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubgroupSizeControlProperties>::value,
"PhysicalDeviceSubgroupSizeControlProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceSubgroupSizeControlProperties>
{
using Type = PhysicalDeviceSubgroupSizeControlProperties;
};
using PhysicalDeviceSubgroupSizeControlPropertiesEXT = PhysicalDeviceSubgroupSizeControlProperties;
struct PhysicalDeviceSubpassShadingFeaturesHUAWEI
{
using NativeType = VkPhysicalDeviceSubpassShadingFeaturesHUAWEI;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSubpassShadingFeaturesHUAWEI;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceSubpassShadingFeaturesHUAWEI(VULKAN_HPP_NAMESPACE::Bool32 subpassShading_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
subpassShading(subpassShading_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceSubpassShadingFeaturesHUAWEI(PhysicalDeviceSubpassShadingFeaturesHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSubpassShadingFeaturesHUAWEI(VkPhysicalDeviceSubpassShadingFeaturesHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSubpassShadingFeaturesHUAWEI(*reinterpret_cast<PhysicalDeviceSubpassShadingFeaturesHUAWEI const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSubpassShadingFeaturesHUAWEI &operator=(PhysicalDeviceSubpassShadingFeaturesHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSubpassShadingFeaturesHUAWEI &operator=(VkPhysicalDeviceSubpassShadingFeaturesHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubpassShadingFeaturesHUAWEI const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSubpassShadingFeaturesHUAWEI &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSubpassShadingFeaturesHUAWEI &setSubpassShading(VULKAN_HPP_NAMESPACE::Bool32 subpassShading_) VULKAN_HPP_NOEXCEPT
{
subpassShading = subpassShading_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceSubpassShadingFeaturesHUAWEI const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI *>(this);
}
explicit operator VkPhysicalDeviceSubpassShadingFeaturesHUAWEI &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, subpassShading);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSubpassShadingFeaturesHUAWEI const &) const = default;
#else
bool operator==(PhysicalDeviceSubpassShadingFeaturesHUAWEI const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (subpassShading == rhs.subpassShading);
# endif
}
bool operator!=(PhysicalDeviceSubpassShadingFeaturesHUAWEI const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubpassShadingFeaturesHUAWEI;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 subpassShading = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSubpassShadingFeaturesHUAWEI) ==
sizeof(VkPhysicalDeviceSubpassShadingFeaturesHUAWEI),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubpassShadingFeaturesHUAWEI>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubpassShadingFeaturesHUAWEI>::value,
"PhysicalDeviceSubpassShadingFeaturesHUAWEI is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceSubpassShadingFeaturesHUAWEI>
{
using Type = PhysicalDeviceSubpassShadingFeaturesHUAWEI;
};
struct PhysicalDeviceSubpassShadingPropertiesHUAWEI
{
using NativeType = VkPhysicalDeviceSubpassShadingPropertiesHUAWEI;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSubpassShadingPropertiesHUAWEI;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceSubpassShadingPropertiesHUAWEI(uint32_t maxSubpassShadingWorkgroupSizeAspectRatio_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxSubpassShadingWorkgroupSizeAspectRatio(maxSubpassShadingWorkgroupSizeAspectRatio_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceSubpassShadingPropertiesHUAWEI(PhysicalDeviceSubpassShadingPropertiesHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSubpassShadingPropertiesHUAWEI(VkPhysicalDeviceSubpassShadingPropertiesHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSubpassShadingPropertiesHUAWEI(*reinterpret_cast<PhysicalDeviceSubpassShadingPropertiesHUAWEI const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSubpassShadingPropertiesHUAWEI &operator=(PhysicalDeviceSubpassShadingPropertiesHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSubpassShadingPropertiesHUAWEI &operator=(VkPhysicalDeviceSubpassShadingPropertiesHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubpassShadingPropertiesHUAWEI const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceSubpassShadingPropertiesHUAWEI const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI *>(this);
}
explicit operator VkPhysicalDeviceSubpassShadingPropertiesHUAWEI &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSubpassShadingPropertiesHUAWEI *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxSubpassShadingWorkgroupSizeAspectRatio);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSubpassShadingPropertiesHUAWEI const &) const = default;
#else
bool operator==(PhysicalDeviceSubpassShadingPropertiesHUAWEI const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxSubpassShadingWorkgroupSizeAspectRatio == rhs.maxSubpassShadingWorkgroupSizeAspectRatio);
# endif
}
bool operator!=(PhysicalDeviceSubpassShadingPropertiesHUAWEI const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSubpassShadingPropertiesHUAWEI;
void *pNext = {};
uint32_t maxSubpassShadingWorkgroupSizeAspectRatio = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSubpassShadingPropertiesHUAWEI) ==
sizeof(VkPhysicalDeviceSubpassShadingPropertiesHUAWEI),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubpassShadingPropertiesHUAWEI>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSubpassShadingPropertiesHUAWEI>::value,
"PhysicalDeviceSubpassShadingPropertiesHUAWEI is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceSubpassShadingPropertiesHUAWEI>
{
using Type = PhysicalDeviceSubpassShadingPropertiesHUAWEI;
};
struct PhysicalDeviceSurfaceInfo2KHR
{
using NativeType = VkPhysicalDeviceSurfaceInfo2KHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSurfaceInfo2KHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceSurfaceInfo2KHR(VULKAN_HPP_NAMESPACE::SurfaceKHR surface_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
surface(surface_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceSurfaceInfo2KHR(PhysicalDeviceSurfaceInfo2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSurfaceInfo2KHR(VkPhysicalDeviceSurfaceInfo2KHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSurfaceInfo2KHR(*reinterpret_cast<PhysicalDeviceSurfaceInfo2KHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSurfaceInfo2KHR &operator=(PhysicalDeviceSurfaceInfo2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSurfaceInfo2KHR &operator=(VkPhysicalDeviceSurfaceInfo2KHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSurfaceInfo2KHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSurfaceInfo2KHR &setSurface(VULKAN_HPP_NAMESPACE::SurfaceKHR surface_) VULKAN_HPP_NOEXCEPT
{
surface = surface_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceSurfaceInfo2KHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSurfaceInfo2KHR *>(this);
}
explicit operator VkPhysicalDeviceSurfaceInfo2KHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSurfaceInfo2KHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::SurfaceKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, surface);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSurfaceInfo2KHR const &) const = default;
#else
bool operator==(PhysicalDeviceSurfaceInfo2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (surface == rhs.surface);
# endif
}
bool operator!=(PhysicalDeviceSurfaceInfo2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSurfaceInfo2KHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SurfaceKHR surface = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR) == sizeof(VkPhysicalDeviceSurfaceInfo2KHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSurfaceInfo2KHR>::value,
"PhysicalDeviceSurfaceInfo2KHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceSurfaceInfo2KHR>
{
using Type = PhysicalDeviceSurfaceInfo2KHR;
};
struct PhysicalDeviceSynchronization2Features
{
using NativeType = VkPhysicalDeviceSynchronization2Features;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceSynchronization2Features;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceSynchronization2Features(VULKAN_HPP_NAMESPACE::Bool32 synchronization2_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
synchronization2(synchronization2_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceSynchronization2Features(PhysicalDeviceSynchronization2Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSynchronization2Features(VkPhysicalDeviceSynchronization2Features const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceSynchronization2Features(*reinterpret_cast<PhysicalDeviceSynchronization2Features const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceSynchronization2Features &operator=(PhysicalDeviceSynchronization2Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceSynchronization2Features &operator=(VkPhysicalDeviceSynchronization2Features const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceSynchronization2Features const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSynchronization2Features &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceSynchronization2Features &setSynchronization2(VULKAN_HPP_NAMESPACE::Bool32 synchronization2_) VULKAN_HPP_NOEXCEPT
{
synchronization2 = synchronization2_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceSynchronization2Features const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceSynchronization2Features *>(this);
}
explicit operator VkPhysicalDeviceSynchronization2Features &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceSynchronization2Features *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, synchronization2);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceSynchronization2Features const &) const = default;
#else
bool operator==(PhysicalDeviceSynchronization2Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (synchronization2 == rhs.synchronization2);
# endif
}
bool operator!=(PhysicalDeviceSynchronization2Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceSynchronization2Features;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 synchronization2 = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceSynchronization2Features) == sizeof(VkPhysicalDeviceSynchronization2Features),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSynchronization2Features>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSynchronization2Features>::value,
"PhysicalDeviceSynchronization2Features is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceSynchronization2Features>
{
using Type = PhysicalDeviceSynchronization2Features;
};
using PhysicalDeviceSynchronization2FeaturesKHR = PhysicalDeviceSynchronization2Features;
struct PhysicalDeviceTexelBufferAlignmentFeaturesEXT
{
using NativeType = VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceTexelBufferAlignmentFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 texelBufferAlignment_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
texelBufferAlignment(texelBufferAlignment_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceTexelBufferAlignmentFeaturesEXT(PhysicalDeviceTexelBufferAlignmentFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTexelBufferAlignmentFeaturesEXT(VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceTexelBufferAlignmentFeaturesEXT(*reinterpret_cast<PhysicalDeviceTexelBufferAlignmentFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceTexelBufferAlignmentFeaturesEXT &operator=(PhysicalDeviceTexelBufferAlignmentFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTexelBufferAlignmentFeaturesEXT &operator=(VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTexelBufferAlignmentFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTexelBufferAlignmentFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTexelBufferAlignmentFeaturesEXT &
setTexelBufferAlignment(VULKAN_HPP_NAMESPACE::Bool32 texelBufferAlignment_) VULKAN_HPP_NOEXCEPT
{
texelBufferAlignment = texelBufferAlignment_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, texelBufferAlignment);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceTexelBufferAlignmentFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceTexelBufferAlignmentFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (texelBufferAlignment == rhs.texelBufferAlignment);
# endif
}
bool operator!=(PhysicalDeviceTexelBufferAlignmentFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 texelBufferAlignment = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceTexelBufferAlignmentFeaturesEXT) ==
sizeof(VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceTexelBufferAlignmentFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceTexelBufferAlignmentFeaturesEXT>::value,
"PhysicalDeviceTexelBufferAlignmentFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT>
{
using Type = PhysicalDeviceTexelBufferAlignmentFeaturesEXT;
};
struct PhysicalDeviceTexelBufferAlignmentProperties
{
using NativeType = VkPhysicalDeviceTexelBufferAlignmentProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTexelBufferAlignmentProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceTexelBufferAlignmentProperties(VULKAN_HPP_NAMESPACE::DeviceSize storageTexelBufferOffsetAlignmentBytes_ = {},
VULKAN_HPP_NAMESPACE::Bool32 storageTexelBufferOffsetSingleTexelAlignment_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize uniformTexelBufferOffsetAlignmentBytes_ = {},
VULKAN_HPP_NAMESPACE::Bool32 uniformTexelBufferOffsetSingleTexelAlignment_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
storageTexelBufferOffsetAlignmentBytes(storageTexelBufferOffsetAlignmentBytes_),
storageTexelBufferOffsetSingleTexelAlignment(storageTexelBufferOffsetSingleTexelAlignment_),
uniformTexelBufferOffsetAlignmentBytes(uniformTexelBufferOffsetAlignmentBytes_),
uniformTexelBufferOffsetSingleTexelAlignment(uniformTexelBufferOffsetSingleTexelAlignment_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceTexelBufferAlignmentProperties(PhysicalDeviceTexelBufferAlignmentProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTexelBufferAlignmentProperties(VkPhysicalDeviceTexelBufferAlignmentProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceTexelBufferAlignmentProperties(*reinterpret_cast<PhysicalDeviceTexelBufferAlignmentProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceTexelBufferAlignmentProperties &operator=(PhysicalDeviceTexelBufferAlignmentProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTexelBufferAlignmentProperties &operator=(VkPhysicalDeviceTexelBufferAlignmentProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTexelBufferAlignmentProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceTexelBufferAlignmentProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentProperties *>(this);
}
explicit operator VkPhysicalDeviceTexelBufferAlignmentProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceTexelBufferAlignmentProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
storageTexelBufferOffsetAlignmentBytes,
storageTexelBufferOffsetSingleTexelAlignment,
uniformTexelBufferOffsetAlignmentBytes,
uniformTexelBufferOffsetSingleTexelAlignment);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceTexelBufferAlignmentProperties const &) const = default;
#else
bool operator==(PhysicalDeviceTexelBufferAlignmentProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (storageTexelBufferOffsetAlignmentBytes == rhs.storageTexelBufferOffsetAlignmentBytes) &&
(storageTexelBufferOffsetSingleTexelAlignment == rhs.storageTexelBufferOffsetSingleTexelAlignment) &&
(uniformTexelBufferOffsetAlignmentBytes == rhs.uniformTexelBufferOffsetAlignmentBytes) &&
(uniformTexelBufferOffsetSingleTexelAlignment == rhs.uniformTexelBufferOffsetSingleTexelAlignment);
# endif
}
bool operator!=(PhysicalDeviceTexelBufferAlignmentProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTexelBufferAlignmentProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DeviceSize storageTexelBufferOffsetAlignmentBytes = {};
VULKAN_HPP_NAMESPACE::Bool32 storageTexelBufferOffsetSingleTexelAlignment = {};
VULKAN_HPP_NAMESPACE::DeviceSize uniformTexelBufferOffsetAlignmentBytes = {};
VULKAN_HPP_NAMESPACE::Bool32 uniformTexelBufferOffsetSingleTexelAlignment = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceTexelBufferAlignmentProperties) ==
sizeof(VkPhysicalDeviceTexelBufferAlignmentProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceTexelBufferAlignmentProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceTexelBufferAlignmentProperties>::value,
"PhysicalDeviceTexelBufferAlignmentProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceTexelBufferAlignmentProperties>
{
using Type = PhysicalDeviceTexelBufferAlignmentProperties;
};
using PhysicalDeviceTexelBufferAlignmentPropertiesEXT = PhysicalDeviceTexelBufferAlignmentProperties;
struct PhysicalDeviceTextureCompressionASTCHDRFeatures
{
using NativeType = VkPhysicalDeviceTextureCompressionASTCHDRFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTextureCompressionAstcHdrFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceTextureCompressionASTCHDRFeatures(VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_HDR_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
textureCompressionASTC_HDR(textureCompressionASTC_HDR_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceTextureCompressionASTCHDRFeatures(PhysicalDeviceTextureCompressionASTCHDRFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTextureCompressionASTCHDRFeatures(VkPhysicalDeviceTextureCompressionASTCHDRFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceTextureCompressionASTCHDRFeatures(*reinterpret_cast<PhysicalDeviceTextureCompressionASTCHDRFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceTextureCompressionASTCHDRFeatures &operator=(PhysicalDeviceTextureCompressionASTCHDRFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTextureCompressionASTCHDRFeatures &operator=(VkPhysicalDeviceTextureCompressionASTCHDRFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTextureCompressionASTCHDRFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTextureCompressionASTCHDRFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTextureCompressionASTCHDRFeatures &
setTextureCompressionASTC_HDR(VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_HDR_) VULKAN_HPP_NOEXCEPT
{
textureCompressionASTC_HDR = textureCompressionASTC_HDR_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceTextureCompressionASTCHDRFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceTextureCompressionASTCHDRFeatures *>(this);
}
explicit operator VkPhysicalDeviceTextureCompressionASTCHDRFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceTextureCompressionASTCHDRFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, textureCompressionASTC_HDR);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceTextureCompressionASTCHDRFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceTextureCompressionASTCHDRFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (textureCompressionASTC_HDR == rhs.textureCompressionASTC_HDR);
# endif
}
bool operator!=(PhysicalDeviceTextureCompressionASTCHDRFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTextureCompressionAstcHdrFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_HDR = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceTextureCompressionASTCHDRFeatures) ==
sizeof(VkPhysicalDeviceTextureCompressionASTCHDRFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceTextureCompressionASTCHDRFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceTextureCompressionASTCHDRFeatures>::value,
"PhysicalDeviceTextureCompressionASTCHDRFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceTextureCompressionAstcHdrFeatures>
{
using Type = PhysicalDeviceTextureCompressionASTCHDRFeatures;
};
using PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT = PhysicalDeviceTextureCompressionASTCHDRFeatures;
struct PhysicalDeviceTimelineSemaphoreFeatures
{
using NativeType = VkPhysicalDeviceTimelineSemaphoreFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTimelineSemaphoreFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceTimelineSemaphoreFeatures(VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
timelineSemaphore(timelineSemaphore_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceTimelineSemaphoreFeatures(PhysicalDeviceTimelineSemaphoreFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTimelineSemaphoreFeatures(VkPhysicalDeviceTimelineSemaphoreFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceTimelineSemaphoreFeatures(*reinterpret_cast<PhysicalDeviceTimelineSemaphoreFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceTimelineSemaphoreFeatures &operator=(PhysicalDeviceTimelineSemaphoreFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTimelineSemaphoreFeatures &operator=(VkPhysicalDeviceTimelineSemaphoreFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTimelineSemaphoreFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTimelineSemaphoreFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTimelineSemaphoreFeatures &
setTimelineSemaphore(VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore_) VULKAN_HPP_NOEXCEPT
{
timelineSemaphore = timelineSemaphore_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceTimelineSemaphoreFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreFeatures *>(this);
}
explicit operator VkPhysicalDeviceTimelineSemaphoreFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceTimelineSemaphoreFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, timelineSemaphore);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceTimelineSemaphoreFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceTimelineSemaphoreFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (timelineSemaphore == rhs.timelineSemaphore);
# endif
}
bool operator!=(PhysicalDeviceTimelineSemaphoreFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTimelineSemaphoreFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceTimelineSemaphoreFeatures) == sizeof(VkPhysicalDeviceTimelineSemaphoreFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceTimelineSemaphoreFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceTimelineSemaphoreFeatures>::value,
"PhysicalDeviceTimelineSemaphoreFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceTimelineSemaphoreFeatures>
{
using Type = PhysicalDeviceTimelineSemaphoreFeatures;
};
using PhysicalDeviceTimelineSemaphoreFeaturesKHR = PhysicalDeviceTimelineSemaphoreFeatures;
struct PhysicalDeviceTimelineSemaphoreProperties
{
using NativeType = VkPhysicalDeviceTimelineSemaphoreProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTimelineSemaphoreProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceTimelineSemaphoreProperties(uint64_t maxTimelineSemaphoreValueDifference_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxTimelineSemaphoreValueDifference(maxTimelineSemaphoreValueDifference_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceTimelineSemaphoreProperties(PhysicalDeviceTimelineSemaphoreProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTimelineSemaphoreProperties(VkPhysicalDeviceTimelineSemaphoreProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceTimelineSemaphoreProperties(*reinterpret_cast<PhysicalDeviceTimelineSemaphoreProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceTimelineSemaphoreProperties &operator=(PhysicalDeviceTimelineSemaphoreProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTimelineSemaphoreProperties &operator=(VkPhysicalDeviceTimelineSemaphoreProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTimelineSemaphoreProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceTimelineSemaphoreProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreProperties *>(this);
}
explicit operator VkPhysicalDeviceTimelineSemaphoreProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceTimelineSemaphoreProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxTimelineSemaphoreValueDifference);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceTimelineSemaphoreProperties const &) const = default;
#else
bool operator==(PhysicalDeviceTimelineSemaphoreProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxTimelineSemaphoreValueDifference == rhs.maxTimelineSemaphoreValueDifference);
# endif
}
bool operator!=(PhysicalDeviceTimelineSemaphoreProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTimelineSemaphoreProperties;
void *pNext = {};
uint64_t maxTimelineSemaphoreValueDifference = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceTimelineSemaphoreProperties) == sizeof(VkPhysicalDeviceTimelineSemaphoreProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceTimelineSemaphoreProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceTimelineSemaphoreProperties>::value,
"PhysicalDeviceTimelineSemaphoreProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceTimelineSemaphoreProperties>
{
using Type = PhysicalDeviceTimelineSemaphoreProperties;
};
using PhysicalDeviceTimelineSemaphorePropertiesKHR = PhysicalDeviceTimelineSemaphoreProperties;
struct PhysicalDeviceToolProperties
{
using NativeType = VkPhysicalDeviceToolProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceToolProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceToolProperties(std::array<char, VK_MAX_EXTENSION_NAME_SIZE> const &name_ = {},
std::array<char, VK_MAX_EXTENSION_NAME_SIZE> const &version_ = {},
VULKAN_HPP_NAMESPACE::ToolPurposeFlags purposes_ = {},
std::array<char, VK_MAX_DESCRIPTION_SIZE> const &description_ = {},
std::array<char, VK_MAX_EXTENSION_NAME_SIZE> const &layer_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
name(name_),
version(version_),
purposes(purposes_),
description(description_),
layer(layer_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceToolProperties(PhysicalDeviceToolProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceToolProperties(VkPhysicalDeviceToolProperties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceToolProperties(*reinterpret_cast<PhysicalDeviceToolProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceToolProperties &operator=(PhysicalDeviceToolProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceToolProperties &operator=(VkPhysicalDeviceToolProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceToolProperties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceToolProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceToolProperties *>(this);
}
explicit operator VkPhysicalDeviceToolProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceToolProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> const &,
VULKAN_HPP_NAMESPACE::ToolPurposeFlags const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, name, version, purposes, description, layer);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceToolProperties const &) const = default;
#else
bool operator==(PhysicalDeviceToolProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (name == rhs.name) && (version == rhs.version) && (purposes == rhs.purposes) &&
(description == rhs.description) && (layer == rhs.layer);
# endif
}
bool operator!=(PhysicalDeviceToolProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceToolProperties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> name = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> version = {};
VULKAN_HPP_NAMESPACE::ToolPurposeFlags purposes = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_EXTENSION_NAME_SIZE> layer = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceToolProperties) == sizeof(VkPhysicalDeviceToolProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceToolProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceToolProperties>::value,
"PhysicalDeviceToolProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceToolProperties>
{
using Type = PhysicalDeviceToolProperties;
};
using PhysicalDeviceToolPropertiesEXT = PhysicalDeviceToolProperties;
struct PhysicalDeviceTransformFeedbackFeaturesEXT
{
using NativeType = VkPhysicalDeviceTransformFeedbackFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTransformFeedbackFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceTransformFeedbackFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 transformFeedback_ = {},
VULKAN_HPP_NAMESPACE::Bool32 geometryStreams_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
transformFeedback(transformFeedback_),
geometryStreams(geometryStreams_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceTransformFeedbackFeaturesEXT(PhysicalDeviceTransformFeedbackFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTransformFeedbackFeaturesEXT(VkPhysicalDeviceTransformFeedbackFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceTransformFeedbackFeaturesEXT(*reinterpret_cast<PhysicalDeviceTransformFeedbackFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceTransformFeedbackFeaturesEXT &operator=(PhysicalDeviceTransformFeedbackFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTransformFeedbackFeaturesEXT &operator=(VkPhysicalDeviceTransformFeedbackFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTransformFeedbackFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTransformFeedbackFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTransformFeedbackFeaturesEXT &
setTransformFeedback(VULKAN_HPP_NAMESPACE::Bool32 transformFeedback_) VULKAN_HPP_NOEXCEPT
{
transformFeedback = transformFeedback_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceTransformFeedbackFeaturesEXT &setGeometryStreams(VULKAN_HPP_NAMESPACE::Bool32 geometryStreams_) VULKAN_HPP_NOEXCEPT
{
geometryStreams = geometryStreams_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceTransformFeedbackFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceTransformFeedbackFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceTransformFeedbackFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceTransformFeedbackFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, transformFeedback, geometryStreams);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceTransformFeedbackFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceTransformFeedbackFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (transformFeedback == rhs.transformFeedback) && (geometryStreams == rhs.geometryStreams);
# endif
}
bool operator!=(PhysicalDeviceTransformFeedbackFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTransformFeedbackFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 transformFeedback = {};
VULKAN_HPP_NAMESPACE::Bool32 geometryStreams = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceTransformFeedbackFeaturesEXT) ==
sizeof(VkPhysicalDeviceTransformFeedbackFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceTransformFeedbackFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceTransformFeedbackFeaturesEXT>::value,
"PhysicalDeviceTransformFeedbackFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceTransformFeedbackFeaturesEXT>
{
using Type = PhysicalDeviceTransformFeedbackFeaturesEXT;
};
struct PhysicalDeviceTransformFeedbackPropertiesEXT
{
using NativeType = VkPhysicalDeviceTransformFeedbackPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceTransformFeedbackPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceTransformFeedbackPropertiesEXT(uint32_t maxTransformFeedbackStreams_ = {},
uint32_t maxTransformFeedbackBuffers_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize maxTransformFeedbackBufferSize_ = {},
uint32_t maxTransformFeedbackStreamDataSize_ = {},
uint32_t maxTransformFeedbackBufferDataSize_ = {},
uint32_t maxTransformFeedbackBufferDataStride_ = {},
VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackQueries_ = {},
VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackStreamsLinesTriangles_ = {},
VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackRasterizationStreamSelect_ = {},
VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackDraw_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxTransformFeedbackStreams(maxTransformFeedbackStreams_),
maxTransformFeedbackBuffers(maxTransformFeedbackBuffers_),
maxTransformFeedbackBufferSize(maxTransformFeedbackBufferSize_),
maxTransformFeedbackStreamDataSize(maxTransformFeedbackStreamDataSize_),
maxTransformFeedbackBufferDataSize(maxTransformFeedbackBufferDataSize_),
maxTransformFeedbackBufferDataStride(maxTransformFeedbackBufferDataStride_),
transformFeedbackQueries(transformFeedbackQueries_),
transformFeedbackStreamsLinesTriangles(transformFeedbackStreamsLinesTriangles_),
transformFeedbackRasterizationStreamSelect(transformFeedbackRasterizationStreamSelect_),
transformFeedbackDraw(transformFeedbackDraw_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceTransformFeedbackPropertiesEXT(PhysicalDeviceTransformFeedbackPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTransformFeedbackPropertiesEXT(VkPhysicalDeviceTransformFeedbackPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceTransformFeedbackPropertiesEXT(*reinterpret_cast<PhysicalDeviceTransformFeedbackPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceTransformFeedbackPropertiesEXT &operator=(PhysicalDeviceTransformFeedbackPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceTransformFeedbackPropertiesEXT &operator=(VkPhysicalDeviceTransformFeedbackPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceTransformFeedbackPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceTransformFeedbackPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceTransformFeedbackPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceTransformFeedbackPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceTransformFeedbackPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
maxTransformFeedbackStreams,
maxTransformFeedbackBuffers,
maxTransformFeedbackBufferSize,
maxTransformFeedbackStreamDataSize,
maxTransformFeedbackBufferDataSize,
maxTransformFeedbackBufferDataStride,
transformFeedbackQueries,
transformFeedbackStreamsLinesTriangles,
transformFeedbackRasterizationStreamSelect,
transformFeedbackDraw);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceTransformFeedbackPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceTransformFeedbackPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxTransformFeedbackStreams == rhs.maxTransformFeedbackStreams) &&
(maxTransformFeedbackBuffers == rhs.maxTransformFeedbackBuffers) && (maxTransformFeedbackBufferSize == rhs.maxTransformFeedbackBufferSize) &&
(maxTransformFeedbackStreamDataSize == rhs.maxTransformFeedbackStreamDataSize) &&
(maxTransformFeedbackBufferDataSize == rhs.maxTransformFeedbackBufferDataSize) &&
(maxTransformFeedbackBufferDataStride == rhs.maxTransformFeedbackBufferDataStride) &&
(transformFeedbackQueries == rhs.transformFeedbackQueries) &&
(transformFeedbackStreamsLinesTriangles == rhs.transformFeedbackStreamsLinesTriangles) &&
(transformFeedbackRasterizationStreamSelect == rhs.transformFeedbackRasterizationStreamSelect) &&
(transformFeedbackDraw == rhs.transformFeedbackDraw);
# endif
}
bool operator!=(PhysicalDeviceTransformFeedbackPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceTransformFeedbackPropertiesEXT;
void *pNext = {};
uint32_t maxTransformFeedbackStreams = {};
uint32_t maxTransformFeedbackBuffers = {};
VULKAN_HPP_NAMESPACE::DeviceSize maxTransformFeedbackBufferSize = {};
uint32_t maxTransformFeedbackStreamDataSize = {};
uint32_t maxTransformFeedbackBufferDataSize = {};
uint32_t maxTransformFeedbackBufferDataStride = {};
VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackQueries = {};
VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackStreamsLinesTriangles = {};
VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackRasterizationStreamSelect = {};
VULKAN_HPP_NAMESPACE::Bool32 transformFeedbackDraw = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceTransformFeedbackPropertiesEXT) ==
sizeof(VkPhysicalDeviceTransformFeedbackPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceTransformFeedbackPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceTransformFeedbackPropertiesEXT>::value,
"PhysicalDeviceTransformFeedbackPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceTransformFeedbackPropertiesEXT>
{
using Type = PhysicalDeviceTransformFeedbackPropertiesEXT;
};
struct PhysicalDeviceUniformBufferStandardLayoutFeatures
{
using NativeType = VkPhysicalDeviceUniformBufferStandardLayoutFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceUniformBufferStandardLayoutFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceUniformBufferStandardLayoutFeatures(VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
uniformBufferStandardLayout(uniformBufferStandardLayout_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceUniformBufferStandardLayoutFeatures(PhysicalDeviceUniformBufferStandardLayoutFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceUniformBufferStandardLayoutFeatures(VkPhysicalDeviceUniformBufferStandardLayoutFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceUniformBufferStandardLayoutFeatures(*reinterpret_cast<PhysicalDeviceUniformBufferStandardLayoutFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceUniformBufferStandardLayoutFeatures &
operator=(PhysicalDeviceUniformBufferStandardLayoutFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceUniformBufferStandardLayoutFeatures &operator=(VkPhysicalDeviceUniformBufferStandardLayoutFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceUniformBufferStandardLayoutFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceUniformBufferStandardLayoutFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceUniformBufferStandardLayoutFeatures &
setUniformBufferStandardLayout(VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout_) VULKAN_HPP_NOEXCEPT
{
uniformBufferStandardLayout = uniformBufferStandardLayout_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceUniformBufferStandardLayoutFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceUniformBufferStandardLayoutFeatures *>(this);
}
explicit operator VkPhysicalDeviceUniformBufferStandardLayoutFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceUniformBufferStandardLayoutFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, uniformBufferStandardLayout);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceUniformBufferStandardLayoutFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceUniformBufferStandardLayoutFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (uniformBufferStandardLayout == rhs.uniformBufferStandardLayout);
# endif
}
bool operator!=(PhysicalDeviceUniformBufferStandardLayoutFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceUniformBufferStandardLayoutFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceUniformBufferStandardLayoutFeatures) ==
sizeof(VkPhysicalDeviceUniformBufferStandardLayoutFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceUniformBufferStandardLayoutFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceUniformBufferStandardLayoutFeatures>::value,
"PhysicalDeviceUniformBufferStandardLayoutFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceUniformBufferStandardLayoutFeatures>
{
using Type = PhysicalDeviceUniformBufferStandardLayoutFeatures;
};
using PhysicalDeviceUniformBufferStandardLayoutFeaturesKHR = PhysicalDeviceUniformBufferStandardLayoutFeatures;
struct PhysicalDeviceVariablePointersFeatures
{
using NativeType = VkPhysicalDeviceVariablePointersFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVariablePointersFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceVariablePointersFeatures(VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer_ = {},
VULKAN_HPP_NAMESPACE::Bool32 variablePointers_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
variablePointersStorageBuffer(variablePointersStorageBuffer_),
variablePointers(variablePointers_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceVariablePointersFeatures(PhysicalDeviceVariablePointersFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVariablePointersFeatures(VkPhysicalDeviceVariablePointersFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceVariablePointersFeatures(*reinterpret_cast<PhysicalDeviceVariablePointersFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceVariablePointersFeatures &operator=(PhysicalDeviceVariablePointersFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVariablePointersFeatures &operator=(VkPhysicalDeviceVariablePointersFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVariablePointersFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVariablePointersFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVariablePointersFeatures &
setVariablePointersStorageBuffer(VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer_) VULKAN_HPP_NOEXCEPT
{
variablePointersStorageBuffer = variablePointersStorageBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVariablePointersFeatures &setVariablePointers(VULKAN_HPP_NAMESPACE::Bool32 variablePointers_) VULKAN_HPP_NOEXCEPT
{
variablePointers = variablePointers_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceVariablePointersFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceVariablePointersFeatures *>(this);
}
explicit operator VkPhysicalDeviceVariablePointersFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceVariablePointersFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, variablePointersStorageBuffer, variablePointers);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceVariablePointersFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceVariablePointersFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (variablePointersStorageBuffer == rhs.variablePointersStorageBuffer) &&
(variablePointers == rhs.variablePointers);
# endif
}
bool operator!=(PhysicalDeviceVariablePointersFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVariablePointersFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer = {};
VULKAN_HPP_NAMESPACE::Bool32 variablePointers = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceVariablePointersFeatures) == sizeof(VkPhysicalDeviceVariablePointersFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVariablePointersFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVariablePointersFeatures>::value,
"PhysicalDeviceVariablePointersFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceVariablePointersFeatures>
{
using Type = PhysicalDeviceVariablePointersFeatures;
};
using PhysicalDeviceVariablePointerFeatures = PhysicalDeviceVariablePointersFeatures;
using PhysicalDeviceVariablePointerFeaturesKHR = PhysicalDeviceVariablePointersFeatures;
using PhysicalDeviceVariablePointersFeaturesKHR = PhysicalDeviceVariablePointersFeatures;
struct PhysicalDeviceVertexAttributeDivisorFeaturesEXT
{
using NativeType = VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceVertexAttributeDivisorFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateDivisor_ = {},
VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateZeroDivisor_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
vertexAttributeInstanceRateDivisor(vertexAttributeInstanceRateDivisor_),
vertexAttributeInstanceRateZeroDivisor(vertexAttributeInstanceRateZeroDivisor_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceVertexAttributeDivisorFeaturesEXT(PhysicalDeviceVertexAttributeDivisorFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVertexAttributeDivisorFeaturesEXT(VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceVertexAttributeDivisorFeaturesEXT(*reinterpret_cast<PhysicalDeviceVertexAttributeDivisorFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceVertexAttributeDivisorFeaturesEXT &operator=(PhysicalDeviceVertexAttributeDivisorFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVertexAttributeDivisorFeaturesEXT &operator=(VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexAttributeDivisorFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVertexAttributeDivisorFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVertexAttributeDivisorFeaturesEXT &
setVertexAttributeInstanceRateDivisor(VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateDivisor_) VULKAN_HPP_NOEXCEPT
{
vertexAttributeInstanceRateDivisor = vertexAttributeInstanceRateDivisor_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVertexAttributeDivisorFeaturesEXT &
setVertexAttributeInstanceRateZeroDivisor(VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateZeroDivisor_) VULKAN_HPP_NOEXCEPT
{
vertexAttributeInstanceRateZeroDivisor = vertexAttributeInstanceRateZeroDivisor_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, vertexAttributeInstanceRateDivisor, vertexAttributeInstanceRateZeroDivisor);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceVertexAttributeDivisorFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceVertexAttributeDivisorFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (vertexAttributeInstanceRateDivisor == rhs.vertexAttributeInstanceRateDivisor) &&
(vertexAttributeInstanceRateZeroDivisor == rhs.vertexAttributeInstanceRateZeroDivisor);
# endif
}
bool operator!=(PhysicalDeviceVertexAttributeDivisorFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateDivisor = {};
VULKAN_HPP_NAMESPACE::Bool32 vertexAttributeInstanceRateZeroDivisor = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexAttributeDivisorFeaturesEXT) ==
sizeof(VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexAttributeDivisorFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexAttributeDivisorFeaturesEXT>::value,
"PhysicalDeviceVertexAttributeDivisorFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesEXT>
{
using Type = PhysicalDeviceVertexAttributeDivisorFeaturesEXT;
};
struct PhysicalDeviceVertexAttributeDivisorPropertiesEXT
{
using NativeType = VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceVertexAttributeDivisorPropertiesEXT(uint32_t maxVertexAttribDivisor_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxVertexAttribDivisor(maxVertexAttribDivisor_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceVertexAttributeDivisorPropertiesEXT(PhysicalDeviceVertexAttributeDivisorPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVertexAttributeDivisorPropertiesEXT(VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceVertexAttributeDivisorPropertiesEXT(*reinterpret_cast<PhysicalDeviceVertexAttributeDivisorPropertiesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceVertexAttributeDivisorPropertiesEXT &
operator=(PhysicalDeviceVertexAttributeDivisorPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVertexAttributeDivisorPropertiesEXT &operator=(VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexAttributeDivisorPropertiesEXT const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT *>(this);
}
explicit operator VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxVertexAttribDivisor);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceVertexAttributeDivisorPropertiesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceVertexAttributeDivisorPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxVertexAttribDivisor == rhs.maxVertexAttribDivisor);
# endif
}
bool operator!=(PhysicalDeviceVertexAttributeDivisorPropertiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT;
void *pNext = {};
uint32_t maxVertexAttribDivisor = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexAttributeDivisorPropertiesEXT) ==
sizeof(VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexAttributeDivisorPropertiesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexAttributeDivisorPropertiesEXT>::value,
"PhysicalDeviceVertexAttributeDivisorPropertiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT>
{
using Type = PhysicalDeviceVertexAttributeDivisorPropertiesEXT;
};
struct PhysicalDeviceVertexInputDynamicStateFeaturesEXT
{
using NativeType = VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVertexInputDynamicStateFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceVertexInputDynamicStateFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 vertexInputDynamicState_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
vertexInputDynamicState(vertexInputDynamicState_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceVertexInputDynamicStateFeaturesEXT(PhysicalDeviceVertexInputDynamicStateFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVertexInputDynamicStateFeaturesEXT(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceVertexInputDynamicStateFeaturesEXT(*reinterpret_cast<PhysicalDeviceVertexInputDynamicStateFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceVertexInputDynamicStateFeaturesEXT &operator=(PhysicalDeviceVertexInputDynamicStateFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVertexInputDynamicStateFeaturesEXT &operator=(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexInputDynamicStateFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVertexInputDynamicStateFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVertexInputDynamicStateFeaturesEXT &
setVertexInputDynamicState(VULKAN_HPP_NAMESPACE::Bool32 vertexInputDynamicState_) VULKAN_HPP_NOEXCEPT
{
vertexInputDynamicState = vertexInputDynamicState_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, vertexInputDynamicState);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceVertexInputDynamicStateFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceVertexInputDynamicStateFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (vertexInputDynamicState == rhs.vertexInputDynamicState);
# endif
}
bool operator!=(PhysicalDeviceVertexInputDynamicStateFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVertexInputDynamicStateFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 vertexInputDynamicState = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexInputDynamicStateFeaturesEXT) ==
sizeof(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexInputDynamicStateFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVertexInputDynamicStateFeaturesEXT>::value,
"PhysicalDeviceVertexInputDynamicStateFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceVertexInputDynamicStateFeaturesEXT>
{
using Type = PhysicalDeviceVertexInputDynamicStateFeaturesEXT;
};
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoProfileKHR
{
using NativeType = VkVideoProfileKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoProfileKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoProfileKHR(
VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagBitsKHR videoCodecOperation_ = VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagBitsKHR::eInvalid,
VULKAN_HPP_NAMESPACE::VideoChromaSubsamplingFlagsKHR chromaSubsampling_ = {},
VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR lumaBitDepth_ = {},
VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR chromaBitDepth_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
videoCodecOperation(videoCodecOperation_),
chromaSubsampling(chromaSubsampling_),
lumaBitDepth(lumaBitDepth_),
chromaBitDepth(chromaBitDepth_)
{
}
VULKAN_HPP_CONSTEXPR VideoProfileKHR(VideoProfileKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoProfileKHR(VkVideoProfileKHR const &rhs) VULKAN_HPP_NOEXCEPT : VideoProfileKHR(*reinterpret_cast<VideoProfileKHR const *>(&rhs)) {}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoProfileKHR &operator=(VideoProfileKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoProfileKHR &operator=(VkVideoProfileKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoProfileKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoProfileKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoProfileKHR &
setVideoCodecOperation(VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagBitsKHR videoCodecOperation_) VULKAN_HPP_NOEXCEPT
{
videoCodecOperation = videoCodecOperation_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoProfileKHR &
setChromaSubsampling(VULKAN_HPP_NAMESPACE::VideoChromaSubsamplingFlagsKHR chromaSubsampling_) VULKAN_HPP_NOEXCEPT
{
chromaSubsampling = chromaSubsampling_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoProfileKHR &setLumaBitDepth(VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR lumaBitDepth_) VULKAN_HPP_NOEXCEPT
{
lumaBitDepth = lumaBitDepth_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoProfileKHR &setChromaBitDepth(VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR chromaBitDepth_) VULKAN_HPP_NOEXCEPT
{
chromaBitDepth = chromaBitDepth_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoProfileKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoProfileKHR *>(this);
}
explicit operator VkVideoProfileKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoProfileKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagBitsKHR const &,
VULKAN_HPP_NAMESPACE::VideoChromaSubsamplingFlagsKHR const &,
VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR const &,
VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, videoCodecOperation, chromaSubsampling, lumaBitDepth, chromaBitDepth);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoProfileKHR const &) const = default;
# else
bool operator==(VideoProfileKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (videoCodecOperation == rhs.videoCodecOperation) &&
(chromaSubsampling == rhs.chromaSubsampling) && (lumaBitDepth == rhs.lumaBitDepth) && (chromaBitDepth == rhs.chromaBitDepth);
# endif
}
bool operator!=(VideoProfileKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoProfileKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagBitsKHR videoCodecOperation = VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagBitsKHR::eInvalid;
VULKAN_HPP_NAMESPACE::VideoChromaSubsamplingFlagsKHR chromaSubsampling = {};
VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR lumaBitDepth = {};
VULKAN_HPP_NAMESPACE::VideoComponentBitDepthFlagsKHR chromaBitDepth = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoProfileKHR) == sizeof(VkVideoProfileKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoProfileKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoProfileKHR>::value,
"VideoProfileKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoProfileKHR>
{
using Type = VideoProfileKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoProfilesKHR
{
using NativeType = VkVideoProfilesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoProfilesKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoProfilesKHR(uint32_t profileCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoProfileKHR *pProfiles_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
profileCount(profileCount_),
pProfiles(pProfiles_)
{
}
VULKAN_HPP_CONSTEXPR VideoProfilesKHR(VideoProfilesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoProfilesKHR(VkVideoProfilesKHR const &rhs) VULKAN_HPP_NOEXCEPT : VideoProfilesKHR(*reinterpret_cast<VideoProfilesKHR const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoProfilesKHR(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoProfileKHR> const &profiles_, void *pNext_ = nullptr)
: pNext(pNext_)
, profileCount(static_cast<uint32_t>(profiles_.size()))
, pProfiles(profiles_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoProfilesKHR &operator=(VideoProfilesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoProfilesKHR &operator=(VkVideoProfilesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoProfilesKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoProfilesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoProfilesKHR &setProfileCount(uint32_t profileCount_) VULKAN_HPP_NOEXCEPT
{
profileCount = profileCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoProfilesKHR &setPProfiles(const VULKAN_HPP_NAMESPACE::VideoProfileKHR *pProfiles_) VULKAN_HPP_NOEXCEPT
{
pProfiles = pProfiles_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoProfilesKHR &
setProfiles(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoProfileKHR> const &profiles_) VULKAN_HPP_NOEXCEPT
{
profileCount = static_cast<uint32_t>(profiles_.size());
pProfiles = profiles_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoProfilesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoProfilesKHR *>(this);
}
explicit operator VkVideoProfilesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoProfilesKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::VideoProfileKHR *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, profileCount, pProfiles);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoProfilesKHR const &) const = default;
# else
bool operator==(VideoProfilesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (profileCount == rhs.profileCount) && (pProfiles == rhs.pProfiles);
# endif
}
bool operator!=(VideoProfilesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoProfilesKHR;
void *pNext = {};
uint32_t profileCount = {};
const VULKAN_HPP_NAMESPACE::VideoProfileKHR *pProfiles = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoProfilesKHR) == sizeof(VkVideoProfilesKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoProfilesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoProfilesKHR>::value,
"VideoProfilesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoProfilesKHR>
{
using Type = VideoProfilesKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct PhysicalDeviceVideoFormatInfoKHR
{
using NativeType = VkPhysicalDeviceVideoFormatInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVideoFormatInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceVideoFormatInfoKHR(VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage_ = {},
const VULKAN_HPP_NAMESPACE::VideoProfilesKHR *pVideoProfiles_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
imageUsage(imageUsage_),
pVideoProfiles(pVideoProfiles_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceVideoFormatInfoKHR(PhysicalDeviceVideoFormatInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVideoFormatInfoKHR(VkPhysicalDeviceVideoFormatInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceVideoFormatInfoKHR(*reinterpret_cast<PhysicalDeviceVideoFormatInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceVideoFormatInfoKHR &operator=(PhysicalDeviceVideoFormatInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVideoFormatInfoKHR &operator=(VkPhysicalDeviceVideoFormatInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVideoFormatInfoKHR const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceVideoFormatInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceVideoFormatInfoKHR *>(this);
}
explicit operator VkPhysicalDeviceVideoFormatInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceVideoFormatInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ImageUsageFlags const &,
const VULKAN_HPP_NAMESPACE::VideoProfilesKHR *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, imageUsage, pVideoProfiles);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceVideoFormatInfoKHR const &) const = default;
# else
bool operator==(PhysicalDeviceVideoFormatInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (imageUsage == rhs.imageUsage) && (pVideoProfiles == rhs.pVideoProfiles);
# endif
}
bool operator!=(PhysicalDeviceVideoFormatInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVideoFormatInfoKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage = {};
const VULKAN_HPP_NAMESPACE::VideoProfilesKHR *pVideoProfiles = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceVideoFormatInfoKHR) == sizeof(VkPhysicalDeviceVideoFormatInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVideoFormatInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVideoFormatInfoKHR>::value,
"PhysicalDeviceVideoFormatInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceVideoFormatInfoKHR>
{
using Type = PhysicalDeviceVideoFormatInfoKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
struct PhysicalDeviceVulkan11Features
{
using NativeType = VkPhysicalDeviceVulkan11Features;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan11Features;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkan11Features(VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 multiview_ = {},
VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader_ = {},
VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader_ = {},
VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer_ = {},
VULKAN_HPP_NAMESPACE::Bool32 variablePointers_ = {},
VULKAN_HPP_NAMESPACE::Bool32 protectedMemory_ = {},
VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
storageBuffer16BitAccess(storageBuffer16BitAccess_),
uniformAndStorageBuffer16BitAccess(uniformAndStorageBuffer16BitAccess_),
storagePushConstant16(storagePushConstant16_),
storageInputOutput16(storageInputOutput16_),
multiview(multiview_),
multiviewGeometryShader(multiviewGeometryShader_),
multiviewTessellationShader(multiviewTessellationShader_),
variablePointersStorageBuffer(variablePointersStorageBuffer_),
variablePointers(variablePointers_),
protectedMemory(protectedMemory_),
samplerYcbcrConversion(samplerYcbcrConversion_),
shaderDrawParameters(shaderDrawParameters_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkan11Features(PhysicalDeviceVulkan11Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkan11Features(VkPhysicalDeviceVulkan11Features const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceVulkan11Features(*reinterpret_cast<PhysicalDeviceVulkan11Features const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceVulkan11Features &operator=(PhysicalDeviceVulkan11Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkan11Features &operator=(VkPhysicalDeviceVulkan11Features const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan11Features const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &
setStorageBuffer16BitAccess(VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess_) VULKAN_HPP_NOEXCEPT
{
storageBuffer16BitAccess = storageBuffer16BitAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &
setUniformAndStorageBuffer16BitAccess(VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess_) VULKAN_HPP_NOEXCEPT
{
uniformAndStorageBuffer16BitAccess = uniformAndStorageBuffer16BitAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &setStoragePushConstant16(VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16_) VULKAN_HPP_NOEXCEPT
{
storagePushConstant16 = storagePushConstant16_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &setStorageInputOutput16(VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16_) VULKAN_HPP_NOEXCEPT
{
storageInputOutput16 = storageInputOutput16_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &setMultiview(VULKAN_HPP_NAMESPACE::Bool32 multiview_) VULKAN_HPP_NOEXCEPT
{
multiview = multiview_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &
setMultiviewGeometryShader(VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader_) VULKAN_HPP_NOEXCEPT
{
multiviewGeometryShader = multiviewGeometryShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &
setMultiviewTessellationShader(VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader_) VULKAN_HPP_NOEXCEPT
{
multiviewTessellationShader = multiviewTessellationShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &
setVariablePointersStorageBuffer(VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer_) VULKAN_HPP_NOEXCEPT
{
variablePointersStorageBuffer = variablePointersStorageBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &setVariablePointers(VULKAN_HPP_NAMESPACE::Bool32 variablePointers_) VULKAN_HPP_NOEXCEPT
{
variablePointers = variablePointers_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &setProtectedMemory(VULKAN_HPP_NAMESPACE::Bool32 protectedMemory_) VULKAN_HPP_NOEXCEPT
{
protectedMemory = protectedMemory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &
setSamplerYcbcrConversion(VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion_) VULKAN_HPP_NOEXCEPT
{
samplerYcbcrConversion = samplerYcbcrConversion_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Features &setShaderDrawParameters(VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters_) VULKAN_HPP_NOEXCEPT
{
shaderDrawParameters = shaderDrawParameters_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceVulkan11Features const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceVulkan11Features *>(this);
}
explicit operator VkPhysicalDeviceVulkan11Features &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceVulkan11Features *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
storageBuffer16BitAccess,
uniformAndStorageBuffer16BitAccess,
storagePushConstant16,
storageInputOutput16,
multiview,
multiviewGeometryShader,
multiviewTessellationShader,
variablePointersStorageBuffer,
variablePointers,
protectedMemory,
samplerYcbcrConversion,
shaderDrawParameters);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceVulkan11Features const &) const = default;
#else
bool operator==(PhysicalDeviceVulkan11Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (storageBuffer16BitAccess == rhs.storageBuffer16BitAccess) &&
(uniformAndStorageBuffer16BitAccess == rhs.uniformAndStorageBuffer16BitAccess) && (storagePushConstant16 == rhs.storagePushConstant16) &&
(storageInputOutput16 == rhs.storageInputOutput16) && (multiview == rhs.multiview) &&
(multiviewGeometryShader == rhs.multiviewGeometryShader) && (multiviewTessellationShader == rhs.multiviewTessellationShader) &&
(variablePointersStorageBuffer == rhs.variablePointersStorageBuffer) && (variablePointers == rhs.variablePointers) &&
(protectedMemory == rhs.protectedMemory) && (samplerYcbcrConversion == rhs.samplerYcbcrConversion) &&
(shaderDrawParameters == rhs.shaderDrawParameters);
# endif
}
bool operator!=(PhysicalDeviceVulkan11Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan11Features;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 storageBuffer16BitAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer16BitAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant16 = {};
VULKAN_HPP_NAMESPACE::Bool32 storageInputOutput16 = {};
VULKAN_HPP_NAMESPACE::Bool32 multiview = {};
VULKAN_HPP_NAMESPACE::Bool32 multiviewGeometryShader = {};
VULKAN_HPP_NAMESPACE::Bool32 multiviewTessellationShader = {};
VULKAN_HPP_NAMESPACE::Bool32 variablePointersStorageBuffer = {};
VULKAN_HPP_NAMESPACE::Bool32 variablePointers = {};
VULKAN_HPP_NAMESPACE::Bool32 protectedMemory = {};
VULKAN_HPP_NAMESPACE::Bool32 samplerYcbcrConversion = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDrawParameters = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan11Features) == sizeof(VkPhysicalDeviceVulkan11Features),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan11Features>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan11Features>::value,
"PhysicalDeviceVulkan11Features is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan11Features>
{
using Type = PhysicalDeviceVulkan11Features;
};
struct PhysicalDeviceVulkan11Properties
{
using NativeType = VkPhysicalDeviceVulkan11Properties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan11Properties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Properties(
std::array<uint8_t, VK_UUID_SIZE> const &deviceUUID_ = {},
std::array<uint8_t, VK_UUID_SIZE> const &driverUUID_ = {},
std::array<uint8_t, VK_LUID_SIZE> const &deviceLUID_ = {},
uint32_t deviceNodeMask_ = {},
VULKAN_HPP_NAMESPACE::Bool32 deviceLUIDValid_ = {},
uint32_t subgroupSize_ = {},
VULKAN_HPP_NAMESPACE::ShaderStageFlags subgroupSupportedStages_ = {},
VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags subgroupSupportedOperations_ = {},
VULKAN_HPP_NAMESPACE::Bool32 subgroupQuadOperationsInAllStages_ = {},
VULKAN_HPP_NAMESPACE::PointClippingBehavior pointClippingBehavior_ = VULKAN_HPP_NAMESPACE::PointClippingBehavior::eAllClipPlanes,
uint32_t maxMultiviewViewCount_ = {},
uint32_t maxMultiviewInstanceIndex_ = {},
VULKAN_HPP_NAMESPACE::Bool32 protectedNoFault_ = {},
uint32_t maxPerSetDescriptors_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize maxMemoryAllocationSize_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
deviceUUID(deviceUUID_),
driverUUID(driverUUID_),
deviceLUID(deviceLUID_),
deviceNodeMask(deviceNodeMask_),
deviceLUIDValid(deviceLUIDValid_),
subgroupSize(subgroupSize_),
subgroupSupportedStages(subgroupSupportedStages_),
subgroupSupportedOperations(subgroupSupportedOperations_),
subgroupQuadOperationsInAllStages(subgroupQuadOperationsInAllStages_),
pointClippingBehavior(pointClippingBehavior_),
maxMultiviewViewCount(maxMultiviewViewCount_),
maxMultiviewInstanceIndex(maxMultiviewInstanceIndex_),
protectedNoFault(protectedNoFault_),
maxPerSetDescriptors(maxPerSetDescriptors_),
maxMemoryAllocationSize(maxMemoryAllocationSize_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan11Properties(PhysicalDeviceVulkan11Properties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkan11Properties(VkPhysicalDeviceVulkan11Properties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceVulkan11Properties(*reinterpret_cast<PhysicalDeviceVulkan11Properties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceVulkan11Properties &operator=(PhysicalDeviceVulkan11Properties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkan11Properties &operator=(VkPhysicalDeviceVulkan11Properties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan11Properties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceVulkan11Properties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceVulkan11Properties *>(this);
}
explicit operator VkPhysicalDeviceVulkan11Properties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceVulkan11Properties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_LUID_SIZE> const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ShaderStageFlags const &,
VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::PointClippingBehavior const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
deviceUUID,
driverUUID,
deviceLUID,
deviceNodeMask,
deviceLUIDValid,
subgroupSize,
subgroupSupportedStages,
subgroupSupportedOperations,
subgroupQuadOperationsInAllStages,
pointClippingBehavior,
maxMultiviewViewCount,
maxMultiviewInstanceIndex,
protectedNoFault,
maxPerSetDescriptors,
maxMemoryAllocationSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceVulkan11Properties const &) const = default;
#else
bool operator==(PhysicalDeviceVulkan11Properties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (deviceUUID == rhs.deviceUUID) && (driverUUID == rhs.driverUUID) &&
(deviceLUID == rhs.deviceLUID) && (deviceNodeMask == rhs.deviceNodeMask) && (deviceLUIDValid == rhs.deviceLUIDValid) &&
(subgroupSize == rhs.subgroupSize) && (subgroupSupportedStages == rhs.subgroupSupportedStages) &&
(subgroupSupportedOperations == rhs.subgroupSupportedOperations) &&
(subgroupQuadOperationsInAllStages == rhs.subgroupQuadOperationsInAllStages) && (pointClippingBehavior == rhs.pointClippingBehavior) &&
(maxMultiviewViewCount == rhs.maxMultiviewViewCount) && (maxMultiviewInstanceIndex == rhs.maxMultiviewInstanceIndex) &&
(protectedNoFault == rhs.protectedNoFault) && (maxPerSetDescriptors == rhs.maxPerSetDescriptors) &&
(maxMemoryAllocationSize == rhs.maxMemoryAllocationSize);
# endif
}
bool operator!=(PhysicalDeviceVulkan11Properties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan11Properties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> deviceUUID = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> driverUUID = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_LUID_SIZE> deviceLUID = {};
uint32_t deviceNodeMask = {};
VULKAN_HPP_NAMESPACE::Bool32 deviceLUIDValid = {};
uint32_t subgroupSize = {};
VULKAN_HPP_NAMESPACE::ShaderStageFlags subgroupSupportedStages = {};
VULKAN_HPP_NAMESPACE::SubgroupFeatureFlags subgroupSupportedOperations = {};
VULKAN_HPP_NAMESPACE::Bool32 subgroupQuadOperationsInAllStages = {};
VULKAN_HPP_NAMESPACE::PointClippingBehavior pointClippingBehavior = VULKAN_HPP_NAMESPACE::PointClippingBehavior::eAllClipPlanes;
uint32_t maxMultiviewViewCount = {};
uint32_t maxMultiviewInstanceIndex = {};
VULKAN_HPP_NAMESPACE::Bool32 protectedNoFault = {};
uint32_t maxPerSetDescriptors = {};
VULKAN_HPP_NAMESPACE::DeviceSize maxMemoryAllocationSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan11Properties) == sizeof(VkPhysicalDeviceVulkan11Properties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan11Properties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan11Properties>::value,
"PhysicalDeviceVulkan11Properties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan11Properties>
{
using Type = PhysicalDeviceVulkan11Properties;
};
struct PhysicalDeviceVulkan12Features
{
using NativeType = VkPhysicalDeviceVulkan12Features;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan12Features;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkan12Features(VULKAN_HPP_NAMESPACE::Bool32 samplerMirrorClampToEdge_ = {},
VULKAN_HPP_NAMESPACE::Bool32 drawIndirectCount_ = {},
VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderInt8_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount_ = {},
VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray_ = {},
VULKAN_HPP_NAMESPACE::Bool32 samplerFilterMinmax_ = {},
VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout_ = {},
VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer_ = {},
VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes_ = {},
VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts_ = {},
VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset_ = {},
VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore_ = {},
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_ = {},
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_ = {},
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_ = {},
VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel_ = {},
VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope_ = {},
VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderOutputViewportIndex_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderOutputLayer_ = {},
VULKAN_HPP_NAMESPACE::Bool32 subgroupBroadcastDynamicId_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
samplerMirrorClampToEdge(samplerMirrorClampToEdge_),
drawIndirectCount(drawIndirectCount_),
storageBuffer8BitAccess(storageBuffer8BitAccess_),
uniformAndStorageBuffer8BitAccess(uniformAndStorageBuffer8BitAccess_),
storagePushConstant8(storagePushConstant8_),
shaderBufferInt64Atomics(shaderBufferInt64Atomics_),
shaderSharedInt64Atomics(shaderSharedInt64Atomics_),
shaderFloat16(shaderFloat16_),
shaderInt8(shaderInt8_),
descriptorIndexing(descriptorIndexing_),
shaderInputAttachmentArrayDynamicIndexing(shaderInputAttachmentArrayDynamicIndexing_),
shaderUniformTexelBufferArrayDynamicIndexing(shaderUniformTexelBufferArrayDynamicIndexing_),
shaderStorageTexelBufferArrayDynamicIndexing(shaderStorageTexelBufferArrayDynamicIndexing_),
shaderUniformBufferArrayNonUniformIndexing(shaderUniformBufferArrayNonUniformIndexing_),
shaderSampledImageArrayNonUniformIndexing(shaderSampledImageArrayNonUniformIndexing_),
shaderStorageBufferArrayNonUniformIndexing(shaderStorageBufferArrayNonUniformIndexing_),
shaderStorageImageArrayNonUniformIndexing(shaderStorageImageArrayNonUniformIndexing_),
shaderInputAttachmentArrayNonUniformIndexing(shaderInputAttachmentArrayNonUniformIndexing_),
shaderUniformTexelBufferArrayNonUniformIndexing(shaderUniformTexelBufferArrayNonUniformIndexing_),
shaderStorageTexelBufferArrayNonUniformIndexing(shaderStorageTexelBufferArrayNonUniformIndexing_),
descriptorBindingUniformBufferUpdateAfterBind(descriptorBindingUniformBufferUpdateAfterBind_),
descriptorBindingSampledImageUpdateAfterBind(descriptorBindingSampledImageUpdateAfterBind_),
descriptorBindingStorageImageUpdateAfterBind(descriptorBindingStorageImageUpdateAfterBind_),
descriptorBindingStorageBufferUpdateAfterBind(descriptorBindingStorageBufferUpdateAfterBind_),
descriptorBindingUniformTexelBufferUpdateAfterBind(descriptorBindingUniformTexelBufferUpdateAfterBind_),
descriptorBindingStorageTexelBufferUpdateAfterBind(descriptorBindingStorageTexelBufferUpdateAfterBind_),
descriptorBindingUpdateUnusedWhilePending(descriptorBindingUpdateUnusedWhilePending_),
descriptorBindingPartiallyBound(descriptorBindingPartiallyBound_),
descriptorBindingVariableDescriptorCount(descriptorBindingVariableDescriptorCount_),
runtimeDescriptorArray(runtimeDescriptorArray_),
samplerFilterMinmax(samplerFilterMinmax_),
scalarBlockLayout(scalarBlockLayout_),
imagelessFramebuffer(imagelessFramebuffer_),
uniformBufferStandardLayout(uniformBufferStandardLayout_),
shaderSubgroupExtendedTypes(shaderSubgroupExtendedTypes_),
separateDepthStencilLayouts(separateDepthStencilLayouts_),
hostQueryReset(hostQueryReset_),
timelineSemaphore(timelineSemaphore_),
bufferDeviceAddress(bufferDeviceAddress_),
bufferDeviceAddressCaptureReplay(bufferDeviceAddressCaptureReplay_),
bufferDeviceAddressMultiDevice(bufferDeviceAddressMultiDevice_),
vulkanMemoryModel(vulkanMemoryModel_),
vulkanMemoryModelDeviceScope(vulkanMemoryModelDeviceScope_),
vulkanMemoryModelAvailabilityVisibilityChains(vulkanMemoryModelAvailabilityVisibilityChains_),
shaderOutputViewportIndex(shaderOutputViewportIndex_),
shaderOutputLayer(shaderOutputLayer_),
subgroupBroadcastDynamicId(subgroupBroadcastDynamicId_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkan12Features(PhysicalDeviceVulkan12Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkan12Features(VkPhysicalDeviceVulkan12Features const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceVulkan12Features(*reinterpret_cast<PhysicalDeviceVulkan12Features const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceVulkan12Features &operator=(PhysicalDeviceVulkan12Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkan12Features &operator=(VkPhysicalDeviceVulkan12Features const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan12Features const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setSamplerMirrorClampToEdge(VULKAN_HPP_NAMESPACE::Bool32 samplerMirrorClampToEdge_) VULKAN_HPP_NOEXCEPT
{
samplerMirrorClampToEdge = samplerMirrorClampToEdge_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setDrawIndirectCount(VULKAN_HPP_NAMESPACE::Bool32 drawIndirectCount_) VULKAN_HPP_NOEXCEPT
{
drawIndirectCount = drawIndirectCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setStorageBuffer8BitAccess(VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess_) VULKAN_HPP_NOEXCEPT
{
storageBuffer8BitAccess = storageBuffer8BitAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setUniformAndStorageBuffer8BitAccess(VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess_) VULKAN_HPP_NOEXCEPT
{
uniformAndStorageBuffer8BitAccess = uniformAndStorageBuffer8BitAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setStoragePushConstant8(VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8_) VULKAN_HPP_NOEXCEPT
{
storagePushConstant8 = storagePushConstant8_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderBufferInt64Atomics(VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics_) VULKAN_HPP_NOEXCEPT
{
shaderBufferInt64Atomics = shaderBufferInt64Atomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderSharedInt64Atomics(VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics_) VULKAN_HPP_NOEXCEPT
{
shaderSharedInt64Atomics = shaderSharedInt64Atomics_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setShaderFloat16(VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16_) VULKAN_HPP_NOEXCEPT
{
shaderFloat16 = shaderFloat16_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setShaderInt8(VULKAN_HPP_NAMESPACE::Bool32 shaderInt8_) VULKAN_HPP_NOEXCEPT
{
shaderInt8 = shaderInt8_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setDescriptorIndexing(VULKAN_HPP_NAMESPACE::Bool32 descriptorIndexing_) VULKAN_HPP_NOEXCEPT
{
descriptorIndexing = descriptorIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderInputAttachmentArrayDynamicIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderInputAttachmentArrayDynamicIndexing = shaderInputAttachmentArrayDynamicIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderUniformTexelBufferArrayDynamicIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderUniformTexelBufferArrayDynamicIndexing = shaderUniformTexelBufferArrayDynamicIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderStorageTexelBufferArrayDynamicIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderStorageTexelBufferArrayDynamicIndexing = shaderStorageTexelBufferArrayDynamicIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderUniformBufferArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderUniformBufferArrayNonUniformIndexing = shaderUniformBufferArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderSampledImageArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderSampledImageArrayNonUniformIndexing = shaderSampledImageArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderStorageBufferArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderStorageBufferArrayNonUniformIndexing = shaderStorageBufferArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderStorageImageArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderStorageImageArrayNonUniformIndexing = shaderStorageImageArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderInputAttachmentArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderInputAttachmentArrayNonUniformIndexing = shaderInputAttachmentArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderUniformTexelBufferArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderUniformTexelBufferArrayNonUniformIndexing = shaderUniformTexelBufferArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderStorageTexelBufferArrayNonUniformIndexing(VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing_) VULKAN_HPP_NOEXCEPT
{
shaderStorageTexelBufferArrayNonUniformIndexing = shaderStorageTexelBufferArrayNonUniformIndexing_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setDescriptorBindingUniformBufferUpdateAfterBind(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingUniformBufferUpdateAfterBind = descriptorBindingUniformBufferUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setDescriptorBindingSampledImageUpdateAfterBind(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingSampledImageUpdateAfterBind = descriptorBindingSampledImageUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setDescriptorBindingStorageImageUpdateAfterBind(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingStorageImageUpdateAfterBind = descriptorBindingStorageImageUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setDescriptorBindingStorageBufferUpdateAfterBind(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingStorageBufferUpdateAfterBind = descriptorBindingStorageBufferUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setDescriptorBindingUniformTexelBufferUpdateAfterBind(
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingUniformTexelBufferUpdateAfterBind = descriptorBindingUniformTexelBufferUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setDescriptorBindingStorageTexelBufferUpdateAfterBind(
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingStorageTexelBufferUpdateAfterBind = descriptorBindingStorageTexelBufferUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setDescriptorBindingUpdateUnusedWhilePending(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingUpdateUnusedWhilePending = descriptorBindingUpdateUnusedWhilePending_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setDescriptorBindingPartiallyBound(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingPartiallyBound = descriptorBindingPartiallyBound_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setDescriptorBindingVariableDescriptorCount(VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingVariableDescriptorCount = descriptorBindingVariableDescriptorCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setRuntimeDescriptorArray(VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray_) VULKAN_HPP_NOEXCEPT
{
runtimeDescriptorArray = runtimeDescriptorArray_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setSamplerFilterMinmax(VULKAN_HPP_NAMESPACE::Bool32 samplerFilterMinmax_) VULKAN_HPP_NOEXCEPT
{
samplerFilterMinmax = samplerFilterMinmax_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setScalarBlockLayout(VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout_) VULKAN_HPP_NOEXCEPT
{
scalarBlockLayout = scalarBlockLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setImagelessFramebuffer(VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer_) VULKAN_HPP_NOEXCEPT
{
imagelessFramebuffer = imagelessFramebuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setUniformBufferStandardLayout(VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout_) VULKAN_HPP_NOEXCEPT
{
uniformBufferStandardLayout = uniformBufferStandardLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderSubgroupExtendedTypes(VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes_) VULKAN_HPP_NOEXCEPT
{
shaderSubgroupExtendedTypes = shaderSubgroupExtendedTypes_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setSeparateDepthStencilLayouts(VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts_) VULKAN_HPP_NOEXCEPT
{
separateDepthStencilLayouts = separateDepthStencilLayouts_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setHostQueryReset(VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset_) VULKAN_HPP_NOEXCEPT
{
hostQueryReset = hostQueryReset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setTimelineSemaphore(VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore_) VULKAN_HPP_NOEXCEPT
{
timelineSemaphore = timelineSemaphore_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setBufferDeviceAddress(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress_) VULKAN_HPP_NOEXCEPT
{
bufferDeviceAddress = bufferDeviceAddress_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setBufferDeviceAddressCaptureReplay(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay_) VULKAN_HPP_NOEXCEPT
{
bufferDeviceAddressCaptureReplay = bufferDeviceAddressCaptureReplay_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setBufferDeviceAddressMultiDevice(VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice_) VULKAN_HPP_NOEXCEPT
{
bufferDeviceAddressMultiDevice = bufferDeviceAddressMultiDevice_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setVulkanMemoryModel(VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel_) VULKAN_HPP_NOEXCEPT
{
vulkanMemoryModel = vulkanMemoryModel_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setVulkanMemoryModelDeviceScope(VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope_) VULKAN_HPP_NOEXCEPT
{
vulkanMemoryModelDeviceScope = vulkanMemoryModelDeviceScope_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setVulkanMemoryModelAvailabilityVisibilityChains(VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains_) VULKAN_HPP_NOEXCEPT
{
vulkanMemoryModelAvailabilityVisibilityChains = vulkanMemoryModelAvailabilityVisibilityChains_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setShaderOutputViewportIndex(VULKAN_HPP_NAMESPACE::Bool32 shaderOutputViewportIndex_) VULKAN_HPP_NOEXCEPT
{
shaderOutputViewportIndex = shaderOutputViewportIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &setShaderOutputLayer(VULKAN_HPP_NAMESPACE::Bool32 shaderOutputLayer_) VULKAN_HPP_NOEXCEPT
{
shaderOutputLayer = shaderOutputLayer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Features &
setSubgroupBroadcastDynamicId(VULKAN_HPP_NAMESPACE::Bool32 subgroupBroadcastDynamicId_) VULKAN_HPP_NOEXCEPT
{
subgroupBroadcastDynamicId = subgroupBroadcastDynamicId_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceVulkan12Features const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceVulkan12Features *>(this);
}
explicit operator VkPhysicalDeviceVulkan12Features &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceVulkan12Features *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
samplerMirrorClampToEdge,
drawIndirectCount,
storageBuffer8BitAccess,
uniformAndStorageBuffer8BitAccess,
storagePushConstant8,
shaderBufferInt64Atomics,
shaderSharedInt64Atomics,
shaderFloat16,
shaderInt8,
descriptorIndexing,
shaderInputAttachmentArrayDynamicIndexing,
shaderUniformTexelBufferArrayDynamicIndexing,
shaderStorageTexelBufferArrayDynamicIndexing,
shaderUniformBufferArrayNonUniformIndexing,
shaderSampledImageArrayNonUniformIndexing,
shaderStorageBufferArrayNonUniformIndexing,
shaderStorageImageArrayNonUniformIndexing,
shaderInputAttachmentArrayNonUniformIndexing,
shaderUniformTexelBufferArrayNonUniformIndexing,
shaderStorageTexelBufferArrayNonUniformIndexing,
descriptorBindingUniformBufferUpdateAfterBind,
descriptorBindingSampledImageUpdateAfterBind,
descriptorBindingStorageImageUpdateAfterBind,
descriptorBindingStorageBufferUpdateAfterBind,
descriptorBindingUniformTexelBufferUpdateAfterBind,
descriptorBindingStorageTexelBufferUpdateAfterBind,
descriptorBindingUpdateUnusedWhilePending,
descriptorBindingPartiallyBound,
descriptorBindingVariableDescriptorCount,
runtimeDescriptorArray,
samplerFilterMinmax,
scalarBlockLayout,
imagelessFramebuffer,
uniformBufferStandardLayout,
shaderSubgroupExtendedTypes,
separateDepthStencilLayouts,
hostQueryReset,
timelineSemaphore,
bufferDeviceAddress,
bufferDeviceAddressCaptureReplay,
bufferDeviceAddressMultiDevice,
vulkanMemoryModel,
vulkanMemoryModelDeviceScope,
vulkanMemoryModelAvailabilityVisibilityChains,
shaderOutputViewportIndex,
shaderOutputLayer,
subgroupBroadcastDynamicId);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceVulkan12Features const &) const = default;
#else
bool operator==(PhysicalDeviceVulkan12Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (samplerMirrorClampToEdge == rhs.samplerMirrorClampToEdge) &&
(drawIndirectCount == rhs.drawIndirectCount) && (storageBuffer8BitAccess == rhs.storageBuffer8BitAccess) &&
(uniformAndStorageBuffer8BitAccess == rhs.uniformAndStorageBuffer8BitAccess) && (storagePushConstant8 == rhs.storagePushConstant8) &&
(shaderBufferInt64Atomics == rhs.shaderBufferInt64Atomics) && (shaderSharedInt64Atomics == rhs.shaderSharedInt64Atomics) &&
(shaderFloat16 == rhs.shaderFloat16) && (shaderInt8 == rhs.shaderInt8) && (descriptorIndexing == rhs.descriptorIndexing) &&
(shaderInputAttachmentArrayDynamicIndexing == rhs.shaderInputAttachmentArrayDynamicIndexing) &&
(shaderUniformTexelBufferArrayDynamicIndexing == rhs.shaderUniformTexelBufferArrayDynamicIndexing) &&
(shaderStorageTexelBufferArrayDynamicIndexing == rhs.shaderStorageTexelBufferArrayDynamicIndexing) &&
(shaderUniformBufferArrayNonUniformIndexing == rhs.shaderUniformBufferArrayNonUniformIndexing) &&
(shaderSampledImageArrayNonUniformIndexing == rhs.shaderSampledImageArrayNonUniformIndexing) &&
(shaderStorageBufferArrayNonUniformIndexing == rhs.shaderStorageBufferArrayNonUniformIndexing) &&
(shaderStorageImageArrayNonUniformIndexing == rhs.shaderStorageImageArrayNonUniformIndexing) &&
(shaderInputAttachmentArrayNonUniformIndexing == rhs.shaderInputAttachmentArrayNonUniformIndexing) &&
(shaderUniformTexelBufferArrayNonUniformIndexing == rhs.shaderUniformTexelBufferArrayNonUniformIndexing) &&
(shaderStorageTexelBufferArrayNonUniformIndexing == rhs.shaderStorageTexelBufferArrayNonUniformIndexing) &&
(descriptorBindingUniformBufferUpdateAfterBind == rhs.descriptorBindingUniformBufferUpdateAfterBind) &&
(descriptorBindingSampledImageUpdateAfterBind == rhs.descriptorBindingSampledImageUpdateAfterBind) &&
(descriptorBindingStorageImageUpdateAfterBind == rhs.descriptorBindingStorageImageUpdateAfterBind) &&
(descriptorBindingStorageBufferUpdateAfterBind == rhs.descriptorBindingStorageBufferUpdateAfterBind) &&
(descriptorBindingUniformTexelBufferUpdateAfterBind == rhs.descriptorBindingUniformTexelBufferUpdateAfterBind) &&
(descriptorBindingStorageTexelBufferUpdateAfterBind == rhs.descriptorBindingStorageTexelBufferUpdateAfterBind) &&
(descriptorBindingUpdateUnusedWhilePending == rhs.descriptorBindingUpdateUnusedWhilePending) &&
(descriptorBindingPartiallyBound == rhs.descriptorBindingPartiallyBound) &&
(descriptorBindingVariableDescriptorCount == rhs.descriptorBindingVariableDescriptorCount) &&
(runtimeDescriptorArray == rhs.runtimeDescriptorArray) && (samplerFilterMinmax == rhs.samplerFilterMinmax) &&
(scalarBlockLayout == rhs.scalarBlockLayout) && (imagelessFramebuffer == rhs.imagelessFramebuffer) &&
(uniformBufferStandardLayout == rhs.uniformBufferStandardLayout) && (shaderSubgroupExtendedTypes == rhs.shaderSubgroupExtendedTypes) &&
(separateDepthStencilLayouts == rhs.separateDepthStencilLayouts) && (hostQueryReset == rhs.hostQueryReset) &&
(timelineSemaphore == rhs.timelineSemaphore) && (bufferDeviceAddress == rhs.bufferDeviceAddress) &&
(bufferDeviceAddressCaptureReplay == rhs.bufferDeviceAddressCaptureReplay) &&
(bufferDeviceAddressMultiDevice == rhs.bufferDeviceAddressMultiDevice) && (vulkanMemoryModel == rhs.vulkanMemoryModel) &&
(vulkanMemoryModelDeviceScope == rhs.vulkanMemoryModelDeviceScope) &&
(vulkanMemoryModelAvailabilityVisibilityChains == rhs.vulkanMemoryModelAvailabilityVisibilityChains) &&
(shaderOutputViewportIndex == rhs.shaderOutputViewportIndex) && (shaderOutputLayer == rhs.shaderOutputLayer) &&
(subgroupBroadcastDynamicId == rhs.subgroupBroadcastDynamicId);
# endif
}
bool operator!=(PhysicalDeviceVulkan12Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan12Features;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 samplerMirrorClampToEdge = {};
VULKAN_HPP_NAMESPACE::Bool32 drawIndirectCount = {};
VULKAN_HPP_NAMESPACE::Bool32 storageBuffer8BitAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 uniformAndStorageBuffer8BitAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 storagePushConstant8 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderBufferInt64Atomics = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSharedInt64Atomics = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderFloat16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderInt8 = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayDynamicIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayDynamicIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayDynamicIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformTexelBufferArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageTexelBufferArrayNonUniformIndexing = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformBufferUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingSampledImageUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageImageUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageBufferUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUniformTexelBufferUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingStorageTexelBufferUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingUpdateUnusedWhilePending = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingPartiallyBound = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingVariableDescriptorCount = {};
VULKAN_HPP_NAMESPACE::Bool32 runtimeDescriptorArray = {};
VULKAN_HPP_NAMESPACE::Bool32 samplerFilterMinmax = {};
VULKAN_HPP_NAMESPACE::Bool32 scalarBlockLayout = {};
VULKAN_HPP_NAMESPACE::Bool32 imagelessFramebuffer = {};
VULKAN_HPP_NAMESPACE::Bool32 uniformBufferStandardLayout = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSubgroupExtendedTypes = {};
VULKAN_HPP_NAMESPACE::Bool32 separateDepthStencilLayouts = {};
VULKAN_HPP_NAMESPACE::Bool32 hostQueryReset = {};
VULKAN_HPP_NAMESPACE::Bool32 timelineSemaphore = {};
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddress = {};
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressCaptureReplay = {};
VULKAN_HPP_NAMESPACE::Bool32 bufferDeviceAddressMultiDevice = {};
VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel = {};
VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope = {};
VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderOutputViewportIndex = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderOutputLayer = {};
VULKAN_HPP_NAMESPACE::Bool32 subgroupBroadcastDynamicId = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan12Features) == sizeof(VkPhysicalDeviceVulkan12Features),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan12Features>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan12Features>::value,
"PhysicalDeviceVulkan12Features is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan12Features>
{
using Type = PhysicalDeviceVulkan12Features;
};
struct PhysicalDeviceVulkan12Properties
{
using NativeType = VkPhysicalDeviceVulkan12Properties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan12Properties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Properties(
VULKAN_HPP_NAMESPACE::DriverId driverID_ = VULKAN_HPP_NAMESPACE::DriverId::eAmdProprietary,
std::array<char, VK_MAX_DRIVER_NAME_SIZE> const &driverName_ = {},
std::array<char, VK_MAX_DRIVER_INFO_SIZE> const &driverInfo_ = {},
VULKAN_HPP_NAMESPACE::ConformanceVersion conformanceVersion_ = {},
VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence denormBehaviorIndependence_ = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly,
VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence roundingModeIndependence_ = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly,
VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat32_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat64_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat32_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat64_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat32_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat64_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat32_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat64_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat16_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat32_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat64_ = {},
uint32_t maxUpdateAfterBindDescriptorsInAllPools_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexingNative_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexingNative_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexingNative_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexingNative_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexingNative_ = {},
VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccessUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 quadDivergentImplicitLod_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindSamplers_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments_ = {},
uint32_t maxPerStageUpdateAfterBindResources_ = {},
uint32_t maxDescriptorSetUpdateAfterBindSamplers_ = {},
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers_ = {},
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic_ = {},
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers_ = {},
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic_ = {},
uint32_t maxDescriptorSetUpdateAfterBindSampledImages_ = {},
uint32_t maxDescriptorSetUpdateAfterBindStorageImages_ = {},
uint32_t maxDescriptorSetUpdateAfterBindInputAttachments_ = {},
VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedDepthResolveModes_ = {},
VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedStencilResolveModes_ = {},
VULKAN_HPP_NAMESPACE::Bool32 independentResolveNone_ = {},
VULKAN_HPP_NAMESPACE::Bool32 independentResolve_ = {},
VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxSingleComponentFormats_ = {},
VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxImageComponentMapping_ = {},
uint64_t maxTimelineSemaphoreValueDifference_ = {},
VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferIntegerColorSampleCounts_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
driverID(driverID_),
driverName(driverName_),
driverInfo(driverInfo_),
conformanceVersion(conformanceVersion_),
denormBehaviorIndependence(denormBehaviorIndependence_),
roundingModeIndependence(roundingModeIndependence_),
shaderSignedZeroInfNanPreserveFloat16(shaderSignedZeroInfNanPreserveFloat16_),
shaderSignedZeroInfNanPreserveFloat32(shaderSignedZeroInfNanPreserveFloat32_),
shaderSignedZeroInfNanPreserveFloat64(shaderSignedZeroInfNanPreserveFloat64_),
shaderDenormPreserveFloat16(shaderDenormPreserveFloat16_),
shaderDenormPreserveFloat32(shaderDenormPreserveFloat32_),
shaderDenormPreserveFloat64(shaderDenormPreserveFloat64_),
shaderDenormFlushToZeroFloat16(shaderDenormFlushToZeroFloat16_),
shaderDenormFlushToZeroFloat32(shaderDenormFlushToZeroFloat32_),
shaderDenormFlushToZeroFloat64(shaderDenormFlushToZeroFloat64_),
shaderRoundingModeRTEFloat16(shaderRoundingModeRTEFloat16_),
shaderRoundingModeRTEFloat32(shaderRoundingModeRTEFloat32_),
shaderRoundingModeRTEFloat64(shaderRoundingModeRTEFloat64_),
shaderRoundingModeRTZFloat16(shaderRoundingModeRTZFloat16_),
shaderRoundingModeRTZFloat32(shaderRoundingModeRTZFloat32_),
shaderRoundingModeRTZFloat64(shaderRoundingModeRTZFloat64_),
maxUpdateAfterBindDescriptorsInAllPools(maxUpdateAfterBindDescriptorsInAllPools_),
shaderUniformBufferArrayNonUniformIndexingNative(shaderUniformBufferArrayNonUniformIndexingNative_),
shaderSampledImageArrayNonUniformIndexingNative(shaderSampledImageArrayNonUniformIndexingNative_),
shaderStorageBufferArrayNonUniformIndexingNative(shaderStorageBufferArrayNonUniformIndexingNative_),
shaderStorageImageArrayNonUniformIndexingNative(shaderStorageImageArrayNonUniformIndexingNative_),
shaderInputAttachmentArrayNonUniformIndexingNative(shaderInputAttachmentArrayNonUniformIndexingNative_),
robustBufferAccessUpdateAfterBind(robustBufferAccessUpdateAfterBind_),
quadDivergentImplicitLod(quadDivergentImplicitLod_),
maxPerStageDescriptorUpdateAfterBindSamplers(maxPerStageDescriptorUpdateAfterBindSamplers_),
maxPerStageDescriptorUpdateAfterBindUniformBuffers(maxPerStageDescriptorUpdateAfterBindUniformBuffers_),
maxPerStageDescriptorUpdateAfterBindStorageBuffers(maxPerStageDescriptorUpdateAfterBindStorageBuffers_),
maxPerStageDescriptorUpdateAfterBindSampledImages(maxPerStageDescriptorUpdateAfterBindSampledImages_),
maxPerStageDescriptorUpdateAfterBindStorageImages(maxPerStageDescriptorUpdateAfterBindStorageImages_),
maxPerStageDescriptorUpdateAfterBindInputAttachments(maxPerStageDescriptorUpdateAfterBindInputAttachments_),
maxPerStageUpdateAfterBindResources(maxPerStageUpdateAfterBindResources_),
maxDescriptorSetUpdateAfterBindSamplers(maxDescriptorSetUpdateAfterBindSamplers_),
maxDescriptorSetUpdateAfterBindUniformBuffers(maxDescriptorSetUpdateAfterBindUniformBuffers_),
maxDescriptorSetUpdateAfterBindUniformBuffersDynamic(maxDescriptorSetUpdateAfterBindUniformBuffersDynamic_),
maxDescriptorSetUpdateAfterBindStorageBuffers(maxDescriptorSetUpdateAfterBindStorageBuffers_),
maxDescriptorSetUpdateAfterBindStorageBuffersDynamic(maxDescriptorSetUpdateAfterBindStorageBuffersDynamic_),
maxDescriptorSetUpdateAfterBindSampledImages(maxDescriptorSetUpdateAfterBindSampledImages_),
maxDescriptorSetUpdateAfterBindStorageImages(maxDescriptorSetUpdateAfterBindStorageImages_),
maxDescriptorSetUpdateAfterBindInputAttachments(maxDescriptorSetUpdateAfterBindInputAttachments_),
supportedDepthResolveModes(supportedDepthResolveModes_),
supportedStencilResolveModes(supportedStencilResolveModes_),
independentResolveNone(independentResolveNone_),
independentResolve(independentResolve_),
filterMinmaxSingleComponentFormats(filterMinmaxSingleComponentFormats_),
filterMinmaxImageComponentMapping(filterMinmaxImageComponentMapping_),
maxTimelineSemaphoreValueDifference(maxTimelineSemaphoreValueDifference_),
framebufferIntegerColorSampleCounts(framebufferIntegerColorSampleCounts_)
{
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan12Properties(PhysicalDeviceVulkan12Properties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkan12Properties(VkPhysicalDeviceVulkan12Properties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceVulkan12Properties(*reinterpret_cast<PhysicalDeviceVulkan12Properties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceVulkan12Properties &operator=(PhysicalDeviceVulkan12Properties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkan12Properties &operator=(VkPhysicalDeviceVulkan12Properties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan12Properties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceVulkan12Properties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceVulkan12Properties *>(this);
}
explicit operator VkPhysicalDeviceVulkan12Properties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceVulkan12Properties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::DriverId const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_NAME_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_INFO_SIZE> const &,
VULKAN_HPP_NAMESPACE::ConformanceVersion const &,
VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence const &,
VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ResolveModeFlags const &,
VULKAN_HPP_NAMESPACE::ResolveModeFlags const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint64_t const &,
VULKAN_HPP_NAMESPACE::SampleCountFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
driverID,
driverName,
driverInfo,
conformanceVersion,
denormBehaviorIndependence,
roundingModeIndependence,
shaderSignedZeroInfNanPreserveFloat16,
shaderSignedZeroInfNanPreserveFloat32,
shaderSignedZeroInfNanPreserveFloat64,
shaderDenormPreserveFloat16,
shaderDenormPreserveFloat32,
shaderDenormPreserveFloat64,
shaderDenormFlushToZeroFloat16,
shaderDenormFlushToZeroFloat32,
shaderDenormFlushToZeroFloat64,
shaderRoundingModeRTEFloat16,
shaderRoundingModeRTEFloat32,
shaderRoundingModeRTEFloat64,
shaderRoundingModeRTZFloat16,
shaderRoundingModeRTZFloat32,
shaderRoundingModeRTZFloat64,
maxUpdateAfterBindDescriptorsInAllPools,
shaderUniformBufferArrayNonUniformIndexingNative,
shaderSampledImageArrayNonUniformIndexingNative,
shaderStorageBufferArrayNonUniformIndexingNative,
shaderStorageImageArrayNonUniformIndexingNative,
shaderInputAttachmentArrayNonUniformIndexingNative,
robustBufferAccessUpdateAfterBind,
quadDivergentImplicitLod,
maxPerStageDescriptorUpdateAfterBindSamplers,
maxPerStageDescriptorUpdateAfterBindUniformBuffers,
maxPerStageDescriptorUpdateAfterBindStorageBuffers,
maxPerStageDescriptorUpdateAfterBindSampledImages,
maxPerStageDescriptorUpdateAfterBindStorageImages,
maxPerStageDescriptorUpdateAfterBindInputAttachments,
maxPerStageUpdateAfterBindResources,
maxDescriptorSetUpdateAfterBindSamplers,
maxDescriptorSetUpdateAfterBindUniformBuffers,
maxDescriptorSetUpdateAfterBindUniformBuffersDynamic,
maxDescriptorSetUpdateAfterBindStorageBuffers,
maxDescriptorSetUpdateAfterBindStorageBuffersDynamic,
maxDescriptorSetUpdateAfterBindSampledImages,
maxDescriptorSetUpdateAfterBindStorageImages,
maxDescriptorSetUpdateAfterBindInputAttachments,
supportedDepthResolveModes,
supportedStencilResolveModes,
independentResolveNone,
independentResolve,
filterMinmaxSingleComponentFormats,
filterMinmaxImageComponentMapping,
maxTimelineSemaphoreValueDifference,
framebufferIntegerColorSampleCounts);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceVulkan12Properties const &) const = default;
#else
bool operator==(PhysicalDeviceVulkan12Properties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (driverID == rhs.driverID) && (driverName == rhs.driverName) &&
(driverInfo == rhs.driverInfo) && (conformanceVersion == rhs.conformanceVersion) &&
(denormBehaviorIndependence == rhs.denormBehaviorIndependence) && (roundingModeIndependence == rhs.roundingModeIndependence) &&
(shaderSignedZeroInfNanPreserveFloat16 == rhs.shaderSignedZeroInfNanPreserveFloat16) &&
(shaderSignedZeroInfNanPreserveFloat32 == rhs.shaderSignedZeroInfNanPreserveFloat32) &&
(shaderSignedZeroInfNanPreserveFloat64 == rhs.shaderSignedZeroInfNanPreserveFloat64) &&
(shaderDenormPreserveFloat16 == rhs.shaderDenormPreserveFloat16) && (shaderDenormPreserveFloat32 == rhs.shaderDenormPreserveFloat32) &&
(shaderDenormPreserveFloat64 == rhs.shaderDenormPreserveFloat64) && (shaderDenormFlushToZeroFloat16 == rhs.shaderDenormFlushToZeroFloat16) &&
(shaderDenormFlushToZeroFloat32 == rhs.shaderDenormFlushToZeroFloat32) &&
(shaderDenormFlushToZeroFloat64 == rhs.shaderDenormFlushToZeroFloat64) && (shaderRoundingModeRTEFloat16 == rhs.shaderRoundingModeRTEFloat16) &&
(shaderRoundingModeRTEFloat32 == rhs.shaderRoundingModeRTEFloat32) && (shaderRoundingModeRTEFloat64 == rhs.shaderRoundingModeRTEFloat64) &&
(shaderRoundingModeRTZFloat16 == rhs.shaderRoundingModeRTZFloat16) && (shaderRoundingModeRTZFloat32 == rhs.shaderRoundingModeRTZFloat32) &&
(shaderRoundingModeRTZFloat64 == rhs.shaderRoundingModeRTZFloat64) &&
(maxUpdateAfterBindDescriptorsInAllPools == rhs.maxUpdateAfterBindDescriptorsInAllPools) &&
(shaderUniformBufferArrayNonUniformIndexingNative == rhs.shaderUniformBufferArrayNonUniformIndexingNative) &&
(shaderSampledImageArrayNonUniformIndexingNative == rhs.shaderSampledImageArrayNonUniformIndexingNative) &&
(shaderStorageBufferArrayNonUniformIndexingNative == rhs.shaderStorageBufferArrayNonUniformIndexingNative) &&
(shaderStorageImageArrayNonUniformIndexingNative == rhs.shaderStorageImageArrayNonUniformIndexingNative) &&
(shaderInputAttachmentArrayNonUniformIndexingNative == rhs.shaderInputAttachmentArrayNonUniformIndexingNative) &&
(robustBufferAccessUpdateAfterBind == rhs.robustBufferAccessUpdateAfterBind) && (quadDivergentImplicitLod == rhs.quadDivergentImplicitLod) &&
(maxPerStageDescriptorUpdateAfterBindSamplers == rhs.maxPerStageDescriptorUpdateAfterBindSamplers) &&
(maxPerStageDescriptorUpdateAfterBindUniformBuffers == rhs.maxPerStageDescriptorUpdateAfterBindUniformBuffers) &&
(maxPerStageDescriptorUpdateAfterBindStorageBuffers == rhs.maxPerStageDescriptorUpdateAfterBindStorageBuffers) &&
(maxPerStageDescriptorUpdateAfterBindSampledImages == rhs.maxPerStageDescriptorUpdateAfterBindSampledImages) &&
(maxPerStageDescriptorUpdateAfterBindStorageImages == rhs.maxPerStageDescriptorUpdateAfterBindStorageImages) &&
(maxPerStageDescriptorUpdateAfterBindInputAttachments == rhs.maxPerStageDescriptorUpdateAfterBindInputAttachments) &&
(maxPerStageUpdateAfterBindResources == rhs.maxPerStageUpdateAfterBindResources) &&
(maxDescriptorSetUpdateAfterBindSamplers == rhs.maxDescriptorSetUpdateAfterBindSamplers) &&
(maxDescriptorSetUpdateAfterBindUniformBuffers == rhs.maxDescriptorSetUpdateAfterBindUniformBuffers) &&
(maxDescriptorSetUpdateAfterBindUniformBuffersDynamic == rhs.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic) &&
(maxDescriptorSetUpdateAfterBindStorageBuffers == rhs.maxDescriptorSetUpdateAfterBindStorageBuffers) &&
(maxDescriptorSetUpdateAfterBindStorageBuffersDynamic == rhs.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic) &&
(maxDescriptorSetUpdateAfterBindSampledImages == rhs.maxDescriptorSetUpdateAfterBindSampledImages) &&
(maxDescriptorSetUpdateAfterBindStorageImages == rhs.maxDescriptorSetUpdateAfterBindStorageImages) &&
(maxDescriptorSetUpdateAfterBindInputAttachments == rhs.maxDescriptorSetUpdateAfterBindInputAttachments) &&
(supportedDepthResolveModes == rhs.supportedDepthResolveModes) && (supportedStencilResolveModes == rhs.supportedStencilResolveModes) &&
(independentResolveNone == rhs.independentResolveNone) && (independentResolve == rhs.independentResolve) &&
(filterMinmaxSingleComponentFormats == rhs.filterMinmaxSingleComponentFormats) &&
(filterMinmaxImageComponentMapping == rhs.filterMinmaxImageComponentMapping) &&
(maxTimelineSemaphoreValueDifference == rhs.maxTimelineSemaphoreValueDifference) &&
(framebufferIntegerColorSampleCounts == rhs.framebufferIntegerColorSampleCounts);
# endif
}
bool operator!=(PhysicalDeviceVulkan12Properties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan12Properties;
void *pNext = {};
VULKAN_HPP_NAMESPACE::DriverId driverID = VULKAN_HPP_NAMESPACE::DriverId::eAmdProprietary;
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_NAME_SIZE> driverName = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DRIVER_INFO_SIZE> driverInfo = {};
VULKAN_HPP_NAMESPACE::ConformanceVersion conformanceVersion = {};
VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence denormBehaviorIndependence = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly;
VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence roundingModeIndependence = VULKAN_HPP_NAMESPACE::ShaderFloatControlsIndependence::e32BitOnly;
VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat32 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSignedZeroInfNanPreserveFloat64 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat32 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormPreserveFloat64 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat32 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDenormFlushToZeroFloat64 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat32 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTEFloat64 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat16 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat32 = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderRoundingModeRTZFloat64 = {};
uint32_t maxUpdateAfterBindDescriptorsInAllPools = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderUniformBufferArrayNonUniformIndexingNative = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderSampledImageArrayNonUniformIndexingNative = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageBufferArrayNonUniformIndexingNative = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderStorageImageArrayNonUniformIndexingNative = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderInputAttachmentArrayNonUniformIndexingNative = {};
VULKAN_HPP_NAMESPACE::Bool32 robustBufferAccessUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 quadDivergentImplicitLod = {};
uint32_t maxPerStageDescriptorUpdateAfterBindSamplers = {};
uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers = {};
uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers = {};
uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages = {};
uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages = {};
uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments = {};
uint32_t maxPerStageUpdateAfterBindResources = {};
uint32_t maxDescriptorSetUpdateAfterBindSamplers = {};
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers = {};
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = {};
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers = {};
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = {};
uint32_t maxDescriptorSetUpdateAfterBindSampledImages = {};
uint32_t maxDescriptorSetUpdateAfterBindStorageImages = {};
uint32_t maxDescriptorSetUpdateAfterBindInputAttachments = {};
VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedDepthResolveModes = {};
VULKAN_HPP_NAMESPACE::ResolveModeFlags supportedStencilResolveModes = {};
VULKAN_HPP_NAMESPACE::Bool32 independentResolveNone = {};
VULKAN_HPP_NAMESPACE::Bool32 independentResolve = {};
VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxSingleComponentFormats = {};
VULKAN_HPP_NAMESPACE::Bool32 filterMinmaxImageComponentMapping = {};
uint64_t maxTimelineSemaphoreValueDifference = {};
VULKAN_HPP_NAMESPACE::SampleCountFlags framebufferIntegerColorSampleCounts = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan12Properties) == sizeof(VkPhysicalDeviceVulkan12Properties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan12Properties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan12Properties>::value,
"PhysicalDeviceVulkan12Properties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan12Properties>
{
using Type = PhysicalDeviceVulkan12Properties;
};
struct PhysicalDeviceVulkan13Features
{
using NativeType = VkPhysicalDeviceVulkan13Features;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan13Features;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkan13Features(VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 inlineUniformBlock_ = {},
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingInlineUniformBlockUpdateAfterBind_ = {},
VULKAN_HPP_NAMESPACE::Bool32 pipelineCreationCacheControl_ = {},
VULKAN_HPP_NAMESPACE::Bool32 privateData_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderDemoteToHelperInvocation_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderTerminateInvocation_ = {},
VULKAN_HPP_NAMESPACE::Bool32 subgroupSizeControl_ = {},
VULKAN_HPP_NAMESPACE::Bool32 computeFullSubgroups_ = {},
VULKAN_HPP_NAMESPACE::Bool32 synchronization2_ = {},
VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_HDR_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderZeroInitializeWorkgroupMemory_ = {},
VULKAN_HPP_NAMESPACE::Bool32 dynamicRendering_ = {},
VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerDotProduct_ = {},
VULKAN_HPP_NAMESPACE::Bool32 maintenance4_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
robustImageAccess(robustImageAccess_),
inlineUniformBlock(inlineUniformBlock_),
descriptorBindingInlineUniformBlockUpdateAfterBind(descriptorBindingInlineUniformBlockUpdateAfterBind_),
pipelineCreationCacheControl(pipelineCreationCacheControl_),
privateData(privateData_),
shaderDemoteToHelperInvocation(shaderDemoteToHelperInvocation_),
shaderTerminateInvocation(shaderTerminateInvocation_),
subgroupSizeControl(subgroupSizeControl_),
computeFullSubgroups(computeFullSubgroups_),
synchronization2(synchronization2_),
textureCompressionASTC_HDR(textureCompressionASTC_HDR_),
shaderZeroInitializeWorkgroupMemory(shaderZeroInitializeWorkgroupMemory_),
dynamicRendering(dynamicRendering_),
shaderIntegerDotProduct(shaderIntegerDotProduct_),
maintenance4(maintenance4_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkan13Features(PhysicalDeviceVulkan13Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkan13Features(VkPhysicalDeviceVulkan13Features const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceVulkan13Features(*reinterpret_cast<PhysicalDeviceVulkan13Features const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceVulkan13Features &operator=(PhysicalDeviceVulkan13Features const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkan13Features &operator=(VkPhysicalDeviceVulkan13Features const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan13Features const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &setRobustImageAccess(VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess_) VULKAN_HPP_NOEXCEPT
{
robustImageAccess = robustImageAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &setInlineUniformBlock(VULKAN_HPP_NAMESPACE::Bool32 inlineUniformBlock_) VULKAN_HPP_NOEXCEPT
{
inlineUniformBlock = inlineUniformBlock_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &setDescriptorBindingInlineUniformBlockUpdateAfterBind(
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingInlineUniformBlockUpdateAfterBind_) VULKAN_HPP_NOEXCEPT
{
descriptorBindingInlineUniformBlockUpdateAfterBind = descriptorBindingInlineUniformBlockUpdateAfterBind_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &
setPipelineCreationCacheControl(VULKAN_HPP_NAMESPACE::Bool32 pipelineCreationCacheControl_) VULKAN_HPP_NOEXCEPT
{
pipelineCreationCacheControl = pipelineCreationCacheControl_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &setPrivateData(VULKAN_HPP_NAMESPACE::Bool32 privateData_) VULKAN_HPP_NOEXCEPT
{
privateData = privateData_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &
setShaderDemoteToHelperInvocation(VULKAN_HPP_NAMESPACE::Bool32 shaderDemoteToHelperInvocation_) VULKAN_HPP_NOEXCEPT
{
shaderDemoteToHelperInvocation = shaderDemoteToHelperInvocation_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &
setShaderTerminateInvocation(VULKAN_HPP_NAMESPACE::Bool32 shaderTerminateInvocation_) VULKAN_HPP_NOEXCEPT
{
shaderTerminateInvocation = shaderTerminateInvocation_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &setSubgroupSizeControl(VULKAN_HPP_NAMESPACE::Bool32 subgroupSizeControl_) VULKAN_HPP_NOEXCEPT
{
subgroupSizeControl = subgroupSizeControl_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &setComputeFullSubgroups(VULKAN_HPP_NAMESPACE::Bool32 computeFullSubgroups_) VULKAN_HPP_NOEXCEPT
{
computeFullSubgroups = computeFullSubgroups_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &setSynchronization2(VULKAN_HPP_NAMESPACE::Bool32 synchronization2_) VULKAN_HPP_NOEXCEPT
{
synchronization2 = synchronization2_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &
setTextureCompressionASTC_HDR(VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_HDR_) VULKAN_HPP_NOEXCEPT
{
textureCompressionASTC_HDR = textureCompressionASTC_HDR_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &
setShaderZeroInitializeWorkgroupMemory(VULKAN_HPP_NAMESPACE::Bool32 shaderZeroInitializeWorkgroupMemory_) VULKAN_HPP_NOEXCEPT
{
shaderZeroInitializeWorkgroupMemory = shaderZeroInitializeWorkgroupMemory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &setDynamicRendering(VULKAN_HPP_NAMESPACE::Bool32 dynamicRendering_) VULKAN_HPP_NOEXCEPT
{
dynamicRendering = dynamicRendering_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &
setShaderIntegerDotProduct(VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerDotProduct_) VULKAN_HPP_NOEXCEPT
{
shaderIntegerDotProduct = shaderIntegerDotProduct_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkan13Features &setMaintenance4(VULKAN_HPP_NAMESPACE::Bool32 maintenance4_) VULKAN_HPP_NOEXCEPT
{
maintenance4 = maintenance4_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceVulkan13Features const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceVulkan13Features *>(this);
}
explicit operator VkPhysicalDeviceVulkan13Features &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceVulkan13Features *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
robustImageAccess,
inlineUniformBlock,
descriptorBindingInlineUniformBlockUpdateAfterBind,
pipelineCreationCacheControl,
privateData,
shaderDemoteToHelperInvocation,
shaderTerminateInvocation,
subgroupSizeControl,
computeFullSubgroups,
synchronization2,
textureCompressionASTC_HDR,
shaderZeroInitializeWorkgroupMemory,
dynamicRendering,
shaderIntegerDotProduct,
maintenance4);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceVulkan13Features const &) const = default;
#else
bool operator==(PhysicalDeviceVulkan13Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (robustImageAccess == rhs.robustImageAccess) &&
(inlineUniformBlock == rhs.inlineUniformBlock) &&
(descriptorBindingInlineUniformBlockUpdateAfterBind == rhs.descriptorBindingInlineUniformBlockUpdateAfterBind) &&
(pipelineCreationCacheControl == rhs.pipelineCreationCacheControl) && (privateData == rhs.privateData) &&
(shaderDemoteToHelperInvocation == rhs.shaderDemoteToHelperInvocation) && (shaderTerminateInvocation == rhs.shaderTerminateInvocation) &&
(subgroupSizeControl == rhs.subgroupSizeControl) && (computeFullSubgroups == rhs.computeFullSubgroups) &&
(synchronization2 == rhs.synchronization2) && (textureCompressionASTC_HDR == rhs.textureCompressionASTC_HDR) &&
(shaderZeroInitializeWorkgroupMemory == rhs.shaderZeroInitializeWorkgroupMemory) && (dynamicRendering == rhs.dynamicRendering) &&
(shaderIntegerDotProduct == rhs.shaderIntegerDotProduct) && (maintenance4 == rhs.maintenance4);
# endif
}
bool operator!=(PhysicalDeviceVulkan13Features const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan13Features;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 robustImageAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 inlineUniformBlock = {};
VULKAN_HPP_NAMESPACE::Bool32 descriptorBindingInlineUniformBlockUpdateAfterBind = {};
VULKAN_HPP_NAMESPACE::Bool32 pipelineCreationCacheControl = {};
VULKAN_HPP_NAMESPACE::Bool32 privateData = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderDemoteToHelperInvocation = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderTerminateInvocation = {};
VULKAN_HPP_NAMESPACE::Bool32 subgroupSizeControl = {};
VULKAN_HPP_NAMESPACE::Bool32 computeFullSubgroups = {};
VULKAN_HPP_NAMESPACE::Bool32 synchronization2 = {};
VULKAN_HPP_NAMESPACE::Bool32 textureCompressionASTC_HDR = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderZeroInitializeWorkgroupMemory = {};
VULKAN_HPP_NAMESPACE::Bool32 dynamicRendering = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderIntegerDotProduct = {};
VULKAN_HPP_NAMESPACE::Bool32 maintenance4 = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan13Features) == sizeof(VkPhysicalDeviceVulkan13Features),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan13Features>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan13Features>::value,
"PhysicalDeviceVulkan13Features is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan13Features>
{
using Type = PhysicalDeviceVulkan13Features;
};
struct PhysicalDeviceVulkan13Properties
{
using NativeType = VkPhysicalDeviceVulkan13Properties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkan13Properties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PhysicalDeviceVulkan13Properties(uint32_t minSubgroupSize_ = {},
uint32_t maxSubgroupSize_ = {},
uint32_t maxComputeWorkgroupSubgroups_ = {},
VULKAN_HPP_NAMESPACE::ShaderStageFlags requiredSubgroupSizeStages_ = {},
uint32_t maxInlineUniformBlockSize_ = {},
uint32_t maxPerStageDescriptorInlineUniformBlocks_ = {},
uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_ = {},
uint32_t maxDescriptorSetInlineUniformBlocks_ = {},
uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks_ = {},
uint32_t maxInlineUniformTotalSize_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct8BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct8BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct8BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct4x8BitPackedUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct4x8BitPackedSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct16BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct16BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct16BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct32BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct32BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct32BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct64BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct64BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct64BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated_ = {},
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize storageTexelBufferOffsetAlignmentBytes_ = {},
VULKAN_HPP_NAMESPACE::Bool32 storageTexelBufferOffsetSingleTexelAlignment_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize uniformTexelBufferOffsetAlignmentBytes_ = {},
VULKAN_HPP_NAMESPACE::Bool32 uniformTexelBufferOffsetSingleTexelAlignment_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize maxBufferSize_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
minSubgroupSize(minSubgroupSize_),
maxSubgroupSize(maxSubgroupSize_),
maxComputeWorkgroupSubgroups(maxComputeWorkgroupSubgroups_),
requiredSubgroupSizeStages(requiredSubgroupSizeStages_),
maxInlineUniformBlockSize(maxInlineUniformBlockSize_),
maxPerStageDescriptorInlineUniformBlocks(maxPerStageDescriptorInlineUniformBlocks_),
maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks(maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_),
maxDescriptorSetInlineUniformBlocks(maxDescriptorSetInlineUniformBlocks_),
maxDescriptorSetUpdateAfterBindInlineUniformBlocks(maxDescriptorSetUpdateAfterBindInlineUniformBlocks_),
maxInlineUniformTotalSize(maxInlineUniformTotalSize_),
integerDotProduct8BitUnsignedAccelerated(integerDotProduct8BitUnsignedAccelerated_),
integerDotProduct8BitSignedAccelerated(integerDotProduct8BitSignedAccelerated_),
integerDotProduct8BitMixedSignednessAccelerated(integerDotProduct8BitMixedSignednessAccelerated_),
integerDotProduct4x8BitPackedUnsignedAccelerated(integerDotProduct4x8BitPackedUnsignedAccelerated_),
integerDotProduct4x8BitPackedSignedAccelerated(integerDotProduct4x8BitPackedSignedAccelerated_),
integerDotProduct4x8BitPackedMixedSignednessAccelerated(integerDotProduct4x8BitPackedMixedSignednessAccelerated_),
integerDotProduct16BitUnsignedAccelerated(integerDotProduct16BitUnsignedAccelerated_),
integerDotProduct16BitSignedAccelerated(integerDotProduct16BitSignedAccelerated_),
integerDotProduct16BitMixedSignednessAccelerated(integerDotProduct16BitMixedSignednessAccelerated_),
integerDotProduct32BitUnsignedAccelerated(integerDotProduct32BitUnsignedAccelerated_),
integerDotProduct32BitSignedAccelerated(integerDotProduct32BitSignedAccelerated_),
integerDotProduct32BitMixedSignednessAccelerated(integerDotProduct32BitMixedSignednessAccelerated_),
integerDotProduct64BitUnsignedAccelerated(integerDotProduct64BitUnsignedAccelerated_),
integerDotProduct64BitSignedAccelerated(integerDotProduct64BitSignedAccelerated_),
integerDotProduct64BitMixedSignednessAccelerated(integerDotProduct64BitMixedSignednessAccelerated_),
integerDotProductAccumulatingSaturating8BitUnsignedAccelerated(integerDotProductAccumulatingSaturating8BitUnsignedAccelerated_),
integerDotProductAccumulatingSaturating8BitSignedAccelerated(integerDotProductAccumulatingSaturating8BitSignedAccelerated_),
integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated(integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated_),
integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated(integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated_),
integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated(integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated_),
integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated(
integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated_),
integerDotProductAccumulatingSaturating16BitUnsignedAccelerated(integerDotProductAccumulatingSaturating16BitUnsignedAccelerated_),
integerDotProductAccumulatingSaturating16BitSignedAccelerated(integerDotProductAccumulatingSaturating16BitSignedAccelerated_),
integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated(integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated_),
integerDotProductAccumulatingSaturating32BitUnsignedAccelerated(integerDotProductAccumulatingSaturating32BitUnsignedAccelerated_),
integerDotProductAccumulatingSaturating32BitSignedAccelerated(integerDotProductAccumulatingSaturating32BitSignedAccelerated_),
integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated(integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated_),
integerDotProductAccumulatingSaturating64BitUnsignedAccelerated(integerDotProductAccumulatingSaturating64BitUnsignedAccelerated_),
integerDotProductAccumulatingSaturating64BitSignedAccelerated(integerDotProductAccumulatingSaturating64BitSignedAccelerated_),
integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated(integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated_),
storageTexelBufferOffsetAlignmentBytes(storageTexelBufferOffsetAlignmentBytes_),
storageTexelBufferOffsetSingleTexelAlignment(storageTexelBufferOffsetSingleTexelAlignment_),
uniformTexelBufferOffsetAlignmentBytes(uniformTexelBufferOffsetAlignmentBytes_),
uniformTexelBufferOffsetSingleTexelAlignment(uniformTexelBufferOffsetSingleTexelAlignment_),
maxBufferSize(maxBufferSize_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkan13Properties(PhysicalDeviceVulkan13Properties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkan13Properties(VkPhysicalDeviceVulkan13Properties const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceVulkan13Properties(*reinterpret_cast<PhysicalDeviceVulkan13Properties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceVulkan13Properties &operator=(PhysicalDeviceVulkan13Properties const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkan13Properties &operator=(VkPhysicalDeviceVulkan13Properties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan13Properties const *>(&rhs);
return *this;
}
explicit operator VkPhysicalDeviceVulkan13Properties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceVulkan13Properties *>(this);
}
explicit operator VkPhysicalDeviceVulkan13Properties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceVulkan13Properties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ShaderStageFlags const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
minSubgroupSize,
maxSubgroupSize,
maxComputeWorkgroupSubgroups,
requiredSubgroupSizeStages,
maxInlineUniformBlockSize,
maxPerStageDescriptorInlineUniformBlocks,
maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks,
maxDescriptorSetInlineUniformBlocks,
maxDescriptorSetUpdateAfterBindInlineUniformBlocks,
maxInlineUniformTotalSize,
integerDotProduct8BitUnsignedAccelerated,
integerDotProduct8BitSignedAccelerated,
integerDotProduct8BitMixedSignednessAccelerated,
integerDotProduct4x8BitPackedUnsignedAccelerated,
integerDotProduct4x8BitPackedSignedAccelerated,
integerDotProduct4x8BitPackedMixedSignednessAccelerated,
integerDotProduct16BitUnsignedAccelerated,
integerDotProduct16BitSignedAccelerated,
integerDotProduct16BitMixedSignednessAccelerated,
integerDotProduct32BitUnsignedAccelerated,
integerDotProduct32BitSignedAccelerated,
integerDotProduct32BitMixedSignednessAccelerated,
integerDotProduct64BitUnsignedAccelerated,
integerDotProduct64BitSignedAccelerated,
integerDotProduct64BitMixedSignednessAccelerated,
integerDotProductAccumulatingSaturating8BitUnsignedAccelerated,
integerDotProductAccumulatingSaturating8BitSignedAccelerated,
integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated,
integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated,
integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated,
integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated,
integerDotProductAccumulatingSaturating16BitUnsignedAccelerated,
integerDotProductAccumulatingSaturating16BitSignedAccelerated,
integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated,
integerDotProductAccumulatingSaturating32BitUnsignedAccelerated,
integerDotProductAccumulatingSaturating32BitSignedAccelerated,
integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated,
integerDotProductAccumulatingSaturating64BitUnsignedAccelerated,
integerDotProductAccumulatingSaturating64BitSignedAccelerated,
integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated,
storageTexelBufferOffsetAlignmentBytes,
storageTexelBufferOffsetSingleTexelAlignment,
uniformTexelBufferOffsetAlignmentBytes,
uniformTexelBufferOffsetSingleTexelAlignment,
maxBufferSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceVulkan13Properties const &) const = default;
#else
bool operator==(PhysicalDeviceVulkan13Properties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (minSubgroupSize == rhs.minSubgroupSize) && (maxSubgroupSize == rhs.maxSubgroupSize) &&
(maxComputeWorkgroupSubgroups == rhs.maxComputeWorkgroupSubgroups) && (requiredSubgroupSizeStages == rhs.requiredSubgroupSizeStages) &&
(maxInlineUniformBlockSize == rhs.maxInlineUniformBlockSize) &&
(maxPerStageDescriptorInlineUniformBlocks == rhs.maxPerStageDescriptorInlineUniformBlocks) &&
(maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks == rhs.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks) &&
(maxDescriptorSetInlineUniformBlocks == rhs.maxDescriptorSetInlineUniformBlocks) &&
(maxDescriptorSetUpdateAfterBindInlineUniformBlocks == rhs.maxDescriptorSetUpdateAfterBindInlineUniformBlocks) &&
(maxInlineUniformTotalSize == rhs.maxInlineUniformTotalSize) &&
(integerDotProduct8BitUnsignedAccelerated == rhs.integerDotProduct8BitUnsignedAccelerated) &&
(integerDotProduct8BitSignedAccelerated == rhs.integerDotProduct8BitSignedAccelerated) &&
(integerDotProduct8BitMixedSignednessAccelerated == rhs.integerDotProduct8BitMixedSignednessAccelerated) &&
(integerDotProduct4x8BitPackedUnsignedAccelerated == rhs.integerDotProduct4x8BitPackedUnsignedAccelerated) &&
(integerDotProduct4x8BitPackedSignedAccelerated == rhs.integerDotProduct4x8BitPackedSignedAccelerated) &&
(integerDotProduct4x8BitPackedMixedSignednessAccelerated == rhs.integerDotProduct4x8BitPackedMixedSignednessAccelerated) &&
(integerDotProduct16BitUnsignedAccelerated == rhs.integerDotProduct16BitUnsignedAccelerated) &&
(integerDotProduct16BitSignedAccelerated == rhs.integerDotProduct16BitSignedAccelerated) &&
(integerDotProduct16BitMixedSignednessAccelerated == rhs.integerDotProduct16BitMixedSignednessAccelerated) &&
(integerDotProduct32BitUnsignedAccelerated == rhs.integerDotProduct32BitUnsignedAccelerated) &&
(integerDotProduct32BitSignedAccelerated == rhs.integerDotProduct32BitSignedAccelerated) &&
(integerDotProduct32BitMixedSignednessAccelerated == rhs.integerDotProduct32BitMixedSignednessAccelerated) &&
(integerDotProduct64BitUnsignedAccelerated == rhs.integerDotProduct64BitUnsignedAccelerated) &&
(integerDotProduct64BitSignedAccelerated == rhs.integerDotProduct64BitSignedAccelerated) &&
(integerDotProduct64BitMixedSignednessAccelerated == rhs.integerDotProduct64BitMixedSignednessAccelerated) &&
(integerDotProductAccumulatingSaturating8BitUnsignedAccelerated == rhs.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated) &&
(integerDotProductAccumulatingSaturating8BitSignedAccelerated == rhs.integerDotProductAccumulatingSaturating8BitSignedAccelerated) &&
(integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated ==
rhs.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated) &&
(integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated ==
rhs.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated) &&
(integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated ==
rhs.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated) &&
(integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated ==
rhs.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated) &&
(integerDotProductAccumulatingSaturating16BitUnsignedAccelerated == rhs.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated) &&
(integerDotProductAccumulatingSaturating16BitSignedAccelerated == rhs.integerDotProductAccumulatingSaturating16BitSignedAccelerated) &&
(integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated ==
rhs.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated) &&
(integerDotProductAccumulatingSaturating32BitUnsignedAccelerated == rhs.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated) &&
(integerDotProductAccumulatingSaturating32BitSignedAccelerated == rhs.integerDotProductAccumulatingSaturating32BitSignedAccelerated) &&
(integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated ==
rhs.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated) &&
(integerDotProductAccumulatingSaturating64BitUnsignedAccelerated == rhs.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated) &&
(integerDotProductAccumulatingSaturating64BitSignedAccelerated == rhs.integerDotProductAccumulatingSaturating64BitSignedAccelerated) &&
(integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated ==
rhs.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated) &&
(storageTexelBufferOffsetAlignmentBytes == rhs.storageTexelBufferOffsetAlignmentBytes) &&
(storageTexelBufferOffsetSingleTexelAlignment == rhs.storageTexelBufferOffsetSingleTexelAlignment) &&
(uniformTexelBufferOffsetAlignmentBytes == rhs.uniformTexelBufferOffsetAlignmentBytes) &&
(uniformTexelBufferOffsetSingleTexelAlignment == rhs.uniformTexelBufferOffsetSingleTexelAlignment) && (maxBufferSize == rhs.maxBufferSize);
# endif
}
bool operator!=(PhysicalDeviceVulkan13Properties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkan13Properties;
void *pNext = {};
uint32_t minSubgroupSize = {};
uint32_t maxSubgroupSize = {};
uint32_t maxComputeWorkgroupSubgroups = {};
VULKAN_HPP_NAMESPACE::ShaderStageFlags requiredSubgroupSizeStages = {};
uint32_t maxInlineUniformBlockSize = {};
uint32_t maxPerStageDescriptorInlineUniformBlocks = {};
uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = {};
uint32_t maxDescriptorSetInlineUniformBlocks = {};
uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks = {};
uint32_t maxInlineUniformTotalSize = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct8BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct8BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct8BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct4x8BitPackedUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct4x8BitPackedSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct16BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct16BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct16BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct32BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct32BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct32BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct64BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct64BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProduct64BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated = {};
VULKAN_HPP_NAMESPACE::Bool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated = {};
VULKAN_HPP_NAMESPACE::DeviceSize storageTexelBufferOffsetAlignmentBytes = {};
VULKAN_HPP_NAMESPACE::Bool32 storageTexelBufferOffsetSingleTexelAlignment = {};
VULKAN_HPP_NAMESPACE::DeviceSize uniformTexelBufferOffsetAlignmentBytes = {};
VULKAN_HPP_NAMESPACE::Bool32 uniformTexelBufferOffsetSingleTexelAlignment = {};
VULKAN_HPP_NAMESPACE::DeviceSize maxBufferSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan13Properties) == sizeof(VkPhysicalDeviceVulkan13Properties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan13Properties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkan13Properties>::value,
"PhysicalDeviceVulkan13Properties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceVulkan13Properties>
{
using Type = PhysicalDeviceVulkan13Properties;
};
struct PhysicalDeviceVulkanMemoryModelFeatures
{
using NativeType = VkPhysicalDeviceVulkanMemoryModelFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceVulkanMemoryModelFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkanMemoryModelFeatures(VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel_ = {},
VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope_ = {},
VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
vulkanMemoryModel(vulkanMemoryModel_),
vulkanMemoryModelDeviceScope(vulkanMemoryModelDeviceScope_),
vulkanMemoryModelAvailabilityVisibilityChains(vulkanMemoryModelAvailabilityVisibilityChains_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceVulkanMemoryModelFeatures(PhysicalDeviceVulkanMemoryModelFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkanMemoryModelFeatures(VkPhysicalDeviceVulkanMemoryModelFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceVulkanMemoryModelFeatures(*reinterpret_cast<PhysicalDeviceVulkanMemoryModelFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceVulkanMemoryModelFeatures &operator=(PhysicalDeviceVulkanMemoryModelFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceVulkanMemoryModelFeatures &operator=(VkPhysicalDeviceVulkanMemoryModelFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkanMemoryModelFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkanMemoryModelFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkanMemoryModelFeatures &
setVulkanMemoryModel(VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel_) VULKAN_HPP_NOEXCEPT
{
vulkanMemoryModel = vulkanMemoryModel_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkanMemoryModelFeatures &
setVulkanMemoryModelDeviceScope(VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope_) VULKAN_HPP_NOEXCEPT
{
vulkanMemoryModelDeviceScope = vulkanMemoryModelDeviceScope_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceVulkanMemoryModelFeatures &
setVulkanMemoryModelAvailabilityVisibilityChains(VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains_) VULKAN_HPP_NOEXCEPT
{
vulkanMemoryModelAvailabilityVisibilityChains = vulkanMemoryModelAvailabilityVisibilityChains_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceVulkanMemoryModelFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceVulkanMemoryModelFeatures *>(this);
}
explicit operator VkPhysicalDeviceVulkanMemoryModelFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceVulkanMemoryModelFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, vulkanMemoryModel, vulkanMemoryModelDeviceScope, vulkanMemoryModelAvailabilityVisibilityChains);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceVulkanMemoryModelFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceVulkanMemoryModelFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (vulkanMemoryModel == rhs.vulkanMemoryModel) &&
(vulkanMemoryModelDeviceScope == rhs.vulkanMemoryModelDeviceScope) &&
(vulkanMemoryModelAvailabilityVisibilityChains == rhs.vulkanMemoryModelAvailabilityVisibilityChains);
# endif
}
bool operator!=(PhysicalDeviceVulkanMemoryModelFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceVulkanMemoryModelFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModel = {};
VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelDeviceScope = {};
VULKAN_HPP_NAMESPACE::Bool32 vulkanMemoryModelAvailabilityVisibilityChains = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkanMemoryModelFeatures) == sizeof(VkPhysicalDeviceVulkanMemoryModelFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkanMemoryModelFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVulkanMemoryModelFeatures>::value,
"PhysicalDeviceVulkanMemoryModelFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceVulkanMemoryModelFeatures>
{
using Type = PhysicalDeviceVulkanMemoryModelFeatures;
};
using PhysicalDeviceVulkanMemoryModelFeaturesKHR = PhysicalDeviceVulkanMemoryModelFeatures;
struct PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR
{
using NativeType = VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout_ = {},
VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayoutScalarBlockLayout_ = {},
VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout8BitAccess_ = {},
VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout16BitAccess_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
workgroupMemoryExplicitLayout(workgroupMemoryExplicitLayout_),
workgroupMemoryExplicitLayoutScalarBlockLayout(workgroupMemoryExplicitLayoutScalarBlockLayout_),
workgroupMemoryExplicitLayout8BitAccess(workgroupMemoryExplicitLayout8BitAccess_),
workgroupMemoryExplicitLayout16BitAccess(workgroupMemoryExplicitLayout16BitAccess_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const &rhs)
VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(*reinterpret_cast<PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR &
operator=(PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR &
operator=(VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR &
setWorkgroupMemoryExplicitLayout(VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout_) VULKAN_HPP_NOEXCEPT
{
workgroupMemoryExplicitLayout = workgroupMemoryExplicitLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR &
setWorkgroupMemoryExplicitLayoutScalarBlockLayout(VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayoutScalarBlockLayout_) VULKAN_HPP_NOEXCEPT
{
workgroupMemoryExplicitLayoutScalarBlockLayout = workgroupMemoryExplicitLayoutScalarBlockLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR &
setWorkgroupMemoryExplicitLayout8BitAccess(VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout8BitAccess_) VULKAN_HPP_NOEXCEPT
{
workgroupMemoryExplicitLayout8BitAccess = workgroupMemoryExplicitLayout8BitAccess_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR &
setWorkgroupMemoryExplicitLayout16BitAccess(VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout16BitAccess_) VULKAN_HPP_NOEXCEPT
{
workgroupMemoryExplicitLayout16BitAccess = workgroupMemoryExplicitLayout16BitAccess_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR *>(this);
}
explicit operator VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
workgroupMemoryExplicitLayout,
workgroupMemoryExplicitLayoutScalarBlockLayout,
workgroupMemoryExplicitLayout8BitAccess,
workgroupMemoryExplicitLayout16BitAccess);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const &) const = default;
#else
bool operator==(PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (workgroupMemoryExplicitLayout == rhs.workgroupMemoryExplicitLayout) &&
(workgroupMemoryExplicitLayoutScalarBlockLayout == rhs.workgroupMemoryExplicitLayoutScalarBlockLayout) &&
(workgroupMemoryExplicitLayout8BitAccess == rhs.workgroupMemoryExplicitLayout8BitAccess) &&
(workgroupMemoryExplicitLayout16BitAccess == rhs.workgroupMemoryExplicitLayout16BitAccess);
# endif
}
bool operator!=(PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout = {};
VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayoutScalarBlockLayout = {};
VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout8BitAccess = {};
VULKAN_HPP_NAMESPACE::Bool32 workgroupMemoryExplicitLayout16BitAccess = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR) ==
sizeof(VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR>::value,
"PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR>
{
using Type = PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR;
};
struct PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT
{
using NativeType = VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 ycbcr2plane444Formats_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
ycbcr2plane444Formats(ycbcr2plane444Formats_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(*reinterpret_cast<PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT &operator=(PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT &operator=(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT &
setYcbcr2plane444Formats(VULKAN_HPP_NAMESPACE::Bool32 ycbcr2plane444Formats_) VULKAN_HPP_NOEXCEPT
{
ycbcr2plane444Formats = ycbcr2plane444Formats_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, ycbcr2plane444Formats);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (ycbcr2plane444Formats == rhs.ycbcr2plane444Formats);
# endif
}
bool operator!=(PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 ycbcr2plane444Formats = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT) ==
sizeof(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT>::value,
"PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT>
{
using Type = PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT;
};
struct PhysicalDeviceYcbcrImageArraysFeaturesEXT
{
using NativeType = VkPhysicalDeviceYcbcrImageArraysFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceYcbcrImageArraysFeaturesEXT(VULKAN_HPP_NAMESPACE::Bool32 ycbcrImageArrays_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
ycbcrImageArrays(ycbcrImageArrays_)
{
}
VULKAN_HPP_CONSTEXPR PhysicalDeviceYcbcrImageArraysFeaturesEXT(PhysicalDeviceYcbcrImageArraysFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceYcbcrImageArraysFeaturesEXT(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceYcbcrImageArraysFeaturesEXT(*reinterpret_cast<PhysicalDeviceYcbcrImageArraysFeaturesEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceYcbcrImageArraysFeaturesEXT &operator=(PhysicalDeviceYcbcrImageArraysFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceYcbcrImageArraysFeaturesEXT &operator=(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceYcbcrImageArraysFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceYcbcrImageArraysFeaturesEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceYcbcrImageArraysFeaturesEXT &
setYcbcrImageArrays(VULKAN_HPP_NAMESPACE::Bool32 ycbcrImageArrays_) VULKAN_HPP_NOEXCEPT
{
ycbcrImageArrays = ycbcrImageArrays_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceYcbcrImageArraysFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT *>(this);
}
explicit operator VkPhysicalDeviceYcbcrImageArraysFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceYcbcrImageArraysFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, ycbcrImageArrays);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceYcbcrImageArraysFeaturesEXT const &) const = default;
#else
bool operator==(PhysicalDeviceYcbcrImageArraysFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (ycbcrImageArrays == rhs.ycbcrImageArrays);
# endif
}
bool operator!=(PhysicalDeviceYcbcrImageArraysFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 ycbcrImageArrays = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceYcbcrImageArraysFeaturesEXT) == sizeof(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceYcbcrImageArraysFeaturesEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceYcbcrImageArraysFeaturesEXT>::value,
"PhysicalDeviceYcbcrImageArraysFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT>
{
using Type = PhysicalDeviceYcbcrImageArraysFeaturesEXT;
};
struct PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures
{
using NativeType = VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceZeroInitializeWorkgroupMemoryFeatures;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures(VULKAN_HPP_NAMESPACE::Bool32 shaderZeroInitializeWorkgroupMemory_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shaderZeroInitializeWorkgroupMemory(shaderZeroInitializeWorkgroupMemory_)
{
}
VULKAN_HPP_CONSTEXPR
PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures(PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures(VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures const &rhs) VULKAN_HPP_NOEXCEPT
: PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures(*reinterpret_cast<PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures &
operator=(PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures const &rhs) VULKAN_HPP_NOEXCEPT = default;
PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures &operator=(VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures &
setShaderZeroInitializeWorkgroupMemory(VULKAN_HPP_NAMESPACE::Bool32 shaderZeroInitializeWorkgroupMemory_) VULKAN_HPP_NOEXCEPT
{
shaderZeroInitializeWorkgroupMemory = shaderZeroInitializeWorkgroupMemory_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures *>(this);
}
explicit operator VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shaderZeroInitializeWorkgroupMemory);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures const &) const = default;
#else
bool operator==(PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shaderZeroInitializeWorkgroupMemory == rhs.shaderZeroInitializeWorkgroupMemory);
# endif
}
bool operator!=(PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceZeroInitializeWorkgroupMemoryFeatures;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shaderZeroInitializeWorkgroupMemory = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures) ==
sizeof(VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures>::value,
"PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePhysicalDeviceZeroInitializeWorkgroupMemoryFeatures>
{
using Type = PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures;
};
using PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR = PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures;
struct PipelineCacheCreateInfo
{
using NativeType = VkPipelineCacheCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCacheCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineCacheCreateInfo(VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags flags_ = {},
size_t initialDataSize_ = {},
const void *pInitialData_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
initialDataSize(initialDataSize_),
pInitialData(pInitialData_)
{
}
VULKAN_HPP_CONSTEXPR PipelineCacheCreateInfo(PipelineCacheCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCacheCreateInfo(VkPipelineCacheCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineCacheCreateInfo(*reinterpret_cast<PipelineCacheCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
PipelineCacheCreateInfo(VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &initialData_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, initialDataSize(initialData_.size() * sizeof(T))
, pInitialData(initialData_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineCacheCreateInfo &operator=(PipelineCacheCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCacheCreateInfo &operator=(VkPipelineCacheCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCacheCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineCacheCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCacheCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCacheCreateInfo &setInitialDataSize(size_t initialDataSize_) VULKAN_HPP_NOEXCEPT
{
initialDataSize = initialDataSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCacheCreateInfo &setPInitialData(const void *pInitialData_) VULKAN_HPP_NOEXCEPT
{
pInitialData = pInitialData_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
PipelineCacheCreateInfo &setInitialData(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &initialData_) VULKAN_HPP_NOEXCEPT
{
initialDataSize = initialData_.size() * sizeof(T);
pInitialData = initialData_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineCacheCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineCacheCreateInfo *>(this);
}
explicit operator VkPipelineCacheCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineCacheCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags const &,
size_t const &,
const void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, initialDataSize, pInitialData);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineCacheCreateInfo const &) const = default;
#else
bool operator==(PipelineCacheCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (initialDataSize == rhs.initialDataSize) &&
(pInitialData == rhs.pInitialData);
# endif
}
bool operator!=(PipelineCacheCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCacheCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineCacheCreateFlags flags = {};
size_t initialDataSize = {};
const void *pInitialData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineCacheCreateInfo) == sizeof(VkPipelineCacheCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineCacheCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineCacheCreateInfo>::value,
"PipelineCacheCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineCacheCreateInfo>
{
using Type = PipelineCacheCreateInfo;
};
struct PipelineCacheHeaderVersionOne
{
using NativeType = VkPipelineCacheHeaderVersionOne;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14
PipelineCacheHeaderVersionOne(uint32_t headerSize_ = {},
VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersion headerVersion_ = VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersion::eOne,
uint32_t vendorID_ = {},
uint32_t deviceID_ = {},
std::array<uint8_t, VK_UUID_SIZE> const &pipelineCacheUUID_ = {}) VULKAN_HPP_NOEXCEPT
: headerSize(headerSize_),
headerVersion(headerVersion_),
vendorID(vendorID_),
deviceID(deviceID_),
pipelineCacheUUID(pipelineCacheUUID_)
{
}
VULKAN_HPP_CONSTEXPR_14 PipelineCacheHeaderVersionOne(PipelineCacheHeaderVersionOne const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCacheHeaderVersionOne(VkPipelineCacheHeaderVersionOne const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineCacheHeaderVersionOne(*reinterpret_cast<PipelineCacheHeaderVersionOne const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineCacheHeaderVersionOne &operator=(PipelineCacheHeaderVersionOne const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCacheHeaderVersionOne &operator=(VkPipelineCacheHeaderVersionOne const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersionOne const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineCacheHeaderVersionOne &setHeaderSize(uint32_t headerSize_) VULKAN_HPP_NOEXCEPT
{
headerSize = headerSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCacheHeaderVersionOne &
setHeaderVersion(VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersion headerVersion_) VULKAN_HPP_NOEXCEPT
{
headerVersion = headerVersion_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCacheHeaderVersionOne &setVendorID(uint32_t vendorID_) VULKAN_HPP_NOEXCEPT
{
vendorID = vendorID_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCacheHeaderVersionOne &setDeviceID(uint32_t deviceID_) VULKAN_HPP_NOEXCEPT
{
deviceID = deviceID_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCacheHeaderVersionOne &setPipelineCacheUUID(std::array<uint8_t, VK_UUID_SIZE> pipelineCacheUUID_) VULKAN_HPP_NOEXCEPT
{
pipelineCacheUUID = pipelineCacheUUID_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineCacheHeaderVersionOne const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineCacheHeaderVersionOne *>(this);
}
explicit operator VkPipelineCacheHeaderVersionOne &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineCacheHeaderVersionOne *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &,
VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersion const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(headerSize, headerVersion, vendorID, deviceID, pipelineCacheUUID);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineCacheHeaderVersionOne const &) const = default;
#else
bool operator==(PipelineCacheHeaderVersionOne const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (headerSize == rhs.headerSize) && (headerVersion == rhs.headerVersion) && (vendorID == rhs.vendorID) && (deviceID == rhs.deviceID) &&
(pipelineCacheUUID == rhs.pipelineCacheUUID);
# endif
}
bool operator!=(PipelineCacheHeaderVersionOne const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t headerSize = {};
VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersion headerVersion = VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersion::eOne;
uint32_t vendorID = {};
uint32_t deviceID = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, VK_UUID_SIZE> pipelineCacheUUID = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersionOne) == sizeof(VkPipelineCacheHeaderVersionOne),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersionOne>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersionOne>::value,
"PipelineCacheHeaderVersionOne is not nothrow_move_constructible!");
struct PipelineColorBlendAdvancedStateCreateInfoEXT
{
using NativeType = VkPipelineColorBlendAdvancedStateCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineColorBlendAdvancedStateCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PipelineColorBlendAdvancedStateCreateInfoEXT(VULKAN_HPP_NAMESPACE::Bool32 srcPremultiplied_ = {},
VULKAN_HPP_NAMESPACE::Bool32 dstPremultiplied_ = {},
VULKAN_HPP_NAMESPACE::BlendOverlapEXT blendOverlap_ = VULKAN_HPP_NAMESPACE::BlendOverlapEXT::eUncorrelated,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcPremultiplied(srcPremultiplied_),
dstPremultiplied(dstPremultiplied_),
blendOverlap(blendOverlap_)
{
}
VULKAN_HPP_CONSTEXPR PipelineColorBlendAdvancedStateCreateInfoEXT(PipelineColorBlendAdvancedStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineColorBlendAdvancedStateCreateInfoEXT(VkPipelineColorBlendAdvancedStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineColorBlendAdvancedStateCreateInfoEXT(*reinterpret_cast<PipelineColorBlendAdvancedStateCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineColorBlendAdvancedStateCreateInfoEXT &operator=(PipelineColorBlendAdvancedStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineColorBlendAdvancedStateCreateInfoEXT &operator=(VkPipelineColorBlendAdvancedStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineColorBlendAdvancedStateCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAdvancedStateCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAdvancedStateCreateInfoEXT &
setSrcPremultiplied(VULKAN_HPP_NAMESPACE::Bool32 srcPremultiplied_) VULKAN_HPP_NOEXCEPT
{
srcPremultiplied = srcPremultiplied_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAdvancedStateCreateInfoEXT &
setDstPremultiplied(VULKAN_HPP_NAMESPACE::Bool32 dstPremultiplied_) VULKAN_HPP_NOEXCEPT
{
dstPremultiplied = dstPremultiplied_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorBlendAdvancedStateCreateInfoEXT &
setBlendOverlap(VULKAN_HPP_NAMESPACE::BlendOverlapEXT blendOverlap_) VULKAN_HPP_NOEXCEPT
{
blendOverlap = blendOverlap_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineColorBlendAdvancedStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineColorBlendAdvancedStateCreateInfoEXT *>(this);
}
explicit operator VkPipelineColorBlendAdvancedStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineColorBlendAdvancedStateCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::BlendOverlapEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcPremultiplied, dstPremultiplied, blendOverlap);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineColorBlendAdvancedStateCreateInfoEXT const &) const = default;
#else
bool operator==(PipelineColorBlendAdvancedStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcPremultiplied == rhs.srcPremultiplied) && (dstPremultiplied == rhs.dstPremultiplied) &&
(blendOverlap == rhs.blendOverlap);
# endif
}
bool operator!=(PipelineColorBlendAdvancedStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineColorBlendAdvancedStateCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 srcPremultiplied = {};
VULKAN_HPP_NAMESPACE::Bool32 dstPremultiplied = {};
VULKAN_HPP_NAMESPACE::BlendOverlapEXT blendOverlap = VULKAN_HPP_NAMESPACE::BlendOverlapEXT::eUncorrelated;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineColorBlendAdvancedStateCreateInfoEXT) ==
sizeof(VkPipelineColorBlendAdvancedStateCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineColorBlendAdvancedStateCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineColorBlendAdvancedStateCreateInfoEXT>::value,
"PipelineColorBlendAdvancedStateCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineColorBlendAdvancedStateCreateInfoEXT>
{
using Type = PipelineColorBlendAdvancedStateCreateInfoEXT;
};
struct PipelineColorWriteCreateInfoEXT
{
using NativeType = VkPipelineColorWriteCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineColorWriteCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineColorWriteCreateInfoEXT(uint32_t attachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::Bool32 *pColorWriteEnables_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
attachmentCount(attachmentCount_),
pColorWriteEnables(pColorWriteEnables_)
{
}
VULKAN_HPP_CONSTEXPR PipelineColorWriteCreateInfoEXT(PipelineColorWriteCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineColorWriteCreateInfoEXT(VkPipelineColorWriteCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineColorWriteCreateInfoEXT(*reinterpret_cast<PipelineColorWriteCreateInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineColorWriteCreateInfoEXT(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Bool32> const &colorWriteEnables_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, attachmentCount(static_cast<uint32_t>(colorWriteEnables_.size()))
, pColorWriteEnables(colorWriteEnables_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineColorWriteCreateInfoEXT &operator=(PipelineColorWriteCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineColorWriteCreateInfoEXT &operator=(VkPipelineColorWriteCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineColorWriteCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineColorWriteCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorWriteCreateInfoEXT &setAttachmentCount(uint32_t attachmentCount_) VULKAN_HPP_NOEXCEPT
{
attachmentCount = attachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineColorWriteCreateInfoEXT &
setPColorWriteEnables(const VULKAN_HPP_NAMESPACE::Bool32 *pColorWriteEnables_) VULKAN_HPP_NOEXCEPT
{
pColorWriteEnables = pColorWriteEnables_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineColorWriteCreateInfoEXT &
setColorWriteEnables(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Bool32> const &colorWriteEnables_) VULKAN_HPP_NOEXCEPT
{
attachmentCount = static_cast<uint32_t>(colorWriteEnables_.size());
pColorWriteEnables = colorWriteEnables_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineColorWriteCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineColorWriteCreateInfoEXT *>(this);
}
explicit operator VkPipelineColorWriteCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineColorWriteCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::Bool32 *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, attachmentCount, pColorWriteEnables);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineColorWriteCreateInfoEXT const &) const = default;
#else
bool operator==(PipelineColorWriteCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (attachmentCount == rhs.attachmentCount) && (pColorWriteEnables == rhs.pColorWriteEnables);
# endif
}
bool operator!=(PipelineColorWriteCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineColorWriteCreateInfoEXT;
const void *pNext = {};
uint32_t attachmentCount = {};
const VULKAN_HPP_NAMESPACE::Bool32 *pColorWriteEnables = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineColorWriteCreateInfoEXT) == sizeof(VkPipelineColorWriteCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineColorWriteCreateInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineColorWriteCreateInfoEXT>::value,
"PipelineColorWriteCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineColorWriteCreateInfoEXT>
{
using Type = PipelineColorWriteCreateInfoEXT;
};
struct PipelineCompilerControlCreateInfoAMD
{
using NativeType = VkPipelineCompilerControlCreateInfoAMD;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCompilerControlCreateInfoAMD;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineCompilerControlCreateInfoAMD(VULKAN_HPP_NAMESPACE::PipelineCompilerControlFlagsAMD compilerControlFlags_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
compilerControlFlags(compilerControlFlags_)
{
}
VULKAN_HPP_CONSTEXPR PipelineCompilerControlCreateInfoAMD(PipelineCompilerControlCreateInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCompilerControlCreateInfoAMD(VkPipelineCompilerControlCreateInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineCompilerControlCreateInfoAMD(*reinterpret_cast<PipelineCompilerControlCreateInfoAMD const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineCompilerControlCreateInfoAMD &operator=(PipelineCompilerControlCreateInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCompilerControlCreateInfoAMD &operator=(VkPipelineCompilerControlCreateInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCompilerControlCreateInfoAMD const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineCompilerControlCreateInfoAMD &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCompilerControlCreateInfoAMD &
setCompilerControlFlags(VULKAN_HPP_NAMESPACE::PipelineCompilerControlFlagsAMD compilerControlFlags_) VULKAN_HPP_NOEXCEPT
{
compilerControlFlags = compilerControlFlags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineCompilerControlCreateInfoAMD const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineCompilerControlCreateInfoAMD *>(this);
}
explicit operator VkPipelineCompilerControlCreateInfoAMD &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineCompilerControlCreateInfoAMD *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::PipelineCompilerControlFlagsAMD const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, compilerControlFlags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineCompilerControlCreateInfoAMD const &) const = default;
#else
bool operator==(PipelineCompilerControlCreateInfoAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (compilerControlFlags == rhs.compilerControlFlags);
# endif
}
bool operator!=(PipelineCompilerControlCreateInfoAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCompilerControlCreateInfoAMD;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineCompilerControlFlagsAMD compilerControlFlags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineCompilerControlCreateInfoAMD) == sizeof(VkPipelineCompilerControlCreateInfoAMD),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineCompilerControlCreateInfoAMD>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineCompilerControlCreateInfoAMD>::value,
"PipelineCompilerControlCreateInfoAMD is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineCompilerControlCreateInfoAMD>
{
using Type = PipelineCompilerControlCreateInfoAMD;
};
struct PipelineCoverageModulationStateCreateInfoNV
{
using NativeType = VkPipelineCoverageModulationStateCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCoverageModulationStateCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineCoverageModulationStateCreateInfoNV(
VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV flags_ = {},
VULKAN_HPP_NAMESPACE::CoverageModulationModeNV coverageModulationMode_ = VULKAN_HPP_NAMESPACE::CoverageModulationModeNV::eNone,
VULKAN_HPP_NAMESPACE::Bool32 coverageModulationTableEnable_ = {},
uint32_t coverageModulationTableCount_ = {},
const float *pCoverageModulationTable_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
coverageModulationMode(coverageModulationMode_),
coverageModulationTableEnable(coverageModulationTableEnable_),
coverageModulationTableCount(coverageModulationTableCount_),
pCoverageModulationTable(pCoverageModulationTable_)
{
}
VULKAN_HPP_CONSTEXPR PipelineCoverageModulationStateCreateInfoNV(PipelineCoverageModulationStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCoverageModulationStateCreateInfoNV(VkPipelineCoverageModulationStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineCoverageModulationStateCreateInfoNV(*reinterpret_cast<PipelineCoverageModulationStateCreateInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineCoverageModulationStateCreateInfoNV(VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV flags_,
VULKAN_HPP_NAMESPACE::CoverageModulationModeNV coverageModulationMode_,
VULKAN_HPP_NAMESPACE::Bool32 coverageModulationTableEnable_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const float> const &coverageModulationTable_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, coverageModulationMode(coverageModulationMode_)
, coverageModulationTableEnable(coverageModulationTableEnable_)
, coverageModulationTableCount(static_cast<uint32_t>(coverageModulationTable_.size()))
, pCoverageModulationTable(coverageModulationTable_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineCoverageModulationStateCreateInfoNV &operator=(PipelineCoverageModulationStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCoverageModulationStateCreateInfoNV &operator=(VkPipelineCoverageModulationStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageModulationStateCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageModulationStateCreateInfoNV &
setFlags(VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageModulationStateCreateInfoNV &
setCoverageModulationMode(VULKAN_HPP_NAMESPACE::CoverageModulationModeNV coverageModulationMode_) VULKAN_HPP_NOEXCEPT
{
coverageModulationMode = coverageModulationMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageModulationStateCreateInfoNV &
setCoverageModulationTableEnable(VULKAN_HPP_NAMESPACE::Bool32 coverageModulationTableEnable_) VULKAN_HPP_NOEXCEPT
{
coverageModulationTableEnable = coverageModulationTableEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageModulationStateCreateInfoNV &
setCoverageModulationTableCount(uint32_t coverageModulationTableCount_) VULKAN_HPP_NOEXCEPT
{
coverageModulationTableCount = coverageModulationTableCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageModulationStateCreateInfoNV &
setPCoverageModulationTable(const float *pCoverageModulationTable_) VULKAN_HPP_NOEXCEPT
{
pCoverageModulationTable = pCoverageModulationTable_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineCoverageModulationStateCreateInfoNV &
setCoverageModulationTable(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const float> const &coverageModulationTable_) VULKAN_HPP_NOEXCEPT
{
coverageModulationTableCount = static_cast<uint32_t>(coverageModulationTable_.size());
pCoverageModulationTable = coverageModulationTable_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineCoverageModulationStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineCoverageModulationStateCreateInfoNV *>(this);
}
explicit operator VkPipelineCoverageModulationStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineCoverageModulationStateCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV const &,
VULKAN_HPP_NAMESPACE::CoverageModulationModeNV const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
const float *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, coverageModulationMode, coverageModulationTableEnable, coverageModulationTableCount, pCoverageModulationTable);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineCoverageModulationStateCreateInfoNV const &) const = default;
#else
bool operator==(PipelineCoverageModulationStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (coverageModulationMode == rhs.coverageModulationMode) &&
(coverageModulationTableEnable == rhs.coverageModulationTableEnable) && (coverageModulationTableCount == rhs.coverageModulationTableCount) &&
(pCoverageModulationTable == rhs.pCoverageModulationTable);
# endif
}
bool operator!=(PipelineCoverageModulationStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCoverageModulationStateCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateFlagsNV flags = {};
VULKAN_HPP_NAMESPACE::CoverageModulationModeNV coverageModulationMode = VULKAN_HPP_NAMESPACE::CoverageModulationModeNV::eNone;
VULKAN_HPP_NAMESPACE::Bool32 coverageModulationTableEnable = {};
uint32_t coverageModulationTableCount = {};
const float *pCoverageModulationTable = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateInfoNV) ==
sizeof(VkPipelineCoverageModulationStateCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineCoverageModulationStateCreateInfoNV>::value,
"PipelineCoverageModulationStateCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineCoverageModulationStateCreateInfoNV>
{
using Type = PipelineCoverageModulationStateCreateInfoNV;
};
struct PipelineCoverageReductionStateCreateInfoNV
{
using NativeType = VkPipelineCoverageReductionStateCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCoverageReductionStateCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineCoverageReductionStateCreateInfoNV(
VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateFlagsNV flags_ = {},
VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode_ = VULKAN_HPP_NAMESPACE::CoverageReductionModeNV::eMerge,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
coverageReductionMode(coverageReductionMode_)
{
}
VULKAN_HPP_CONSTEXPR PipelineCoverageReductionStateCreateInfoNV(PipelineCoverageReductionStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCoverageReductionStateCreateInfoNV(VkPipelineCoverageReductionStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineCoverageReductionStateCreateInfoNV(*reinterpret_cast<PipelineCoverageReductionStateCreateInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineCoverageReductionStateCreateInfoNV &operator=(PipelineCoverageReductionStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCoverageReductionStateCreateInfoNV &operator=(VkPipelineCoverageReductionStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageReductionStateCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageReductionStateCreateInfoNV &
setFlags(VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateFlagsNV flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageReductionStateCreateInfoNV &
setCoverageReductionMode(VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode_) VULKAN_HPP_NOEXCEPT
{
coverageReductionMode = coverageReductionMode_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineCoverageReductionStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineCoverageReductionStateCreateInfoNV *>(this);
}
explicit operator VkPipelineCoverageReductionStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineCoverageReductionStateCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateFlagsNV const &,
VULKAN_HPP_NAMESPACE::CoverageReductionModeNV const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, coverageReductionMode);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineCoverageReductionStateCreateInfoNV const &) const = default;
#else
bool operator==(PipelineCoverageReductionStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (coverageReductionMode == rhs.coverageReductionMode);
# endif
}
bool operator!=(PipelineCoverageReductionStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCoverageReductionStateCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateFlagsNV flags = {};
VULKAN_HPP_NAMESPACE::CoverageReductionModeNV coverageReductionMode = VULKAN_HPP_NAMESPACE::CoverageReductionModeNV::eMerge;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateInfoNV) ==
sizeof(VkPipelineCoverageReductionStateCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineCoverageReductionStateCreateInfoNV>::value,
"PipelineCoverageReductionStateCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineCoverageReductionStateCreateInfoNV>
{
using Type = PipelineCoverageReductionStateCreateInfoNV;
};
struct PipelineCoverageToColorStateCreateInfoNV
{
using NativeType = VkPipelineCoverageToColorStateCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCoverageToColorStateCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineCoverageToColorStateCreateInfoNV(VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateFlagsNV flags_ = {},
VULKAN_HPP_NAMESPACE::Bool32 coverageToColorEnable_ = {},
uint32_t coverageToColorLocation_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
coverageToColorEnable(coverageToColorEnable_),
coverageToColorLocation(coverageToColorLocation_)
{
}
VULKAN_HPP_CONSTEXPR PipelineCoverageToColorStateCreateInfoNV(PipelineCoverageToColorStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCoverageToColorStateCreateInfoNV(VkPipelineCoverageToColorStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineCoverageToColorStateCreateInfoNV(*reinterpret_cast<PipelineCoverageToColorStateCreateInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineCoverageToColorStateCreateInfoNV &operator=(PipelineCoverageToColorStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCoverageToColorStateCreateInfoNV &operator=(VkPipelineCoverageToColorStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageToColorStateCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageToColorStateCreateInfoNV &
setFlags(VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateFlagsNV flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageToColorStateCreateInfoNV &
setCoverageToColorEnable(VULKAN_HPP_NAMESPACE::Bool32 coverageToColorEnable_) VULKAN_HPP_NOEXCEPT
{
coverageToColorEnable = coverageToColorEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCoverageToColorStateCreateInfoNV &setCoverageToColorLocation(uint32_t coverageToColorLocation_) VULKAN_HPP_NOEXCEPT
{
coverageToColorLocation = coverageToColorLocation_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineCoverageToColorStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineCoverageToColorStateCreateInfoNV *>(this);
}
explicit operator VkPipelineCoverageToColorStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineCoverageToColorStateCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateFlagsNV const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, coverageToColorEnable, coverageToColorLocation);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineCoverageToColorStateCreateInfoNV const &) const = default;
#else
bool operator==(PipelineCoverageToColorStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (coverageToColorEnable == rhs.coverageToColorEnable) &&
(coverageToColorLocation == rhs.coverageToColorLocation);
# endif
}
bool operator!=(PipelineCoverageToColorStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCoverageToColorStateCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateFlagsNV flags = {};
VULKAN_HPP_NAMESPACE::Bool32 coverageToColorEnable = {};
uint32_t coverageToColorLocation = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateInfoNV) == sizeof(VkPipelineCoverageToColorStateCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineCoverageToColorStateCreateInfoNV>::value,
"PipelineCoverageToColorStateCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineCoverageToColorStateCreateInfoNV>
{
using Type = PipelineCoverageToColorStateCreateInfoNV;
};
struct PipelineCreationFeedback
{
using NativeType = VkPipelineCreationFeedback;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineCreationFeedback(VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackFlags flags_ = {},
uint64_t duration_ = {}) VULKAN_HPP_NOEXCEPT
: flags(flags_),
duration(duration_)
{
}
VULKAN_HPP_CONSTEXPR PipelineCreationFeedback(PipelineCreationFeedback const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCreationFeedback(VkPipelineCreationFeedback const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineCreationFeedback(*reinterpret_cast<PipelineCreationFeedback const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineCreationFeedback &operator=(PipelineCreationFeedback const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCreationFeedback &operator=(VkPipelineCreationFeedback const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCreationFeedback const *>(&rhs);
return *this;
}
explicit operator VkPipelineCreationFeedback const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineCreationFeedback *>(this);
}
explicit operator VkPipelineCreationFeedback &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineCreationFeedback *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackFlags const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(flags, duration);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineCreationFeedback const &) const = default;
#else
bool operator==(PipelineCreationFeedback const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (flags == rhs.flags) && (duration == rhs.duration);
# endif
}
bool operator!=(PipelineCreationFeedback const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackFlags flags = {};
uint64_t duration = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineCreationFeedback) == sizeof(VkPipelineCreationFeedback),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineCreationFeedback>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineCreationFeedback>::value,
"PipelineCreationFeedback is not nothrow_move_constructible!");
using PipelineCreationFeedbackEXT = PipelineCreationFeedback;
struct PipelineCreationFeedbackCreateInfo
{
using NativeType = VkPipelineCreationFeedbackCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineCreationFeedbackCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackCreateInfo(VULKAN_HPP_NAMESPACE::PipelineCreationFeedback *pPipelineCreationFeedback_ = {},
uint32_t pipelineStageCreationFeedbackCount_ = {},
VULKAN_HPP_NAMESPACE::PipelineCreationFeedback *pPipelineStageCreationFeedbacks_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pPipelineCreationFeedback(pPipelineCreationFeedback_),
pipelineStageCreationFeedbackCount(pipelineStageCreationFeedbackCount_),
pPipelineStageCreationFeedbacks(pPipelineStageCreationFeedbacks_)
{
}
VULKAN_HPP_CONSTEXPR PipelineCreationFeedbackCreateInfo(PipelineCreationFeedbackCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCreationFeedbackCreateInfo(VkPipelineCreationFeedbackCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineCreationFeedbackCreateInfo(*reinterpret_cast<PipelineCreationFeedbackCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineCreationFeedbackCreateInfo(
VULKAN_HPP_NAMESPACE::PipelineCreationFeedback *pPipelineCreationFeedback_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::PipelineCreationFeedback> const &pipelineStageCreationFeedbacks_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, pPipelineCreationFeedback(pPipelineCreationFeedback_)
, pipelineStageCreationFeedbackCount(static_cast<uint32_t>(pipelineStageCreationFeedbacks_.size()))
, pPipelineStageCreationFeedbacks(pipelineStageCreationFeedbacks_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineCreationFeedbackCreateInfo &operator=(PipelineCreationFeedbackCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineCreationFeedbackCreateInfo &operator=(VkPipelineCreationFeedbackCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineCreationFeedbackCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCreationFeedbackCreateInfo &
setPPipelineCreationFeedback(VULKAN_HPP_NAMESPACE::PipelineCreationFeedback *pPipelineCreationFeedback_) VULKAN_HPP_NOEXCEPT
{
pPipelineCreationFeedback = pPipelineCreationFeedback_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCreationFeedbackCreateInfo &
setPipelineStageCreationFeedbackCount(uint32_t pipelineStageCreationFeedbackCount_) VULKAN_HPP_NOEXCEPT
{
pipelineStageCreationFeedbackCount = pipelineStageCreationFeedbackCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineCreationFeedbackCreateInfo &
setPPipelineStageCreationFeedbacks(VULKAN_HPP_NAMESPACE::PipelineCreationFeedback *pPipelineStageCreationFeedbacks_) VULKAN_HPP_NOEXCEPT
{
pPipelineStageCreationFeedbacks = pPipelineStageCreationFeedbacks_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineCreationFeedbackCreateInfo &setPipelineStageCreationFeedbacks(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::PipelineCreationFeedback> const &pipelineStageCreationFeedbacks_)
VULKAN_HPP_NOEXCEPT
{
pipelineStageCreationFeedbackCount = static_cast<uint32_t>(pipelineStageCreationFeedbacks_.size());
pPipelineStageCreationFeedbacks = pipelineStageCreationFeedbacks_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineCreationFeedbackCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineCreationFeedbackCreateInfo *>(this);
}
explicit operator VkPipelineCreationFeedbackCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineCreationFeedbackCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineCreationFeedback *const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::PipelineCreationFeedback *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pPipelineCreationFeedback, pipelineStageCreationFeedbackCount, pPipelineStageCreationFeedbacks);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineCreationFeedbackCreateInfo const &) const = default;
#else
bool operator==(PipelineCreationFeedbackCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pPipelineCreationFeedback == rhs.pPipelineCreationFeedback) &&
(pipelineStageCreationFeedbackCount == rhs.pipelineStageCreationFeedbackCount) &&
(pPipelineStageCreationFeedbacks == rhs.pPipelineStageCreationFeedbacks);
# endif
}
bool operator!=(PipelineCreationFeedbackCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineCreationFeedbackCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineCreationFeedback *pPipelineCreationFeedback = {};
uint32_t pipelineStageCreationFeedbackCount = {};
VULKAN_HPP_NAMESPACE::PipelineCreationFeedback *pPipelineStageCreationFeedbacks = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackCreateInfo) == sizeof(VkPipelineCreationFeedbackCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineCreationFeedbackCreateInfo>::value,
"PipelineCreationFeedbackCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineCreationFeedbackCreateInfo>
{
using Type = PipelineCreationFeedbackCreateInfo;
};
using PipelineCreationFeedbackCreateInfoEXT = PipelineCreationFeedbackCreateInfo;
struct PipelineDiscardRectangleStateCreateInfoEXT
{
using NativeType = VkPipelineDiscardRectangleStateCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineDiscardRectangleStateCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineDiscardRectangleStateCreateInfoEXT(
VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT flags_ = {},
VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT discardRectangleMode_ = VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT::eInclusive,
uint32_t discardRectangleCount_ = {},
const VULKAN_HPP_NAMESPACE::Rect2D *pDiscardRectangles_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
discardRectangleMode(discardRectangleMode_),
discardRectangleCount(discardRectangleCount_),
pDiscardRectangles(pDiscardRectangles_)
{
}
VULKAN_HPP_CONSTEXPR PipelineDiscardRectangleStateCreateInfoEXT(PipelineDiscardRectangleStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineDiscardRectangleStateCreateInfoEXT(VkPipelineDiscardRectangleStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineDiscardRectangleStateCreateInfoEXT(*reinterpret_cast<PipelineDiscardRectangleStateCreateInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineDiscardRectangleStateCreateInfoEXT(VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT flags_,
VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT discardRectangleMode_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const &discardRectangles_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, discardRectangleMode(discardRectangleMode_)
, discardRectangleCount(static_cast<uint32_t>(discardRectangles_.size()))
, pDiscardRectangles(discardRectangles_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineDiscardRectangleStateCreateInfoEXT &operator=(PipelineDiscardRectangleStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineDiscardRectangleStateCreateInfoEXT &operator=(VkPipelineDiscardRectangleStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineDiscardRectangleStateCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDiscardRectangleStateCreateInfoEXT &
setFlags(VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDiscardRectangleStateCreateInfoEXT &
setDiscardRectangleMode(VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT discardRectangleMode_) VULKAN_HPP_NOEXCEPT
{
discardRectangleMode = discardRectangleMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDiscardRectangleStateCreateInfoEXT &setDiscardRectangleCount(uint32_t discardRectangleCount_) VULKAN_HPP_NOEXCEPT
{
discardRectangleCount = discardRectangleCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineDiscardRectangleStateCreateInfoEXT &
setPDiscardRectangles(const VULKAN_HPP_NAMESPACE::Rect2D *pDiscardRectangles_) VULKAN_HPP_NOEXCEPT
{
pDiscardRectangles = pDiscardRectangles_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineDiscardRectangleStateCreateInfoEXT &
setDiscardRectangles(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const &discardRectangles_) VULKAN_HPP_NOEXCEPT
{
discardRectangleCount = static_cast<uint32_t>(discardRectangles_.size());
pDiscardRectangles = discardRectangles_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineDiscardRectangleStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineDiscardRectangleStateCreateInfoEXT *>(this);
}
explicit operator VkPipelineDiscardRectangleStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineDiscardRectangleStateCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT const &,
VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Rect2D *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, discardRectangleMode, discardRectangleCount, pDiscardRectangles);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineDiscardRectangleStateCreateInfoEXT const &) const = default;
#else
bool operator==(PipelineDiscardRectangleStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (discardRectangleMode == rhs.discardRectangleMode) &&
(discardRectangleCount == rhs.discardRectangleCount) && (pDiscardRectangles == rhs.pDiscardRectangles);
# endif
}
bool operator!=(PipelineDiscardRectangleStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineDiscardRectangleStateCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateFlagsEXT flags = {};
VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT discardRectangleMode = VULKAN_HPP_NAMESPACE::DiscardRectangleModeEXT::eInclusive;
uint32_t discardRectangleCount = {};
const VULKAN_HPP_NAMESPACE::Rect2D *pDiscardRectangles = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateInfoEXT) ==
sizeof(VkPipelineDiscardRectangleStateCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineDiscardRectangleStateCreateInfoEXT>::value,
"PipelineDiscardRectangleStateCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineDiscardRectangleStateCreateInfoEXT>
{
using Type = PipelineDiscardRectangleStateCreateInfoEXT;
};
struct PipelineExecutableInfoKHR
{
using NativeType = VkPipelineExecutableInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineExecutableInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineExecutableInfoKHR(VULKAN_HPP_NAMESPACE::Pipeline pipeline_ = {},
uint32_t executableIndex_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pipeline(pipeline_),
executableIndex(executableIndex_)
{
}
VULKAN_HPP_CONSTEXPR PipelineExecutableInfoKHR(PipelineExecutableInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineExecutableInfoKHR(VkPipelineExecutableInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineExecutableInfoKHR(*reinterpret_cast<PipelineExecutableInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineExecutableInfoKHR &operator=(PipelineExecutableInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineExecutableInfoKHR &operator=(VkPipelineExecutableInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableInfoKHR &setPipeline(VULKAN_HPP_NAMESPACE::Pipeline pipeline_) VULKAN_HPP_NOEXCEPT
{
pipeline = pipeline_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableInfoKHR &setExecutableIndex(uint32_t executableIndex_) VULKAN_HPP_NOEXCEPT
{
executableIndex = executableIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineExecutableInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineExecutableInfoKHR *>(this);
}
explicit operator VkPipelineExecutableInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineExecutableInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Pipeline const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pipeline, executableIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineExecutableInfoKHR const &) const = default;
#else
bool operator==(PipelineExecutableInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pipeline == rhs.pipeline) && (executableIndex == rhs.executableIndex);
# endif
}
bool operator!=(PipelineExecutableInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineExecutableInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Pipeline pipeline = {};
uint32_t executableIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR) == sizeof(VkPipelineExecutableInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineExecutableInfoKHR>::value,
"PipelineExecutableInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineExecutableInfoKHR>
{
using Type = PipelineExecutableInfoKHR;
};
struct PipelineExecutableInternalRepresentationKHR
{
using NativeType = VkPipelineExecutableInternalRepresentationKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineExecutableInternalRepresentationKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableInternalRepresentationKHR(std::array<char, VK_MAX_DESCRIPTION_SIZE> const &name_ = {},
std::array<char, VK_MAX_DESCRIPTION_SIZE> const &description_ = {},
VULKAN_HPP_NAMESPACE::Bool32 isText_ = {},
size_t dataSize_ = {},
void *pData_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
name(name_),
description(description_),
isText(isText_),
dataSize(dataSize_),
pData(pData_)
{
}
VULKAN_HPP_CONSTEXPR_14
PipelineExecutableInternalRepresentationKHR(PipelineExecutableInternalRepresentationKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineExecutableInternalRepresentationKHR(VkPipelineExecutableInternalRepresentationKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineExecutableInternalRepresentationKHR(*reinterpret_cast<PipelineExecutableInternalRepresentationKHR const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
PipelineExecutableInternalRepresentationKHR(std::array<char, VK_MAX_DESCRIPTION_SIZE> const &name_,
std::array<char, VK_MAX_DESCRIPTION_SIZE> const &description_,
VULKAN_HPP_NAMESPACE::Bool32 isText_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<T> const &data_,
void *pNext_ = nullptr)
: pNext(pNext_)
, name(name_)
, description(description_)
, isText(isText_)
, dataSize(data_.size() * sizeof(T))
, pData(data_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineExecutableInternalRepresentationKHR &operator=(PipelineExecutableInternalRepresentationKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineExecutableInternalRepresentationKHR &operator=(VkPipelineExecutableInternalRepresentationKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR const *>(&rhs);
return *this;
}
explicit operator VkPipelineExecutableInternalRepresentationKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineExecutableInternalRepresentationKHR *>(this);
}
explicit operator VkPipelineExecutableInternalRepresentationKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineExecutableInternalRepresentationKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
size_t const &,
void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, name, description, isText, dataSize, pData);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineExecutableInternalRepresentationKHR const &) const = default;
#else
bool operator==(PipelineExecutableInternalRepresentationKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (name == rhs.name) && (description == rhs.description) && (isText == rhs.isText) &&
(dataSize == rhs.dataSize) && (pData == rhs.pData);
# endif
}
bool operator!=(PipelineExecutableInternalRepresentationKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineExecutableInternalRepresentationKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> name = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
VULKAN_HPP_NAMESPACE::Bool32 isText = {};
size_t dataSize = {};
void *pData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR) ==
sizeof(VkPipelineExecutableInternalRepresentationKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineExecutableInternalRepresentationKHR>::value,
"PipelineExecutableInternalRepresentationKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineExecutableInternalRepresentationKHR>
{
using Type = PipelineExecutableInternalRepresentationKHR;
};
struct PipelineExecutablePropertiesKHR
{
using NativeType = VkPipelineExecutablePropertiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineExecutablePropertiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PipelineExecutablePropertiesKHR(VULKAN_HPP_NAMESPACE::ShaderStageFlags stages_ = {},
std::array<char, VK_MAX_DESCRIPTION_SIZE> const &name_ = {},
std::array<char, VK_MAX_DESCRIPTION_SIZE> const &description_ = {},
uint32_t subgroupSize_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
stages(stages_),
name(name_),
description(description_),
subgroupSize(subgroupSize_)
{
}
VULKAN_HPP_CONSTEXPR_14 PipelineExecutablePropertiesKHR(PipelineExecutablePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineExecutablePropertiesKHR(VkPipelineExecutablePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineExecutablePropertiesKHR(*reinterpret_cast<PipelineExecutablePropertiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineExecutablePropertiesKHR &operator=(PipelineExecutablePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineExecutablePropertiesKHR &operator=(VkPipelineExecutablePropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR const *>(&rhs);
return *this;
}
explicit operator VkPipelineExecutablePropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineExecutablePropertiesKHR *>(this);
}
explicit operator VkPipelineExecutablePropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineExecutablePropertiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ShaderStageFlags const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, stages, name, description, subgroupSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineExecutablePropertiesKHR const &) const = default;
#else
bool operator==(PipelineExecutablePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (stages == rhs.stages) && (name == rhs.name) && (description == rhs.description) &&
(subgroupSize == rhs.subgroupSize);
# endif
}
bool operator!=(PipelineExecutablePropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineExecutablePropertiesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ShaderStageFlags stages = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> name = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
uint32_t subgroupSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR) == sizeof(VkPipelineExecutablePropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineExecutablePropertiesKHR>::value,
"PipelineExecutablePropertiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineExecutablePropertiesKHR>
{
using Type = PipelineExecutablePropertiesKHR;
};
union PipelineExecutableStatisticValueKHR
{
using NativeType = VkPipelineExecutableStatisticValueKHR;
#if !defined(VULKAN_HPP_NO_UNION_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableStatisticValueKHR(VULKAN_HPP_NAMESPACE::Bool32 b32_ = {})
: b32(b32_)
{}
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableStatisticValueKHR(int64_t i64_)
: i64(i64_)
{}
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableStatisticValueKHR(uint64_t u64_)
: u64(u64_)
{}
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableStatisticValueKHR(double f64_)
: f64(f64_)
{}
#endif /*VULKAN_HPP_NO_UNION_CONSTRUCTORS*/
#if !defined(VULKAN_HPP_NO_UNION_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableStatisticValueKHR &setB32(VULKAN_HPP_NAMESPACE::Bool32 b32_) VULKAN_HPP_NOEXCEPT
{
b32 = b32_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableStatisticValueKHR &setI64(int64_t i64_) VULKAN_HPP_NOEXCEPT
{
i64 = i64_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableStatisticValueKHR &setU64(uint64_t u64_) VULKAN_HPP_NOEXCEPT
{
u64 = u64_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableStatisticValueKHR &setF64(double f64_) VULKAN_HPP_NOEXCEPT
{
f64 = f64_;
return *this;
}
#endif /*VULKAN_HPP_NO_UNION_SETTERS*/
operator VkPipelineExecutableStatisticValueKHR const &() const
{
return *reinterpret_cast<const VkPipelineExecutableStatisticValueKHR *>(this);
}
operator VkPipelineExecutableStatisticValueKHR &()
{
return *reinterpret_cast<VkPipelineExecutableStatisticValueKHR *>(this);
}
#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
VULKAN_HPP_NAMESPACE::Bool32 b32;
int64_t i64;
uint64_t u64;
double f64;
#else
VkBool32 b32;
int64_t i64;
uint64_t u64;
double f64;
#endif /*VULKAN_HPP_HAS_UNRESTRICTED_UNIONS*/
};
struct PipelineExecutableStatisticKHR
{
using NativeType = VkPipelineExecutableStatisticKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineExecutableStatisticKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableStatisticKHR(
std::array<char, VK_MAX_DESCRIPTION_SIZE> const &name_ = {},
std::array<char, VK_MAX_DESCRIPTION_SIZE> const &description_ = {},
VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR format_ = VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR::eBool32,
VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR value_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
name(name_),
description(description_),
format(format_),
value(value_)
{
}
VULKAN_HPP_CONSTEXPR_14 PipelineExecutableStatisticKHR(PipelineExecutableStatisticKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineExecutableStatisticKHR(VkPipelineExecutableStatisticKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineExecutableStatisticKHR(*reinterpret_cast<PipelineExecutableStatisticKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineExecutableStatisticKHR &operator=(PipelineExecutableStatisticKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineExecutableStatisticKHR &operator=(VkPipelineExecutableStatisticKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR const *>(&rhs);
return *this;
}
explicit operator VkPipelineExecutableStatisticKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineExecutableStatisticKHR *>(this);
}
explicit operator VkPipelineExecutableStatisticKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineExecutableStatisticKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> const &,
VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR const &,
VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, name, description, format, value);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineExecutableStatisticKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> name = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<char, VK_MAX_DESCRIPTION_SIZE> description = {};
VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR format = VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticFormatKHR::eBool32;
VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticValueKHR value = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR) == sizeof(VkPipelineExecutableStatisticKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineExecutableStatisticKHR>::value,
"PipelineExecutableStatisticKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineExecutableStatisticKHR>
{
using Type = PipelineExecutableStatisticKHR;
};
struct PipelineFragmentShadingRateEnumStateCreateInfoNV
{
using NativeType = VkPipelineFragmentShadingRateEnumStateCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateEnumStateCreateInfoNV(
VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV shadingRateType_ = VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV::eFragmentSize,
VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate_ = VULKAN_HPP_NAMESPACE::FragmentShadingRateNV::e1InvocationPerPixel,
std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> const &
combinerOps_ = { { VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep, VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep } },
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shadingRateType(shadingRateType_),
shadingRate(shadingRate_),
combinerOps(combinerOps_)
{
}
VULKAN_HPP_CONSTEXPR_14
PipelineFragmentShadingRateEnumStateCreateInfoNV(PipelineFragmentShadingRateEnumStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineFragmentShadingRateEnumStateCreateInfoNV(VkPipelineFragmentShadingRateEnumStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineFragmentShadingRateEnumStateCreateInfoNV(*reinterpret_cast<PipelineFragmentShadingRateEnumStateCreateInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineFragmentShadingRateEnumStateCreateInfoNV &operator=(PipelineFragmentShadingRateEnumStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineFragmentShadingRateEnumStateCreateInfoNV &operator=(VkPipelineFragmentShadingRateEnumStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateEnumStateCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateEnumStateCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateEnumStateCreateInfoNV &
setShadingRateType(VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV shadingRateType_) VULKAN_HPP_NOEXCEPT
{
shadingRateType = shadingRateType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateEnumStateCreateInfoNV &
setShadingRate(VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate_) VULKAN_HPP_NOEXCEPT
{
shadingRate = shadingRate_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateEnumStateCreateInfoNV &
setCombinerOps(std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> combinerOps_) VULKAN_HPP_NOEXCEPT
{
combinerOps = combinerOps_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineFragmentShadingRateEnumStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineFragmentShadingRateEnumStateCreateInfoNV *>(this);
}
explicit operator VkPipelineFragmentShadingRateEnumStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineFragmentShadingRateEnumStateCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV const &,
VULKAN_HPP_NAMESPACE::FragmentShadingRateNV const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shadingRateType, shadingRate, combinerOps);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineFragmentShadingRateEnumStateCreateInfoNV const &) const = default;
#else
bool operator==(PipelineFragmentShadingRateEnumStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shadingRateType == rhs.shadingRateType) && (shadingRate == rhs.shadingRate) &&
(combinerOps == rhs.combinerOps);
# endif
}
bool operator!=(PipelineFragmentShadingRateEnumStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV shadingRateType = VULKAN_HPP_NAMESPACE::FragmentShadingRateTypeNV::eFragmentSize;
VULKAN_HPP_NAMESPACE::FragmentShadingRateNV shadingRate = VULKAN_HPP_NAMESPACE::FragmentShadingRateNV::e1InvocationPerPixel;
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> combinerOps = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateEnumStateCreateInfoNV) ==
sizeof(VkPipelineFragmentShadingRateEnumStateCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateEnumStateCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateEnumStateCreateInfoNV>::value,
"PipelineFragmentShadingRateEnumStateCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV>
{
using Type = PipelineFragmentShadingRateEnumStateCreateInfoNV;
};
struct PipelineFragmentShadingRateStateCreateInfoKHR
{
using NativeType = VkPipelineFragmentShadingRateStateCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateStateCreateInfoKHR(
VULKAN_HPP_NAMESPACE::Extent2D fragmentSize_ = {},
std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> const &
combinerOps_ = { { VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep, VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR::eKeep } },
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fragmentSize(fragmentSize_),
combinerOps(combinerOps_)
{
}
VULKAN_HPP_CONSTEXPR_14
PipelineFragmentShadingRateStateCreateInfoKHR(PipelineFragmentShadingRateStateCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineFragmentShadingRateStateCreateInfoKHR(VkPipelineFragmentShadingRateStateCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineFragmentShadingRateStateCreateInfoKHR(*reinterpret_cast<PipelineFragmentShadingRateStateCreateInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineFragmentShadingRateStateCreateInfoKHR &operator=(PipelineFragmentShadingRateStateCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineFragmentShadingRateStateCreateInfoKHR &operator=(VkPipelineFragmentShadingRateStateCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateStateCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateStateCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateStateCreateInfoKHR &
setFragmentSize(VULKAN_HPP_NAMESPACE::Extent2D const &fragmentSize_) VULKAN_HPP_NOEXCEPT
{
fragmentSize = fragmentSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineFragmentShadingRateStateCreateInfoKHR &
setCombinerOps(std::array<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> combinerOps_) VULKAN_HPP_NOEXCEPT
{
combinerOps = combinerOps_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineFragmentShadingRateStateCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineFragmentShadingRateStateCreateInfoKHR *>(this);
}
explicit operator VkPipelineFragmentShadingRateStateCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineFragmentShadingRateStateCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fragmentSize, combinerOps);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineFragmentShadingRateStateCreateInfoKHR const &) const = default;
#else
bool operator==(PipelineFragmentShadingRateStateCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fragmentSize == rhs.fragmentSize) && (combinerOps == rhs.combinerOps);
# endif
}
bool operator!=(PipelineFragmentShadingRateStateCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Extent2D fragmentSize = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::FragmentShadingRateCombinerOpKHR, 2> combinerOps = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateStateCreateInfoKHR) ==
sizeof(VkPipelineFragmentShadingRateStateCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateStateCreateInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineFragmentShadingRateStateCreateInfoKHR>::value,
"PipelineFragmentShadingRateStateCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR>
{
using Type = PipelineFragmentShadingRateStateCreateInfoKHR;
};
struct PipelineInfoKHR
{
using NativeType = VkPipelineInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineInfoKHR(VULKAN_HPP_NAMESPACE::Pipeline pipeline_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pipeline(pipeline_)
{
}
VULKAN_HPP_CONSTEXPR PipelineInfoKHR(PipelineInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineInfoKHR(VkPipelineInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT : PipelineInfoKHR(*reinterpret_cast<PipelineInfoKHR const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineInfoKHR &operator=(PipelineInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineInfoKHR &operator=(VkPipelineInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineInfoKHR &setPipeline(VULKAN_HPP_NAMESPACE::Pipeline pipeline_) VULKAN_HPP_NOEXCEPT
{
pipeline = pipeline_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineInfoKHR *>(this);
}
explicit operator VkPipelineInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Pipeline const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pipeline);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineInfoKHR const &) const = default;
#else
bool operator==(PipelineInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pipeline == rhs.pipeline);
# endif
}
bool operator!=(PipelineInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Pipeline pipeline = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineInfoKHR) == sizeof(VkPipelineInfoKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineInfoKHR>::value,
"PipelineInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineInfoKHR>
{
using Type = PipelineInfoKHR;
};
struct PushConstantRange
{
using NativeType = VkPushConstantRange;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PushConstantRange(VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_ = {}, uint32_t offset_ = {}, uint32_t size_ = {}) VULKAN_HPP_NOEXCEPT
: stageFlags(stageFlags_),
offset(offset_),
size(size_)
{
}
VULKAN_HPP_CONSTEXPR PushConstantRange(PushConstantRange const &rhs) VULKAN_HPP_NOEXCEPT = default;
PushConstantRange(VkPushConstantRange const &rhs) VULKAN_HPP_NOEXCEPT : PushConstantRange(*reinterpret_cast<PushConstantRange const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PushConstantRange &operator=(PushConstantRange const &rhs) VULKAN_HPP_NOEXCEPT = default;
PushConstantRange &operator=(VkPushConstantRange const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PushConstantRange const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PushConstantRange &setStageFlags(VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags_) VULKAN_HPP_NOEXCEPT
{
stageFlags = stageFlags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PushConstantRange &setOffset(uint32_t offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PushConstantRange &setSize(uint32_t size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPushConstantRange const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPushConstantRange *>(this);
}
explicit operator VkPushConstantRange &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPushConstantRange *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ShaderStageFlags const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(stageFlags, offset, size);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PushConstantRange const &) const = default;
#else
bool operator==(PushConstantRange const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (stageFlags == rhs.stageFlags) && (offset == rhs.offset) && (size == rhs.size);
# endif
}
bool operator!=(PushConstantRange const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ShaderStageFlags stageFlags = {};
uint32_t offset = {};
uint32_t size = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PushConstantRange) == sizeof(VkPushConstantRange), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PushConstantRange>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PushConstantRange>::value,
"PushConstantRange is not nothrow_move_constructible!");
struct PipelineLayoutCreateInfo
{
using NativeType = VkPipelineLayoutCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineLayoutCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineLayoutCreateInfo(VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags flags_ = {},
uint32_t setLayoutCount_ = {},
const VULKAN_HPP_NAMESPACE::DescriptorSetLayout *pSetLayouts_ = {},
uint32_t pushConstantRangeCount_ = {},
const VULKAN_HPP_NAMESPACE::PushConstantRange *pPushConstantRanges_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
setLayoutCount(setLayoutCount_),
pSetLayouts(pSetLayouts_),
pushConstantRangeCount(pushConstantRangeCount_),
pPushConstantRanges(pPushConstantRanges_)
{
}
VULKAN_HPP_CONSTEXPR PipelineLayoutCreateInfo(PipelineLayoutCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineLayoutCreateInfo(VkPipelineLayoutCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineLayoutCreateInfo(*reinterpret_cast<PipelineLayoutCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineLayoutCreateInfo(VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayout> const &setLayouts_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PushConstantRange> const &pushConstantRanges_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, setLayoutCount(static_cast<uint32_t>(setLayouts_.size()))
, pSetLayouts(setLayouts_.data())
, pushConstantRangeCount(static_cast<uint32_t>(pushConstantRanges_.size()))
, pPushConstantRanges(pushConstantRanges_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineLayoutCreateInfo &operator=(PipelineLayoutCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineLayoutCreateInfo &operator=(VkPipelineLayoutCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineLayoutCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineLayoutCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineLayoutCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineLayoutCreateInfo &setSetLayoutCount(uint32_t setLayoutCount_) VULKAN_HPP_NOEXCEPT
{
setLayoutCount = setLayoutCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineLayoutCreateInfo &setPSetLayouts(const VULKAN_HPP_NAMESPACE::DescriptorSetLayout *pSetLayouts_) VULKAN_HPP_NOEXCEPT
{
pSetLayouts = pSetLayouts_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineLayoutCreateInfo &
setSetLayouts(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorSetLayout> const &setLayouts_) VULKAN_HPP_NOEXCEPT
{
setLayoutCount = static_cast<uint32_t>(setLayouts_.size());
pSetLayouts = setLayouts_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 PipelineLayoutCreateInfo &setPushConstantRangeCount(uint32_t pushConstantRangeCount_) VULKAN_HPP_NOEXCEPT
{
pushConstantRangeCount = pushConstantRangeCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineLayoutCreateInfo &
setPPushConstantRanges(const VULKAN_HPP_NAMESPACE::PushConstantRange *pPushConstantRanges_) VULKAN_HPP_NOEXCEPT
{
pPushConstantRanges = pPushConstantRanges_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineLayoutCreateInfo &setPushConstantRanges(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PushConstantRange> const &pushConstantRanges_) VULKAN_HPP_NOEXCEPT
{
pushConstantRangeCount = static_cast<uint32_t>(pushConstantRanges_.size());
pPushConstantRanges = pushConstantRanges_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineLayoutCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineLayoutCreateInfo *>(this);
}
explicit operator VkPipelineLayoutCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineLayoutCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DescriptorSetLayout *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::PushConstantRange *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, setLayoutCount, pSetLayouts, pushConstantRangeCount, pPushConstantRanges);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineLayoutCreateInfo const &) const = default;
#else
bool operator==(PipelineLayoutCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (setLayoutCount == rhs.setLayoutCount) &&
(pSetLayouts == rhs.pSetLayouts) && (pushConstantRangeCount == rhs.pushConstantRangeCount) &&
(pPushConstantRanges == rhs.pPushConstantRanges);
# endif
}
bool operator!=(PipelineLayoutCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineLayoutCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineLayoutCreateFlags flags = {};
uint32_t setLayoutCount = {};
const VULKAN_HPP_NAMESPACE::DescriptorSetLayout *pSetLayouts = {};
uint32_t pushConstantRangeCount = {};
const VULKAN_HPP_NAMESPACE::PushConstantRange *pPushConstantRanges = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineLayoutCreateInfo) == sizeof(VkPipelineLayoutCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineLayoutCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineLayoutCreateInfo>::value,
"PipelineLayoutCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineLayoutCreateInfo>
{
using Type = PipelineLayoutCreateInfo;
};
struct PipelineLibraryCreateInfoKHR
{
using NativeType = VkPipelineLibraryCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineLibraryCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineLibraryCreateInfoKHR(uint32_t libraryCount_ = {},
const VULKAN_HPP_NAMESPACE::Pipeline *pLibraries_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
libraryCount(libraryCount_),
pLibraries(pLibraries_)
{
}
VULKAN_HPP_CONSTEXPR PipelineLibraryCreateInfoKHR(PipelineLibraryCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineLibraryCreateInfoKHR(VkPipelineLibraryCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineLibraryCreateInfoKHR(*reinterpret_cast<PipelineLibraryCreateInfoKHR const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineLibraryCreateInfoKHR(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Pipeline> const &libraries_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, libraryCount(static_cast<uint32_t>(libraries_.size()))
, pLibraries(libraries_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineLibraryCreateInfoKHR &operator=(PipelineLibraryCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineLibraryCreateInfoKHR &operator=(VkPipelineLibraryCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineLibraryCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineLibraryCreateInfoKHR &setLibraryCount(uint32_t libraryCount_) VULKAN_HPP_NOEXCEPT
{
libraryCount = libraryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineLibraryCreateInfoKHR &setPLibraries(const VULKAN_HPP_NAMESPACE::Pipeline *pLibraries_) VULKAN_HPP_NOEXCEPT
{
pLibraries = pLibraries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineLibraryCreateInfoKHR &
setLibraries(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Pipeline> const &libraries_) VULKAN_HPP_NOEXCEPT
{
libraryCount = static_cast<uint32_t>(libraries_.size());
pLibraries = libraries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineLibraryCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineLibraryCreateInfoKHR *>(this);
}
explicit operator VkPipelineLibraryCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineLibraryCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::Pipeline *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, libraryCount, pLibraries);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineLibraryCreateInfoKHR const &) const = default;
#else
bool operator==(PipelineLibraryCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (libraryCount == rhs.libraryCount) && (pLibraries == rhs.pLibraries);
# endif
}
bool operator!=(PipelineLibraryCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineLibraryCreateInfoKHR;
const void *pNext = {};
uint32_t libraryCount = {};
const VULKAN_HPP_NAMESPACE::Pipeline *pLibraries = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR) == sizeof(VkPipelineLibraryCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR>::value,
"PipelineLibraryCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineLibraryCreateInfoKHR>
{
using Type = PipelineLibraryCreateInfoKHR;
};
struct PipelineRasterizationConservativeStateCreateInfoEXT
{
using NativeType = VkPipelineRasterizationConservativeStateCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationConservativeStateCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineRasterizationConservativeStateCreateInfoEXT(
VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateFlagsEXT flags_ = {},
VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT conservativeRasterizationMode_ = VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT::eDisabled,
float extraPrimitiveOverestimationSize_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
conservativeRasterizationMode(conservativeRasterizationMode_),
extraPrimitiveOverestimationSize(extraPrimitiveOverestimationSize_)
{
}
VULKAN_HPP_CONSTEXPR
PipelineRasterizationConservativeStateCreateInfoEXT(PipelineRasterizationConservativeStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationConservativeStateCreateInfoEXT(VkPipelineRasterizationConservativeStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineRasterizationConservativeStateCreateInfoEXT(*reinterpret_cast<PipelineRasterizationConservativeStateCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineRasterizationConservativeStateCreateInfoEXT &
operator=(PipelineRasterizationConservativeStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationConservativeStateCreateInfoEXT &operator=(VkPipelineRasterizationConservativeStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationConservativeStateCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationConservativeStateCreateInfoEXT &
setFlags(VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationConservativeStateCreateInfoEXT &
setConservativeRasterizationMode(VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT conservativeRasterizationMode_) VULKAN_HPP_NOEXCEPT
{
conservativeRasterizationMode = conservativeRasterizationMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationConservativeStateCreateInfoEXT &
setExtraPrimitiveOverestimationSize(float extraPrimitiveOverestimationSize_) VULKAN_HPP_NOEXCEPT
{
extraPrimitiveOverestimationSize = extraPrimitiveOverestimationSize_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineRasterizationConservativeStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineRasterizationConservativeStateCreateInfoEXT *>(this);
}
explicit operator VkPipelineRasterizationConservativeStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineRasterizationConservativeStateCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateFlagsEXT const &,
VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT const &,
float const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, conservativeRasterizationMode, extraPrimitiveOverestimationSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineRasterizationConservativeStateCreateInfoEXT const &) const = default;
#else
bool operator==(PipelineRasterizationConservativeStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) &&
(conservativeRasterizationMode == rhs.conservativeRasterizationMode) &&
(extraPrimitiveOverestimationSize == rhs.extraPrimitiveOverestimationSize);
# endif
}
bool operator!=(PipelineRasterizationConservativeStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationConservativeStateCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateFlagsEXT flags = {};
VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT conservativeRasterizationMode = VULKAN_HPP_NAMESPACE::ConservativeRasterizationModeEXT::eDisabled;
float extraPrimitiveOverestimationSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateInfoEXT) ==
sizeof(VkPipelineRasterizationConservativeStateCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineRasterizationConservativeStateCreateInfoEXT>::value,
"PipelineRasterizationConservativeStateCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineRasterizationConservativeStateCreateInfoEXT>
{
using Type = PipelineRasterizationConservativeStateCreateInfoEXT;
};
struct PipelineRasterizationDepthClipStateCreateInfoEXT
{
using NativeType = VkPipelineRasterizationDepthClipStateCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineRasterizationDepthClipStateCreateInfoEXT(VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateFlagsEXT flags_ = {},
VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
depthClipEnable(depthClipEnable_)
{
}
VULKAN_HPP_CONSTEXPR
PipelineRasterizationDepthClipStateCreateInfoEXT(PipelineRasterizationDepthClipStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationDepthClipStateCreateInfoEXT(VkPipelineRasterizationDepthClipStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineRasterizationDepthClipStateCreateInfoEXT(*reinterpret_cast<PipelineRasterizationDepthClipStateCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineRasterizationDepthClipStateCreateInfoEXT &operator=(PipelineRasterizationDepthClipStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationDepthClipStateCreateInfoEXT &operator=(VkPipelineRasterizationDepthClipStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationDepthClipStateCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationDepthClipStateCreateInfoEXT &
setFlags(VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationDepthClipStateCreateInfoEXT &
setDepthClipEnable(VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable_) VULKAN_HPP_NOEXCEPT
{
depthClipEnable = depthClipEnable_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineRasterizationDepthClipStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineRasterizationDepthClipStateCreateInfoEXT *>(this);
}
explicit operator VkPipelineRasterizationDepthClipStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineRasterizationDepthClipStateCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateFlagsEXT const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, depthClipEnable);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineRasterizationDepthClipStateCreateInfoEXT const &) const = default;
#else
bool operator==(PipelineRasterizationDepthClipStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (depthClipEnable == rhs.depthClipEnable);
# endif
}
bool operator!=(PipelineRasterizationDepthClipStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateFlagsEXT flags = {};
VULKAN_HPP_NAMESPACE::Bool32 depthClipEnable = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateInfoEXT) ==
sizeof(VkPipelineRasterizationDepthClipStateCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineRasterizationDepthClipStateCreateInfoEXT>::value,
"PipelineRasterizationDepthClipStateCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT>
{
using Type = PipelineRasterizationDepthClipStateCreateInfoEXT;
};
struct PipelineRasterizationLineStateCreateInfoEXT
{
using NativeType = VkPipelineRasterizationLineStateCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationLineStateCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineRasterizationLineStateCreateInfoEXT(
VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT lineRasterizationMode_ = VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT::eDefault,
VULKAN_HPP_NAMESPACE::Bool32 stippledLineEnable_ = {},
uint32_t lineStippleFactor_ = {},
uint16_t lineStipplePattern_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
lineRasterizationMode(lineRasterizationMode_),
stippledLineEnable(stippledLineEnable_),
lineStippleFactor(lineStippleFactor_),
lineStipplePattern(lineStipplePattern_)
{
}
VULKAN_HPP_CONSTEXPR PipelineRasterizationLineStateCreateInfoEXT(PipelineRasterizationLineStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationLineStateCreateInfoEXT(VkPipelineRasterizationLineStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineRasterizationLineStateCreateInfoEXT(*reinterpret_cast<PipelineRasterizationLineStateCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineRasterizationLineStateCreateInfoEXT &operator=(PipelineRasterizationLineStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationLineStateCreateInfoEXT &operator=(VkPipelineRasterizationLineStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationLineStateCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationLineStateCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationLineStateCreateInfoEXT &
setLineRasterizationMode(VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT lineRasterizationMode_) VULKAN_HPP_NOEXCEPT
{
lineRasterizationMode = lineRasterizationMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationLineStateCreateInfoEXT &
setStippledLineEnable(VULKAN_HPP_NAMESPACE::Bool32 stippledLineEnable_) VULKAN_HPP_NOEXCEPT
{
stippledLineEnable = stippledLineEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationLineStateCreateInfoEXT &setLineStippleFactor(uint32_t lineStippleFactor_) VULKAN_HPP_NOEXCEPT
{
lineStippleFactor = lineStippleFactor_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationLineStateCreateInfoEXT &setLineStipplePattern(uint16_t lineStipplePattern_) VULKAN_HPP_NOEXCEPT
{
lineStipplePattern = lineStipplePattern_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineRasterizationLineStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineRasterizationLineStateCreateInfoEXT *>(this);
}
explicit operator VkPipelineRasterizationLineStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineRasterizationLineStateCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
uint16_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, lineRasterizationMode, stippledLineEnable, lineStippleFactor, lineStipplePattern);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineRasterizationLineStateCreateInfoEXT const &) const = default;
#else
bool operator==(PipelineRasterizationLineStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (lineRasterizationMode == rhs.lineRasterizationMode) &&
(stippledLineEnable == rhs.stippledLineEnable) && (lineStippleFactor == rhs.lineStippleFactor) &&
(lineStipplePattern == rhs.lineStipplePattern);
# endif
}
bool operator!=(PipelineRasterizationLineStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationLineStateCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT lineRasterizationMode = VULKAN_HPP_NAMESPACE::LineRasterizationModeEXT::eDefault;
VULKAN_HPP_NAMESPACE::Bool32 stippledLineEnable = {};
uint32_t lineStippleFactor = {};
uint16_t lineStipplePattern = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineRasterizationLineStateCreateInfoEXT) ==
sizeof(VkPipelineRasterizationLineStateCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineRasterizationLineStateCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineRasterizationLineStateCreateInfoEXT>::value,
"PipelineRasterizationLineStateCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineRasterizationLineStateCreateInfoEXT>
{
using Type = PipelineRasterizationLineStateCreateInfoEXT;
};
struct PipelineRasterizationProvokingVertexStateCreateInfoEXT
{
using NativeType = VkPipelineRasterizationProvokingVertexStateCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationProvokingVertexStateCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineRasterizationProvokingVertexStateCreateInfoEXT(
VULKAN_HPP_NAMESPACE::ProvokingVertexModeEXT provokingVertexMode_ = VULKAN_HPP_NAMESPACE::ProvokingVertexModeEXT::eFirstVertex,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
provokingVertexMode(provokingVertexMode_)
{
}
VULKAN_HPP_CONSTEXPR PipelineRasterizationProvokingVertexStateCreateInfoEXT(PipelineRasterizationProvokingVertexStateCreateInfoEXT const &rhs)
VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationProvokingVertexStateCreateInfoEXT(VkPipelineRasterizationProvokingVertexStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineRasterizationProvokingVertexStateCreateInfoEXT(*reinterpret_cast<PipelineRasterizationProvokingVertexStateCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineRasterizationProvokingVertexStateCreateInfoEXT &
operator=(PipelineRasterizationProvokingVertexStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationProvokingVertexStateCreateInfoEXT &
operator=(VkPipelineRasterizationProvokingVertexStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationProvokingVertexStateCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationProvokingVertexStateCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationProvokingVertexStateCreateInfoEXT &
setProvokingVertexMode(VULKAN_HPP_NAMESPACE::ProvokingVertexModeEXT provokingVertexMode_) VULKAN_HPP_NOEXCEPT
{
provokingVertexMode = provokingVertexMode_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineRasterizationProvokingVertexStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT *>(this);
}
explicit operator VkPipelineRasterizationProvokingVertexStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineRasterizationProvokingVertexStateCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ProvokingVertexModeEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, provokingVertexMode);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineRasterizationProvokingVertexStateCreateInfoEXT const &) const = default;
#else
bool operator==(PipelineRasterizationProvokingVertexStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (provokingVertexMode == rhs.provokingVertexMode);
# endif
}
bool operator!=(PipelineRasterizationProvokingVertexStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationProvokingVertexStateCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ProvokingVertexModeEXT provokingVertexMode = VULKAN_HPP_NAMESPACE::ProvokingVertexModeEXT::eFirstVertex;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineRasterizationProvokingVertexStateCreateInfoEXT) ==
sizeof(VkPipelineRasterizationProvokingVertexStateCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineRasterizationProvokingVertexStateCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineRasterizationProvokingVertexStateCreateInfoEXT>::value,
"PipelineRasterizationProvokingVertexStateCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineRasterizationProvokingVertexStateCreateInfoEXT>
{
using Type = PipelineRasterizationProvokingVertexStateCreateInfoEXT;
};
struct PipelineRasterizationStateRasterizationOrderAMD
{
using NativeType = VkPipelineRasterizationStateRasterizationOrderAMD;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationStateRasterizationOrderAMD;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineRasterizationStateRasterizationOrderAMD(
VULKAN_HPP_NAMESPACE::RasterizationOrderAMD rasterizationOrder_ = VULKAN_HPP_NAMESPACE::RasterizationOrderAMD::eStrict,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
rasterizationOrder(rasterizationOrder_)
{
}
VULKAN_HPP_CONSTEXPR
PipelineRasterizationStateRasterizationOrderAMD(PipelineRasterizationStateRasterizationOrderAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationStateRasterizationOrderAMD(VkPipelineRasterizationStateRasterizationOrderAMD const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineRasterizationStateRasterizationOrderAMD(*reinterpret_cast<PipelineRasterizationStateRasterizationOrderAMD const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineRasterizationStateRasterizationOrderAMD &operator=(PipelineRasterizationStateRasterizationOrderAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationStateRasterizationOrderAMD &operator=(VkPipelineRasterizationStateRasterizationOrderAMD const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateRasterizationOrderAMD const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateRasterizationOrderAMD &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateRasterizationOrderAMD &
setRasterizationOrder(VULKAN_HPP_NAMESPACE::RasterizationOrderAMD rasterizationOrder_) VULKAN_HPP_NOEXCEPT
{
rasterizationOrder = rasterizationOrder_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineRasterizationStateRasterizationOrderAMD const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineRasterizationStateRasterizationOrderAMD *>(this);
}
explicit operator VkPipelineRasterizationStateRasterizationOrderAMD &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineRasterizationStateRasterizationOrderAMD *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::RasterizationOrderAMD const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, rasterizationOrder);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineRasterizationStateRasterizationOrderAMD const &) const = default;
#else
bool operator==(PipelineRasterizationStateRasterizationOrderAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (rasterizationOrder == rhs.rasterizationOrder);
# endif
}
bool operator!=(PipelineRasterizationStateRasterizationOrderAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationStateRasterizationOrderAMD;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::RasterizationOrderAMD rasterizationOrder = VULKAN_HPP_NAMESPACE::RasterizationOrderAMD::eStrict;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineRasterizationStateRasterizationOrderAMD) ==
sizeof(VkPipelineRasterizationStateRasterizationOrderAMD),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateRasterizationOrderAMD>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateRasterizationOrderAMD>::value,
"PipelineRasterizationStateRasterizationOrderAMD is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineRasterizationStateRasterizationOrderAMD>
{
using Type = PipelineRasterizationStateRasterizationOrderAMD;
};
struct PipelineRasterizationStateStreamCreateInfoEXT
{
using NativeType = VkPipelineRasterizationStateStreamCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRasterizationStateStreamCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineRasterizationStateStreamCreateInfoEXT(VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateFlagsEXT flags_ = {},
uint32_t rasterizationStream_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
rasterizationStream(rasterizationStream_)
{
}
VULKAN_HPP_CONSTEXPR
PipelineRasterizationStateStreamCreateInfoEXT(PipelineRasterizationStateStreamCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationStateStreamCreateInfoEXT(VkPipelineRasterizationStateStreamCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineRasterizationStateStreamCreateInfoEXT(*reinterpret_cast<PipelineRasterizationStateStreamCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineRasterizationStateStreamCreateInfoEXT &operator=(PipelineRasterizationStateStreamCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRasterizationStateStreamCreateInfoEXT &operator=(VkPipelineRasterizationStateStreamCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateStreamCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateStreamCreateInfoEXT &
setFlags(VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRasterizationStateStreamCreateInfoEXT &setRasterizationStream(uint32_t rasterizationStream_) VULKAN_HPP_NOEXCEPT
{
rasterizationStream = rasterizationStream_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineRasterizationStateStreamCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineRasterizationStateStreamCreateInfoEXT *>(this);
}
explicit operator VkPipelineRasterizationStateStreamCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineRasterizationStateStreamCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateFlagsEXT const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, rasterizationStream);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineRasterizationStateStreamCreateInfoEXT const &) const = default;
#else
bool operator==(PipelineRasterizationStateStreamCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (rasterizationStream == rhs.rasterizationStream);
# endif
}
bool operator!=(PipelineRasterizationStateStreamCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRasterizationStateStreamCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateFlagsEXT flags = {};
uint32_t rasterizationStream = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateInfoEXT) ==
sizeof(VkPipelineRasterizationStateStreamCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineRasterizationStateStreamCreateInfoEXT>::value,
"PipelineRasterizationStateStreamCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineRasterizationStateStreamCreateInfoEXT>
{
using Type = PipelineRasterizationStateStreamCreateInfoEXT;
};
struct PipelineRenderingCreateInfo
{
using NativeType = VkPipelineRenderingCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRenderingCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineRenderingCreateInfo(uint32_t viewMask_ = {},
uint32_t colorAttachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::Format *pColorAttachmentFormats_ = {},
VULKAN_HPP_NAMESPACE::Format depthAttachmentFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::Format stencilAttachmentFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
viewMask(viewMask_),
colorAttachmentCount(colorAttachmentCount_),
pColorAttachmentFormats(pColorAttachmentFormats_),
depthAttachmentFormat(depthAttachmentFormat_),
stencilAttachmentFormat(stencilAttachmentFormat_)
{
}
VULKAN_HPP_CONSTEXPR PipelineRenderingCreateInfo(PipelineRenderingCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRenderingCreateInfo(VkPipelineRenderingCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineRenderingCreateInfo(*reinterpret_cast<PipelineRenderingCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineRenderingCreateInfo(uint32_t viewMask_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const &colorAttachmentFormats_,
VULKAN_HPP_NAMESPACE::Format depthAttachmentFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::Format stencilAttachmentFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
const void *pNext_ = nullptr)
: pNext(pNext_)
, viewMask(viewMask_)
, colorAttachmentCount(static_cast<uint32_t>(colorAttachmentFormats_.size()))
, pColorAttachmentFormats(colorAttachmentFormats_.data())
, depthAttachmentFormat(depthAttachmentFormat_)
, stencilAttachmentFormat(stencilAttachmentFormat_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineRenderingCreateInfo &operator=(PipelineRenderingCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRenderingCreateInfo &operator=(VkPipelineRenderingCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRenderingCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineRenderingCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRenderingCreateInfo &setViewMask(uint32_t viewMask_) VULKAN_HPP_NOEXCEPT
{
viewMask = viewMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRenderingCreateInfo &setColorAttachmentCount(uint32_t colorAttachmentCount_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = colorAttachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRenderingCreateInfo &
setPColorAttachmentFormats(const VULKAN_HPP_NAMESPACE::Format *pColorAttachmentFormats_) VULKAN_HPP_NOEXCEPT
{
pColorAttachmentFormats = pColorAttachmentFormats_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineRenderingCreateInfo &setColorAttachmentFormats(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Format> const &colorAttachmentFormats_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = static_cast<uint32_t>(colorAttachmentFormats_.size());
pColorAttachmentFormats = colorAttachmentFormats_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 PipelineRenderingCreateInfo &setDepthAttachmentFormat(VULKAN_HPP_NAMESPACE::Format depthAttachmentFormat_) VULKAN_HPP_NOEXCEPT
{
depthAttachmentFormat = depthAttachmentFormat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRenderingCreateInfo &
setStencilAttachmentFormat(VULKAN_HPP_NAMESPACE::Format stencilAttachmentFormat_) VULKAN_HPP_NOEXCEPT
{
stencilAttachmentFormat = stencilAttachmentFormat_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineRenderingCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineRenderingCreateInfo *>(this);
}
explicit operator VkPipelineRenderingCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineRenderingCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Format *const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::Format const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, viewMask, colorAttachmentCount, pColorAttachmentFormats, depthAttachmentFormat, stencilAttachmentFormat);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineRenderingCreateInfo const &) const = default;
#else
bool operator==(PipelineRenderingCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (viewMask == rhs.viewMask) && (colorAttachmentCount == rhs.colorAttachmentCount) &&
(pColorAttachmentFormats == rhs.pColorAttachmentFormats) && (depthAttachmentFormat == rhs.depthAttachmentFormat) &&
(stencilAttachmentFormat == rhs.stencilAttachmentFormat);
# endif
}
bool operator!=(PipelineRenderingCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRenderingCreateInfo;
const void *pNext = {};
uint32_t viewMask = {};
uint32_t colorAttachmentCount = {};
const VULKAN_HPP_NAMESPACE::Format *pColorAttachmentFormats = {};
VULKAN_HPP_NAMESPACE::Format depthAttachmentFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::Format stencilAttachmentFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineRenderingCreateInfo) == sizeof(VkPipelineRenderingCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineRenderingCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineRenderingCreateInfo>::value,
"PipelineRenderingCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineRenderingCreateInfo>
{
using Type = PipelineRenderingCreateInfo;
};
using PipelineRenderingCreateInfoKHR = PipelineRenderingCreateInfo;
struct PipelineRepresentativeFragmentTestStateCreateInfoNV
{
using NativeType = VkPipelineRepresentativeFragmentTestStateCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineRepresentativeFragmentTestStateCreateInfoNV(VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTestEnable_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
representativeFragmentTestEnable(representativeFragmentTestEnable_)
{
}
VULKAN_HPP_CONSTEXPR
PipelineRepresentativeFragmentTestStateCreateInfoNV(PipelineRepresentativeFragmentTestStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRepresentativeFragmentTestStateCreateInfoNV(VkPipelineRepresentativeFragmentTestStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineRepresentativeFragmentTestStateCreateInfoNV(*reinterpret_cast<PipelineRepresentativeFragmentTestStateCreateInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineRepresentativeFragmentTestStateCreateInfoNV &
operator=(PipelineRepresentativeFragmentTestStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineRepresentativeFragmentTestStateCreateInfoNV &operator=(VkPipelineRepresentativeFragmentTestStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineRepresentativeFragmentTestStateCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineRepresentativeFragmentTestStateCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineRepresentativeFragmentTestStateCreateInfoNV &
setRepresentativeFragmentTestEnable(VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTestEnable_) VULKAN_HPP_NOEXCEPT
{
representativeFragmentTestEnable = representativeFragmentTestEnable_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineRepresentativeFragmentTestStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineRepresentativeFragmentTestStateCreateInfoNV *>(this);
}
explicit operator VkPipelineRepresentativeFragmentTestStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineRepresentativeFragmentTestStateCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, representativeFragmentTestEnable);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineRepresentativeFragmentTestStateCreateInfoNV const &) const = default;
#else
bool operator==(PipelineRepresentativeFragmentTestStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (representativeFragmentTestEnable == rhs.representativeFragmentTestEnable);
# endif
}
bool operator!=(PipelineRepresentativeFragmentTestStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 representativeFragmentTestEnable = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineRepresentativeFragmentTestStateCreateInfoNV) ==
sizeof(VkPipelineRepresentativeFragmentTestStateCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineRepresentativeFragmentTestStateCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineRepresentativeFragmentTestStateCreateInfoNV>::value,
"PipelineRepresentativeFragmentTestStateCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV>
{
using Type = PipelineRepresentativeFragmentTestStateCreateInfoNV;
};
struct PipelineSampleLocationsStateCreateInfoEXT
{
using NativeType = VkPipelineSampleLocationsStateCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineSampleLocationsStateCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineSampleLocationsStateCreateInfoEXT(VULKAN_HPP_NAMESPACE::Bool32 sampleLocationsEnable_ = {},
VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
sampleLocationsEnable(sampleLocationsEnable_),
sampleLocationsInfo(sampleLocationsInfo_)
{
}
VULKAN_HPP_CONSTEXPR PipelineSampleLocationsStateCreateInfoEXT(PipelineSampleLocationsStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineSampleLocationsStateCreateInfoEXT(VkPipelineSampleLocationsStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineSampleLocationsStateCreateInfoEXT(*reinterpret_cast<PipelineSampleLocationsStateCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineSampleLocationsStateCreateInfoEXT &operator=(PipelineSampleLocationsStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineSampleLocationsStateCreateInfoEXT &operator=(VkPipelineSampleLocationsStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineSampleLocationsStateCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineSampleLocationsStateCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineSampleLocationsStateCreateInfoEXT &
setSampleLocationsEnable(VULKAN_HPP_NAMESPACE::Bool32 sampleLocationsEnable_) VULKAN_HPP_NOEXCEPT
{
sampleLocationsEnable = sampleLocationsEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineSampleLocationsStateCreateInfoEXT &
setSampleLocationsInfo(VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const &sampleLocationsInfo_) VULKAN_HPP_NOEXCEPT
{
sampleLocationsInfo = sampleLocationsInfo_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineSampleLocationsStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineSampleLocationsStateCreateInfoEXT *>(this);
}
explicit operator VkPipelineSampleLocationsStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineSampleLocationsStateCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, sampleLocationsEnable, sampleLocationsInfo);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineSampleLocationsStateCreateInfoEXT const &) const = default;
#else
bool operator==(PipelineSampleLocationsStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (sampleLocationsEnable == rhs.sampleLocationsEnable) &&
(sampleLocationsInfo == rhs.sampleLocationsInfo);
# endif
}
bool operator!=(PipelineSampleLocationsStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineSampleLocationsStateCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 sampleLocationsEnable = {};
VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineSampleLocationsStateCreateInfoEXT) == sizeof(VkPipelineSampleLocationsStateCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineSampleLocationsStateCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineSampleLocationsStateCreateInfoEXT>::value,
"PipelineSampleLocationsStateCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineSampleLocationsStateCreateInfoEXT>
{
using Type = PipelineSampleLocationsStateCreateInfoEXT;
};
struct PipelineShaderStageRequiredSubgroupSizeCreateInfo
{
using NativeType = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineShaderStageRequiredSubgroupSizeCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineShaderStageRequiredSubgroupSizeCreateInfo(uint32_t requiredSubgroupSize_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
requiredSubgroupSize(requiredSubgroupSize_)
{
}
VULKAN_HPP_CONSTEXPR
PipelineShaderStageRequiredSubgroupSizeCreateInfo(PipelineShaderStageRequiredSubgroupSizeCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineShaderStageRequiredSubgroupSizeCreateInfo(VkPipelineShaderStageRequiredSubgroupSizeCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineShaderStageRequiredSubgroupSizeCreateInfo(*reinterpret_cast<PipelineShaderStageRequiredSubgroupSizeCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineShaderStageRequiredSubgroupSizeCreateInfo &
operator=(PipelineShaderStageRequiredSubgroupSizeCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineShaderStageRequiredSubgroupSizeCreateInfo &operator=(VkPipelineShaderStageRequiredSubgroupSizeCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineShaderStageRequiredSubgroupSizeCreateInfo const *>(&rhs);
return *this;
}
explicit operator VkPipelineShaderStageRequiredSubgroupSizeCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo *>(this);
}
explicit operator VkPipelineShaderStageRequiredSubgroupSizeCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineShaderStageRequiredSubgroupSizeCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, requiredSubgroupSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineShaderStageRequiredSubgroupSizeCreateInfo const &) const = default;
#else
bool operator==(PipelineShaderStageRequiredSubgroupSizeCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (requiredSubgroupSize == rhs.requiredSubgroupSize);
# endif
}
bool operator!=(PipelineShaderStageRequiredSubgroupSizeCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineShaderStageRequiredSubgroupSizeCreateInfo;
void *pNext = {};
uint32_t requiredSubgroupSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineShaderStageRequiredSubgroupSizeCreateInfo) ==
sizeof(VkPipelineShaderStageRequiredSubgroupSizeCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineShaderStageRequiredSubgroupSizeCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineShaderStageRequiredSubgroupSizeCreateInfo>::value,
"PipelineShaderStageRequiredSubgroupSizeCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineShaderStageRequiredSubgroupSizeCreateInfo>
{
using Type = PipelineShaderStageRequiredSubgroupSizeCreateInfo;
};
using PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT = PipelineShaderStageRequiredSubgroupSizeCreateInfo;
struct PipelineTessellationDomainOriginStateCreateInfo
{
using NativeType = VkPipelineTessellationDomainOriginStateCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineTessellationDomainOriginStateCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineTessellationDomainOriginStateCreateInfo(
VULKAN_HPP_NAMESPACE::TessellationDomainOrigin domainOrigin_ = VULKAN_HPP_NAMESPACE::TessellationDomainOrigin::eUpperLeft,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
domainOrigin(domainOrigin_)
{
}
VULKAN_HPP_CONSTEXPR
PipelineTessellationDomainOriginStateCreateInfo(PipelineTessellationDomainOriginStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineTessellationDomainOriginStateCreateInfo(VkPipelineTessellationDomainOriginStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineTessellationDomainOriginStateCreateInfo(*reinterpret_cast<PipelineTessellationDomainOriginStateCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineTessellationDomainOriginStateCreateInfo &operator=(PipelineTessellationDomainOriginStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineTessellationDomainOriginStateCreateInfo &operator=(VkPipelineTessellationDomainOriginStateCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineTessellationDomainOriginStateCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineTessellationDomainOriginStateCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineTessellationDomainOriginStateCreateInfo &
setDomainOrigin(VULKAN_HPP_NAMESPACE::TessellationDomainOrigin domainOrigin_) VULKAN_HPP_NOEXCEPT
{
domainOrigin = domainOrigin_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineTessellationDomainOriginStateCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineTessellationDomainOriginStateCreateInfo *>(this);
}
explicit operator VkPipelineTessellationDomainOriginStateCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineTessellationDomainOriginStateCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::TessellationDomainOrigin const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, domainOrigin);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineTessellationDomainOriginStateCreateInfo const &) const = default;
#else
bool operator==(PipelineTessellationDomainOriginStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (domainOrigin == rhs.domainOrigin);
# endif
}
bool operator!=(PipelineTessellationDomainOriginStateCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineTessellationDomainOriginStateCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::TessellationDomainOrigin domainOrigin = VULKAN_HPP_NAMESPACE::TessellationDomainOrigin::eUpperLeft;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineTessellationDomainOriginStateCreateInfo) ==
sizeof(VkPipelineTessellationDomainOriginStateCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineTessellationDomainOriginStateCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineTessellationDomainOriginStateCreateInfo>::value,
"PipelineTessellationDomainOriginStateCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineTessellationDomainOriginStateCreateInfo>
{
using Type = PipelineTessellationDomainOriginStateCreateInfo;
};
using PipelineTessellationDomainOriginStateCreateInfoKHR = PipelineTessellationDomainOriginStateCreateInfo;
struct VertexInputBindingDivisorDescriptionEXT
{
using NativeType = VkVertexInputBindingDivisorDescriptionEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VertexInputBindingDivisorDescriptionEXT(uint32_t binding_ = {}, uint32_t divisor_ = {}) VULKAN_HPP_NOEXCEPT
: binding(binding_),
divisor(divisor_)
{
}
VULKAN_HPP_CONSTEXPR VertexInputBindingDivisorDescriptionEXT(VertexInputBindingDivisorDescriptionEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VertexInputBindingDivisorDescriptionEXT(VkVertexInputBindingDivisorDescriptionEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VertexInputBindingDivisorDescriptionEXT(*reinterpret_cast<VertexInputBindingDivisorDescriptionEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VertexInputBindingDivisorDescriptionEXT &operator=(VertexInputBindingDivisorDescriptionEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VertexInputBindingDivisorDescriptionEXT &operator=(VkVertexInputBindingDivisorDescriptionEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDivisorDescriptionEXT &setBinding(uint32_t binding_) VULKAN_HPP_NOEXCEPT
{
binding = binding_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDivisorDescriptionEXT &setDivisor(uint32_t divisor_) VULKAN_HPP_NOEXCEPT
{
divisor = divisor_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVertexInputBindingDivisorDescriptionEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVertexInputBindingDivisorDescriptionEXT *>(this);
}
explicit operator VkVertexInputBindingDivisorDescriptionEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVertexInputBindingDivisorDescriptionEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(binding, divisor);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VertexInputBindingDivisorDescriptionEXT const &) const = default;
#else
bool operator==(VertexInputBindingDivisorDescriptionEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (binding == rhs.binding) && (divisor == rhs.divisor);
# endif
}
bool operator!=(VertexInputBindingDivisorDescriptionEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t binding = {};
uint32_t divisor = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT) == sizeof(VkVertexInputBindingDivisorDescriptionEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT>::value,
"VertexInputBindingDivisorDescriptionEXT is not nothrow_move_constructible!");
struct PipelineVertexInputDivisorStateCreateInfoEXT
{
using NativeType = VkPipelineVertexInputDivisorStateCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineVertexInputDivisorStateCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
PipelineVertexInputDivisorStateCreateInfoEXT(uint32_t vertexBindingDivisorCount_ = {},
const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT *pVertexBindingDivisors_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
vertexBindingDivisorCount(vertexBindingDivisorCount_),
pVertexBindingDivisors(pVertexBindingDivisors_)
{
}
VULKAN_HPP_CONSTEXPR PipelineVertexInputDivisorStateCreateInfoEXT(PipelineVertexInputDivisorStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineVertexInputDivisorStateCreateInfoEXT(VkPipelineVertexInputDivisorStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineVertexInputDivisorStateCreateInfoEXT(*reinterpret_cast<PipelineVertexInputDivisorStateCreateInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineVertexInputDivisorStateCreateInfoEXT(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT> const &vertexBindingDivisors_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, vertexBindingDivisorCount(static_cast<uint32_t>(vertexBindingDivisors_.size()))
, pVertexBindingDivisors(vertexBindingDivisors_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineVertexInputDivisorStateCreateInfoEXT &operator=(PipelineVertexInputDivisorStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineVertexInputDivisorStateCreateInfoEXT &operator=(VkPipelineVertexInputDivisorStateCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineVertexInputDivisorStateCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineVertexInputDivisorStateCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineVertexInputDivisorStateCreateInfoEXT &
setVertexBindingDivisorCount(uint32_t vertexBindingDivisorCount_) VULKAN_HPP_NOEXCEPT
{
vertexBindingDivisorCount = vertexBindingDivisorCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineVertexInputDivisorStateCreateInfoEXT &
setPVertexBindingDivisors(const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT *pVertexBindingDivisors_) VULKAN_HPP_NOEXCEPT
{
pVertexBindingDivisors = pVertexBindingDivisors_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineVertexInputDivisorStateCreateInfoEXT &setVertexBindingDivisors(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT> const &vertexBindingDivisors_)
VULKAN_HPP_NOEXCEPT
{
vertexBindingDivisorCount = static_cast<uint32_t>(vertexBindingDivisors_.size());
pVertexBindingDivisors = vertexBindingDivisors_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineVertexInputDivisorStateCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineVertexInputDivisorStateCreateInfoEXT *>(this);
}
explicit operator VkPipelineVertexInputDivisorStateCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineVertexInputDivisorStateCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, vertexBindingDivisorCount, pVertexBindingDivisors);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineVertexInputDivisorStateCreateInfoEXT const &) const = default;
#else
bool operator==(PipelineVertexInputDivisorStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (vertexBindingDivisorCount == rhs.vertexBindingDivisorCount) &&
(pVertexBindingDivisors == rhs.pVertexBindingDivisors);
# endif
}
bool operator!=(PipelineVertexInputDivisorStateCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineVertexInputDivisorStateCreateInfoEXT;
const void *pNext = {};
uint32_t vertexBindingDivisorCount = {};
const VULKAN_HPP_NAMESPACE::VertexInputBindingDivisorDescriptionEXT *pVertexBindingDivisors = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineVertexInputDivisorStateCreateInfoEXT) ==
sizeof(VkPipelineVertexInputDivisorStateCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineVertexInputDivisorStateCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineVertexInputDivisorStateCreateInfoEXT>::value,
"PipelineVertexInputDivisorStateCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineVertexInputDivisorStateCreateInfoEXT>
{
using Type = PipelineVertexInputDivisorStateCreateInfoEXT;
};
struct PipelineViewportCoarseSampleOrderStateCreateInfoNV
{
using NativeType = VkPipelineViewportCoarseSampleOrderStateCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportCoarseSampleOrderStateCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineViewportCoarseSampleOrderStateCreateInfoNV(
VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType_ = VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV::eDefault,
uint32_t customSampleOrderCount_ = {},
const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV *pCustomSampleOrders_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
sampleOrderType(sampleOrderType_),
customSampleOrderCount(customSampleOrderCount_),
pCustomSampleOrders(pCustomSampleOrders_)
{
}
VULKAN_HPP_CONSTEXPR
PipelineViewportCoarseSampleOrderStateCreateInfoNV(PipelineViewportCoarseSampleOrderStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportCoarseSampleOrderStateCreateInfoNV(VkPipelineViewportCoarseSampleOrderStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineViewportCoarseSampleOrderStateCreateInfoNV(*reinterpret_cast<PipelineViewportCoarseSampleOrderStateCreateInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportCoarseSampleOrderStateCreateInfoNV(
VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV> const &customSampleOrders_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, sampleOrderType(sampleOrderType_)
, customSampleOrderCount(static_cast<uint32_t>(customSampleOrders_.size()))
, pCustomSampleOrders(customSampleOrders_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineViewportCoarseSampleOrderStateCreateInfoNV &
operator=(PipelineViewportCoarseSampleOrderStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportCoarseSampleOrderStateCreateInfoNV &operator=(VkPipelineViewportCoarseSampleOrderStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportCoarseSampleOrderStateCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineViewportCoarseSampleOrderStateCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportCoarseSampleOrderStateCreateInfoNV &
setSampleOrderType(VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType_) VULKAN_HPP_NOEXCEPT
{
sampleOrderType = sampleOrderType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportCoarseSampleOrderStateCreateInfoNV &
setCustomSampleOrderCount(uint32_t customSampleOrderCount_) VULKAN_HPP_NOEXCEPT
{
customSampleOrderCount = customSampleOrderCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportCoarseSampleOrderStateCreateInfoNV &
setPCustomSampleOrders(const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV *pCustomSampleOrders_) VULKAN_HPP_NOEXCEPT
{
pCustomSampleOrders = pCustomSampleOrders_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportCoarseSampleOrderStateCreateInfoNV &setCustomSampleOrders(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV> const &customSampleOrders_) VULKAN_HPP_NOEXCEPT
{
customSampleOrderCount = static_cast<uint32_t>(customSampleOrders_.size());
pCustomSampleOrders = customSampleOrders_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineViewportCoarseSampleOrderStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineViewportCoarseSampleOrderStateCreateInfoNV *>(this);
}
explicit operator VkPipelineViewportCoarseSampleOrderStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineViewportCoarseSampleOrderStateCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, sampleOrderType, customSampleOrderCount, pCustomSampleOrders);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineViewportCoarseSampleOrderStateCreateInfoNV const &) const = default;
#else
bool operator==(PipelineViewportCoarseSampleOrderStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (sampleOrderType == rhs.sampleOrderType) &&
(customSampleOrderCount == rhs.customSampleOrderCount) && (pCustomSampleOrders == rhs.pCustomSampleOrders);
# endif
}
bool operator!=(PipelineViewportCoarseSampleOrderStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportCoarseSampleOrderStateCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV sampleOrderType = VULKAN_HPP_NAMESPACE::CoarseSampleOrderTypeNV::eDefault;
uint32_t customSampleOrderCount = {};
const VULKAN_HPP_NAMESPACE::CoarseSampleOrderCustomNV *pCustomSampleOrders = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineViewportCoarseSampleOrderStateCreateInfoNV) ==
sizeof(VkPipelineViewportCoarseSampleOrderStateCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineViewportCoarseSampleOrderStateCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineViewportCoarseSampleOrderStateCreateInfoNV>::value,
"PipelineViewportCoarseSampleOrderStateCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineViewportCoarseSampleOrderStateCreateInfoNV>
{
using Type = PipelineViewportCoarseSampleOrderStateCreateInfoNV;
};
struct PipelineViewportDepthClipControlCreateInfoEXT
{
using NativeType = VkPipelineViewportDepthClipControlCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportDepthClipControlCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineViewportDepthClipControlCreateInfoEXT(VULKAN_HPP_NAMESPACE::Bool32 negativeOneToOne_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
negativeOneToOne(negativeOneToOne_)
{
}
VULKAN_HPP_CONSTEXPR
PipelineViewportDepthClipControlCreateInfoEXT(PipelineViewportDepthClipControlCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportDepthClipControlCreateInfoEXT(VkPipelineViewportDepthClipControlCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineViewportDepthClipControlCreateInfoEXT(*reinterpret_cast<PipelineViewportDepthClipControlCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineViewportDepthClipControlCreateInfoEXT &operator=(PipelineViewportDepthClipControlCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportDepthClipControlCreateInfoEXT &operator=(VkPipelineViewportDepthClipControlCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportDepthClipControlCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineViewportDepthClipControlCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportDepthClipControlCreateInfoEXT &
setNegativeOneToOne(VULKAN_HPP_NAMESPACE::Bool32 negativeOneToOne_) VULKAN_HPP_NOEXCEPT
{
negativeOneToOne = negativeOneToOne_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineViewportDepthClipControlCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineViewportDepthClipControlCreateInfoEXT *>(this);
}
explicit operator VkPipelineViewportDepthClipControlCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineViewportDepthClipControlCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, negativeOneToOne);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineViewportDepthClipControlCreateInfoEXT const &) const = default;
#else
bool operator==(PipelineViewportDepthClipControlCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (negativeOneToOne == rhs.negativeOneToOne);
# endif
}
bool operator!=(PipelineViewportDepthClipControlCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportDepthClipControlCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 negativeOneToOne = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineViewportDepthClipControlCreateInfoEXT) ==
sizeof(VkPipelineViewportDepthClipControlCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineViewportDepthClipControlCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineViewportDepthClipControlCreateInfoEXT>::value,
"PipelineViewportDepthClipControlCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineViewportDepthClipControlCreateInfoEXT>
{
using Type = PipelineViewportDepthClipControlCreateInfoEXT;
};
struct PipelineViewportExclusiveScissorStateCreateInfoNV
{
using NativeType = VkPipelineViewportExclusiveScissorStateCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineViewportExclusiveScissorStateCreateInfoNV(uint32_t exclusiveScissorCount_ = {},
const VULKAN_HPP_NAMESPACE::Rect2D *pExclusiveScissors_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
exclusiveScissorCount(exclusiveScissorCount_),
pExclusiveScissors(pExclusiveScissors_)
{
}
VULKAN_HPP_CONSTEXPR
PipelineViewportExclusiveScissorStateCreateInfoNV(PipelineViewportExclusiveScissorStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportExclusiveScissorStateCreateInfoNV(VkPipelineViewportExclusiveScissorStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineViewportExclusiveScissorStateCreateInfoNV(*reinterpret_cast<PipelineViewportExclusiveScissorStateCreateInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportExclusiveScissorStateCreateInfoNV(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const &exclusiveScissors_, const void *pNext_ = nullptr)
: pNext(pNext_)
, exclusiveScissorCount(static_cast<uint32_t>(exclusiveScissors_.size()))
, pExclusiveScissors(exclusiveScissors_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineViewportExclusiveScissorStateCreateInfoNV &
operator=(PipelineViewportExclusiveScissorStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportExclusiveScissorStateCreateInfoNV &operator=(VkPipelineViewportExclusiveScissorStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportExclusiveScissorStateCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineViewportExclusiveScissorStateCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportExclusiveScissorStateCreateInfoNV &setExclusiveScissorCount(uint32_t exclusiveScissorCount_) VULKAN_HPP_NOEXCEPT
{
exclusiveScissorCount = exclusiveScissorCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportExclusiveScissorStateCreateInfoNV &
setPExclusiveScissors(const VULKAN_HPP_NAMESPACE::Rect2D *pExclusiveScissors_) VULKAN_HPP_NOEXCEPT
{
pExclusiveScissors = pExclusiveScissors_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportExclusiveScissorStateCreateInfoNV &
setExclusiveScissors(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Rect2D> const &exclusiveScissors_) VULKAN_HPP_NOEXCEPT
{
exclusiveScissorCount = static_cast<uint32_t>(exclusiveScissors_.size());
pExclusiveScissors = exclusiveScissors_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineViewportExclusiveScissorStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineViewportExclusiveScissorStateCreateInfoNV *>(this);
}
explicit operator VkPipelineViewportExclusiveScissorStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineViewportExclusiveScissorStateCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::Rect2D *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, exclusiveScissorCount, pExclusiveScissors);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineViewportExclusiveScissorStateCreateInfoNV const &) const = default;
#else
bool operator==(PipelineViewportExclusiveScissorStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (exclusiveScissorCount == rhs.exclusiveScissorCount) &&
(pExclusiveScissors == rhs.pExclusiveScissors);
# endif
}
bool operator!=(PipelineViewportExclusiveScissorStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV;
const void *pNext = {};
uint32_t exclusiveScissorCount = {};
const VULKAN_HPP_NAMESPACE::Rect2D *pExclusiveScissors = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineViewportExclusiveScissorStateCreateInfoNV) ==
sizeof(VkPipelineViewportExclusiveScissorStateCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineViewportExclusiveScissorStateCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineViewportExclusiveScissorStateCreateInfoNV>::value,
"PipelineViewportExclusiveScissorStateCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV>
{
using Type = PipelineViewportExclusiveScissorStateCreateInfoNV;
};
struct ShadingRatePaletteNV
{
using NativeType = VkShadingRatePaletteNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ShadingRatePaletteNV(uint32_t shadingRatePaletteEntryCount_ = {},
const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV *pShadingRatePaletteEntries_ = {}) VULKAN_HPP_NOEXCEPT
: shadingRatePaletteEntryCount(shadingRatePaletteEntryCount_),
pShadingRatePaletteEntries(pShadingRatePaletteEntries_)
{
}
VULKAN_HPP_CONSTEXPR ShadingRatePaletteNV(ShadingRatePaletteNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ShadingRatePaletteNV(VkShadingRatePaletteNV const &rhs) VULKAN_HPP_NOEXCEPT
: ShadingRatePaletteNV(*reinterpret_cast<ShadingRatePaletteNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ShadingRatePaletteNV(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV> const &shadingRatePaletteEntries_)
: shadingRatePaletteEntryCount(static_cast<uint32_t>(shadingRatePaletteEntries_.size()))
, pShadingRatePaletteEntries(shadingRatePaletteEntries_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ShadingRatePaletteNV &operator=(ShadingRatePaletteNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ShadingRatePaletteNV &operator=(VkShadingRatePaletteNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ShadingRatePaletteNV &setShadingRatePaletteEntryCount(uint32_t shadingRatePaletteEntryCount_) VULKAN_HPP_NOEXCEPT
{
shadingRatePaletteEntryCount = shadingRatePaletteEntryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ShadingRatePaletteNV &
setPShadingRatePaletteEntries(const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV *pShadingRatePaletteEntries_) VULKAN_HPP_NOEXCEPT
{
pShadingRatePaletteEntries = pShadingRatePaletteEntries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ShadingRatePaletteNV &setShadingRatePaletteEntries(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV> const &shadingRatePaletteEntries_)
VULKAN_HPP_NOEXCEPT
{
shadingRatePaletteEntryCount = static_cast<uint32_t>(shadingRatePaletteEntries_.size());
pShadingRatePaletteEntries = shadingRatePaletteEntries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkShadingRatePaletteNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkShadingRatePaletteNV *>(this);
}
explicit operator VkShadingRatePaletteNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkShadingRatePaletteNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(shadingRatePaletteEntryCount, pShadingRatePaletteEntries);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ShadingRatePaletteNV const &) const = default;
#else
bool operator==(ShadingRatePaletteNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (shadingRatePaletteEntryCount == rhs.shadingRatePaletteEntryCount) && (pShadingRatePaletteEntries == rhs.pShadingRatePaletteEntries);
# endif
}
bool operator!=(ShadingRatePaletteNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t shadingRatePaletteEntryCount = {};
const VULKAN_HPP_NAMESPACE::ShadingRatePaletteEntryNV *pShadingRatePaletteEntries = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV) == sizeof(VkShadingRatePaletteNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV>::value,
"ShadingRatePaletteNV is not nothrow_move_constructible!");
struct PipelineViewportShadingRateImageStateCreateInfoNV
{
using NativeType = VkPipelineViewportShadingRateImageStateCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportShadingRateImageStateCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineViewportShadingRateImageStateCreateInfoNV(VULKAN_HPP_NAMESPACE::Bool32 shadingRateImageEnable_ = {},
uint32_t viewportCount_ = {},
const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV *pShadingRatePalettes_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
shadingRateImageEnable(shadingRateImageEnable_),
viewportCount(viewportCount_),
pShadingRatePalettes(pShadingRatePalettes_)
{
}
VULKAN_HPP_CONSTEXPR
PipelineViewportShadingRateImageStateCreateInfoNV(PipelineViewportShadingRateImageStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportShadingRateImageStateCreateInfoNV(VkPipelineViewportShadingRateImageStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineViewportShadingRateImageStateCreateInfoNV(*reinterpret_cast<PipelineViewportShadingRateImageStateCreateInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportShadingRateImageStateCreateInfoNV(
VULKAN_HPP_NAMESPACE::Bool32 shadingRateImageEnable_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV> const &shadingRatePalettes_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, shadingRateImageEnable(shadingRateImageEnable_)
, viewportCount(static_cast<uint32_t>(shadingRatePalettes_.size()))
, pShadingRatePalettes(shadingRatePalettes_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineViewportShadingRateImageStateCreateInfoNV &
operator=(PipelineViewportShadingRateImageStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportShadingRateImageStateCreateInfoNV &operator=(VkPipelineViewportShadingRateImageStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportShadingRateImageStateCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineViewportShadingRateImageStateCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportShadingRateImageStateCreateInfoNV &
setShadingRateImageEnable(VULKAN_HPP_NAMESPACE::Bool32 shadingRateImageEnable_) VULKAN_HPP_NOEXCEPT
{
shadingRateImageEnable = shadingRateImageEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportShadingRateImageStateCreateInfoNV &setViewportCount(uint32_t viewportCount_) VULKAN_HPP_NOEXCEPT
{
viewportCount = viewportCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportShadingRateImageStateCreateInfoNV &
setPShadingRatePalettes(const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV *pShadingRatePalettes_) VULKAN_HPP_NOEXCEPT
{
pShadingRatePalettes = pShadingRatePalettes_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportShadingRateImageStateCreateInfoNV &setShadingRatePalettes(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV> const &shadingRatePalettes_) VULKAN_HPP_NOEXCEPT
{
viewportCount = static_cast<uint32_t>(shadingRatePalettes_.size());
pShadingRatePalettes = shadingRatePalettes_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineViewportShadingRateImageStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineViewportShadingRateImageStateCreateInfoNV *>(this);
}
explicit operator VkPipelineViewportShadingRateImageStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineViewportShadingRateImageStateCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, shadingRateImageEnable, viewportCount, pShadingRatePalettes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineViewportShadingRateImageStateCreateInfoNV const &) const = default;
#else
bool operator==(PipelineViewportShadingRateImageStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (shadingRateImageEnable == rhs.shadingRateImageEnable) &&
(viewportCount == rhs.viewportCount) && (pShadingRatePalettes == rhs.pShadingRatePalettes);
# endif
}
bool operator!=(PipelineViewportShadingRateImageStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportShadingRateImageStateCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 shadingRateImageEnable = {};
uint32_t viewportCount = {};
const VULKAN_HPP_NAMESPACE::ShadingRatePaletteNV *pShadingRatePalettes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineViewportShadingRateImageStateCreateInfoNV) ==
sizeof(VkPipelineViewportShadingRateImageStateCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineViewportShadingRateImageStateCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineViewportShadingRateImageStateCreateInfoNV>::value,
"PipelineViewportShadingRateImageStateCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineViewportShadingRateImageStateCreateInfoNV>
{
using Type = PipelineViewportShadingRateImageStateCreateInfoNV;
};
struct ViewportSwizzleNV
{
using NativeType = VkViewportSwizzleNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ViewportSwizzleNV(
VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV x_ = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX,
VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV y_ = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX,
VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV z_ = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX,
VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV w_ = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX) VULKAN_HPP_NOEXCEPT
: x(x_),
y(y_),
z(z_),
w(w_)
{
}
VULKAN_HPP_CONSTEXPR ViewportSwizzleNV(ViewportSwizzleNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ViewportSwizzleNV(VkViewportSwizzleNV const &rhs) VULKAN_HPP_NOEXCEPT : ViewportSwizzleNV(*reinterpret_cast<ViewportSwizzleNV const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ViewportSwizzleNV &operator=(ViewportSwizzleNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ViewportSwizzleNV &operator=(VkViewportSwizzleNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ViewportSwizzleNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ViewportSwizzleNV &setX(VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV x_) VULKAN_HPP_NOEXCEPT
{
x = x_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ViewportSwizzleNV &setY(VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV y_) VULKAN_HPP_NOEXCEPT
{
y = y_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ViewportSwizzleNV &setZ(VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV z_) VULKAN_HPP_NOEXCEPT
{
z = z_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ViewportSwizzleNV &setW(VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV w_) VULKAN_HPP_NOEXCEPT
{
w = w_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkViewportSwizzleNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkViewportSwizzleNV *>(this);
}
explicit operator VkViewportSwizzleNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkViewportSwizzleNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV const &,
VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV const &,
VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV const &,
VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(x, y, z, w);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ViewportSwizzleNV const &) const = default;
#else
bool operator==(ViewportSwizzleNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (x == rhs.x) && (y == rhs.y) && (z == rhs.z) && (w == rhs.w);
# endif
}
bool operator!=(ViewportSwizzleNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV x = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX;
VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV y = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX;
VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV z = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX;
VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV w = VULKAN_HPP_NAMESPACE::ViewportCoordinateSwizzleNV::ePositiveX;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ViewportSwizzleNV) == sizeof(VkViewportSwizzleNV), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ViewportSwizzleNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ViewportSwizzleNV>::value,
"ViewportSwizzleNV is not nothrow_move_constructible!");
struct PipelineViewportSwizzleStateCreateInfoNV
{
using NativeType = VkPipelineViewportSwizzleStateCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportSwizzleStateCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineViewportSwizzleStateCreateInfoNV(VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV flags_ = {},
uint32_t viewportCount_ = {},
const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV *pViewportSwizzles_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
viewportCount(viewportCount_),
pViewportSwizzles(pViewportSwizzles_)
{
}
VULKAN_HPP_CONSTEXPR PipelineViewportSwizzleStateCreateInfoNV(PipelineViewportSwizzleStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportSwizzleStateCreateInfoNV(VkPipelineViewportSwizzleStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineViewportSwizzleStateCreateInfoNV(*reinterpret_cast<PipelineViewportSwizzleStateCreateInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportSwizzleStateCreateInfoNV(
VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV> const &viewportSwizzles_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, viewportCount(static_cast<uint32_t>(viewportSwizzles_.size()))
, pViewportSwizzles(viewportSwizzles_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineViewportSwizzleStateCreateInfoNV &operator=(PipelineViewportSwizzleStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportSwizzleStateCreateInfoNV &operator=(VkPipelineViewportSwizzleStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineViewportSwizzleStateCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportSwizzleStateCreateInfoNV &
setFlags(VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportSwizzleStateCreateInfoNV &setViewportCount(uint32_t viewportCount_) VULKAN_HPP_NOEXCEPT
{
viewportCount = viewportCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportSwizzleStateCreateInfoNV &
setPViewportSwizzles(const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV *pViewportSwizzles_) VULKAN_HPP_NOEXCEPT
{
pViewportSwizzles = pViewportSwizzles_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportSwizzleStateCreateInfoNV &setViewportSwizzles(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV> const &viewportSwizzles_) VULKAN_HPP_NOEXCEPT
{
viewportCount = static_cast<uint32_t>(viewportSwizzles_.size());
pViewportSwizzles = viewportSwizzles_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineViewportSwizzleStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineViewportSwizzleStateCreateInfoNV *>(this);
}
explicit operator VkPipelineViewportSwizzleStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineViewportSwizzleStateCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, viewportCount, pViewportSwizzles);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineViewportSwizzleStateCreateInfoNV const &) const = default;
#else
bool operator==(PipelineViewportSwizzleStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (viewportCount == rhs.viewportCount) &&
(pViewportSwizzles == rhs.pViewportSwizzles);
# endif
}
bool operator!=(PipelineViewportSwizzleStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportSwizzleStateCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateFlagsNV flags = {};
uint32_t viewportCount = {};
const VULKAN_HPP_NAMESPACE::ViewportSwizzleNV *pViewportSwizzles = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateInfoNV) == sizeof(VkPipelineViewportSwizzleStateCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineViewportSwizzleStateCreateInfoNV>::value,
"PipelineViewportSwizzleStateCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineViewportSwizzleStateCreateInfoNV>
{
using Type = PipelineViewportSwizzleStateCreateInfoNV;
};
struct ViewportWScalingNV
{
using NativeType = VkViewportWScalingNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ViewportWScalingNV(float xcoeff_ = {}, float ycoeff_ = {}) VULKAN_HPP_NOEXCEPT
: xcoeff(xcoeff_),
ycoeff(ycoeff_)
{
}
VULKAN_HPP_CONSTEXPR ViewportWScalingNV(ViewportWScalingNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ViewportWScalingNV(VkViewportWScalingNV const &rhs) VULKAN_HPP_NOEXCEPT : ViewportWScalingNV(*reinterpret_cast<ViewportWScalingNV const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ViewportWScalingNV &operator=(ViewportWScalingNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
ViewportWScalingNV &operator=(VkViewportWScalingNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ViewportWScalingNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ViewportWScalingNV &setXcoeff(float xcoeff_) VULKAN_HPP_NOEXCEPT
{
xcoeff = xcoeff_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ViewportWScalingNV &setYcoeff(float ycoeff_) VULKAN_HPP_NOEXCEPT
{
ycoeff = ycoeff_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkViewportWScalingNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkViewportWScalingNV *>(this);
}
explicit operator VkViewportWScalingNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkViewportWScalingNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<float const &, float const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(xcoeff, ycoeff);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ViewportWScalingNV const &) const = default;
#else
bool operator==(ViewportWScalingNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (xcoeff == rhs.xcoeff) && (ycoeff == rhs.ycoeff);
# endif
}
bool operator!=(ViewportWScalingNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
float xcoeff = {};
float ycoeff = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ViewportWScalingNV) == sizeof(VkViewportWScalingNV), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ViewportWScalingNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ViewportWScalingNV>::value,
"ViewportWScalingNV is not nothrow_move_constructible!");
struct PipelineViewportWScalingStateCreateInfoNV
{
using NativeType = VkPipelineViewportWScalingStateCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePipelineViewportWScalingStateCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PipelineViewportWScalingStateCreateInfoNV(VULKAN_HPP_NAMESPACE::Bool32 viewportWScalingEnable_ = {},
uint32_t viewportCount_ = {},
const VULKAN_HPP_NAMESPACE::ViewportWScalingNV *pViewportWScalings_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
viewportWScalingEnable(viewportWScalingEnable_),
viewportCount(viewportCount_),
pViewportWScalings(pViewportWScalings_)
{
}
VULKAN_HPP_CONSTEXPR PipelineViewportWScalingStateCreateInfoNV(PipelineViewportWScalingStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportWScalingStateCreateInfoNV(VkPipelineViewportWScalingStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: PipelineViewportWScalingStateCreateInfoNV(*reinterpret_cast<PipelineViewportWScalingStateCreateInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportWScalingStateCreateInfoNV(
VULKAN_HPP_NAMESPACE::Bool32 viewportWScalingEnable_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ViewportWScalingNV> const &viewportWScalings_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, viewportWScalingEnable(viewportWScalingEnable_)
, viewportCount(static_cast<uint32_t>(viewportWScalings_.size()))
, pViewportWScalings(viewportWScalings_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PipelineViewportWScalingStateCreateInfoNV &operator=(PipelineViewportWScalingStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
PipelineViewportWScalingStateCreateInfoNV &operator=(VkPipelineViewportWScalingStateCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PipelineViewportWScalingStateCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PipelineViewportWScalingStateCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportWScalingStateCreateInfoNV &
setViewportWScalingEnable(VULKAN_HPP_NAMESPACE::Bool32 viewportWScalingEnable_) VULKAN_HPP_NOEXCEPT
{
viewportWScalingEnable = viewportWScalingEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportWScalingStateCreateInfoNV &setViewportCount(uint32_t viewportCount_) VULKAN_HPP_NOEXCEPT
{
viewportCount = viewportCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PipelineViewportWScalingStateCreateInfoNV &
setPViewportWScalings(const VULKAN_HPP_NAMESPACE::ViewportWScalingNV *pViewportWScalings_) VULKAN_HPP_NOEXCEPT
{
pViewportWScalings = pViewportWScalings_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PipelineViewportWScalingStateCreateInfoNV &setViewportWScalings(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ViewportWScalingNV> const &viewportWScalings_) VULKAN_HPP_NOEXCEPT
{
viewportCount = static_cast<uint32_t>(viewportWScalings_.size());
pViewportWScalings = viewportWScalings_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPipelineViewportWScalingStateCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPipelineViewportWScalingStateCreateInfoNV *>(this);
}
explicit operator VkPipelineViewportWScalingStateCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPipelineViewportWScalingStateCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ViewportWScalingNV *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, viewportWScalingEnable, viewportCount, pViewportWScalings);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PipelineViewportWScalingStateCreateInfoNV const &) const = default;
#else
bool operator==(PipelineViewportWScalingStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (viewportWScalingEnable == rhs.viewportWScalingEnable) &&
(viewportCount == rhs.viewportCount) && (pViewportWScalings == rhs.pViewportWScalings);
# endif
}
bool operator!=(PipelineViewportWScalingStateCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePipelineViewportWScalingStateCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 viewportWScalingEnable = {};
uint32_t viewportCount = {};
const VULKAN_HPP_NAMESPACE::ViewportWScalingNV *pViewportWScalings = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PipelineViewportWScalingStateCreateInfoNV) == sizeof(VkPipelineViewportWScalingStateCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PipelineViewportWScalingStateCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PipelineViewportWScalingStateCreateInfoNV>::value,
"PipelineViewportWScalingStateCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePipelineViewportWScalingStateCreateInfoNV>
{
using Type = PipelineViewportWScalingStateCreateInfoNV;
};
#if defined(VK_USE_PLATFORM_GGP)
struct PresentFrameTokenGGP
{
using NativeType = VkPresentFrameTokenGGP;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentFrameTokenGGP;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PresentFrameTokenGGP(GgpFrameToken frameToken_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
frameToken(frameToken_)
{
}
VULKAN_HPP_CONSTEXPR PresentFrameTokenGGP(PresentFrameTokenGGP const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentFrameTokenGGP(VkPresentFrameTokenGGP const &rhs) VULKAN_HPP_NOEXCEPT
: PresentFrameTokenGGP(*reinterpret_cast<PresentFrameTokenGGP const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PresentFrameTokenGGP &operator=(PresentFrameTokenGGP const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentFrameTokenGGP &operator=(VkPresentFrameTokenGGP const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentFrameTokenGGP const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PresentFrameTokenGGP &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PresentFrameTokenGGP &setFrameToken(GgpFrameToken frameToken_) VULKAN_HPP_NOEXCEPT
{
frameToken = frameToken_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPresentFrameTokenGGP const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPresentFrameTokenGGP *>(this);
}
explicit operator VkPresentFrameTokenGGP &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPresentFrameTokenGGP *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, GgpFrameToken const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, frameToken);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(PresentFrameTokenGGP const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = memcmp(&frameToken, &rhs.frameToken, sizeof(GgpFrameToken)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(PresentFrameTokenGGP const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memcmp(&frameToken, &rhs.frameToken, sizeof(GgpFrameToken)) == 0);
}
bool operator!=(PresentFrameTokenGGP const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentFrameTokenGGP;
const void *pNext = {};
GgpFrameToken frameToken = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PresentFrameTokenGGP) == sizeof(VkPresentFrameTokenGGP),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PresentFrameTokenGGP>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PresentFrameTokenGGP>::value,
"PresentFrameTokenGGP is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePresentFrameTokenGGP>
{
using Type = PresentFrameTokenGGP;
};
#endif /*VK_USE_PLATFORM_GGP*/
struct PresentIdKHR
{
using NativeType = VkPresentIdKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentIdKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PresentIdKHR(uint32_t swapchainCount_ = {}, const uint64_t *pPresentIds_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
swapchainCount(swapchainCount_),
pPresentIds(pPresentIds_)
{
}
VULKAN_HPP_CONSTEXPR PresentIdKHR(PresentIdKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentIdKHR(VkPresentIdKHR const &rhs) VULKAN_HPP_NOEXCEPT : PresentIdKHR(*reinterpret_cast<PresentIdKHR const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentIdKHR(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &presentIds_, const void *pNext_ = nullptr)
: pNext(pNext_)
, swapchainCount(static_cast<uint32_t>(presentIds_.size()))
, pPresentIds(presentIds_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PresentIdKHR &operator=(PresentIdKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentIdKHR &operator=(VkPresentIdKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentIdKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PresentIdKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PresentIdKHR &setSwapchainCount(uint32_t swapchainCount_) VULKAN_HPP_NOEXCEPT
{
swapchainCount = swapchainCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PresentIdKHR &setPPresentIds(const uint64_t *pPresentIds_) VULKAN_HPP_NOEXCEPT
{
pPresentIds = pPresentIds_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentIdKHR &setPresentIds(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &presentIds_) VULKAN_HPP_NOEXCEPT
{
swapchainCount = static_cast<uint32_t>(presentIds_.size());
pPresentIds = presentIds_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPresentIdKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPresentIdKHR *>(this);
}
explicit operator VkPresentIdKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPresentIdKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const uint64_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, swapchainCount, pPresentIds);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PresentIdKHR const &) const = default;
#else
bool operator==(PresentIdKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (swapchainCount == rhs.swapchainCount) && (pPresentIds == rhs.pPresentIds);
# endif
}
bool operator!=(PresentIdKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentIdKHR;
const void *pNext = {};
uint32_t swapchainCount = {};
const uint64_t *pPresentIds = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PresentIdKHR) == sizeof(VkPresentIdKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PresentIdKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PresentIdKHR>::value, "PresentIdKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePresentIdKHR>
{
using Type = PresentIdKHR;
};
struct PresentInfoKHR
{
using NativeType = VkPresentInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PresentInfoKHR(uint32_t waitSemaphoreCount_ = {},
const VULKAN_HPP_NAMESPACE::Semaphore *pWaitSemaphores_ = {},
uint32_t swapchainCount_ = {},
const VULKAN_HPP_NAMESPACE::SwapchainKHR *pSwapchains_ = {},
const uint32_t *pImageIndices_ = {},
VULKAN_HPP_NAMESPACE::Result *pResults_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
waitSemaphoreCount(waitSemaphoreCount_),
pWaitSemaphores(pWaitSemaphores_),
swapchainCount(swapchainCount_),
pSwapchains(pSwapchains_),
pImageIndices(pImageIndices_),
pResults(pResults_)
{
}
VULKAN_HPP_CONSTEXPR PresentInfoKHR(PresentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentInfoKHR(VkPresentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT : PresentInfoKHR(*reinterpret_cast<PresentInfoKHR const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentInfoKHR(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &waitSemaphores_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SwapchainKHR> const &swapchains_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &imageIndices_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::Result> const &results_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, waitSemaphoreCount(static_cast<uint32_t>(waitSemaphores_.size()))
, pWaitSemaphores(waitSemaphores_.data())
, swapchainCount(static_cast<uint32_t>(swapchains_.size()))
, pSwapchains(swapchains_.data())
, pImageIndices(imageIndices_.data())
, pResults(results_.data())
{
# ifdef VULKAN_HPP_NO_EXCEPTIONS
VULKAN_HPP_ASSERT(swapchains_.size() == imageIndices_.size());
VULKAN_HPP_ASSERT(results_.empty() || (swapchains_.size() == results_.size()));
VULKAN_HPP_ASSERT(results_.empty() || (imageIndices_.size() == results_.size()));
# else
if(swapchains_.size() != imageIndices_.size())
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING "::PresentInfoKHR::PresentInfoKHR: swapchains_.size() != imageIndices_.size()");
}
if(!results_.empty() && (swapchains_.size() != results_.size()))
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING "::PresentInfoKHR::PresentInfoKHR: !results_.empty() && ( swapchains_.size() != results_.size() )");
}
if(!results_.empty() && (imageIndices_.size() != results_.size()))
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING "::PresentInfoKHR::PresentInfoKHR: !results_.empty() && ( imageIndices_.size() != results_.size() )");
}
# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PresentInfoKHR &operator=(PresentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentInfoKHR &operator=(VkPresentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PresentInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PresentInfoKHR &setWaitSemaphoreCount(uint32_t waitSemaphoreCount_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreCount = waitSemaphoreCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PresentInfoKHR &setPWaitSemaphores(const VULKAN_HPP_NAMESPACE::Semaphore *pWaitSemaphores_) VULKAN_HPP_NOEXCEPT
{
pWaitSemaphores = pWaitSemaphores_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentInfoKHR &
setWaitSemaphores(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &waitSemaphores_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreCount = static_cast<uint32_t>(waitSemaphores_.size());
pWaitSemaphores = waitSemaphores_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 PresentInfoKHR &setSwapchainCount(uint32_t swapchainCount_) VULKAN_HPP_NOEXCEPT
{
swapchainCount = swapchainCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PresentInfoKHR &setPSwapchains(const VULKAN_HPP_NAMESPACE::SwapchainKHR *pSwapchains_) VULKAN_HPP_NOEXCEPT
{
pSwapchains = pSwapchains_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentInfoKHR &
setSwapchains(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SwapchainKHR> const &swapchains_) VULKAN_HPP_NOEXCEPT
{
swapchainCount = static_cast<uint32_t>(swapchains_.size());
pSwapchains = swapchains_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 PresentInfoKHR &setPImageIndices(const uint32_t *pImageIndices_) VULKAN_HPP_NOEXCEPT
{
pImageIndices = pImageIndices_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentInfoKHR &setImageIndices(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &imageIndices_) VULKAN_HPP_NOEXCEPT
{
swapchainCount = static_cast<uint32_t>(imageIndices_.size());
pImageIndices = imageIndices_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 PresentInfoKHR &setPResults(VULKAN_HPP_NAMESPACE::Result *pResults_) VULKAN_HPP_NOEXCEPT
{
pResults = pResults_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentInfoKHR &setResults(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::Result> const &results_) VULKAN_HPP_NOEXCEPT
{
swapchainCount = static_cast<uint32_t>(results_.size());
pResults = results_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPresentInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPresentInfoKHR *>(this);
}
explicit operator VkPresentInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPresentInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Semaphore *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SwapchainKHR *const &,
const uint32_t *const &,
VULKAN_HPP_NAMESPACE::Result *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, waitSemaphoreCount, pWaitSemaphores, swapchainCount, pSwapchains, pImageIndices, pResults);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PresentInfoKHR const &) const = default;
#else
bool operator==(PresentInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (waitSemaphoreCount == rhs.waitSemaphoreCount) &&
(pWaitSemaphores == rhs.pWaitSemaphores) && (swapchainCount == rhs.swapchainCount) && (pSwapchains == rhs.pSwapchains) &&
(pImageIndices == rhs.pImageIndices) && (pResults == rhs.pResults);
# endif
}
bool operator!=(PresentInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentInfoKHR;
const void *pNext = {};
uint32_t waitSemaphoreCount = {};
const VULKAN_HPP_NAMESPACE::Semaphore *pWaitSemaphores = {};
uint32_t swapchainCount = {};
const VULKAN_HPP_NAMESPACE::SwapchainKHR *pSwapchains = {};
const uint32_t *pImageIndices = {};
VULKAN_HPP_NAMESPACE::Result *pResults = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PresentInfoKHR) == sizeof(VkPresentInfoKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PresentInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PresentInfoKHR>::value,
"PresentInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePresentInfoKHR>
{
using Type = PresentInfoKHR;
};
struct RectLayerKHR
{
using NativeType = VkRectLayerKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
RectLayerKHR(VULKAN_HPP_NAMESPACE::Offset2D offset_ = {}, VULKAN_HPP_NAMESPACE::Extent2D extent_ = {}, uint32_t layer_ = {}) VULKAN_HPP_NOEXCEPT
: offset(offset_),
extent(extent_),
layer(layer_)
{
}
VULKAN_HPP_CONSTEXPR RectLayerKHR(RectLayerKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
RectLayerKHR(VkRectLayerKHR const &rhs) VULKAN_HPP_NOEXCEPT : RectLayerKHR(*reinterpret_cast<RectLayerKHR const *>(&rhs)) {}
explicit RectLayerKHR(Rect2D const &rect2D, uint32_t layer_ = {})
: offset(rect2D.offset)
, extent(rect2D.extent)
, layer(layer_)
{}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RectLayerKHR &operator=(RectLayerKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
RectLayerKHR &operator=(VkRectLayerKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RectLayerKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RectLayerKHR &setOffset(VULKAN_HPP_NAMESPACE::Offset2D const &offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RectLayerKHR &setExtent(VULKAN_HPP_NAMESPACE::Extent2D const &extent_) VULKAN_HPP_NOEXCEPT
{
extent = extent_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RectLayerKHR &setLayer(uint32_t layer_) VULKAN_HPP_NOEXCEPT
{
layer = layer_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRectLayerKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRectLayerKHR *>(this);
}
explicit operator VkRectLayerKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRectLayerKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Offset2D const &, VULKAN_HPP_NAMESPACE::Extent2D const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(offset, extent, layer);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RectLayerKHR const &) const = default;
#else
bool operator==(RectLayerKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (offset == rhs.offset) && (extent == rhs.extent) && (layer == rhs.layer);
# endif
}
bool operator!=(RectLayerKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Offset2D offset = {};
VULKAN_HPP_NAMESPACE::Extent2D extent = {};
uint32_t layer = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RectLayerKHR) == sizeof(VkRectLayerKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RectLayerKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RectLayerKHR>::value, "RectLayerKHR is not nothrow_move_constructible!");
struct PresentRegionKHR
{
using NativeType = VkPresentRegionKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PresentRegionKHR(uint32_t rectangleCount_ = {}, const VULKAN_HPP_NAMESPACE::RectLayerKHR *pRectangles_ = {}) VULKAN_HPP_NOEXCEPT
: rectangleCount(rectangleCount_),
pRectangles(pRectangles_)
{
}
VULKAN_HPP_CONSTEXPR PresentRegionKHR(PresentRegionKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentRegionKHR(VkPresentRegionKHR const &rhs) VULKAN_HPP_NOEXCEPT : PresentRegionKHR(*reinterpret_cast<PresentRegionKHR const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentRegionKHR(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RectLayerKHR> const &rectangles_)
: rectangleCount(static_cast<uint32_t>(rectangles_.size()))
, pRectangles(rectangles_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PresentRegionKHR &operator=(PresentRegionKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentRegionKHR &operator=(VkPresentRegionKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentRegionKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PresentRegionKHR &setRectangleCount(uint32_t rectangleCount_) VULKAN_HPP_NOEXCEPT
{
rectangleCount = rectangleCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PresentRegionKHR &setPRectangles(const VULKAN_HPP_NAMESPACE::RectLayerKHR *pRectangles_) VULKAN_HPP_NOEXCEPT
{
pRectangles = pRectangles_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentRegionKHR &
setRectangles(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RectLayerKHR> const &rectangles_) VULKAN_HPP_NOEXCEPT
{
rectangleCount = static_cast<uint32_t>(rectangles_.size());
pRectangles = rectangles_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPresentRegionKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPresentRegionKHR *>(this);
}
explicit operator VkPresentRegionKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPresentRegionKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, const VULKAN_HPP_NAMESPACE::RectLayerKHR *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(rectangleCount, pRectangles);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PresentRegionKHR const &) const = default;
#else
bool operator==(PresentRegionKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (rectangleCount == rhs.rectangleCount) && (pRectangles == rhs.pRectangles);
# endif
}
bool operator!=(PresentRegionKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t rectangleCount = {};
const VULKAN_HPP_NAMESPACE::RectLayerKHR *pRectangles = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PresentRegionKHR) == sizeof(VkPresentRegionKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PresentRegionKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PresentRegionKHR>::value,
"PresentRegionKHR is not nothrow_move_constructible!");
struct PresentRegionsKHR
{
using NativeType = VkPresentRegionsKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentRegionsKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PresentRegionsKHR(uint32_t swapchainCount_ = {},
const VULKAN_HPP_NAMESPACE::PresentRegionKHR *pRegions_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
swapchainCount(swapchainCount_),
pRegions(pRegions_)
{
}
VULKAN_HPP_CONSTEXPR PresentRegionsKHR(PresentRegionsKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentRegionsKHR(VkPresentRegionsKHR const &rhs) VULKAN_HPP_NOEXCEPT : PresentRegionsKHR(*reinterpret_cast<PresentRegionsKHR const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentRegionsKHR(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PresentRegionKHR> const &regions_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, swapchainCount(static_cast<uint32_t>(regions_.size()))
, pRegions(regions_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PresentRegionsKHR &operator=(PresentRegionsKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentRegionsKHR &operator=(VkPresentRegionsKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentRegionsKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PresentRegionsKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PresentRegionsKHR &setSwapchainCount(uint32_t swapchainCount_) VULKAN_HPP_NOEXCEPT
{
swapchainCount = swapchainCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PresentRegionsKHR &setPRegions(const VULKAN_HPP_NAMESPACE::PresentRegionKHR *pRegions_) VULKAN_HPP_NOEXCEPT
{
pRegions = pRegions_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentRegionsKHR &
setRegions(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PresentRegionKHR> const &regions_) VULKAN_HPP_NOEXCEPT
{
swapchainCount = static_cast<uint32_t>(regions_.size());
pRegions = regions_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPresentRegionsKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPresentRegionsKHR *>(this);
}
explicit operator VkPresentRegionsKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPresentRegionsKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::PresentRegionKHR *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, swapchainCount, pRegions);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PresentRegionsKHR const &) const = default;
#else
bool operator==(PresentRegionsKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (swapchainCount == rhs.swapchainCount) && (pRegions == rhs.pRegions);
# endif
}
bool operator!=(PresentRegionsKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentRegionsKHR;
const void *pNext = {};
uint32_t swapchainCount = {};
const VULKAN_HPP_NAMESPACE::PresentRegionKHR *pRegions = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PresentRegionsKHR) == sizeof(VkPresentRegionsKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PresentRegionsKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PresentRegionsKHR>::value,
"PresentRegionsKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePresentRegionsKHR>
{
using Type = PresentRegionsKHR;
};
struct PresentTimeGOOGLE
{
using NativeType = VkPresentTimeGOOGLE;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PresentTimeGOOGLE(uint32_t presentID_ = {}, uint64_t desiredPresentTime_ = {}) VULKAN_HPP_NOEXCEPT
: presentID(presentID_),
desiredPresentTime(desiredPresentTime_)
{
}
VULKAN_HPP_CONSTEXPR PresentTimeGOOGLE(PresentTimeGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentTimeGOOGLE(VkPresentTimeGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT : PresentTimeGOOGLE(*reinterpret_cast<PresentTimeGOOGLE const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PresentTimeGOOGLE &operator=(PresentTimeGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentTimeGOOGLE &operator=(VkPresentTimeGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PresentTimeGOOGLE &setPresentID(uint32_t presentID_) VULKAN_HPP_NOEXCEPT
{
presentID = presentID_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PresentTimeGOOGLE &setDesiredPresentTime(uint64_t desiredPresentTime_) VULKAN_HPP_NOEXCEPT
{
desiredPresentTime = desiredPresentTime_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPresentTimeGOOGLE const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPresentTimeGOOGLE *>(this);
}
explicit operator VkPresentTimeGOOGLE &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPresentTimeGOOGLE *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(presentID, desiredPresentTime);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PresentTimeGOOGLE const &) const = default;
#else
bool operator==(PresentTimeGOOGLE const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (presentID == rhs.presentID) && (desiredPresentTime == rhs.desiredPresentTime);
# endif
}
bool operator!=(PresentTimeGOOGLE const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t presentID = {};
uint64_t desiredPresentTime = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE) == sizeof(VkPresentTimeGOOGLE), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE>::value,
"PresentTimeGOOGLE is not nothrow_move_constructible!");
struct PresentTimesInfoGOOGLE
{
using NativeType = VkPresentTimesInfoGOOGLE;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePresentTimesInfoGOOGLE;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PresentTimesInfoGOOGLE(uint32_t swapchainCount_ = {},
const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE *pTimes_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
swapchainCount(swapchainCount_),
pTimes(pTimes_)
{
}
VULKAN_HPP_CONSTEXPR PresentTimesInfoGOOGLE(PresentTimesInfoGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentTimesInfoGOOGLE(VkPresentTimesInfoGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT
: PresentTimesInfoGOOGLE(*reinterpret_cast<PresentTimesInfoGOOGLE const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentTimesInfoGOOGLE(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE> const &times_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, swapchainCount(static_cast<uint32_t>(times_.size()))
, pTimes(times_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PresentTimesInfoGOOGLE &operator=(PresentTimesInfoGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT = default;
PresentTimesInfoGOOGLE &operator=(VkPresentTimesInfoGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PresentTimesInfoGOOGLE const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PresentTimesInfoGOOGLE &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PresentTimesInfoGOOGLE &setSwapchainCount(uint32_t swapchainCount_) VULKAN_HPP_NOEXCEPT
{
swapchainCount = swapchainCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PresentTimesInfoGOOGLE &setPTimes(const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE *pTimes_) VULKAN_HPP_NOEXCEPT
{
pTimes = pTimes_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
PresentTimesInfoGOOGLE &
setTimes(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE> const &times_) VULKAN_HPP_NOEXCEPT
{
swapchainCount = static_cast<uint32_t>(times_.size());
pTimes = times_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPresentTimesInfoGOOGLE const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPresentTimesInfoGOOGLE *>(this);
}
explicit operator VkPresentTimesInfoGOOGLE &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPresentTimesInfoGOOGLE *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, swapchainCount, pTimes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PresentTimesInfoGOOGLE const &) const = default;
#else
bool operator==(PresentTimesInfoGOOGLE const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (swapchainCount == rhs.swapchainCount) && (pTimes == rhs.pTimes);
# endif
}
bool operator!=(PresentTimesInfoGOOGLE const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePresentTimesInfoGOOGLE;
const void *pNext = {};
uint32_t swapchainCount = {};
const VULKAN_HPP_NAMESPACE::PresentTimeGOOGLE *pTimes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PresentTimesInfoGOOGLE) == sizeof(VkPresentTimesInfoGOOGLE),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PresentTimesInfoGOOGLE>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PresentTimesInfoGOOGLE>::value,
"PresentTimesInfoGOOGLE is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePresentTimesInfoGOOGLE>
{
using Type = PresentTimesInfoGOOGLE;
};
struct PrivateDataSlotCreateInfo
{
using NativeType = VkPrivateDataSlotCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePrivateDataSlotCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR PrivateDataSlotCreateInfo(VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateFlags flags_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR PrivateDataSlotCreateInfo(PrivateDataSlotCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PrivateDataSlotCreateInfo(VkPrivateDataSlotCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: PrivateDataSlotCreateInfo(*reinterpret_cast<PrivateDataSlotCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
PrivateDataSlotCreateInfo &operator=(PrivateDataSlotCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
PrivateDataSlotCreateInfo &operator=(VkPrivateDataSlotCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 PrivateDataSlotCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 PrivateDataSlotCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkPrivateDataSlotCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkPrivateDataSlotCreateInfo *>(this);
}
explicit operator VkPrivateDataSlotCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkPrivateDataSlotCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(PrivateDataSlotCreateInfo const &) const = default;
#else
bool operator==(PrivateDataSlotCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags);
# endif
}
bool operator!=(PrivateDataSlotCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePrivateDataSlotCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateFlags flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateInfo) == sizeof(VkPrivateDataSlotCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PrivateDataSlotCreateInfo>::value,
"PrivateDataSlotCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::ePrivateDataSlotCreateInfo>
{
using Type = PrivateDataSlotCreateInfo;
};
using PrivateDataSlotCreateInfoEXT = PrivateDataSlotCreateInfo;
struct ProtectedSubmitInfo
{
using NativeType = VkProtectedSubmitInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eProtectedSubmitInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ProtectedSubmitInfo(VULKAN_HPP_NAMESPACE::Bool32 protectedSubmit_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
protectedSubmit(protectedSubmit_)
{
}
VULKAN_HPP_CONSTEXPR ProtectedSubmitInfo(ProtectedSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ProtectedSubmitInfo(VkProtectedSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT : ProtectedSubmitInfo(*reinterpret_cast<ProtectedSubmitInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ProtectedSubmitInfo &operator=(ProtectedSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ProtectedSubmitInfo &operator=(VkProtectedSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ProtectedSubmitInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ProtectedSubmitInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ProtectedSubmitInfo &setProtectedSubmit(VULKAN_HPP_NAMESPACE::Bool32 protectedSubmit_) VULKAN_HPP_NOEXCEPT
{
protectedSubmit = protectedSubmit_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkProtectedSubmitInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkProtectedSubmitInfo *>(this);
}
explicit operator VkProtectedSubmitInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkProtectedSubmitInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, protectedSubmit);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ProtectedSubmitInfo const &) const = default;
#else
bool operator==(ProtectedSubmitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (protectedSubmit == rhs.protectedSubmit);
# endif
}
bool operator!=(ProtectedSubmitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eProtectedSubmitInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 protectedSubmit = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ProtectedSubmitInfo) == sizeof(VkProtectedSubmitInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ProtectedSubmitInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ProtectedSubmitInfo>::value,
"ProtectedSubmitInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eProtectedSubmitInfo>
{
using Type = ProtectedSubmitInfo;
};
struct QueryPoolCreateInfo
{
using NativeType = VkQueryPoolCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueryPoolCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR QueryPoolCreateInfo(VULKAN_HPP_NAMESPACE::QueryPoolCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::QueryType queryType_ = VULKAN_HPP_NAMESPACE::QueryType::eOcclusion,
uint32_t queryCount_ = {},
VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
queryType(queryType_),
queryCount(queryCount_),
pipelineStatistics(pipelineStatistics_)
{
}
VULKAN_HPP_CONSTEXPR QueryPoolCreateInfo(QueryPoolCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueryPoolCreateInfo(VkQueryPoolCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT : QueryPoolCreateInfo(*reinterpret_cast<QueryPoolCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
QueryPoolCreateInfo &operator=(QueryPoolCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueryPoolCreateInfo &operator=(VkQueryPoolCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueryPoolCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 QueryPoolCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 QueryPoolCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::QueryPoolCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 QueryPoolCreateInfo &setQueryType(VULKAN_HPP_NAMESPACE::QueryType queryType_) VULKAN_HPP_NOEXCEPT
{
queryType = queryType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 QueryPoolCreateInfo &setQueryCount(uint32_t queryCount_) VULKAN_HPP_NOEXCEPT
{
queryCount = queryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 QueryPoolCreateInfo &
setPipelineStatistics(VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics_) VULKAN_HPP_NOEXCEPT
{
pipelineStatistics = pipelineStatistics_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkQueryPoolCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkQueryPoolCreateInfo *>(this);
}
explicit operator VkQueryPoolCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkQueryPoolCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::QueryPoolCreateFlags const &,
VULKAN_HPP_NAMESPACE::QueryType const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, queryType, queryCount, pipelineStatistics);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(QueryPoolCreateInfo const &) const = default;
#else
bool operator==(QueryPoolCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (queryType == rhs.queryType) && (queryCount == rhs.queryCount) &&
(pipelineStatistics == rhs.pipelineStatistics);
# endif
}
bool operator!=(QueryPoolCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueryPoolCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::QueryPoolCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::QueryType queryType = VULKAN_HPP_NAMESPACE::QueryType::eOcclusion;
uint32_t queryCount = {};
VULKAN_HPP_NAMESPACE::QueryPipelineStatisticFlags pipelineStatistics = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::QueryPoolCreateInfo) == sizeof(VkQueryPoolCreateInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueryPoolCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueryPoolCreateInfo>::value,
"QueryPoolCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eQueryPoolCreateInfo>
{
using Type = QueryPoolCreateInfo;
};
struct QueryPoolPerformanceCreateInfoKHR
{
using NativeType = VkQueryPoolPerformanceCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueryPoolPerformanceCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR QueryPoolPerformanceCreateInfoKHR(uint32_t queueFamilyIndex_ = {},
uint32_t counterIndexCount_ = {},
const uint32_t *pCounterIndices_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
queueFamilyIndex(queueFamilyIndex_),
counterIndexCount(counterIndexCount_),
pCounterIndices(pCounterIndices_)
{
}
VULKAN_HPP_CONSTEXPR QueryPoolPerformanceCreateInfoKHR(QueryPoolPerformanceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueryPoolPerformanceCreateInfoKHR(VkQueryPoolPerformanceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: QueryPoolPerformanceCreateInfoKHR(*reinterpret_cast<QueryPoolPerformanceCreateInfoKHR const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
QueryPoolPerformanceCreateInfoKHR(uint32_t queueFamilyIndex_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &counterIndices_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, queueFamilyIndex(queueFamilyIndex_)
, counterIndexCount(static_cast<uint32_t>(counterIndices_.size()))
, pCounterIndices(counterIndices_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
QueryPoolPerformanceCreateInfoKHR &operator=(QueryPoolPerformanceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueryPoolPerformanceCreateInfoKHR &operator=(VkQueryPoolPerformanceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueryPoolPerformanceCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 QueryPoolPerformanceCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 QueryPoolPerformanceCreateInfoKHR &setQueueFamilyIndex(uint32_t queueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndex = queueFamilyIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 QueryPoolPerformanceCreateInfoKHR &setCounterIndexCount(uint32_t counterIndexCount_) VULKAN_HPP_NOEXCEPT
{
counterIndexCount = counterIndexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 QueryPoolPerformanceCreateInfoKHR &setPCounterIndices(const uint32_t *pCounterIndices_) VULKAN_HPP_NOEXCEPT
{
pCounterIndices = pCounterIndices_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
QueryPoolPerformanceCreateInfoKHR &
setCounterIndices(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &counterIndices_) VULKAN_HPP_NOEXCEPT
{
counterIndexCount = static_cast<uint32_t>(counterIndices_.size());
pCounterIndices = counterIndices_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkQueryPoolPerformanceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkQueryPoolPerformanceCreateInfoKHR *>(this);
}
explicit operator VkQueryPoolPerformanceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkQueryPoolPerformanceCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, uint32_t const &, const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, queueFamilyIndex, counterIndexCount, pCounterIndices);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(QueryPoolPerformanceCreateInfoKHR const &) const = default;
#else
bool operator==(QueryPoolPerformanceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (queueFamilyIndex == rhs.queueFamilyIndex) &&
(counterIndexCount == rhs.counterIndexCount) && (pCounterIndices == rhs.pCounterIndices);
# endif
}
bool operator!=(QueryPoolPerformanceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueryPoolPerformanceCreateInfoKHR;
const void *pNext = {};
uint32_t queueFamilyIndex = {};
uint32_t counterIndexCount = {};
const uint32_t *pCounterIndices = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::QueryPoolPerformanceCreateInfoKHR) == sizeof(VkQueryPoolPerformanceCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueryPoolPerformanceCreateInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueryPoolPerformanceCreateInfoKHR>::value,
"QueryPoolPerformanceCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eQueryPoolPerformanceCreateInfoKHR>
{
using Type = QueryPoolPerformanceCreateInfoKHR;
};
struct QueryPoolPerformanceQueryCreateInfoINTEL
{
using NativeType = VkQueryPoolPerformanceQueryCreateInfoINTEL;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueryPoolPerformanceQueryCreateInfoINTEL;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR QueryPoolPerformanceQueryCreateInfoINTEL(
VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL performanceCountersSampling_ = VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL::eManual,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
performanceCountersSampling(performanceCountersSampling_)
{
}
VULKAN_HPP_CONSTEXPR QueryPoolPerformanceQueryCreateInfoINTEL(QueryPoolPerformanceQueryCreateInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueryPoolPerformanceQueryCreateInfoINTEL(VkQueryPoolPerformanceQueryCreateInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT
: QueryPoolPerformanceQueryCreateInfoINTEL(*reinterpret_cast<QueryPoolPerformanceQueryCreateInfoINTEL const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
QueryPoolPerformanceQueryCreateInfoINTEL &operator=(QueryPoolPerformanceQueryCreateInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueryPoolPerformanceQueryCreateInfoINTEL &operator=(VkQueryPoolPerformanceQueryCreateInfoINTEL const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueryPoolPerformanceQueryCreateInfoINTEL const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 QueryPoolPerformanceQueryCreateInfoINTEL &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 QueryPoolPerformanceQueryCreateInfoINTEL &
setPerformanceCountersSampling(VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL performanceCountersSampling_) VULKAN_HPP_NOEXCEPT
{
performanceCountersSampling = performanceCountersSampling_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkQueryPoolPerformanceQueryCreateInfoINTEL const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkQueryPoolPerformanceQueryCreateInfoINTEL *>(this);
}
explicit operator VkQueryPoolPerformanceQueryCreateInfoINTEL &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkQueryPoolPerformanceQueryCreateInfoINTEL *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, performanceCountersSampling);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(QueryPoolPerformanceQueryCreateInfoINTEL const &) const = default;
#else
bool operator==(QueryPoolPerformanceQueryCreateInfoINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (performanceCountersSampling == rhs.performanceCountersSampling);
# endif
}
bool operator!=(QueryPoolPerformanceQueryCreateInfoINTEL const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueryPoolPerformanceQueryCreateInfoINTEL;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL performanceCountersSampling = VULKAN_HPP_NAMESPACE::QueryPoolSamplingModeINTEL::eManual;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::QueryPoolPerformanceQueryCreateInfoINTEL) == sizeof(VkQueryPoolPerformanceQueryCreateInfoINTEL),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueryPoolPerformanceQueryCreateInfoINTEL>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueryPoolPerformanceQueryCreateInfoINTEL>::value,
"QueryPoolPerformanceQueryCreateInfoINTEL is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eQueryPoolPerformanceQueryCreateInfoINTEL>
{
using Type = QueryPoolPerformanceQueryCreateInfoINTEL;
};
using QueryPoolCreateInfoINTEL = QueryPoolPerformanceQueryCreateInfoINTEL;
struct QueueFamilyCheckpointProperties2NV
{
using NativeType = VkQueueFamilyCheckpointProperties2NV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueueFamilyCheckpointProperties2NV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR QueueFamilyCheckpointProperties2NV(VULKAN_HPP_NAMESPACE::PipelineStageFlags2 checkpointExecutionStageMask_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
checkpointExecutionStageMask(checkpointExecutionStageMask_)
{
}
VULKAN_HPP_CONSTEXPR QueueFamilyCheckpointProperties2NV(QueueFamilyCheckpointProperties2NV const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueueFamilyCheckpointProperties2NV(VkQueueFamilyCheckpointProperties2NV const &rhs) VULKAN_HPP_NOEXCEPT
: QueueFamilyCheckpointProperties2NV(*reinterpret_cast<QueueFamilyCheckpointProperties2NV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
QueueFamilyCheckpointProperties2NV &operator=(QueueFamilyCheckpointProperties2NV const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueueFamilyCheckpointProperties2NV &operator=(VkQueueFamilyCheckpointProperties2NV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyCheckpointProperties2NV const *>(&rhs);
return *this;
}
explicit operator VkQueueFamilyCheckpointProperties2NV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkQueueFamilyCheckpointProperties2NV *>(this);
}
explicit operator VkQueueFamilyCheckpointProperties2NV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkQueueFamilyCheckpointProperties2NV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::PipelineStageFlags2 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, checkpointExecutionStageMask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(QueueFamilyCheckpointProperties2NV const &) const = default;
#else
bool operator==(QueueFamilyCheckpointProperties2NV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (checkpointExecutionStageMask == rhs.checkpointExecutionStageMask);
# endif
}
bool operator!=(QueueFamilyCheckpointProperties2NV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueueFamilyCheckpointProperties2NV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 checkpointExecutionStageMask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::QueueFamilyCheckpointProperties2NV) == sizeof(VkQueueFamilyCheckpointProperties2NV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueueFamilyCheckpointProperties2NV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueueFamilyCheckpointProperties2NV>::value,
"QueueFamilyCheckpointProperties2NV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eQueueFamilyCheckpointProperties2NV>
{
using Type = QueueFamilyCheckpointProperties2NV;
};
struct QueueFamilyCheckpointPropertiesNV
{
using NativeType = VkQueueFamilyCheckpointPropertiesNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueueFamilyCheckpointPropertiesNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR QueueFamilyCheckpointPropertiesNV(VULKAN_HPP_NAMESPACE::PipelineStageFlags checkpointExecutionStageMask_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
checkpointExecutionStageMask(checkpointExecutionStageMask_)
{
}
VULKAN_HPP_CONSTEXPR QueueFamilyCheckpointPropertiesNV(QueueFamilyCheckpointPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueueFamilyCheckpointPropertiesNV(VkQueueFamilyCheckpointPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
: QueueFamilyCheckpointPropertiesNV(*reinterpret_cast<QueueFamilyCheckpointPropertiesNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
QueueFamilyCheckpointPropertiesNV &operator=(QueueFamilyCheckpointPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueueFamilyCheckpointPropertiesNV &operator=(VkQueueFamilyCheckpointPropertiesNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyCheckpointPropertiesNV const *>(&rhs);
return *this;
}
explicit operator VkQueueFamilyCheckpointPropertiesNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkQueueFamilyCheckpointPropertiesNV *>(this);
}
explicit operator VkQueueFamilyCheckpointPropertiesNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkQueueFamilyCheckpointPropertiesNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::PipelineStageFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, checkpointExecutionStageMask);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(QueueFamilyCheckpointPropertiesNV const &) const = default;
#else
bool operator==(QueueFamilyCheckpointPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (checkpointExecutionStageMask == rhs.checkpointExecutionStageMask);
# endif
}
bool operator!=(QueueFamilyCheckpointPropertiesNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueueFamilyCheckpointPropertiesNV;
void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags checkpointExecutionStageMask = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::QueueFamilyCheckpointPropertiesNV) == sizeof(VkQueueFamilyCheckpointPropertiesNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueueFamilyCheckpointPropertiesNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueueFamilyCheckpointPropertiesNV>::value,
"QueueFamilyCheckpointPropertiesNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eQueueFamilyCheckpointPropertiesNV>
{
using Type = QueueFamilyCheckpointPropertiesNV;
};
struct QueueFamilyGlobalPriorityPropertiesKHR
{
using NativeType = VkQueueFamilyGlobalPriorityPropertiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueueFamilyGlobalPriorityPropertiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14
QueueFamilyGlobalPriorityPropertiesKHR(uint32_t priorityCount_ = {},
std::array<VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR, VK_MAX_GLOBAL_PRIORITY_SIZE_KHR> const &
priorities_ = { { VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow,
VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR::eLow } },
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
priorityCount(priorityCount_),
priorities(priorities_)
{
}
VULKAN_HPP_CONSTEXPR_14 QueueFamilyGlobalPriorityPropertiesKHR(QueueFamilyGlobalPriorityPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueueFamilyGlobalPriorityPropertiesKHR(VkQueueFamilyGlobalPriorityPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: QueueFamilyGlobalPriorityPropertiesKHR(*reinterpret_cast<QueueFamilyGlobalPriorityPropertiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
QueueFamilyGlobalPriorityPropertiesKHR &operator=(QueueFamilyGlobalPriorityPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueueFamilyGlobalPriorityPropertiesKHR &operator=(VkQueueFamilyGlobalPriorityPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyGlobalPriorityPropertiesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 QueueFamilyGlobalPriorityPropertiesKHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 QueueFamilyGlobalPriorityPropertiesKHR &setPriorityCount(uint32_t priorityCount_) VULKAN_HPP_NOEXCEPT
{
priorityCount = priorityCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 QueueFamilyGlobalPriorityPropertiesKHR &
setPriorities(std::array<VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR, VK_MAX_GLOBAL_PRIORITY_SIZE_KHR> priorities_) VULKAN_HPP_NOEXCEPT
{
priorities = priorities_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkQueueFamilyGlobalPriorityPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkQueueFamilyGlobalPriorityPropertiesKHR *>(this);
}
explicit operator VkQueueFamilyGlobalPriorityPropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkQueueFamilyGlobalPriorityPropertiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR, VK_MAX_GLOBAL_PRIORITY_SIZE_KHR> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, priorityCount, priorities);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(QueueFamilyGlobalPriorityPropertiesKHR const &) const = default;
#else
bool operator==(QueueFamilyGlobalPriorityPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (priorityCount == rhs.priorityCount) && (priorities == rhs.priorities);
# endif
}
bool operator!=(QueueFamilyGlobalPriorityPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueueFamilyGlobalPriorityPropertiesKHR;
void *pNext = {};
uint32_t priorityCount = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<VULKAN_HPP_NAMESPACE::QueueGlobalPriorityKHR, VK_MAX_GLOBAL_PRIORITY_SIZE_KHR> priorities = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::QueueFamilyGlobalPriorityPropertiesKHR) == sizeof(VkQueueFamilyGlobalPriorityPropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueueFamilyGlobalPriorityPropertiesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueueFamilyGlobalPriorityPropertiesKHR>::value,
"QueueFamilyGlobalPriorityPropertiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eQueueFamilyGlobalPriorityPropertiesKHR>
{
using Type = QueueFamilyGlobalPriorityPropertiesKHR;
};
using QueueFamilyGlobalPriorityPropertiesEXT = QueueFamilyGlobalPriorityPropertiesKHR;
struct QueueFamilyProperties
{
using NativeType = VkQueueFamilyProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR QueueFamilyProperties(VULKAN_HPP_NAMESPACE::QueueFlags queueFlags_ = {},
uint32_t queueCount_ = {},
uint32_t timestampValidBits_ = {},
VULKAN_HPP_NAMESPACE::Extent3D minImageTransferGranularity_ = {}) VULKAN_HPP_NOEXCEPT
: queueFlags(queueFlags_),
queueCount(queueCount_),
timestampValidBits(timestampValidBits_),
minImageTransferGranularity(minImageTransferGranularity_)
{
}
VULKAN_HPP_CONSTEXPR QueueFamilyProperties(QueueFamilyProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueueFamilyProperties(VkQueueFamilyProperties const &rhs) VULKAN_HPP_NOEXCEPT
: QueueFamilyProperties(*reinterpret_cast<QueueFamilyProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
QueueFamilyProperties &operator=(QueueFamilyProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueueFamilyProperties &operator=(VkQueueFamilyProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyProperties const *>(&rhs);
return *this;
}
explicit operator VkQueueFamilyProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkQueueFamilyProperties *>(this);
}
explicit operator VkQueueFamilyProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkQueueFamilyProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::QueueFlags const &, uint32_t const &, uint32_t const &, VULKAN_HPP_NAMESPACE::Extent3D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(queueFlags, queueCount, timestampValidBits, minImageTransferGranularity);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(QueueFamilyProperties const &) const = default;
#else
bool operator==(QueueFamilyProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (queueFlags == rhs.queueFlags) && (queueCount == rhs.queueCount) && (timestampValidBits == rhs.timestampValidBits) &&
(minImageTransferGranularity == rhs.minImageTransferGranularity);
# endif
}
bool operator!=(QueueFamilyProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::QueueFlags queueFlags = {};
uint32_t queueCount = {};
uint32_t timestampValidBits = {};
VULKAN_HPP_NAMESPACE::Extent3D minImageTransferGranularity = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::QueueFamilyProperties) == sizeof(VkQueueFamilyProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueueFamilyProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueueFamilyProperties>::value,
"QueueFamilyProperties is not nothrow_move_constructible!");
struct QueueFamilyProperties2
{
using NativeType = VkQueueFamilyProperties2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueueFamilyProperties2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR QueueFamilyProperties2(VULKAN_HPP_NAMESPACE::QueueFamilyProperties queueFamilyProperties_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
queueFamilyProperties(queueFamilyProperties_)
{
}
VULKAN_HPP_CONSTEXPR QueueFamilyProperties2(QueueFamilyProperties2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueueFamilyProperties2(VkQueueFamilyProperties2 const &rhs) VULKAN_HPP_NOEXCEPT
: QueueFamilyProperties2(*reinterpret_cast<QueueFamilyProperties2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
QueueFamilyProperties2 &operator=(QueueFamilyProperties2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueueFamilyProperties2 &operator=(VkQueueFamilyProperties2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2 const *>(&rhs);
return *this;
}
explicit operator VkQueueFamilyProperties2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkQueueFamilyProperties2 *>(this);
}
explicit operator VkQueueFamilyProperties2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkQueueFamilyProperties2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::QueueFamilyProperties const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, queueFamilyProperties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(QueueFamilyProperties2 const &) const = default;
#else
bool operator==(QueueFamilyProperties2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (queueFamilyProperties == rhs.queueFamilyProperties);
# endif
}
bool operator!=(QueueFamilyProperties2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueueFamilyProperties2;
void *pNext = {};
VULKAN_HPP_NAMESPACE::QueueFamilyProperties queueFamilyProperties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::QueueFamilyProperties2) == sizeof(VkQueueFamilyProperties2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueueFamilyProperties2>::value,
"QueueFamilyProperties2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eQueueFamilyProperties2>
{
using Type = QueueFamilyProperties2;
};
using QueueFamilyProperties2KHR = QueueFamilyProperties2;
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct QueueFamilyQueryResultStatusProperties2KHR
{
using NativeType = VkQueueFamilyQueryResultStatusProperties2KHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eQueueFamilyQueryResultStatusProperties2KHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR QueueFamilyQueryResultStatusProperties2KHR(VULKAN_HPP_NAMESPACE::Bool32 supported_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
supported(supported_)
{
}
VULKAN_HPP_CONSTEXPR QueueFamilyQueryResultStatusProperties2KHR(QueueFamilyQueryResultStatusProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueueFamilyQueryResultStatusProperties2KHR(VkQueueFamilyQueryResultStatusProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT
: QueueFamilyQueryResultStatusProperties2KHR(*reinterpret_cast<QueueFamilyQueryResultStatusProperties2KHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
QueueFamilyQueryResultStatusProperties2KHR &operator=(QueueFamilyQueryResultStatusProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
QueueFamilyQueryResultStatusProperties2KHR &operator=(VkQueueFamilyQueryResultStatusProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::QueueFamilyQueryResultStatusProperties2KHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 QueueFamilyQueryResultStatusProperties2KHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 QueueFamilyQueryResultStatusProperties2KHR &setSupported(VULKAN_HPP_NAMESPACE::Bool32 supported_) VULKAN_HPP_NOEXCEPT
{
supported = supported_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkQueueFamilyQueryResultStatusProperties2KHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkQueueFamilyQueryResultStatusProperties2KHR *>(this);
}
explicit operator VkQueueFamilyQueryResultStatusProperties2KHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkQueueFamilyQueryResultStatusProperties2KHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, supported);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(QueueFamilyQueryResultStatusProperties2KHR const &) const = default;
# else
bool operator==(QueueFamilyQueryResultStatusProperties2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (supported == rhs.supported);
# endif
}
bool operator!=(QueueFamilyQueryResultStatusProperties2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eQueueFamilyQueryResultStatusProperties2KHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 supported = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::QueueFamilyQueryResultStatusProperties2KHR) ==
sizeof(VkQueueFamilyQueryResultStatusProperties2KHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueueFamilyQueryResultStatusProperties2KHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueueFamilyQueryResultStatusProperties2KHR>::value,
"QueueFamilyQueryResultStatusProperties2KHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eQueueFamilyQueryResultStatusProperties2KHR>
{
using Type = QueueFamilyQueryResultStatusProperties2KHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
struct RayTracingShaderGroupCreateInfoKHR
{
using NativeType = VkRayTracingShaderGroupCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRayTracingShaderGroupCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RayTracingShaderGroupCreateInfoKHR(
VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type_ = VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR::eGeneral,
uint32_t generalShader_ = {},
uint32_t closestHitShader_ = {},
uint32_t anyHitShader_ = {},
uint32_t intersectionShader_ = {},
const void *pShaderGroupCaptureReplayHandle_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
type(type_),
generalShader(generalShader_),
closestHitShader(closestHitShader_),
anyHitShader(anyHitShader_),
intersectionShader(intersectionShader_),
pShaderGroupCaptureReplayHandle(pShaderGroupCaptureReplayHandle_)
{
}
VULKAN_HPP_CONSTEXPR RayTracingShaderGroupCreateInfoKHR(RayTracingShaderGroupCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
RayTracingShaderGroupCreateInfoKHR(VkRayTracingShaderGroupCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: RayTracingShaderGroupCreateInfoKHR(*reinterpret_cast<RayTracingShaderGroupCreateInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RayTracingShaderGroupCreateInfoKHR &operator=(RayTracingShaderGroupCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
RayTracingShaderGroupCreateInfoKHR &operator=(VkRayTracingShaderGroupCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoKHR &setType(VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoKHR &setGeneralShader(uint32_t generalShader_) VULKAN_HPP_NOEXCEPT
{
generalShader = generalShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoKHR &setClosestHitShader(uint32_t closestHitShader_) VULKAN_HPP_NOEXCEPT
{
closestHitShader = closestHitShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoKHR &setAnyHitShader(uint32_t anyHitShader_) VULKAN_HPP_NOEXCEPT
{
anyHitShader = anyHitShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoKHR &setIntersectionShader(uint32_t intersectionShader_) VULKAN_HPP_NOEXCEPT
{
intersectionShader = intersectionShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoKHR &
setPShaderGroupCaptureReplayHandle(const void *pShaderGroupCaptureReplayHandle_) VULKAN_HPP_NOEXCEPT
{
pShaderGroupCaptureReplayHandle = pShaderGroupCaptureReplayHandle_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRayTracingShaderGroupCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRayTracingShaderGroupCreateInfoKHR *>(this);
}
explicit operator VkRayTracingShaderGroupCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRayTracingShaderGroupCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
const void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, type, generalShader, closestHitShader, anyHitShader, intersectionShader, pShaderGroupCaptureReplayHandle);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RayTracingShaderGroupCreateInfoKHR const &) const = default;
#else
bool operator==(RayTracingShaderGroupCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (type == rhs.type) && (generalShader == rhs.generalShader) &&
(closestHitShader == rhs.closestHitShader) && (anyHitShader == rhs.anyHitShader) && (intersectionShader == rhs.intersectionShader) &&
(pShaderGroupCaptureReplayHandle == rhs.pShaderGroupCaptureReplayHandle);
# endif
}
bool operator!=(RayTracingShaderGroupCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingShaderGroupCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type = VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR::eGeneral;
uint32_t generalShader = {};
uint32_t closestHitShader = {};
uint32_t anyHitShader = {};
uint32_t intersectionShader = {};
const void *pShaderGroupCaptureReplayHandle = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR) == sizeof(VkRayTracingShaderGroupCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR>::value,
"RayTracingShaderGroupCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRayTracingShaderGroupCreateInfoKHR>
{
using Type = RayTracingShaderGroupCreateInfoKHR;
};
struct RayTracingPipelineInterfaceCreateInfoKHR
{
using NativeType = VkRayTracingPipelineInterfaceCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRayTracingPipelineInterfaceCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RayTracingPipelineInterfaceCreateInfoKHR(uint32_t maxPipelineRayPayloadSize_ = {},
uint32_t maxPipelineRayHitAttributeSize_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxPipelineRayPayloadSize(maxPipelineRayPayloadSize_),
maxPipelineRayHitAttributeSize(maxPipelineRayHitAttributeSize_)
{
}
VULKAN_HPP_CONSTEXPR RayTracingPipelineInterfaceCreateInfoKHR(RayTracingPipelineInterfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
RayTracingPipelineInterfaceCreateInfoKHR(VkRayTracingPipelineInterfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: RayTracingPipelineInterfaceCreateInfoKHR(*reinterpret_cast<RayTracingPipelineInterfaceCreateInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RayTracingPipelineInterfaceCreateInfoKHR &operator=(RayTracingPipelineInterfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
RayTracingPipelineInterfaceCreateInfoKHR &operator=(VkRayTracingPipelineInterfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineInterfaceCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineInterfaceCreateInfoKHR &setMaxPipelineRayPayloadSize(uint32_t maxPipelineRayPayloadSize_) VULKAN_HPP_NOEXCEPT
{
maxPipelineRayPayloadSize = maxPipelineRayPayloadSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineInterfaceCreateInfoKHR &
setMaxPipelineRayHitAttributeSize(uint32_t maxPipelineRayHitAttributeSize_) VULKAN_HPP_NOEXCEPT
{
maxPipelineRayHitAttributeSize = maxPipelineRayHitAttributeSize_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRayTracingPipelineInterfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRayTracingPipelineInterfaceCreateInfoKHR *>(this);
}
explicit operator VkRayTracingPipelineInterfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRayTracingPipelineInterfaceCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxPipelineRayPayloadSize, maxPipelineRayHitAttributeSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RayTracingPipelineInterfaceCreateInfoKHR const &) const = default;
#else
bool operator==(RayTracingPipelineInterfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxPipelineRayPayloadSize == rhs.maxPipelineRayPayloadSize) &&
(maxPipelineRayHitAttributeSize == rhs.maxPipelineRayHitAttributeSize);
# endif
}
bool operator!=(RayTracingPipelineInterfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingPipelineInterfaceCreateInfoKHR;
const void *pNext = {};
uint32_t maxPipelineRayPayloadSize = {};
uint32_t maxPipelineRayHitAttributeSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR) == sizeof(VkRayTracingPipelineInterfaceCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR>::value,
"RayTracingPipelineInterfaceCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRayTracingPipelineInterfaceCreateInfoKHR>
{
using Type = RayTracingPipelineInterfaceCreateInfoKHR;
};
struct RayTracingPipelineCreateInfoKHR
{
using NativeType = VkRayTracingPipelineCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRayTracingPipelineCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RayTracingPipelineCreateInfoKHR(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ = {},
uint32_t stageCount_ = {},
const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *pStages_ = {},
uint32_t groupCount_ = {},
const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR *pGroups_ = {},
uint32_t maxPipelineRayRecursionDepth_ = {},
const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR *pLibraryInfo_ = {},
const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR *pLibraryInterface_ = {},
const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo *pDynamicState_ = {},
VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
int32_t basePipelineIndex_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
stageCount(stageCount_),
pStages(pStages_),
groupCount(groupCount_),
pGroups(pGroups_),
maxPipelineRayRecursionDepth(maxPipelineRayRecursionDepth_),
pLibraryInfo(pLibraryInfo_),
pLibraryInterface(pLibraryInterface_),
pDynamicState(pDynamicState_),
layout(layout_),
basePipelineHandle(basePipelineHandle_),
basePipelineIndex(basePipelineIndex_)
{
}
VULKAN_HPP_CONSTEXPR RayTracingPipelineCreateInfoKHR(RayTracingPipelineCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
RayTracingPipelineCreateInfoKHR(VkRayTracingPipelineCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: RayTracingPipelineCreateInfoKHR(*reinterpret_cast<RayTracingPipelineCreateInfoKHR const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RayTracingPipelineCreateInfoKHR(
VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &stages_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR> const &groups_ = {},
uint32_t maxPipelineRayRecursionDepth_ = {},
const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR *pLibraryInfo_ = {},
const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR *pLibraryInterface_ = {},
const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo *pDynamicState_ = {},
VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
int32_t basePipelineIndex_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, stageCount(static_cast<uint32_t>(stages_.size()))
, pStages(stages_.data())
, groupCount(static_cast<uint32_t>(groups_.size()))
, pGroups(groups_.data())
, maxPipelineRayRecursionDepth(maxPipelineRayRecursionDepth_)
, pLibraryInfo(pLibraryInfo_)
, pLibraryInterface(pLibraryInterface_)
, pDynamicState(pDynamicState_)
, layout(layout_)
, basePipelineHandle(basePipelineHandle_)
, basePipelineIndex(basePipelineIndex_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RayTracingPipelineCreateInfoKHR &operator=(RayTracingPipelineCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
RayTracingPipelineCreateInfoKHR &operator=(VkRayTracingPipelineCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &setStageCount(uint32_t stageCount_) VULKAN_HPP_NOEXCEPT
{
stageCount = stageCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &
setPStages(const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *pStages_) VULKAN_HPP_NOEXCEPT
{
pStages = pStages_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RayTracingPipelineCreateInfoKHR &
setStages(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &stages_) VULKAN_HPP_NOEXCEPT
{
stageCount = static_cast<uint32_t>(stages_.size());
pStages = stages_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &setGroupCount(uint32_t groupCount_) VULKAN_HPP_NOEXCEPT
{
groupCount = groupCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &
setPGroups(const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR *pGroups_) VULKAN_HPP_NOEXCEPT
{
pGroups = pGroups_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RayTracingPipelineCreateInfoKHR &setGroups(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR> const &groups_) VULKAN_HPP_NOEXCEPT
{
groupCount = static_cast<uint32_t>(groups_.size());
pGroups = groups_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &setMaxPipelineRayRecursionDepth(uint32_t maxPipelineRayRecursionDepth_) VULKAN_HPP_NOEXCEPT
{
maxPipelineRayRecursionDepth = maxPipelineRayRecursionDepth_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &
setPLibraryInfo(const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR *pLibraryInfo_) VULKAN_HPP_NOEXCEPT
{
pLibraryInfo = pLibraryInfo_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &
setPLibraryInterface(const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR *pLibraryInterface_) VULKAN_HPP_NOEXCEPT
{
pLibraryInterface = pLibraryInterface_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &
setPDynamicState(const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo *pDynamicState_) VULKAN_HPP_NOEXCEPT
{
pDynamicState = pDynamicState_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &setLayout(VULKAN_HPP_NAMESPACE::PipelineLayout layout_) VULKAN_HPP_NOEXCEPT
{
layout = layout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &setBasePipelineHandle(VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_) VULKAN_HPP_NOEXCEPT
{
basePipelineHandle = basePipelineHandle_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoKHR &setBasePipelineIndex(int32_t basePipelineIndex_) VULKAN_HPP_NOEXCEPT
{
basePipelineIndex = basePipelineIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRayTracingPipelineCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRayTracingPipelineCreateInfoKHR *>(this);
}
explicit operator VkRayTracingPipelineCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRayTracingPipelineCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineCreateFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR *const &,
const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR *const &,
const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo *const &,
VULKAN_HPP_NAMESPACE::PipelineLayout const &,
VULKAN_HPP_NAMESPACE::Pipeline const &,
int32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
stageCount,
pStages,
groupCount,
pGroups,
maxPipelineRayRecursionDepth,
pLibraryInfo,
pLibraryInterface,
pDynamicState,
layout,
basePipelineHandle,
basePipelineIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RayTracingPipelineCreateInfoKHR const &) const = default;
#else
bool operator==(RayTracingPipelineCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (stageCount == rhs.stageCount) && (pStages == rhs.pStages) &&
(groupCount == rhs.groupCount) && (pGroups == rhs.pGroups) && (maxPipelineRayRecursionDepth == rhs.maxPipelineRayRecursionDepth) &&
(pLibraryInfo == rhs.pLibraryInfo) && (pLibraryInterface == rhs.pLibraryInterface) && (pDynamicState == rhs.pDynamicState) &&
(layout == rhs.layout) && (basePipelineHandle == rhs.basePipelineHandle) && (basePipelineIndex == rhs.basePipelineIndex);
# endif
}
bool operator!=(RayTracingPipelineCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingPipelineCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags = {};
uint32_t stageCount = {};
const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *pStages = {};
uint32_t groupCount = {};
const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoKHR *pGroups = {};
uint32_t maxPipelineRayRecursionDepth = {};
const VULKAN_HPP_NAMESPACE::PipelineLibraryCreateInfoKHR *pLibraryInfo = {};
const VULKAN_HPP_NAMESPACE::RayTracingPipelineInterfaceCreateInfoKHR *pLibraryInterface = {};
const VULKAN_HPP_NAMESPACE::PipelineDynamicStateCreateInfo *pDynamicState = {};
VULKAN_HPP_NAMESPACE::PipelineLayout layout = {};
VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle = {};
int32_t basePipelineIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR) == sizeof(VkRayTracingPipelineCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoKHR>::value,
"RayTracingPipelineCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRayTracingPipelineCreateInfoKHR>
{
using Type = RayTracingPipelineCreateInfoKHR;
};
struct RayTracingShaderGroupCreateInfoNV
{
using NativeType = VkRayTracingShaderGroupCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRayTracingShaderGroupCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RayTracingShaderGroupCreateInfoNV(
VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type_ = VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR::eGeneral,
uint32_t generalShader_ = {},
uint32_t closestHitShader_ = {},
uint32_t anyHitShader_ = {},
uint32_t intersectionShader_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
type(type_),
generalShader(generalShader_),
closestHitShader(closestHitShader_),
anyHitShader(anyHitShader_),
intersectionShader(intersectionShader_)
{
}
VULKAN_HPP_CONSTEXPR RayTracingShaderGroupCreateInfoNV(RayTracingShaderGroupCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
RayTracingShaderGroupCreateInfoNV(VkRayTracingShaderGroupCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: RayTracingShaderGroupCreateInfoNV(*reinterpret_cast<RayTracingShaderGroupCreateInfoNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RayTracingShaderGroupCreateInfoNV &operator=(RayTracingShaderGroupCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
RayTracingShaderGroupCreateInfoNV &operator=(VkRayTracingShaderGroupCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoNV &setType(VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type_) VULKAN_HPP_NOEXCEPT
{
type = type_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoNV &setGeneralShader(uint32_t generalShader_) VULKAN_HPP_NOEXCEPT
{
generalShader = generalShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoNV &setClosestHitShader(uint32_t closestHitShader_) VULKAN_HPP_NOEXCEPT
{
closestHitShader = closestHitShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoNV &setAnyHitShader(uint32_t anyHitShader_) VULKAN_HPP_NOEXCEPT
{
anyHitShader = anyHitShader_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingShaderGroupCreateInfoNV &setIntersectionShader(uint32_t intersectionShader_) VULKAN_HPP_NOEXCEPT
{
intersectionShader = intersectionShader_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRayTracingShaderGroupCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRayTracingShaderGroupCreateInfoNV *>(this);
}
explicit operator VkRayTracingShaderGroupCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRayTracingShaderGroupCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, type, generalShader, closestHitShader, anyHitShader, intersectionShader);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RayTracingShaderGroupCreateInfoNV const &) const = default;
#else
bool operator==(RayTracingShaderGroupCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (type == rhs.type) && (generalShader == rhs.generalShader) &&
(closestHitShader == rhs.closestHitShader) && (anyHitShader == rhs.anyHitShader) && (intersectionShader == rhs.intersectionShader);
# endif
}
bool operator!=(RayTracingShaderGroupCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingShaderGroupCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR type = VULKAN_HPP_NAMESPACE::RayTracingShaderGroupTypeKHR::eGeneral;
uint32_t generalShader = {};
uint32_t closestHitShader = {};
uint32_t anyHitShader = {};
uint32_t intersectionShader = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV) == sizeof(VkRayTracingShaderGroupCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV>::value,
"RayTracingShaderGroupCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRayTracingShaderGroupCreateInfoNV>
{
using Type = RayTracingShaderGroupCreateInfoNV;
};
struct RayTracingPipelineCreateInfoNV
{
using NativeType = VkRayTracingPipelineCreateInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRayTracingPipelineCreateInfoNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RayTracingPipelineCreateInfoNV(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_ = {},
uint32_t stageCount_ = {},
const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *pStages_ = {},
uint32_t groupCount_ = {},
const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV *pGroups_ = {},
uint32_t maxRecursionDepth_ = {},
VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
int32_t basePipelineIndex_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
stageCount(stageCount_),
pStages(pStages_),
groupCount(groupCount_),
pGroups(pGroups_),
maxRecursionDepth(maxRecursionDepth_),
layout(layout_),
basePipelineHandle(basePipelineHandle_),
basePipelineIndex(basePipelineIndex_)
{
}
VULKAN_HPP_CONSTEXPR RayTracingPipelineCreateInfoNV(RayTracingPipelineCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
RayTracingPipelineCreateInfoNV(VkRayTracingPipelineCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: RayTracingPipelineCreateInfoNV(*reinterpret_cast<RayTracingPipelineCreateInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RayTracingPipelineCreateInfoNV(
VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &stages_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV> const &groups_ = {},
uint32_t maxRecursionDepth_ = {},
VULKAN_HPP_NAMESPACE::PipelineLayout layout_ = {},
VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_ = {},
int32_t basePipelineIndex_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, stageCount(static_cast<uint32_t>(stages_.size()))
, pStages(stages_.data())
, groupCount(static_cast<uint32_t>(groups_.size()))
, pGroups(groups_.data())
, maxRecursionDepth(maxRecursionDepth_)
, layout(layout_)
, basePipelineHandle(basePipelineHandle_)
, basePipelineIndex(basePipelineIndex_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RayTracingPipelineCreateInfoNV &operator=(RayTracingPipelineCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
RayTracingPipelineCreateInfoNV &operator=(VkRayTracingPipelineCreateInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoNV &setFlags(VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoNV &setStageCount(uint32_t stageCount_) VULKAN_HPP_NOEXCEPT
{
stageCount = stageCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoNV &
setPStages(const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *pStages_) VULKAN_HPP_NOEXCEPT
{
pStages = pStages_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RayTracingPipelineCreateInfoNV &
setStages(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo> const &stages_) VULKAN_HPP_NOEXCEPT
{
stageCount = static_cast<uint32_t>(stages_.size());
pStages = stages_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoNV &setGroupCount(uint32_t groupCount_) VULKAN_HPP_NOEXCEPT
{
groupCount = groupCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoNV &
setPGroups(const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV *pGroups_) VULKAN_HPP_NOEXCEPT
{
pGroups = pGroups_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RayTracingPipelineCreateInfoNV &setGroups(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV> const &groups_) VULKAN_HPP_NOEXCEPT
{
groupCount = static_cast<uint32_t>(groups_.size());
pGroups = groups_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoNV &setMaxRecursionDepth(uint32_t maxRecursionDepth_) VULKAN_HPP_NOEXCEPT
{
maxRecursionDepth = maxRecursionDepth_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoNV &setLayout(VULKAN_HPP_NAMESPACE::PipelineLayout layout_) VULKAN_HPP_NOEXCEPT
{
layout = layout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoNV &setBasePipelineHandle(VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle_) VULKAN_HPP_NOEXCEPT
{
basePipelineHandle = basePipelineHandle_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RayTracingPipelineCreateInfoNV &setBasePipelineIndex(int32_t basePipelineIndex_) VULKAN_HPP_NOEXCEPT
{
basePipelineIndex = basePipelineIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRayTracingPipelineCreateInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRayTracingPipelineCreateInfoNV *>(this);
}
explicit operator VkRayTracingPipelineCreateInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRayTracingPipelineCreateInfoNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::PipelineCreateFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV *const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::PipelineLayout const &,
VULKAN_HPP_NAMESPACE::Pipeline const &,
int32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, stageCount, pStages, groupCount, pGroups, maxRecursionDepth, layout, basePipelineHandle, basePipelineIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RayTracingPipelineCreateInfoNV const &) const = default;
#else
bool operator==(RayTracingPipelineCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (stageCount == rhs.stageCount) && (pStages == rhs.pStages) &&
(groupCount == rhs.groupCount) && (pGroups == rhs.pGroups) && (maxRecursionDepth == rhs.maxRecursionDepth) && (layout == rhs.layout) &&
(basePipelineHandle == rhs.basePipelineHandle) && (basePipelineIndex == rhs.basePipelineIndex);
# endif
}
bool operator!=(RayTracingPipelineCreateInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRayTracingPipelineCreateInfoNV;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::PipelineCreateFlags flags = {};
uint32_t stageCount = {};
const VULKAN_HPP_NAMESPACE::PipelineShaderStageCreateInfo *pStages = {};
uint32_t groupCount = {};
const VULKAN_HPP_NAMESPACE::RayTracingShaderGroupCreateInfoNV *pGroups = {};
uint32_t maxRecursionDepth = {};
VULKAN_HPP_NAMESPACE::PipelineLayout layout = {};
VULKAN_HPP_NAMESPACE::Pipeline basePipelineHandle = {};
int32_t basePipelineIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV) == sizeof(VkRayTracingPipelineCreateInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RayTracingPipelineCreateInfoNV>::value,
"RayTracingPipelineCreateInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRayTracingPipelineCreateInfoNV>
{
using Type = RayTracingPipelineCreateInfoNV;
};
struct RefreshCycleDurationGOOGLE
{
using NativeType = VkRefreshCycleDurationGOOGLE;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RefreshCycleDurationGOOGLE(uint64_t refreshDuration_ = {}) VULKAN_HPP_NOEXCEPT : refreshDuration(refreshDuration_)
{}
VULKAN_HPP_CONSTEXPR RefreshCycleDurationGOOGLE(RefreshCycleDurationGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT = default;
RefreshCycleDurationGOOGLE(VkRefreshCycleDurationGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT
: RefreshCycleDurationGOOGLE(*reinterpret_cast<RefreshCycleDurationGOOGLE const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RefreshCycleDurationGOOGLE &operator=(RefreshCycleDurationGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT = default;
RefreshCycleDurationGOOGLE &operator=(VkRefreshCycleDurationGOOGLE const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE const *>(&rhs);
return *this;
}
explicit operator VkRefreshCycleDurationGOOGLE const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRefreshCycleDurationGOOGLE *>(this);
}
explicit operator VkRefreshCycleDurationGOOGLE &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRefreshCycleDurationGOOGLE *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(refreshDuration);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RefreshCycleDurationGOOGLE const &) const = default;
#else
bool operator==(RefreshCycleDurationGOOGLE const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (refreshDuration == rhs.refreshDuration);
# endif
}
bool operator!=(RefreshCycleDurationGOOGLE const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint64_t refreshDuration = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE) == sizeof(VkRefreshCycleDurationGOOGLE),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RefreshCycleDurationGOOGLE>::value,
"RefreshCycleDurationGOOGLE is not nothrow_move_constructible!");
struct RenderPassAttachmentBeginInfo
{
using NativeType = VkRenderPassAttachmentBeginInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassAttachmentBeginInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RenderPassAttachmentBeginInfo(uint32_t attachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::ImageView *pAttachments_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
attachmentCount(attachmentCount_),
pAttachments(pAttachments_)
{
}
VULKAN_HPP_CONSTEXPR RenderPassAttachmentBeginInfo(RenderPassAttachmentBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassAttachmentBeginInfo(VkRenderPassAttachmentBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT
: RenderPassAttachmentBeginInfo(*reinterpret_cast<RenderPassAttachmentBeginInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassAttachmentBeginInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageView> const &attachments_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, attachmentCount(static_cast<uint32_t>(attachments_.size()))
, pAttachments(attachments_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderPassAttachmentBeginInfo &operator=(RenderPassAttachmentBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassAttachmentBeginInfo &operator=(VkRenderPassAttachmentBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassAttachmentBeginInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderPassAttachmentBeginInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassAttachmentBeginInfo &setAttachmentCount(uint32_t attachmentCount_) VULKAN_HPP_NOEXCEPT
{
attachmentCount = attachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassAttachmentBeginInfo &setPAttachments(const VULKAN_HPP_NAMESPACE::ImageView *pAttachments_) VULKAN_HPP_NOEXCEPT
{
pAttachments = pAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassAttachmentBeginInfo &
setAttachments(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageView> const &attachments_) VULKAN_HPP_NOEXCEPT
{
attachmentCount = static_cast<uint32_t>(attachments_.size());
pAttachments = attachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderPassAttachmentBeginInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderPassAttachmentBeginInfo *>(this);
}
explicit operator VkRenderPassAttachmentBeginInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderPassAttachmentBeginInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::ImageView *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, attachmentCount, pAttachments);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RenderPassAttachmentBeginInfo const &) const = default;
#else
bool operator==(RenderPassAttachmentBeginInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (attachmentCount == rhs.attachmentCount) && (pAttachments == rhs.pAttachments);
# endif
}
bool operator!=(RenderPassAttachmentBeginInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassAttachmentBeginInfo;
const void *pNext = {};
uint32_t attachmentCount = {};
const VULKAN_HPP_NAMESPACE::ImageView *pAttachments = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderPassAttachmentBeginInfo) == sizeof(VkRenderPassAttachmentBeginInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderPassAttachmentBeginInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderPassAttachmentBeginInfo>::value,
"RenderPassAttachmentBeginInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderPassAttachmentBeginInfo>
{
using Type = RenderPassAttachmentBeginInfo;
};
using RenderPassAttachmentBeginInfoKHR = RenderPassAttachmentBeginInfo;
struct RenderPassBeginInfo
{
using NativeType = VkRenderPassBeginInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassBeginInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 RenderPassBeginInfo(VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {},
VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_ = {},
VULKAN_HPP_NAMESPACE::Rect2D renderArea_ = {},
uint32_t clearValueCount_ = {},
const VULKAN_HPP_NAMESPACE::ClearValue *pClearValues_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
renderPass(renderPass_),
framebuffer(framebuffer_),
renderArea(renderArea_),
clearValueCount(clearValueCount_),
pClearValues(pClearValues_)
{
}
VULKAN_HPP_CONSTEXPR_14 RenderPassBeginInfo(RenderPassBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassBeginInfo(VkRenderPassBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT : RenderPassBeginInfo(*reinterpret_cast<RenderPassBeginInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassBeginInfo(VULKAN_HPP_NAMESPACE::RenderPass renderPass_,
VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_,
VULKAN_HPP_NAMESPACE::Rect2D renderArea_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ClearValue> const &clearValues_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, renderPass(renderPass_)
, framebuffer(framebuffer_)
, renderArea(renderArea_)
, clearValueCount(static_cast<uint32_t>(clearValues_.size()))
, pClearValues(clearValues_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderPassBeginInfo &operator=(RenderPassBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassBeginInfo &operator=(VkRenderPassBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassBeginInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderPassBeginInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassBeginInfo &setRenderPass(VULKAN_HPP_NAMESPACE::RenderPass renderPass_) VULKAN_HPP_NOEXCEPT
{
renderPass = renderPass_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassBeginInfo &setFramebuffer(VULKAN_HPP_NAMESPACE::Framebuffer framebuffer_) VULKAN_HPP_NOEXCEPT
{
framebuffer = framebuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassBeginInfo &setRenderArea(VULKAN_HPP_NAMESPACE::Rect2D const &renderArea_) VULKAN_HPP_NOEXCEPT
{
renderArea = renderArea_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassBeginInfo &setClearValueCount(uint32_t clearValueCount_) VULKAN_HPP_NOEXCEPT
{
clearValueCount = clearValueCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassBeginInfo &setPClearValues(const VULKAN_HPP_NAMESPACE::ClearValue *pClearValues_) VULKAN_HPP_NOEXCEPT
{
pClearValues = pClearValues_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassBeginInfo &
setClearValues(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ClearValue> const &clearValues_) VULKAN_HPP_NOEXCEPT
{
clearValueCount = static_cast<uint32_t>(clearValues_.size());
pClearValues = clearValues_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderPassBeginInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderPassBeginInfo *>(this);
}
explicit operator VkRenderPassBeginInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderPassBeginInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::RenderPass const &,
VULKAN_HPP_NAMESPACE::Framebuffer const &,
VULKAN_HPP_NAMESPACE::Rect2D const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ClearValue *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, renderPass, framebuffer, renderArea, clearValueCount, pClearValues);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RenderPassBeginInfo const &) const = default;
#else
bool operator==(RenderPassBeginInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (renderPass == rhs.renderPass) && (framebuffer == rhs.framebuffer) &&
(renderArea == rhs.renderArea) && (clearValueCount == rhs.clearValueCount) && (pClearValues == rhs.pClearValues);
# endif
}
bool operator!=(RenderPassBeginInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassBeginInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
VULKAN_HPP_NAMESPACE::Framebuffer framebuffer = {};
VULKAN_HPP_NAMESPACE::Rect2D renderArea = {};
uint32_t clearValueCount = {};
const VULKAN_HPP_NAMESPACE::ClearValue *pClearValues = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderPassBeginInfo) == sizeof(VkRenderPassBeginInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderPassBeginInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderPassBeginInfo>::value,
"RenderPassBeginInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderPassBeginInfo>
{
using Type = RenderPassBeginInfo;
};
struct SubpassDescription
{
using NativeType = VkSubpassDescription;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SubpassDescription(VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_ = {},
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
uint32_t inputAttachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentReference *pInputAttachments_ = {},
uint32_t colorAttachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentReference *pColorAttachments_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentReference *pResolveAttachments_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentReference *pDepthStencilAttachment_ = {},
uint32_t preserveAttachmentCount_ = {},
const uint32_t *pPreserveAttachments_ = {}) VULKAN_HPP_NOEXCEPT
: flags(flags_),
pipelineBindPoint(pipelineBindPoint_),
inputAttachmentCount(inputAttachmentCount_),
pInputAttachments(pInputAttachments_),
colorAttachmentCount(colorAttachmentCount_),
pColorAttachments(pColorAttachments_),
pResolveAttachments(pResolveAttachments_),
pDepthStencilAttachment(pDepthStencilAttachment_),
preserveAttachmentCount(preserveAttachmentCount_),
pPreserveAttachments(pPreserveAttachments_)
{
}
VULKAN_HPP_CONSTEXPR SubpassDescription(SubpassDescription const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassDescription(VkSubpassDescription const &rhs) VULKAN_HPP_NOEXCEPT : SubpassDescription(*reinterpret_cast<SubpassDescription const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubpassDescription(VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_,
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const &inputAttachments_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const &colorAttachments_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const &resolveAttachments_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentReference *pDepthStencilAttachment_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &preserveAttachments_ = {})
: flags(flags_)
, pipelineBindPoint(pipelineBindPoint_)
, inputAttachmentCount(static_cast<uint32_t>(inputAttachments_.size()))
, pInputAttachments(inputAttachments_.data())
, colorAttachmentCount(static_cast<uint32_t>(colorAttachments_.size()))
, pColorAttachments(colorAttachments_.data())
, pResolveAttachments(resolveAttachments_.data())
, pDepthStencilAttachment(pDepthStencilAttachment_)
, preserveAttachmentCount(static_cast<uint32_t>(preserveAttachments_.size()))
, pPreserveAttachments(preserveAttachments_.data())
{
# ifdef VULKAN_HPP_NO_EXCEPTIONS
VULKAN_HPP_ASSERT(resolveAttachments_.empty() || (colorAttachments_.size() == resolveAttachments_.size()));
# else
if(!resolveAttachments_.empty() && (colorAttachments_.size() != resolveAttachments_.size()))
{
throw LogicError(
VULKAN_HPP_NAMESPACE_STRING
"::SubpassDescription::SubpassDescription: !resolveAttachments_.empty() && ( colorAttachments_.size() != resolveAttachments_.size() )");
}
# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubpassDescription &operator=(SubpassDescription const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassDescription &operator=(VkSubpassDescription const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDescription const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SubpassDescription &setFlags(VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription &setPipelineBindPoint(VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_) VULKAN_HPP_NOEXCEPT
{
pipelineBindPoint = pipelineBindPoint_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription &setInputAttachmentCount(uint32_t inputAttachmentCount_) VULKAN_HPP_NOEXCEPT
{
inputAttachmentCount = inputAttachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription &
setPInputAttachments(const VULKAN_HPP_NAMESPACE::AttachmentReference *pInputAttachments_) VULKAN_HPP_NOEXCEPT
{
pInputAttachments = pInputAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubpassDescription &setInputAttachments(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const &inputAttachments_) VULKAN_HPP_NOEXCEPT
{
inputAttachmentCount = static_cast<uint32_t>(inputAttachments_.size());
pInputAttachments = inputAttachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SubpassDescription &setColorAttachmentCount(uint32_t colorAttachmentCount_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = colorAttachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription &
setPColorAttachments(const VULKAN_HPP_NAMESPACE::AttachmentReference *pColorAttachments_) VULKAN_HPP_NOEXCEPT
{
pColorAttachments = pColorAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubpassDescription &setColorAttachments(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const &colorAttachments_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = static_cast<uint32_t>(colorAttachments_.size());
pColorAttachments = colorAttachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SubpassDescription &
setPResolveAttachments(const VULKAN_HPP_NAMESPACE::AttachmentReference *pResolveAttachments_) VULKAN_HPP_NOEXCEPT
{
pResolveAttachments = pResolveAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubpassDescription &setResolveAttachments(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference> const &resolveAttachments_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = static_cast<uint32_t>(resolveAttachments_.size());
pResolveAttachments = resolveAttachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SubpassDescription &
setPDepthStencilAttachment(const VULKAN_HPP_NAMESPACE::AttachmentReference *pDepthStencilAttachment_) VULKAN_HPP_NOEXCEPT
{
pDepthStencilAttachment = pDepthStencilAttachment_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription &setPreserveAttachmentCount(uint32_t preserveAttachmentCount_) VULKAN_HPP_NOEXCEPT
{
preserveAttachmentCount = preserveAttachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription &setPPreserveAttachments(const uint32_t *pPreserveAttachments_) VULKAN_HPP_NOEXCEPT
{
pPreserveAttachments = pPreserveAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubpassDescription &
setPreserveAttachments(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &preserveAttachments_) VULKAN_HPP_NOEXCEPT
{
preserveAttachmentCount = static_cast<uint32_t>(preserveAttachments_.size());
pPreserveAttachments = preserveAttachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSubpassDescription const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubpassDescription *>(this);
}
explicit operator VkSubpassDescription &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubpassDescription *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags const &,
VULKAN_HPP_NAMESPACE::PipelineBindPoint const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::AttachmentReference *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::AttachmentReference *const &,
const VULKAN_HPP_NAMESPACE::AttachmentReference *const &,
const VULKAN_HPP_NAMESPACE::AttachmentReference *const &,
uint32_t const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(flags,
pipelineBindPoint,
inputAttachmentCount,
pInputAttachments,
colorAttachmentCount,
pColorAttachments,
pResolveAttachments,
pDepthStencilAttachment,
preserveAttachmentCount,
pPreserveAttachments);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubpassDescription const &) const = default;
#else
bool operator==(SubpassDescription const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (flags == rhs.flags) && (pipelineBindPoint == rhs.pipelineBindPoint) && (inputAttachmentCount == rhs.inputAttachmentCount) &&
(pInputAttachments == rhs.pInputAttachments) && (colorAttachmentCount == rhs.colorAttachmentCount) &&
(pColorAttachments == rhs.pColorAttachments) && (pResolveAttachments == rhs.pResolveAttachments) &&
(pDepthStencilAttachment == rhs.pDepthStencilAttachment) && (preserveAttachmentCount == rhs.preserveAttachmentCount) &&
(pPreserveAttachments == rhs.pPreserveAttachments);
# endif
}
bool operator!=(SubpassDescription const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags = {};
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
uint32_t inputAttachmentCount = {};
const VULKAN_HPP_NAMESPACE::AttachmentReference *pInputAttachments = {};
uint32_t colorAttachmentCount = {};
const VULKAN_HPP_NAMESPACE::AttachmentReference *pColorAttachments = {};
const VULKAN_HPP_NAMESPACE::AttachmentReference *pResolveAttachments = {};
const VULKAN_HPP_NAMESPACE::AttachmentReference *pDepthStencilAttachment = {};
uint32_t preserveAttachmentCount = {};
const uint32_t *pPreserveAttachments = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubpassDescription) == sizeof(VkSubpassDescription), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubpassDescription>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubpassDescription>::value,
"SubpassDescription is not nothrow_move_constructible!");
struct SubpassDependency
{
using NativeType = VkSubpassDependency;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SubpassDependency(uint32_t srcSubpass_ = {},
uint32_t dstSubpass_ = {},
VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask_ = {},
VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {},
VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ = {}) VULKAN_HPP_NOEXCEPT
: srcSubpass(srcSubpass_),
dstSubpass(dstSubpass_),
srcStageMask(srcStageMask_),
dstStageMask(dstStageMask_),
srcAccessMask(srcAccessMask_),
dstAccessMask(dstAccessMask_),
dependencyFlags(dependencyFlags_)
{
}
VULKAN_HPP_CONSTEXPR SubpassDependency(SubpassDependency const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassDependency(VkSubpassDependency const &rhs) VULKAN_HPP_NOEXCEPT : SubpassDependency(*reinterpret_cast<SubpassDependency const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubpassDependency &operator=(SubpassDependency const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassDependency &operator=(VkSubpassDependency const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDependency const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SubpassDependency &setSrcSubpass(uint32_t srcSubpass_) VULKAN_HPP_NOEXCEPT
{
srcSubpass = srcSubpass_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency &setDstSubpass(uint32_t dstSubpass_) VULKAN_HPP_NOEXCEPT
{
dstSubpass = dstSubpass_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency &setSrcStageMask(VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask_) VULKAN_HPP_NOEXCEPT
{
srcStageMask = srcStageMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency &setDstStageMask(VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask_) VULKAN_HPP_NOEXCEPT
{
dstStageMask = dstStageMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency &setSrcAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_) VULKAN_HPP_NOEXCEPT
{
srcAccessMask = srcAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency &setDstAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_) VULKAN_HPP_NOEXCEPT
{
dstAccessMask = dstAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency &setDependencyFlags(VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_) VULKAN_HPP_NOEXCEPT
{
dependencyFlags = dependencyFlags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSubpassDependency const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubpassDependency *>(this);
}
explicit operator VkSubpassDependency &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubpassDependency *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::PipelineStageFlags const &,
VULKAN_HPP_NAMESPACE::PipelineStageFlags const &,
VULKAN_HPP_NAMESPACE::AccessFlags const &,
VULKAN_HPP_NAMESPACE::AccessFlags const &,
VULKAN_HPP_NAMESPACE::DependencyFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(srcSubpass, dstSubpass, srcStageMask, dstStageMask, srcAccessMask, dstAccessMask, dependencyFlags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubpassDependency const &) const = default;
#else
bool operator==(SubpassDependency const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (srcSubpass == rhs.srcSubpass) && (dstSubpass == rhs.dstSubpass) && (srcStageMask == rhs.srcStageMask) &&
(dstStageMask == rhs.dstStageMask) && (srcAccessMask == rhs.srcAccessMask) && (dstAccessMask == rhs.dstAccessMask) &&
(dependencyFlags == rhs.dependencyFlags);
# endif
}
bool operator!=(SubpassDependency const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t srcSubpass = {};
uint32_t dstSubpass = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubpassDependency) == sizeof(VkSubpassDependency), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubpassDependency>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubpassDependency>::value,
"SubpassDependency is not nothrow_move_constructible!");
struct RenderPassCreateInfo
{
using NativeType = VkRenderPassCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RenderPassCreateInfo(VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_ = {},
uint32_t attachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentDescription *pAttachments_ = {},
uint32_t subpassCount_ = {},
const VULKAN_HPP_NAMESPACE::SubpassDescription *pSubpasses_ = {},
uint32_t dependencyCount_ = {},
const VULKAN_HPP_NAMESPACE::SubpassDependency *pDependencies_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
attachmentCount(attachmentCount_),
pAttachments(pAttachments_),
subpassCount(subpassCount_),
pSubpasses(pSubpasses_),
dependencyCount(dependencyCount_),
pDependencies(pDependencies_)
{
}
VULKAN_HPP_CONSTEXPR RenderPassCreateInfo(RenderPassCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassCreateInfo(VkRenderPassCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: RenderPassCreateInfo(*reinterpret_cast<RenderPassCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassCreateInfo(VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentDescription> const &attachments_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDescription> const &subpasses_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDependency> const &dependencies_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, attachmentCount(static_cast<uint32_t>(attachments_.size()))
, pAttachments(attachments_.data())
, subpassCount(static_cast<uint32_t>(subpasses_.size()))
, pSubpasses(subpasses_.data())
, dependencyCount(static_cast<uint32_t>(dependencies_.size()))
, pDependencies(dependencies_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderPassCreateInfo &operator=(RenderPassCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassCreateInfo &operator=(VkRenderPassCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo &setAttachmentCount(uint32_t attachmentCount_) VULKAN_HPP_NOEXCEPT
{
attachmentCount = attachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo &setPAttachments(const VULKAN_HPP_NAMESPACE::AttachmentDescription *pAttachments_) VULKAN_HPP_NOEXCEPT
{
pAttachments = pAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassCreateInfo &setAttachments(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentDescription> const &attachments_) VULKAN_HPP_NOEXCEPT
{
attachmentCount = static_cast<uint32_t>(attachments_.size());
pAttachments = attachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo &setSubpassCount(uint32_t subpassCount_) VULKAN_HPP_NOEXCEPT
{
subpassCount = subpassCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo &setPSubpasses(const VULKAN_HPP_NAMESPACE::SubpassDescription *pSubpasses_) VULKAN_HPP_NOEXCEPT
{
pSubpasses = pSubpasses_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassCreateInfo &
setSubpasses(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDescription> const &subpasses_) VULKAN_HPP_NOEXCEPT
{
subpassCount = static_cast<uint32_t>(subpasses_.size());
pSubpasses = subpasses_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo &setDependencyCount(uint32_t dependencyCount_) VULKAN_HPP_NOEXCEPT
{
dependencyCount = dependencyCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo &setPDependencies(const VULKAN_HPP_NAMESPACE::SubpassDependency *pDependencies_) VULKAN_HPP_NOEXCEPT
{
pDependencies = pDependencies_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassCreateInfo &
setDependencies(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDependency> const &dependencies_) VULKAN_HPP_NOEXCEPT
{
dependencyCount = static_cast<uint32_t>(dependencies_.size());
pDependencies = dependencies_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderPassCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderPassCreateInfo *>(this);
}
explicit operator VkRenderPassCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderPassCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::RenderPassCreateFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::AttachmentDescription *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SubpassDescription *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SubpassDependency *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, attachmentCount, pAttachments, subpassCount, pSubpasses, dependencyCount, pDependencies);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RenderPassCreateInfo const &) const = default;
#else
bool operator==(RenderPassCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (attachmentCount == rhs.attachmentCount) &&
(pAttachments == rhs.pAttachments) && (subpassCount == rhs.subpassCount) && (pSubpasses == rhs.pSubpasses) &&
(dependencyCount == rhs.dependencyCount) && (pDependencies == rhs.pDependencies);
# endif
}
bool operator!=(RenderPassCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags = {};
uint32_t attachmentCount = {};
const VULKAN_HPP_NAMESPACE::AttachmentDescription *pAttachments = {};
uint32_t subpassCount = {};
const VULKAN_HPP_NAMESPACE::SubpassDescription *pSubpasses = {};
uint32_t dependencyCount = {};
const VULKAN_HPP_NAMESPACE::SubpassDependency *pDependencies = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderPassCreateInfo) == sizeof(VkRenderPassCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderPassCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderPassCreateInfo>::value,
"RenderPassCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderPassCreateInfo>
{
using Type = RenderPassCreateInfo;
};
struct SubpassDescription2
{
using NativeType = VkSubpassDescription2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassDescription2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SubpassDescription2(VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_ = {},
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_ = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics,
uint32_t viewMask_ = {},
uint32_t inputAttachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pInputAttachments_ = {},
uint32_t colorAttachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pColorAttachments_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pResolveAttachments_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pDepthStencilAttachment_ = {},
uint32_t preserveAttachmentCount_ = {},
const uint32_t *pPreserveAttachments_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
pipelineBindPoint(pipelineBindPoint_),
viewMask(viewMask_),
inputAttachmentCount(inputAttachmentCount_),
pInputAttachments(pInputAttachments_),
colorAttachmentCount(colorAttachmentCount_),
pColorAttachments(pColorAttachments_),
pResolveAttachments(pResolveAttachments_),
pDepthStencilAttachment(pDepthStencilAttachment_),
preserveAttachmentCount(preserveAttachmentCount_),
pPreserveAttachments(pPreserveAttachments_)
{
}
VULKAN_HPP_CONSTEXPR SubpassDescription2(SubpassDescription2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassDescription2(VkSubpassDescription2 const &rhs) VULKAN_HPP_NOEXCEPT : SubpassDescription2(*reinterpret_cast<SubpassDescription2 const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubpassDescription2(VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_,
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_,
uint32_t viewMask_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const &inputAttachments_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const &colorAttachments_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const &resolveAttachments_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pDepthStencilAttachment_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &preserveAttachments_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, pipelineBindPoint(pipelineBindPoint_)
, viewMask(viewMask_)
, inputAttachmentCount(static_cast<uint32_t>(inputAttachments_.size()))
, pInputAttachments(inputAttachments_.data())
, colorAttachmentCount(static_cast<uint32_t>(colorAttachments_.size()))
, pColorAttachments(colorAttachments_.data())
, pResolveAttachments(resolveAttachments_.data())
, pDepthStencilAttachment(pDepthStencilAttachment_)
, preserveAttachmentCount(static_cast<uint32_t>(preserveAttachments_.size()))
, pPreserveAttachments(preserveAttachments_.data())
{
# ifdef VULKAN_HPP_NO_EXCEPTIONS
VULKAN_HPP_ASSERT(resolveAttachments_.empty() || (colorAttachments_.size() == resolveAttachments_.size()));
# else
if(!resolveAttachments_.empty() && (colorAttachments_.size() != resolveAttachments_.size()))
{
throw LogicError(
VULKAN_HPP_NAMESPACE_STRING
"::SubpassDescription2::SubpassDescription2: !resolveAttachments_.empty() && ( colorAttachments_.size() != resolveAttachments_.size() )");
}
# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubpassDescription2 &operator=(SubpassDescription2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassDescription2 &operator=(VkSubpassDescription2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDescription2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &setFlags(VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &setPipelineBindPoint(VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint_) VULKAN_HPP_NOEXCEPT
{
pipelineBindPoint = pipelineBindPoint_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &setViewMask(uint32_t viewMask_) VULKAN_HPP_NOEXCEPT
{
viewMask = viewMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &setInputAttachmentCount(uint32_t inputAttachmentCount_) VULKAN_HPP_NOEXCEPT
{
inputAttachmentCount = inputAttachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &
setPInputAttachments(const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pInputAttachments_) VULKAN_HPP_NOEXCEPT
{
pInputAttachments = pInputAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubpassDescription2 &setInputAttachments(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const &inputAttachments_) VULKAN_HPP_NOEXCEPT
{
inputAttachmentCount = static_cast<uint32_t>(inputAttachments_.size());
pInputAttachments = inputAttachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &setColorAttachmentCount(uint32_t colorAttachmentCount_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = colorAttachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &
setPColorAttachments(const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pColorAttachments_) VULKAN_HPP_NOEXCEPT
{
pColorAttachments = pColorAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubpassDescription2 &setColorAttachments(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const &colorAttachments_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = static_cast<uint32_t>(colorAttachments_.size());
pColorAttachments = colorAttachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &
setPResolveAttachments(const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pResolveAttachments_) VULKAN_HPP_NOEXCEPT
{
pResolveAttachments = pResolveAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubpassDescription2 &setResolveAttachments(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentReference2> const &resolveAttachments_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = static_cast<uint32_t>(resolveAttachments_.size());
pResolveAttachments = resolveAttachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &
setPDepthStencilAttachment(const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pDepthStencilAttachment_) VULKAN_HPP_NOEXCEPT
{
pDepthStencilAttachment = pDepthStencilAttachment_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &setPreserveAttachmentCount(uint32_t preserveAttachmentCount_) VULKAN_HPP_NOEXCEPT
{
preserveAttachmentCount = preserveAttachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescription2 &setPPreserveAttachments(const uint32_t *pPreserveAttachments_) VULKAN_HPP_NOEXCEPT
{
pPreserveAttachments = pPreserveAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubpassDescription2 &
setPreserveAttachments(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &preserveAttachments_) VULKAN_HPP_NOEXCEPT
{
preserveAttachmentCount = static_cast<uint32_t>(preserveAttachments_.size());
pPreserveAttachments = preserveAttachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSubpassDescription2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubpassDescription2 *>(this);
}
explicit operator VkSubpassDescription2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubpassDescription2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags const &,
VULKAN_HPP_NAMESPACE::PipelineBindPoint const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *const &,
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *const &,
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *const &,
uint32_t const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
pipelineBindPoint,
viewMask,
inputAttachmentCount,
pInputAttachments,
colorAttachmentCount,
pColorAttachments,
pResolveAttachments,
pDepthStencilAttachment,
preserveAttachmentCount,
pPreserveAttachments);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubpassDescription2 const &) const = default;
#else
bool operator==(SubpassDescription2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (pipelineBindPoint == rhs.pipelineBindPoint) &&
(viewMask == rhs.viewMask) && (inputAttachmentCount == rhs.inputAttachmentCount) && (pInputAttachments == rhs.pInputAttachments) &&
(colorAttachmentCount == rhs.colorAttachmentCount) && (pColorAttachments == rhs.pColorAttachments) &&
(pResolveAttachments == rhs.pResolveAttachments) && (pDepthStencilAttachment == rhs.pDepthStencilAttachment) &&
(preserveAttachmentCount == rhs.preserveAttachmentCount) && (pPreserveAttachments == rhs.pPreserveAttachments);
# endif
}
bool operator!=(SubpassDescription2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassDescription2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SubpassDescriptionFlags flags = {};
VULKAN_HPP_NAMESPACE::PipelineBindPoint pipelineBindPoint = VULKAN_HPP_NAMESPACE::PipelineBindPoint::eGraphics;
uint32_t viewMask = {};
uint32_t inputAttachmentCount = {};
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pInputAttachments = {};
uint32_t colorAttachmentCount = {};
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pColorAttachments = {};
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pResolveAttachments = {};
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pDepthStencilAttachment = {};
uint32_t preserveAttachmentCount = {};
const uint32_t *pPreserveAttachments = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubpassDescription2) == sizeof(VkSubpassDescription2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubpassDescription2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubpassDescription2>::value,
"SubpassDescription2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSubpassDescription2>
{
using Type = SubpassDescription2;
};
using SubpassDescription2KHR = SubpassDescription2;
struct SubpassDependency2
{
using NativeType = VkSubpassDependency2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassDependency2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SubpassDependency2(uint32_t srcSubpass_ = {},
uint32_t dstSubpass_ = {},
VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask_ = {},
VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_ = {},
VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_ = {},
VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_ = {},
int32_t viewOffset_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcSubpass(srcSubpass_),
dstSubpass(dstSubpass_),
srcStageMask(srcStageMask_),
dstStageMask(dstStageMask_),
srcAccessMask(srcAccessMask_),
dstAccessMask(dstAccessMask_),
dependencyFlags(dependencyFlags_),
viewOffset(viewOffset_)
{
}
VULKAN_HPP_CONSTEXPR SubpassDependency2(SubpassDependency2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassDependency2(VkSubpassDependency2 const &rhs) VULKAN_HPP_NOEXCEPT : SubpassDependency2(*reinterpret_cast<SubpassDependency2 const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubpassDependency2 &operator=(SubpassDependency2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassDependency2 &operator=(VkSubpassDependency2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDependency2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SubpassDependency2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency2 &setSrcSubpass(uint32_t srcSubpass_) VULKAN_HPP_NOEXCEPT
{
srcSubpass = srcSubpass_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency2 &setDstSubpass(uint32_t dstSubpass_) VULKAN_HPP_NOEXCEPT
{
dstSubpass = dstSubpass_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency2 &setSrcStageMask(VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask_) VULKAN_HPP_NOEXCEPT
{
srcStageMask = srcStageMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency2 &setDstStageMask(VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask_) VULKAN_HPP_NOEXCEPT
{
dstStageMask = dstStageMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency2 &setSrcAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask_) VULKAN_HPP_NOEXCEPT
{
srcAccessMask = srcAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency2 &setDstAccessMask(VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask_) VULKAN_HPP_NOEXCEPT
{
dstAccessMask = dstAccessMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency2 &setDependencyFlags(VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags_) VULKAN_HPP_NOEXCEPT
{
dependencyFlags = dependencyFlags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDependency2 &setViewOffset(int32_t viewOffset_) VULKAN_HPP_NOEXCEPT
{
viewOffset = viewOffset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSubpassDependency2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubpassDependency2 *>(this);
}
explicit operator VkSubpassDependency2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubpassDependency2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::PipelineStageFlags const &,
VULKAN_HPP_NAMESPACE::PipelineStageFlags const &,
VULKAN_HPP_NAMESPACE::AccessFlags const &,
VULKAN_HPP_NAMESPACE::AccessFlags const &,
VULKAN_HPP_NAMESPACE::DependencyFlags const &,
int32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcSubpass, dstSubpass, srcStageMask, dstStageMask, srcAccessMask, dstAccessMask, dependencyFlags, viewOffset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubpassDependency2 const &) const = default;
#else
bool operator==(SubpassDependency2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcSubpass == rhs.srcSubpass) && (dstSubpass == rhs.dstSubpass) &&
(srcStageMask == rhs.srcStageMask) && (dstStageMask == rhs.dstStageMask) && (srcAccessMask == rhs.srcAccessMask) &&
(dstAccessMask == rhs.dstAccessMask) && (dependencyFlags == rhs.dependencyFlags) && (viewOffset == rhs.viewOffset);
# endif
}
bool operator!=(SubpassDependency2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassDependency2;
const void *pNext = {};
uint32_t srcSubpass = {};
uint32_t dstSubpass = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags srcStageMask = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags dstStageMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags srcAccessMask = {};
VULKAN_HPP_NAMESPACE::AccessFlags dstAccessMask = {};
VULKAN_HPP_NAMESPACE::DependencyFlags dependencyFlags = {};
int32_t viewOffset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubpassDependency2) == sizeof(VkSubpassDependency2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubpassDependency2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubpassDependency2>::value,
"SubpassDependency2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSubpassDependency2>
{
using Type = SubpassDependency2;
};
using SubpassDependency2KHR = SubpassDependency2;
struct RenderPassCreateInfo2
{
using NativeType = VkRenderPassCreateInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassCreateInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RenderPassCreateInfo2(VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_ = {},
uint32_t attachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentDescription2 *pAttachments_ = {},
uint32_t subpassCount_ = {},
const VULKAN_HPP_NAMESPACE::SubpassDescription2 *pSubpasses_ = {},
uint32_t dependencyCount_ = {},
const VULKAN_HPP_NAMESPACE::SubpassDependency2 *pDependencies_ = {},
uint32_t correlatedViewMaskCount_ = {},
const uint32_t *pCorrelatedViewMasks_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
attachmentCount(attachmentCount_),
pAttachments(pAttachments_),
subpassCount(subpassCount_),
pSubpasses(pSubpasses_),
dependencyCount(dependencyCount_),
pDependencies(pDependencies_),
correlatedViewMaskCount(correlatedViewMaskCount_),
pCorrelatedViewMasks(pCorrelatedViewMasks_)
{
}
VULKAN_HPP_CONSTEXPR RenderPassCreateInfo2(RenderPassCreateInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassCreateInfo2(VkRenderPassCreateInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
: RenderPassCreateInfo2(*reinterpret_cast<RenderPassCreateInfo2 const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassCreateInfo2(VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentDescription2> const &attachments_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDescription2> const &subpasses_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDependency2> const &dependencies_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &correlatedViewMasks_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, attachmentCount(static_cast<uint32_t>(attachments_.size()))
, pAttachments(attachments_.data())
, subpassCount(static_cast<uint32_t>(subpasses_.size()))
, pSubpasses(subpasses_.data())
, dependencyCount(static_cast<uint32_t>(dependencies_.size()))
, pDependencies(dependencies_.data())
, correlatedViewMaskCount(static_cast<uint32_t>(correlatedViewMasks_.size()))
, pCorrelatedViewMasks(correlatedViewMasks_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderPassCreateInfo2 &operator=(RenderPassCreateInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassCreateInfo2 &operator=(VkRenderPassCreateInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo2 &setFlags(VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo2 &setAttachmentCount(uint32_t attachmentCount_) VULKAN_HPP_NOEXCEPT
{
attachmentCount = attachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo2 &setPAttachments(const VULKAN_HPP_NAMESPACE::AttachmentDescription2 *pAttachments_) VULKAN_HPP_NOEXCEPT
{
pAttachments = pAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassCreateInfo2 &setAttachments(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentDescription2> const &attachments_) VULKAN_HPP_NOEXCEPT
{
attachmentCount = static_cast<uint32_t>(attachments_.size());
pAttachments = attachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo2 &setSubpassCount(uint32_t subpassCount_) VULKAN_HPP_NOEXCEPT
{
subpassCount = subpassCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo2 &setPSubpasses(const VULKAN_HPP_NAMESPACE::SubpassDescription2 *pSubpasses_) VULKAN_HPP_NOEXCEPT
{
pSubpasses = pSubpasses_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassCreateInfo2 &
setSubpasses(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDescription2> const &subpasses_) VULKAN_HPP_NOEXCEPT
{
subpassCount = static_cast<uint32_t>(subpasses_.size());
pSubpasses = subpasses_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo2 &setDependencyCount(uint32_t dependencyCount_) VULKAN_HPP_NOEXCEPT
{
dependencyCount = dependencyCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo2 &setPDependencies(const VULKAN_HPP_NAMESPACE::SubpassDependency2 *pDependencies_) VULKAN_HPP_NOEXCEPT
{
pDependencies = pDependencies_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassCreateInfo2 &
setDependencies(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassDependency2> const &dependencies_) VULKAN_HPP_NOEXCEPT
{
dependencyCount = static_cast<uint32_t>(dependencies_.size());
pDependencies = dependencies_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo2 &setCorrelatedViewMaskCount(uint32_t correlatedViewMaskCount_) VULKAN_HPP_NOEXCEPT
{
correlatedViewMaskCount = correlatedViewMaskCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassCreateInfo2 &setPCorrelatedViewMasks(const uint32_t *pCorrelatedViewMasks_) VULKAN_HPP_NOEXCEPT
{
pCorrelatedViewMasks = pCorrelatedViewMasks_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassCreateInfo2 &
setCorrelatedViewMasks(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &correlatedViewMasks_) VULKAN_HPP_NOEXCEPT
{
correlatedViewMaskCount = static_cast<uint32_t>(correlatedViewMasks_.size());
pCorrelatedViewMasks = correlatedViewMasks_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderPassCreateInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderPassCreateInfo2 *>(this);
}
explicit operator VkRenderPassCreateInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderPassCreateInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::RenderPassCreateFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::AttachmentDescription2 *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SubpassDescription2 *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SubpassDependency2 *const &,
uint32_t const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
attachmentCount,
pAttachments,
subpassCount,
pSubpasses,
dependencyCount,
pDependencies,
correlatedViewMaskCount,
pCorrelatedViewMasks);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RenderPassCreateInfo2 const &) const = default;
#else
bool operator==(RenderPassCreateInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (attachmentCount == rhs.attachmentCount) &&
(pAttachments == rhs.pAttachments) && (subpassCount == rhs.subpassCount) && (pSubpasses == rhs.pSubpasses) &&
(dependencyCount == rhs.dependencyCount) && (pDependencies == rhs.pDependencies) &&
(correlatedViewMaskCount == rhs.correlatedViewMaskCount) && (pCorrelatedViewMasks == rhs.pCorrelatedViewMasks);
# endif
}
bool operator!=(RenderPassCreateInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassCreateInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::RenderPassCreateFlags flags = {};
uint32_t attachmentCount = {};
const VULKAN_HPP_NAMESPACE::AttachmentDescription2 *pAttachments = {};
uint32_t subpassCount = {};
const VULKAN_HPP_NAMESPACE::SubpassDescription2 *pSubpasses = {};
uint32_t dependencyCount = {};
const VULKAN_HPP_NAMESPACE::SubpassDependency2 *pDependencies = {};
uint32_t correlatedViewMaskCount = {};
const uint32_t *pCorrelatedViewMasks = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2) == sizeof(VkRenderPassCreateInfo2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderPassCreateInfo2>::value,
"RenderPassCreateInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderPassCreateInfo2>
{
using Type = RenderPassCreateInfo2;
};
using RenderPassCreateInfo2KHR = RenderPassCreateInfo2;
struct RenderPassFragmentDensityMapCreateInfoEXT
{
using NativeType = VkRenderPassFragmentDensityMapCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassFragmentDensityMapCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RenderPassFragmentDensityMapCreateInfoEXT(VULKAN_HPP_NAMESPACE::AttachmentReference fragmentDensityMapAttachment_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fragmentDensityMapAttachment(fragmentDensityMapAttachment_)
{
}
VULKAN_HPP_CONSTEXPR RenderPassFragmentDensityMapCreateInfoEXT(RenderPassFragmentDensityMapCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassFragmentDensityMapCreateInfoEXT(VkRenderPassFragmentDensityMapCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: RenderPassFragmentDensityMapCreateInfoEXT(*reinterpret_cast<RenderPassFragmentDensityMapCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderPassFragmentDensityMapCreateInfoEXT &operator=(RenderPassFragmentDensityMapCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassFragmentDensityMapCreateInfoEXT &operator=(VkRenderPassFragmentDensityMapCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassFragmentDensityMapCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderPassFragmentDensityMapCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassFragmentDensityMapCreateInfoEXT &
setFragmentDensityMapAttachment(VULKAN_HPP_NAMESPACE::AttachmentReference const &fragmentDensityMapAttachment_) VULKAN_HPP_NOEXCEPT
{
fragmentDensityMapAttachment = fragmentDensityMapAttachment_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderPassFragmentDensityMapCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderPassFragmentDensityMapCreateInfoEXT *>(this);
}
explicit operator VkRenderPassFragmentDensityMapCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderPassFragmentDensityMapCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::AttachmentReference const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fragmentDensityMapAttachment);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RenderPassFragmentDensityMapCreateInfoEXT const &) const = default;
#else
bool operator==(RenderPassFragmentDensityMapCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fragmentDensityMapAttachment == rhs.fragmentDensityMapAttachment);
# endif
}
bool operator!=(RenderPassFragmentDensityMapCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassFragmentDensityMapCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::AttachmentReference fragmentDensityMapAttachment = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderPassFragmentDensityMapCreateInfoEXT) == sizeof(VkRenderPassFragmentDensityMapCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderPassFragmentDensityMapCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderPassFragmentDensityMapCreateInfoEXT>::value,
"RenderPassFragmentDensityMapCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderPassFragmentDensityMapCreateInfoEXT>
{
using Type = RenderPassFragmentDensityMapCreateInfoEXT;
};
struct RenderPassInputAttachmentAspectCreateInfo
{
using NativeType = VkRenderPassInputAttachmentAspectCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassInputAttachmentAspectCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RenderPassInputAttachmentAspectCreateInfo(uint32_t aspectReferenceCount_ = {},
const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference *pAspectReferences_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
aspectReferenceCount(aspectReferenceCount_),
pAspectReferences(pAspectReferences_)
{
}
VULKAN_HPP_CONSTEXPR RenderPassInputAttachmentAspectCreateInfo(RenderPassInputAttachmentAspectCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassInputAttachmentAspectCreateInfo(VkRenderPassInputAttachmentAspectCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: RenderPassInputAttachmentAspectCreateInfo(*reinterpret_cast<RenderPassInputAttachmentAspectCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassInputAttachmentAspectCreateInfo(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference> const &aspectReferences_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, aspectReferenceCount(static_cast<uint32_t>(aspectReferences_.size()))
, pAspectReferences(aspectReferences_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderPassInputAttachmentAspectCreateInfo &operator=(RenderPassInputAttachmentAspectCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassInputAttachmentAspectCreateInfo &operator=(VkRenderPassInputAttachmentAspectCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassInputAttachmentAspectCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderPassInputAttachmentAspectCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassInputAttachmentAspectCreateInfo &setAspectReferenceCount(uint32_t aspectReferenceCount_) VULKAN_HPP_NOEXCEPT
{
aspectReferenceCount = aspectReferenceCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassInputAttachmentAspectCreateInfo &
setPAspectReferences(const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference *pAspectReferences_) VULKAN_HPP_NOEXCEPT
{
pAspectReferences = pAspectReferences_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassInputAttachmentAspectCreateInfo &setAspectReferences(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference> const &aspectReferences_) VULKAN_HPP_NOEXCEPT
{
aspectReferenceCount = static_cast<uint32_t>(aspectReferences_.size());
pAspectReferences = aspectReferences_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderPassInputAttachmentAspectCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderPassInputAttachmentAspectCreateInfo *>(this);
}
explicit operator VkRenderPassInputAttachmentAspectCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderPassInputAttachmentAspectCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, aspectReferenceCount, pAspectReferences);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RenderPassInputAttachmentAspectCreateInfo const &) const = default;
#else
bool operator==(RenderPassInputAttachmentAspectCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (aspectReferenceCount == rhs.aspectReferenceCount) &&
(pAspectReferences == rhs.pAspectReferences);
# endif
}
bool operator!=(RenderPassInputAttachmentAspectCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassInputAttachmentAspectCreateInfo;
const void *pNext = {};
uint32_t aspectReferenceCount = {};
const VULKAN_HPP_NAMESPACE::InputAttachmentAspectReference *pAspectReferences = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderPassInputAttachmentAspectCreateInfo) == sizeof(VkRenderPassInputAttachmentAspectCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderPassInputAttachmentAspectCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderPassInputAttachmentAspectCreateInfo>::value,
"RenderPassInputAttachmentAspectCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderPassInputAttachmentAspectCreateInfo>
{
using Type = RenderPassInputAttachmentAspectCreateInfo;
};
using RenderPassInputAttachmentAspectCreateInfoKHR = RenderPassInputAttachmentAspectCreateInfo;
struct RenderPassMultiviewCreateInfo
{
using NativeType = VkRenderPassMultiviewCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassMultiviewCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RenderPassMultiviewCreateInfo(uint32_t subpassCount_ = {},
const uint32_t *pViewMasks_ = {},
uint32_t dependencyCount_ = {},
const int32_t *pViewOffsets_ = {},
uint32_t correlationMaskCount_ = {},
const uint32_t *pCorrelationMasks_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
subpassCount(subpassCount_),
pViewMasks(pViewMasks_),
dependencyCount(dependencyCount_),
pViewOffsets(pViewOffsets_),
correlationMaskCount(correlationMaskCount_),
pCorrelationMasks(pCorrelationMasks_)
{
}
VULKAN_HPP_CONSTEXPR RenderPassMultiviewCreateInfo(RenderPassMultiviewCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassMultiviewCreateInfo(VkRenderPassMultiviewCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: RenderPassMultiviewCreateInfo(*reinterpret_cast<RenderPassMultiviewCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassMultiviewCreateInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &viewMasks_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const int32_t> const &viewOffsets_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &correlationMasks_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, subpassCount(static_cast<uint32_t>(viewMasks_.size()))
, pViewMasks(viewMasks_.data())
, dependencyCount(static_cast<uint32_t>(viewOffsets_.size()))
, pViewOffsets(viewOffsets_.data())
, correlationMaskCount(static_cast<uint32_t>(correlationMasks_.size()))
, pCorrelationMasks(correlationMasks_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderPassMultiviewCreateInfo &operator=(RenderPassMultiviewCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassMultiviewCreateInfo &operator=(VkRenderPassMultiviewCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassMultiviewCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderPassMultiviewCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassMultiviewCreateInfo &setSubpassCount(uint32_t subpassCount_) VULKAN_HPP_NOEXCEPT
{
subpassCount = subpassCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassMultiviewCreateInfo &setPViewMasks(const uint32_t *pViewMasks_) VULKAN_HPP_NOEXCEPT
{
pViewMasks = pViewMasks_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassMultiviewCreateInfo &setViewMasks(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &viewMasks_) VULKAN_HPP_NOEXCEPT
{
subpassCount = static_cast<uint32_t>(viewMasks_.size());
pViewMasks = viewMasks_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RenderPassMultiviewCreateInfo &setDependencyCount(uint32_t dependencyCount_) VULKAN_HPP_NOEXCEPT
{
dependencyCount = dependencyCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassMultiviewCreateInfo &setPViewOffsets(const int32_t *pViewOffsets_) VULKAN_HPP_NOEXCEPT
{
pViewOffsets = pViewOffsets_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassMultiviewCreateInfo &setViewOffsets(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const int32_t> const &viewOffsets_) VULKAN_HPP_NOEXCEPT
{
dependencyCount = static_cast<uint32_t>(viewOffsets_.size());
pViewOffsets = viewOffsets_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RenderPassMultiviewCreateInfo &setCorrelationMaskCount(uint32_t correlationMaskCount_) VULKAN_HPP_NOEXCEPT
{
correlationMaskCount = correlationMaskCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassMultiviewCreateInfo &setPCorrelationMasks(const uint32_t *pCorrelationMasks_) VULKAN_HPP_NOEXCEPT
{
pCorrelationMasks = pCorrelationMasks_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassMultiviewCreateInfo &
setCorrelationMasks(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &correlationMasks_) VULKAN_HPP_NOEXCEPT
{
correlationMaskCount = static_cast<uint32_t>(correlationMasks_.size());
pCorrelationMasks = correlationMasks_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderPassMultiviewCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderPassMultiviewCreateInfo *>(this);
}
explicit operator VkRenderPassMultiviewCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderPassMultiviewCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const uint32_t *const &,
uint32_t const &,
const int32_t *const &,
uint32_t const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, subpassCount, pViewMasks, dependencyCount, pViewOffsets, correlationMaskCount, pCorrelationMasks);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RenderPassMultiviewCreateInfo const &) const = default;
#else
bool operator==(RenderPassMultiviewCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (subpassCount == rhs.subpassCount) && (pViewMasks == rhs.pViewMasks) &&
(dependencyCount == rhs.dependencyCount) && (pViewOffsets == rhs.pViewOffsets) && (correlationMaskCount == rhs.correlationMaskCount) &&
(pCorrelationMasks == rhs.pCorrelationMasks);
# endif
}
bool operator!=(RenderPassMultiviewCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassMultiviewCreateInfo;
const void *pNext = {};
uint32_t subpassCount = {};
const uint32_t *pViewMasks = {};
uint32_t dependencyCount = {};
const int32_t *pViewOffsets = {};
uint32_t correlationMaskCount = {};
const uint32_t *pCorrelationMasks = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderPassMultiviewCreateInfo) == sizeof(VkRenderPassMultiviewCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderPassMultiviewCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderPassMultiviewCreateInfo>::value,
"RenderPassMultiviewCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderPassMultiviewCreateInfo>
{
using Type = RenderPassMultiviewCreateInfo;
};
using RenderPassMultiviewCreateInfoKHR = RenderPassMultiviewCreateInfo;
struct SubpassSampleLocationsEXT
{
using NativeType = VkSubpassSampleLocationsEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SubpassSampleLocationsEXT(uint32_t subpassIndex_ = {},
VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo_ = {}) VULKAN_HPP_NOEXCEPT
: subpassIndex(subpassIndex_),
sampleLocationsInfo(sampleLocationsInfo_)
{
}
VULKAN_HPP_CONSTEXPR SubpassSampleLocationsEXT(SubpassSampleLocationsEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassSampleLocationsEXT(VkSubpassSampleLocationsEXT const &rhs) VULKAN_HPP_NOEXCEPT
: SubpassSampleLocationsEXT(*reinterpret_cast<SubpassSampleLocationsEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubpassSampleLocationsEXT &operator=(SubpassSampleLocationsEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassSampleLocationsEXT &operator=(VkSubpassSampleLocationsEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SubpassSampleLocationsEXT &setSubpassIndex(uint32_t subpassIndex_) VULKAN_HPP_NOEXCEPT
{
subpassIndex = subpassIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassSampleLocationsEXT &
setSampleLocationsInfo(VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const &sampleLocationsInfo_) VULKAN_HPP_NOEXCEPT
{
sampleLocationsInfo = sampleLocationsInfo_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSubpassSampleLocationsEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubpassSampleLocationsEXT *>(this);
}
explicit operator VkSubpassSampleLocationsEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubpassSampleLocationsEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(subpassIndex, sampleLocationsInfo);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubpassSampleLocationsEXT const &) const = default;
#else
bool operator==(SubpassSampleLocationsEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (subpassIndex == rhs.subpassIndex) && (sampleLocationsInfo == rhs.sampleLocationsInfo);
# endif
}
bool operator!=(SubpassSampleLocationsEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t subpassIndex = {};
VULKAN_HPP_NAMESPACE::SampleLocationsInfoEXT sampleLocationsInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT) == sizeof(VkSubpassSampleLocationsEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT>::value,
"SubpassSampleLocationsEXT is not nothrow_move_constructible!");
struct RenderPassSampleLocationsBeginInfoEXT
{
using NativeType = VkRenderPassSampleLocationsBeginInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassSampleLocationsBeginInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
RenderPassSampleLocationsBeginInfoEXT(uint32_t attachmentInitialSampleLocationsCount_ = {},
const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT *pAttachmentInitialSampleLocations_ = {},
uint32_t postSubpassSampleLocationsCount_ = {},
const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT *pPostSubpassSampleLocations_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
attachmentInitialSampleLocationsCount(attachmentInitialSampleLocationsCount_),
pAttachmentInitialSampleLocations(pAttachmentInitialSampleLocations_),
postSubpassSampleLocationsCount(postSubpassSampleLocationsCount_),
pPostSubpassSampleLocations(pPostSubpassSampleLocations_)
{
}
VULKAN_HPP_CONSTEXPR RenderPassSampleLocationsBeginInfoEXT(RenderPassSampleLocationsBeginInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassSampleLocationsBeginInfoEXT(VkRenderPassSampleLocationsBeginInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: RenderPassSampleLocationsBeginInfoEXT(*reinterpret_cast<RenderPassSampleLocationsBeginInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassSampleLocationsBeginInfoEXT(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT> const &attachmentInitialSampleLocations_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT> const &postSubpassSampleLocations_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, attachmentInitialSampleLocationsCount(static_cast<uint32_t>(attachmentInitialSampleLocations_.size()))
, pAttachmentInitialSampleLocations(attachmentInitialSampleLocations_.data())
, postSubpassSampleLocationsCount(static_cast<uint32_t>(postSubpassSampleLocations_.size()))
, pPostSubpassSampleLocations(postSubpassSampleLocations_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderPassSampleLocationsBeginInfoEXT &operator=(RenderPassSampleLocationsBeginInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassSampleLocationsBeginInfoEXT &operator=(VkRenderPassSampleLocationsBeginInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassSampleLocationsBeginInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderPassSampleLocationsBeginInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassSampleLocationsBeginInfoEXT &
setAttachmentInitialSampleLocationsCount(uint32_t attachmentInitialSampleLocationsCount_) VULKAN_HPP_NOEXCEPT
{
attachmentInitialSampleLocationsCount = attachmentInitialSampleLocationsCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassSampleLocationsBeginInfoEXT &
setPAttachmentInitialSampleLocations(const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT *pAttachmentInitialSampleLocations_) VULKAN_HPP_NOEXCEPT
{
pAttachmentInitialSampleLocations = pAttachmentInitialSampleLocations_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassSampleLocationsBeginInfoEXT &setAttachmentInitialSampleLocations(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT> const &attachmentInitialSampleLocations_)
VULKAN_HPP_NOEXCEPT
{
attachmentInitialSampleLocationsCount = static_cast<uint32_t>(attachmentInitialSampleLocations_.size());
pAttachmentInitialSampleLocations = attachmentInitialSampleLocations_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RenderPassSampleLocationsBeginInfoEXT &
setPostSubpassSampleLocationsCount(uint32_t postSubpassSampleLocationsCount_) VULKAN_HPP_NOEXCEPT
{
postSubpassSampleLocationsCount = postSubpassSampleLocationsCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassSampleLocationsBeginInfoEXT &
setPPostSubpassSampleLocations(const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT *pPostSubpassSampleLocations_) VULKAN_HPP_NOEXCEPT
{
pPostSubpassSampleLocations = pPostSubpassSampleLocations_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderPassSampleLocationsBeginInfoEXT &setPostSubpassSampleLocations(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT> const &postSubpassSampleLocations_)
VULKAN_HPP_NOEXCEPT
{
postSubpassSampleLocationsCount = static_cast<uint32_t>(postSubpassSampleLocations_.size());
pPostSubpassSampleLocations = postSubpassSampleLocations_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderPassSampleLocationsBeginInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderPassSampleLocationsBeginInfoEXT *>(this);
}
explicit operator VkRenderPassSampleLocationsBeginInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderPassSampleLocationsBeginInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, attachmentInitialSampleLocationsCount, pAttachmentInitialSampleLocations, postSubpassSampleLocationsCount, pPostSubpassSampleLocations);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RenderPassSampleLocationsBeginInfoEXT const &) const = default;
#else
bool operator==(RenderPassSampleLocationsBeginInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (attachmentInitialSampleLocationsCount == rhs.attachmentInitialSampleLocationsCount) &&
(pAttachmentInitialSampleLocations == rhs.pAttachmentInitialSampleLocations) &&
(postSubpassSampleLocationsCount == rhs.postSubpassSampleLocationsCount) && (pPostSubpassSampleLocations == rhs.pPostSubpassSampleLocations);
# endif
}
bool operator!=(RenderPassSampleLocationsBeginInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassSampleLocationsBeginInfoEXT;
const void *pNext = {};
uint32_t attachmentInitialSampleLocationsCount = {};
const VULKAN_HPP_NAMESPACE::AttachmentSampleLocationsEXT *pAttachmentInitialSampleLocations = {};
uint32_t postSubpassSampleLocationsCount = {};
const VULKAN_HPP_NAMESPACE::SubpassSampleLocationsEXT *pPostSubpassSampleLocations = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderPassSampleLocationsBeginInfoEXT) == sizeof(VkRenderPassSampleLocationsBeginInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderPassSampleLocationsBeginInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderPassSampleLocationsBeginInfoEXT>::value,
"RenderPassSampleLocationsBeginInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderPassSampleLocationsBeginInfoEXT>
{
using Type = RenderPassSampleLocationsBeginInfoEXT;
};
struct RenderPassTransformBeginInfoQCOM
{
using NativeType = VkRenderPassTransformBeginInfoQCOM;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderPassTransformBeginInfoQCOM;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR RenderPassTransformBeginInfoQCOM(
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
transform(transform_)
{
}
VULKAN_HPP_CONSTEXPR RenderPassTransformBeginInfoQCOM(RenderPassTransformBeginInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassTransformBeginInfoQCOM(VkRenderPassTransformBeginInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT
: RenderPassTransformBeginInfoQCOM(*reinterpret_cast<RenderPassTransformBeginInfoQCOM const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderPassTransformBeginInfoQCOM &operator=(RenderPassTransformBeginInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderPassTransformBeginInfoQCOM &operator=(VkRenderPassTransformBeginInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderPassTransformBeginInfoQCOM const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderPassTransformBeginInfoQCOM &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderPassTransformBeginInfoQCOM &setTransform(VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform_) VULKAN_HPP_NOEXCEPT
{
transform = transform_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderPassTransformBeginInfoQCOM const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderPassTransformBeginInfoQCOM *>(this);
}
explicit operator VkRenderPassTransformBeginInfoQCOM &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderPassTransformBeginInfoQCOM *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, transform);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RenderPassTransformBeginInfoQCOM const &) const = default;
#else
bool operator==(RenderPassTransformBeginInfoQCOM const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (transform == rhs.transform);
# endif
}
bool operator!=(RenderPassTransformBeginInfoQCOM const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderPassTransformBeginInfoQCOM;
void *pNext = {};
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR transform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderPassTransformBeginInfoQCOM) == sizeof(VkRenderPassTransformBeginInfoQCOM),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderPassTransformBeginInfoQCOM>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderPassTransformBeginInfoQCOM>::value,
"RenderPassTransformBeginInfoQCOM is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderPassTransformBeginInfoQCOM>
{
using Type = RenderPassTransformBeginInfoQCOM;
};
struct RenderingAttachmentInfo
{
using NativeType = VkRenderingAttachmentInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderingAttachmentInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 RenderingAttachmentInfo(VULKAN_HPP_NAMESPACE::ImageView imageView_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout imageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::ResolveModeFlagBits resolveMode_ = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone,
VULKAN_HPP_NAMESPACE::ImageView resolveImageView_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout resolveImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_ = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad,
VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_ = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore,
VULKAN_HPP_NAMESPACE::ClearValue clearValue_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
imageView(imageView_),
imageLayout(imageLayout_),
resolveMode(resolveMode_),
resolveImageView(resolveImageView_),
resolveImageLayout(resolveImageLayout_),
loadOp(loadOp_),
storeOp(storeOp_),
clearValue(clearValue_)
{
}
VULKAN_HPP_CONSTEXPR_14 RenderingAttachmentInfo(RenderingAttachmentInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderingAttachmentInfo(VkRenderingAttachmentInfo const &rhs) VULKAN_HPP_NOEXCEPT
: RenderingAttachmentInfo(*reinterpret_cast<RenderingAttachmentInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderingAttachmentInfo &operator=(RenderingAttachmentInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderingAttachmentInfo &operator=(VkRenderingAttachmentInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderingAttachmentInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingAttachmentInfo &setImageView(VULKAN_HPP_NAMESPACE::ImageView imageView_) VULKAN_HPP_NOEXCEPT
{
imageView = imageView_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingAttachmentInfo &setImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout imageLayout_) VULKAN_HPP_NOEXCEPT
{
imageLayout = imageLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingAttachmentInfo &setResolveMode(VULKAN_HPP_NAMESPACE::ResolveModeFlagBits resolveMode_) VULKAN_HPP_NOEXCEPT
{
resolveMode = resolveMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingAttachmentInfo &setResolveImageView(VULKAN_HPP_NAMESPACE::ImageView resolveImageView_) VULKAN_HPP_NOEXCEPT
{
resolveImageView = resolveImageView_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingAttachmentInfo &setResolveImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout resolveImageLayout_) VULKAN_HPP_NOEXCEPT
{
resolveImageLayout = resolveImageLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingAttachmentInfo &setLoadOp(VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp_) VULKAN_HPP_NOEXCEPT
{
loadOp = loadOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingAttachmentInfo &setStoreOp(VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp_) VULKAN_HPP_NOEXCEPT
{
storeOp = storeOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingAttachmentInfo &setClearValue(VULKAN_HPP_NAMESPACE::ClearValue const &clearValue_) VULKAN_HPP_NOEXCEPT
{
clearValue = clearValue_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderingAttachmentInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderingAttachmentInfo *>(this);
}
explicit operator VkRenderingAttachmentInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderingAttachmentInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ImageView const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
VULKAN_HPP_NAMESPACE::ResolveModeFlagBits const &,
VULKAN_HPP_NAMESPACE::ImageView const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
VULKAN_HPP_NAMESPACE::AttachmentLoadOp const &,
VULKAN_HPP_NAMESPACE::AttachmentStoreOp const &,
VULKAN_HPP_NAMESPACE::ClearValue const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, imageView, imageLayout, resolveMode, resolveImageView, resolveImageLayout, loadOp, storeOp, clearValue);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderingAttachmentInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageView imageView = {};
VULKAN_HPP_NAMESPACE::ImageLayout imageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::ResolveModeFlagBits resolveMode = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone;
VULKAN_HPP_NAMESPACE::ImageView resolveImageView = {};
VULKAN_HPP_NAMESPACE::ImageLayout resolveImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::AttachmentLoadOp loadOp = VULKAN_HPP_NAMESPACE::AttachmentLoadOp::eLoad;
VULKAN_HPP_NAMESPACE::AttachmentStoreOp storeOp = VULKAN_HPP_NAMESPACE::AttachmentStoreOp::eStore;
VULKAN_HPP_NAMESPACE::ClearValue clearValue = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo) == sizeof(VkRenderingAttachmentInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo>::value,
"RenderingAttachmentInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderingAttachmentInfo>
{
using Type = RenderingAttachmentInfo;
};
using RenderingAttachmentInfoKHR = RenderingAttachmentInfo;
struct RenderingFragmentDensityMapAttachmentInfoEXT
{
using NativeType = VkRenderingFragmentDensityMapAttachmentInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderingFragmentDensityMapAttachmentInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
RenderingFragmentDensityMapAttachmentInfoEXT(VULKAN_HPP_NAMESPACE::ImageView imageView_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout imageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
imageView(imageView_),
imageLayout(imageLayout_)
{
}
VULKAN_HPP_CONSTEXPR RenderingFragmentDensityMapAttachmentInfoEXT(RenderingFragmentDensityMapAttachmentInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderingFragmentDensityMapAttachmentInfoEXT(VkRenderingFragmentDensityMapAttachmentInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: RenderingFragmentDensityMapAttachmentInfoEXT(*reinterpret_cast<RenderingFragmentDensityMapAttachmentInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderingFragmentDensityMapAttachmentInfoEXT &operator=(RenderingFragmentDensityMapAttachmentInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderingFragmentDensityMapAttachmentInfoEXT &operator=(VkRenderingFragmentDensityMapAttachmentInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderingFragmentDensityMapAttachmentInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderingFragmentDensityMapAttachmentInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingFragmentDensityMapAttachmentInfoEXT &setImageView(VULKAN_HPP_NAMESPACE::ImageView imageView_) VULKAN_HPP_NOEXCEPT
{
imageView = imageView_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingFragmentDensityMapAttachmentInfoEXT &setImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout imageLayout_) VULKAN_HPP_NOEXCEPT
{
imageLayout = imageLayout_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderingFragmentDensityMapAttachmentInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderingFragmentDensityMapAttachmentInfoEXT *>(this);
}
explicit operator VkRenderingFragmentDensityMapAttachmentInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderingFragmentDensityMapAttachmentInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ImageView const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, imageView, imageLayout);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RenderingFragmentDensityMapAttachmentInfoEXT const &) const = default;
#else
bool operator==(RenderingFragmentDensityMapAttachmentInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (imageView == rhs.imageView) && (imageLayout == rhs.imageLayout);
# endif
}
bool operator!=(RenderingFragmentDensityMapAttachmentInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderingFragmentDensityMapAttachmentInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageView imageView = {};
VULKAN_HPP_NAMESPACE::ImageLayout imageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderingFragmentDensityMapAttachmentInfoEXT) ==
sizeof(VkRenderingFragmentDensityMapAttachmentInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderingFragmentDensityMapAttachmentInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderingFragmentDensityMapAttachmentInfoEXT>::value,
"RenderingFragmentDensityMapAttachmentInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderingFragmentDensityMapAttachmentInfoEXT>
{
using Type = RenderingFragmentDensityMapAttachmentInfoEXT;
};
struct RenderingFragmentShadingRateAttachmentInfoKHR
{
using NativeType = VkRenderingFragmentShadingRateAttachmentInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderingFragmentShadingRateAttachmentInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
RenderingFragmentShadingRateAttachmentInfoKHR(VULKAN_HPP_NAMESPACE::ImageView imageView_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout imageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::Extent2D shadingRateAttachmentTexelSize_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
imageView(imageView_),
imageLayout(imageLayout_),
shadingRateAttachmentTexelSize(shadingRateAttachmentTexelSize_)
{
}
VULKAN_HPP_CONSTEXPR
RenderingFragmentShadingRateAttachmentInfoKHR(RenderingFragmentShadingRateAttachmentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderingFragmentShadingRateAttachmentInfoKHR(VkRenderingFragmentShadingRateAttachmentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: RenderingFragmentShadingRateAttachmentInfoKHR(*reinterpret_cast<RenderingFragmentShadingRateAttachmentInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderingFragmentShadingRateAttachmentInfoKHR &operator=(RenderingFragmentShadingRateAttachmentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderingFragmentShadingRateAttachmentInfoKHR &operator=(VkRenderingFragmentShadingRateAttachmentInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderingFragmentShadingRateAttachmentInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderingFragmentShadingRateAttachmentInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingFragmentShadingRateAttachmentInfoKHR &setImageView(VULKAN_HPP_NAMESPACE::ImageView imageView_) VULKAN_HPP_NOEXCEPT
{
imageView = imageView_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingFragmentShadingRateAttachmentInfoKHR &setImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout imageLayout_) VULKAN_HPP_NOEXCEPT
{
imageLayout = imageLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingFragmentShadingRateAttachmentInfoKHR &
setShadingRateAttachmentTexelSize(VULKAN_HPP_NAMESPACE::Extent2D const &shadingRateAttachmentTexelSize_) VULKAN_HPP_NOEXCEPT
{
shadingRateAttachmentTexelSize = shadingRateAttachmentTexelSize_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderingFragmentShadingRateAttachmentInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderingFragmentShadingRateAttachmentInfoKHR *>(this);
}
explicit operator VkRenderingFragmentShadingRateAttachmentInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderingFragmentShadingRateAttachmentInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ImageView const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
VULKAN_HPP_NAMESPACE::Extent2D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, imageView, imageLayout, shadingRateAttachmentTexelSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RenderingFragmentShadingRateAttachmentInfoKHR const &) const = default;
#else
bool operator==(RenderingFragmentShadingRateAttachmentInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (imageView == rhs.imageView) && (imageLayout == rhs.imageLayout) &&
(shadingRateAttachmentTexelSize == rhs.shadingRateAttachmentTexelSize);
# endif
}
bool operator!=(RenderingFragmentShadingRateAttachmentInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderingFragmentShadingRateAttachmentInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageView imageView = {};
VULKAN_HPP_NAMESPACE::ImageLayout imageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::Extent2D shadingRateAttachmentTexelSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderingFragmentShadingRateAttachmentInfoKHR) ==
sizeof(VkRenderingFragmentShadingRateAttachmentInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderingFragmentShadingRateAttachmentInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderingFragmentShadingRateAttachmentInfoKHR>::value,
"RenderingFragmentShadingRateAttachmentInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderingFragmentShadingRateAttachmentInfoKHR>
{
using Type = RenderingFragmentShadingRateAttachmentInfoKHR;
};
struct RenderingInfo
{
using NativeType = VkRenderingInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eRenderingInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 RenderingInfo(VULKAN_HPP_NAMESPACE::RenderingFlags flags_ = {},
VULKAN_HPP_NAMESPACE::Rect2D renderArea_ = {},
uint32_t layerCount_ = {},
uint32_t viewMask_ = {},
uint32_t colorAttachmentCount_ = {},
const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *pColorAttachments_ = {},
const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *pDepthAttachment_ = {},
const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *pStencilAttachment_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
renderArea(renderArea_),
layerCount(layerCount_),
viewMask(viewMask_),
colorAttachmentCount(colorAttachmentCount_),
pColorAttachments(pColorAttachments_),
pDepthAttachment(pDepthAttachment_),
pStencilAttachment(pStencilAttachment_)
{
}
VULKAN_HPP_CONSTEXPR_14 RenderingInfo(RenderingInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderingInfo(VkRenderingInfo const &rhs) VULKAN_HPP_NOEXCEPT : RenderingInfo(*reinterpret_cast<RenderingInfo const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderingInfo(VULKAN_HPP_NAMESPACE::RenderingFlags flags_,
VULKAN_HPP_NAMESPACE::Rect2D renderArea_,
uint32_t layerCount_,
uint32_t viewMask_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo> const &colorAttachments_,
const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *pDepthAttachment_ = {},
const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *pStencilAttachment_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, renderArea(renderArea_)
, layerCount(layerCount_)
, viewMask(viewMask_)
, colorAttachmentCount(static_cast<uint32_t>(colorAttachments_.size()))
, pColorAttachments(colorAttachments_.data())
, pDepthAttachment(pDepthAttachment_)
, pStencilAttachment(pStencilAttachment_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
RenderingInfo &operator=(RenderingInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
RenderingInfo &operator=(VkRenderingInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::RenderingInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 RenderingInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingInfo &setFlags(VULKAN_HPP_NAMESPACE::RenderingFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingInfo &setRenderArea(VULKAN_HPP_NAMESPACE::Rect2D const &renderArea_) VULKAN_HPP_NOEXCEPT
{
renderArea = renderArea_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingInfo &setLayerCount(uint32_t layerCount_) VULKAN_HPP_NOEXCEPT
{
layerCount = layerCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingInfo &setViewMask(uint32_t viewMask_) VULKAN_HPP_NOEXCEPT
{
viewMask = viewMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingInfo &setColorAttachmentCount(uint32_t colorAttachmentCount_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = colorAttachmentCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingInfo &setPColorAttachments(const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *pColorAttachments_) VULKAN_HPP_NOEXCEPT
{
pColorAttachments = pColorAttachments_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
RenderingInfo &setColorAttachments(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo> const &colorAttachments_) VULKAN_HPP_NOEXCEPT
{
colorAttachmentCount = static_cast<uint32_t>(colorAttachments_.size());
pColorAttachments = colorAttachments_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 RenderingInfo &setPDepthAttachment(const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *pDepthAttachment_) VULKAN_HPP_NOEXCEPT
{
pDepthAttachment = pDepthAttachment_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 RenderingInfo &
setPStencilAttachment(const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *pStencilAttachment_) VULKAN_HPP_NOEXCEPT
{
pStencilAttachment = pStencilAttachment_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkRenderingInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkRenderingInfo *>(this);
}
explicit operator VkRenderingInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkRenderingInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::RenderingFlags const &,
VULKAN_HPP_NAMESPACE::Rect2D const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *const &,
const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *const &,
const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, renderArea, layerCount, viewMask, colorAttachmentCount, pColorAttachments, pDepthAttachment, pStencilAttachment);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(RenderingInfo const &) const = default;
#else
bool operator==(RenderingInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (renderArea == rhs.renderArea) &&
(layerCount == rhs.layerCount) && (viewMask == rhs.viewMask) && (colorAttachmentCount == rhs.colorAttachmentCount) &&
(pColorAttachments == rhs.pColorAttachments) && (pDepthAttachment == rhs.pDepthAttachment) && (pStencilAttachment == rhs.pStencilAttachment);
# endif
}
bool operator!=(RenderingInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eRenderingInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::RenderingFlags flags = {};
VULKAN_HPP_NAMESPACE::Rect2D renderArea = {};
uint32_t layerCount = {};
uint32_t viewMask = {};
uint32_t colorAttachmentCount = {};
const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *pColorAttachments = {};
const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *pDepthAttachment = {};
const VULKAN_HPP_NAMESPACE::RenderingAttachmentInfo *pStencilAttachment = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::RenderingInfo) == sizeof(VkRenderingInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::RenderingInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::RenderingInfo>::value,
"RenderingInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eRenderingInfo>
{
using Type = RenderingInfo;
};
using RenderingInfoKHR = RenderingInfo;
struct ResolveImageInfo2
{
using NativeType = VkResolveImageInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eResolveImageInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ResolveImageInfo2(VULKAN_HPP_NAMESPACE::Image srcImage_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
VULKAN_HPP_NAMESPACE::Image dstImage_ = {},
VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_ = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined,
uint32_t regionCount_ = {},
const VULKAN_HPP_NAMESPACE::ImageResolve2 *pRegions_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
srcImage(srcImage_),
srcImageLayout(srcImageLayout_),
dstImage(dstImage_),
dstImageLayout(dstImageLayout_),
regionCount(regionCount_),
pRegions(pRegions_)
{
}
VULKAN_HPP_CONSTEXPR ResolveImageInfo2(ResolveImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ResolveImageInfo2(VkResolveImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT : ResolveImageInfo2(*reinterpret_cast<ResolveImageInfo2 const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ResolveImageInfo2(VULKAN_HPP_NAMESPACE::Image srcImage_,
VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_,
VULKAN_HPP_NAMESPACE::Image dstImage_,
VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageResolve2> const &regions_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, srcImage(srcImage_)
, srcImageLayout(srcImageLayout_)
, dstImage(dstImage_)
, dstImageLayout(dstImageLayout_)
, regionCount(static_cast<uint32_t>(regions_.size()))
, pRegions(regions_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ResolveImageInfo2 &operator=(ResolveImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
ResolveImageInfo2 &operator=(VkResolveImageInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ResolveImageInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ResolveImageInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ResolveImageInfo2 &setSrcImage(VULKAN_HPP_NAMESPACE::Image srcImage_) VULKAN_HPP_NOEXCEPT
{
srcImage = srcImage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ResolveImageInfo2 &setSrcImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout_) VULKAN_HPP_NOEXCEPT
{
srcImageLayout = srcImageLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ResolveImageInfo2 &setDstImage(VULKAN_HPP_NAMESPACE::Image dstImage_) VULKAN_HPP_NOEXCEPT
{
dstImage = dstImage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ResolveImageInfo2 &setDstImageLayout(VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout_) VULKAN_HPP_NOEXCEPT
{
dstImageLayout = dstImageLayout_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ResolveImageInfo2 &setRegionCount(uint32_t regionCount_) VULKAN_HPP_NOEXCEPT
{
regionCount = regionCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ResolveImageInfo2 &setPRegions(const VULKAN_HPP_NAMESPACE::ImageResolve2 *pRegions_) VULKAN_HPP_NOEXCEPT
{
pRegions = pRegions_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ResolveImageInfo2 &
setRegions(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ImageResolve2> const &regions_) VULKAN_HPP_NOEXCEPT
{
regionCount = static_cast<uint32_t>(regions_.size());
pRegions = regions_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkResolveImageInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkResolveImageInfo2 *>(this);
}
explicit operator VkResolveImageInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkResolveImageInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Image const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
VULKAN_HPP_NAMESPACE::Image const &,
VULKAN_HPP_NAMESPACE::ImageLayout const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ImageResolve2 *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ResolveImageInfo2 const &) const = default;
#else
bool operator==(ResolveImageInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (srcImage == rhs.srcImage) && (srcImageLayout == rhs.srcImageLayout) &&
(dstImage == rhs.dstImage) && (dstImageLayout == rhs.dstImageLayout) && (regionCount == rhs.regionCount) && (pRegions == rhs.pRegions);
# endif
}
bool operator!=(ResolveImageInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eResolveImageInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Image srcImage = {};
VULKAN_HPP_NAMESPACE::ImageLayout srcImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
VULKAN_HPP_NAMESPACE::Image dstImage = {};
VULKAN_HPP_NAMESPACE::ImageLayout dstImageLayout = VULKAN_HPP_NAMESPACE::ImageLayout::eUndefined;
uint32_t regionCount = {};
const VULKAN_HPP_NAMESPACE::ImageResolve2 *pRegions = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ResolveImageInfo2) == sizeof(VkResolveImageInfo2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ResolveImageInfo2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ResolveImageInfo2>::value,
"ResolveImageInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eResolveImageInfo2>
{
using Type = ResolveImageInfo2;
};
using ResolveImageInfo2KHR = ResolveImageInfo2;
struct SamplerBorderColorComponentMappingCreateInfoEXT
{
using NativeType = VkSamplerBorderColorComponentMappingCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerBorderColorComponentMappingCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SamplerBorderColorComponentMappingCreateInfoEXT(VULKAN_HPP_NAMESPACE::ComponentMapping components_ = {},
VULKAN_HPP_NAMESPACE::Bool32 srgb_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
components(components_),
srgb(srgb_)
{
}
VULKAN_HPP_CONSTEXPR
SamplerBorderColorComponentMappingCreateInfoEXT(SamplerBorderColorComponentMappingCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerBorderColorComponentMappingCreateInfoEXT(VkSamplerBorderColorComponentMappingCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: SamplerBorderColorComponentMappingCreateInfoEXT(*reinterpret_cast<SamplerBorderColorComponentMappingCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SamplerBorderColorComponentMappingCreateInfoEXT &operator=(SamplerBorderColorComponentMappingCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerBorderColorComponentMappingCreateInfoEXT &operator=(VkSamplerBorderColorComponentMappingCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerBorderColorComponentMappingCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SamplerBorderColorComponentMappingCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerBorderColorComponentMappingCreateInfoEXT &
setComponents(VULKAN_HPP_NAMESPACE::ComponentMapping const &components_) VULKAN_HPP_NOEXCEPT
{
components = components_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerBorderColorComponentMappingCreateInfoEXT &setSrgb(VULKAN_HPP_NAMESPACE::Bool32 srgb_) VULKAN_HPP_NOEXCEPT
{
srgb = srgb_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSamplerBorderColorComponentMappingCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSamplerBorderColorComponentMappingCreateInfoEXT *>(this);
}
explicit operator VkSamplerBorderColorComponentMappingCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSamplerBorderColorComponentMappingCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ComponentMapping const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, components, srgb);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SamplerBorderColorComponentMappingCreateInfoEXT const &) const = default;
#else
bool operator==(SamplerBorderColorComponentMappingCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (components == rhs.components) && (srgb == rhs.srgb);
# endif
}
bool operator!=(SamplerBorderColorComponentMappingCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerBorderColorComponentMappingCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ComponentMapping components = {};
VULKAN_HPP_NAMESPACE::Bool32 srgb = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SamplerBorderColorComponentMappingCreateInfoEXT) ==
sizeof(VkSamplerBorderColorComponentMappingCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SamplerBorderColorComponentMappingCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SamplerBorderColorComponentMappingCreateInfoEXT>::value,
"SamplerBorderColorComponentMappingCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSamplerBorderColorComponentMappingCreateInfoEXT>
{
using Type = SamplerBorderColorComponentMappingCreateInfoEXT;
};
struct SamplerCreateInfo
{
using NativeType = VkSamplerCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SamplerCreateInfo(VULKAN_HPP_NAMESPACE::SamplerCreateFlags flags_ = {},
VULKAN_HPP_NAMESPACE::Filter magFilter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest,
VULKAN_HPP_NAMESPACE::Filter minFilter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest,
VULKAN_HPP_NAMESPACE::SamplerMipmapMode mipmapMode_ = VULKAN_HPP_NAMESPACE::SamplerMipmapMode::eNearest,
VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeU_ = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat,
VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeV_ = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat,
VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeW_ = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat,
float mipLodBias_ = {},
VULKAN_HPP_NAMESPACE::Bool32 anisotropyEnable_ = {},
float maxAnisotropy_ = {},
VULKAN_HPP_NAMESPACE::Bool32 compareEnable_ = {},
VULKAN_HPP_NAMESPACE::CompareOp compareOp_ = VULKAN_HPP_NAMESPACE::CompareOp::eNever,
float minLod_ = {},
float maxLod_ = {},
VULKAN_HPP_NAMESPACE::BorderColor borderColor_ = VULKAN_HPP_NAMESPACE::BorderColor::eFloatTransparentBlack,
VULKAN_HPP_NAMESPACE::Bool32 unnormalizedCoordinates_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
magFilter(magFilter_),
minFilter(minFilter_),
mipmapMode(mipmapMode_),
addressModeU(addressModeU_),
addressModeV(addressModeV_),
addressModeW(addressModeW_),
mipLodBias(mipLodBias_),
anisotropyEnable(anisotropyEnable_),
maxAnisotropy(maxAnisotropy_),
compareEnable(compareEnable_),
compareOp(compareOp_),
minLod(minLod_),
maxLod(maxLod_),
borderColor(borderColor_),
unnormalizedCoordinates(unnormalizedCoordinates_)
{
}
VULKAN_HPP_CONSTEXPR SamplerCreateInfo(SamplerCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerCreateInfo(VkSamplerCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT : SamplerCreateInfo(*reinterpret_cast<SamplerCreateInfo const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SamplerCreateInfo &operator=(SamplerCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerCreateInfo &operator=(VkSamplerCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::SamplerCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setMagFilter(VULKAN_HPP_NAMESPACE::Filter magFilter_) VULKAN_HPP_NOEXCEPT
{
magFilter = magFilter_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setMinFilter(VULKAN_HPP_NAMESPACE::Filter minFilter_) VULKAN_HPP_NOEXCEPT
{
minFilter = minFilter_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setMipmapMode(VULKAN_HPP_NAMESPACE::SamplerMipmapMode mipmapMode_) VULKAN_HPP_NOEXCEPT
{
mipmapMode = mipmapMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setAddressModeU(VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeU_) VULKAN_HPP_NOEXCEPT
{
addressModeU = addressModeU_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setAddressModeV(VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeV_) VULKAN_HPP_NOEXCEPT
{
addressModeV = addressModeV_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setAddressModeW(VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeW_) VULKAN_HPP_NOEXCEPT
{
addressModeW = addressModeW_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setMipLodBias(float mipLodBias_) VULKAN_HPP_NOEXCEPT
{
mipLodBias = mipLodBias_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setAnisotropyEnable(VULKAN_HPP_NAMESPACE::Bool32 anisotropyEnable_) VULKAN_HPP_NOEXCEPT
{
anisotropyEnable = anisotropyEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setMaxAnisotropy(float maxAnisotropy_) VULKAN_HPP_NOEXCEPT
{
maxAnisotropy = maxAnisotropy_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setCompareEnable(VULKAN_HPP_NAMESPACE::Bool32 compareEnable_) VULKAN_HPP_NOEXCEPT
{
compareEnable = compareEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setCompareOp(VULKAN_HPP_NAMESPACE::CompareOp compareOp_) VULKAN_HPP_NOEXCEPT
{
compareOp = compareOp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setMinLod(float minLod_) VULKAN_HPP_NOEXCEPT
{
minLod = minLod_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setMaxLod(float maxLod_) VULKAN_HPP_NOEXCEPT
{
maxLod = maxLod_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setBorderColor(VULKAN_HPP_NAMESPACE::BorderColor borderColor_) VULKAN_HPP_NOEXCEPT
{
borderColor = borderColor_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCreateInfo &setUnnormalizedCoordinates(VULKAN_HPP_NAMESPACE::Bool32 unnormalizedCoordinates_) VULKAN_HPP_NOEXCEPT
{
unnormalizedCoordinates = unnormalizedCoordinates_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSamplerCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSamplerCreateInfo *>(this);
}
explicit operator VkSamplerCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSamplerCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::SamplerCreateFlags const &,
VULKAN_HPP_NAMESPACE::Filter const &,
VULKAN_HPP_NAMESPACE::Filter const &,
VULKAN_HPP_NAMESPACE::SamplerMipmapMode const &,
VULKAN_HPP_NAMESPACE::SamplerAddressMode const &,
VULKAN_HPP_NAMESPACE::SamplerAddressMode const &,
VULKAN_HPP_NAMESPACE::SamplerAddressMode const &,
float const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
float const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::CompareOp const &,
float const &,
float const &,
VULKAN_HPP_NAMESPACE::BorderColor const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
magFilter,
minFilter,
mipmapMode,
addressModeU,
addressModeV,
addressModeW,
mipLodBias,
anisotropyEnable,
maxAnisotropy,
compareEnable,
compareOp,
minLod,
maxLod,
borderColor,
unnormalizedCoordinates);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SamplerCreateInfo const &) const = default;
#else
bool operator==(SamplerCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (magFilter == rhs.magFilter) && (minFilter == rhs.minFilter) &&
(mipmapMode == rhs.mipmapMode) && (addressModeU == rhs.addressModeU) && (addressModeV == rhs.addressModeV) &&
(addressModeW == rhs.addressModeW) && (mipLodBias == rhs.mipLodBias) && (anisotropyEnable == rhs.anisotropyEnable) &&
(maxAnisotropy == rhs.maxAnisotropy) && (compareEnable == rhs.compareEnable) && (compareOp == rhs.compareOp) && (minLod == rhs.minLod) &&
(maxLod == rhs.maxLod) && (borderColor == rhs.borderColor) && (unnormalizedCoordinates == rhs.unnormalizedCoordinates);
# endif
}
bool operator!=(SamplerCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SamplerCreateFlags flags = {};
VULKAN_HPP_NAMESPACE::Filter magFilter = VULKAN_HPP_NAMESPACE::Filter::eNearest;
VULKAN_HPP_NAMESPACE::Filter minFilter = VULKAN_HPP_NAMESPACE::Filter::eNearest;
VULKAN_HPP_NAMESPACE::SamplerMipmapMode mipmapMode = VULKAN_HPP_NAMESPACE::SamplerMipmapMode::eNearest;
VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeU = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat;
VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeV = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat;
VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeW = VULKAN_HPP_NAMESPACE::SamplerAddressMode::eRepeat;
float mipLodBias = {};
VULKAN_HPP_NAMESPACE::Bool32 anisotropyEnable = {};
float maxAnisotropy = {};
VULKAN_HPP_NAMESPACE::Bool32 compareEnable = {};
VULKAN_HPP_NAMESPACE::CompareOp compareOp = VULKAN_HPP_NAMESPACE::CompareOp::eNever;
float minLod = {};
float maxLod = {};
VULKAN_HPP_NAMESPACE::BorderColor borderColor = VULKAN_HPP_NAMESPACE::BorderColor::eFloatTransparentBlack;
VULKAN_HPP_NAMESPACE::Bool32 unnormalizedCoordinates = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SamplerCreateInfo) == sizeof(VkSamplerCreateInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SamplerCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SamplerCreateInfo>::value,
"SamplerCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSamplerCreateInfo>
{
using Type = SamplerCreateInfo;
};
struct SamplerCustomBorderColorCreateInfoEXT
{
using NativeType = VkSamplerCustomBorderColorCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerCustomBorderColorCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 SamplerCustomBorderColorCreateInfoEXT(VULKAN_HPP_NAMESPACE::ClearColorValue customBorderColor_ = {},
VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
customBorderColor(customBorderColor_),
format(format_)
{
}
VULKAN_HPP_CONSTEXPR_14 SamplerCustomBorderColorCreateInfoEXT(SamplerCustomBorderColorCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerCustomBorderColorCreateInfoEXT(VkSamplerCustomBorderColorCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: SamplerCustomBorderColorCreateInfoEXT(*reinterpret_cast<SamplerCustomBorderColorCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SamplerCustomBorderColorCreateInfoEXT &operator=(SamplerCustomBorderColorCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerCustomBorderColorCreateInfoEXT &operator=(VkSamplerCustomBorderColorCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerCustomBorderColorCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SamplerCustomBorderColorCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCustomBorderColorCreateInfoEXT &
setCustomBorderColor(VULKAN_HPP_NAMESPACE::ClearColorValue const &customBorderColor_) VULKAN_HPP_NOEXCEPT
{
customBorderColor = customBorderColor_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerCustomBorderColorCreateInfoEXT &setFormat(VULKAN_HPP_NAMESPACE::Format format_) VULKAN_HPP_NOEXCEPT
{
format = format_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSamplerCustomBorderColorCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSamplerCustomBorderColorCreateInfoEXT *>(this);
}
explicit operator VkSamplerCustomBorderColorCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSamplerCustomBorderColorCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ClearColorValue const &,
VULKAN_HPP_NAMESPACE::Format const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, customBorderColor, format);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerCustomBorderColorCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ClearColorValue customBorderColor = {};
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SamplerCustomBorderColorCreateInfoEXT) == sizeof(VkSamplerCustomBorderColorCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SamplerCustomBorderColorCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SamplerCustomBorderColorCreateInfoEXT>::value,
"SamplerCustomBorderColorCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSamplerCustomBorderColorCreateInfoEXT>
{
using Type = SamplerCustomBorderColorCreateInfoEXT;
};
struct SamplerReductionModeCreateInfo
{
using NativeType = VkSamplerReductionModeCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerReductionModeCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
SamplerReductionModeCreateInfo(VULKAN_HPP_NAMESPACE::SamplerReductionMode reductionMode_ = VULKAN_HPP_NAMESPACE::SamplerReductionMode::eWeightedAverage,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
reductionMode(reductionMode_)
{
}
VULKAN_HPP_CONSTEXPR SamplerReductionModeCreateInfo(SamplerReductionModeCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerReductionModeCreateInfo(VkSamplerReductionModeCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: SamplerReductionModeCreateInfo(*reinterpret_cast<SamplerReductionModeCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SamplerReductionModeCreateInfo &operator=(SamplerReductionModeCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerReductionModeCreateInfo &operator=(VkSamplerReductionModeCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerReductionModeCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SamplerReductionModeCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerReductionModeCreateInfo &setReductionMode(VULKAN_HPP_NAMESPACE::SamplerReductionMode reductionMode_) VULKAN_HPP_NOEXCEPT
{
reductionMode = reductionMode_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSamplerReductionModeCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSamplerReductionModeCreateInfo *>(this);
}
explicit operator VkSamplerReductionModeCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSamplerReductionModeCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::SamplerReductionMode const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, reductionMode);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SamplerReductionModeCreateInfo const &) const = default;
#else
bool operator==(SamplerReductionModeCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (reductionMode == rhs.reductionMode);
# endif
}
bool operator!=(SamplerReductionModeCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerReductionModeCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SamplerReductionMode reductionMode = VULKAN_HPP_NAMESPACE::SamplerReductionMode::eWeightedAverage;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SamplerReductionModeCreateInfo) == sizeof(VkSamplerReductionModeCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SamplerReductionModeCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SamplerReductionModeCreateInfo>::value,
"SamplerReductionModeCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSamplerReductionModeCreateInfo>
{
using Type = SamplerReductionModeCreateInfo;
};
using SamplerReductionModeCreateInfoEXT = SamplerReductionModeCreateInfo;
struct SamplerYcbcrConversionCreateInfo
{
using NativeType = VkSamplerYcbcrConversionCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerYcbcrConversionCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionCreateInfo(
VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion ycbcrModel_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity,
VULKAN_HPP_NAMESPACE::SamplerYcbcrRange ycbcrRange_ = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull,
VULKAN_HPP_NAMESPACE::ComponentMapping components_ = {},
VULKAN_HPP_NAMESPACE::ChromaLocation xChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven,
VULKAN_HPP_NAMESPACE::ChromaLocation yChromaOffset_ = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven,
VULKAN_HPP_NAMESPACE::Filter chromaFilter_ = VULKAN_HPP_NAMESPACE::Filter::eNearest,
VULKAN_HPP_NAMESPACE::Bool32 forceExplicitReconstruction_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
format(format_),
ycbcrModel(ycbcrModel_),
ycbcrRange(ycbcrRange_),
components(components_),
xChromaOffset(xChromaOffset_),
yChromaOffset(yChromaOffset_),
chromaFilter(chromaFilter_),
forceExplicitReconstruction(forceExplicitReconstruction_)
{
}
VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionCreateInfo(SamplerYcbcrConversionCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerYcbcrConversionCreateInfo(VkSamplerYcbcrConversionCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: SamplerYcbcrConversionCreateInfo(*reinterpret_cast<SamplerYcbcrConversionCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SamplerYcbcrConversionCreateInfo &operator=(SamplerYcbcrConversionCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerYcbcrConversionCreateInfo &operator=(VkSamplerYcbcrConversionCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionCreateInfo &setFormat(VULKAN_HPP_NAMESPACE::Format format_) VULKAN_HPP_NOEXCEPT
{
format = format_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionCreateInfo &
setYcbcrModel(VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion ycbcrModel_) VULKAN_HPP_NOEXCEPT
{
ycbcrModel = ycbcrModel_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionCreateInfo &setYcbcrRange(VULKAN_HPP_NAMESPACE::SamplerYcbcrRange ycbcrRange_) VULKAN_HPP_NOEXCEPT
{
ycbcrRange = ycbcrRange_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionCreateInfo &setComponents(VULKAN_HPP_NAMESPACE::ComponentMapping const &components_) VULKAN_HPP_NOEXCEPT
{
components = components_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionCreateInfo &setXChromaOffset(VULKAN_HPP_NAMESPACE::ChromaLocation xChromaOffset_) VULKAN_HPP_NOEXCEPT
{
xChromaOffset = xChromaOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionCreateInfo &setYChromaOffset(VULKAN_HPP_NAMESPACE::ChromaLocation yChromaOffset_) VULKAN_HPP_NOEXCEPT
{
yChromaOffset = yChromaOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionCreateInfo &setChromaFilter(VULKAN_HPP_NAMESPACE::Filter chromaFilter_) VULKAN_HPP_NOEXCEPT
{
chromaFilter = chromaFilter_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionCreateInfo &
setForceExplicitReconstruction(VULKAN_HPP_NAMESPACE::Bool32 forceExplicitReconstruction_) VULKAN_HPP_NOEXCEPT
{
forceExplicitReconstruction = forceExplicitReconstruction_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSamplerYcbcrConversionCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo *>(this);
}
explicit operator VkSamplerYcbcrConversionCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSamplerYcbcrConversionCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion const &,
VULKAN_HPP_NAMESPACE::SamplerYcbcrRange const &,
VULKAN_HPP_NAMESPACE::ComponentMapping const &,
VULKAN_HPP_NAMESPACE::ChromaLocation const &,
VULKAN_HPP_NAMESPACE::ChromaLocation const &,
VULKAN_HPP_NAMESPACE::Filter const &,
VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, format, ycbcrModel, ycbcrRange, components, xChromaOffset, yChromaOffset, chromaFilter, forceExplicitReconstruction);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SamplerYcbcrConversionCreateInfo const &) const = default;
#else
bool operator==(SamplerYcbcrConversionCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (format == rhs.format) && (ycbcrModel == rhs.ycbcrModel) &&
(ycbcrRange == rhs.ycbcrRange) && (components == rhs.components) && (xChromaOffset == rhs.xChromaOffset) &&
(yChromaOffset == rhs.yChromaOffset) && (chromaFilter == rhs.chromaFilter) &&
(forceExplicitReconstruction == rhs.forceExplicitReconstruction);
# endif
}
bool operator!=(SamplerYcbcrConversionCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerYcbcrConversionCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion ycbcrModel = VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion::eRgbIdentity;
VULKAN_HPP_NAMESPACE::SamplerYcbcrRange ycbcrRange = VULKAN_HPP_NAMESPACE::SamplerYcbcrRange::eItuFull;
VULKAN_HPP_NAMESPACE::ComponentMapping components = {};
VULKAN_HPP_NAMESPACE::ChromaLocation xChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
VULKAN_HPP_NAMESPACE::ChromaLocation yChromaOffset = VULKAN_HPP_NAMESPACE::ChromaLocation::eCositedEven;
VULKAN_HPP_NAMESPACE::Filter chromaFilter = VULKAN_HPP_NAMESPACE::Filter::eNearest;
VULKAN_HPP_NAMESPACE::Bool32 forceExplicitReconstruction = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo) == sizeof(VkSamplerYcbcrConversionCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo>::value,
"SamplerYcbcrConversionCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSamplerYcbcrConversionCreateInfo>
{
using Type = SamplerYcbcrConversionCreateInfo;
};
using SamplerYcbcrConversionCreateInfoKHR = SamplerYcbcrConversionCreateInfo;
struct SamplerYcbcrConversionImageFormatProperties
{
using NativeType = VkSamplerYcbcrConversionImageFormatProperties;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerYcbcrConversionImageFormatProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionImageFormatProperties(uint32_t combinedImageSamplerDescriptorCount_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
combinedImageSamplerDescriptorCount(combinedImageSamplerDescriptorCount_)
{
}
VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionImageFormatProperties(SamplerYcbcrConversionImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerYcbcrConversionImageFormatProperties(VkSamplerYcbcrConversionImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT
: SamplerYcbcrConversionImageFormatProperties(*reinterpret_cast<SamplerYcbcrConversionImageFormatProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SamplerYcbcrConversionImageFormatProperties &operator=(SamplerYcbcrConversionImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerYcbcrConversionImageFormatProperties &operator=(VkSamplerYcbcrConversionImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionImageFormatProperties const *>(&rhs);
return *this;
}
explicit operator VkSamplerYcbcrConversionImageFormatProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSamplerYcbcrConversionImageFormatProperties *>(this);
}
explicit operator VkSamplerYcbcrConversionImageFormatProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSamplerYcbcrConversionImageFormatProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, combinedImageSamplerDescriptorCount);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SamplerYcbcrConversionImageFormatProperties const &) const = default;
#else
bool operator==(SamplerYcbcrConversionImageFormatProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (combinedImageSamplerDescriptorCount == rhs.combinedImageSamplerDescriptorCount);
# endif
}
bool operator!=(SamplerYcbcrConversionImageFormatProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerYcbcrConversionImageFormatProperties;
void *pNext = {};
uint32_t combinedImageSamplerDescriptorCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionImageFormatProperties) ==
sizeof(VkSamplerYcbcrConversionImageFormatProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionImageFormatProperties>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionImageFormatProperties>::value,
"SamplerYcbcrConversionImageFormatProperties is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSamplerYcbcrConversionImageFormatProperties>
{
using Type = SamplerYcbcrConversionImageFormatProperties;
};
using SamplerYcbcrConversionImageFormatPropertiesKHR = SamplerYcbcrConversionImageFormatProperties;
struct SamplerYcbcrConversionInfo
{
using NativeType = VkSamplerYcbcrConversionInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSamplerYcbcrConversionInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionInfo(VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion conversion_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
conversion(conversion_)
{
}
VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionInfo(SamplerYcbcrConversionInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerYcbcrConversionInfo(VkSamplerYcbcrConversionInfo const &rhs) VULKAN_HPP_NOEXCEPT
: SamplerYcbcrConversionInfo(*reinterpret_cast<SamplerYcbcrConversionInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SamplerYcbcrConversionInfo &operator=(SamplerYcbcrConversionInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SamplerYcbcrConversionInfo &operator=(VkSamplerYcbcrConversionInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SamplerYcbcrConversionInfo &setConversion(VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion conversion_) VULKAN_HPP_NOEXCEPT
{
conversion = conversion_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSamplerYcbcrConversionInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSamplerYcbcrConversionInfo *>(this);
}
explicit operator VkSamplerYcbcrConversionInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSamplerYcbcrConversionInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, conversion);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SamplerYcbcrConversionInfo const &) const = default;
#else
bool operator==(SamplerYcbcrConversionInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (conversion == rhs.conversion);
# endif
}
bool operator!=(SamplerYcbcrConversionInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerYcbcrConversionInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion conversion = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionInfo) == sizeof(VkSamplerYcbcrConversionInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionInfo>::value,
"SamplerYcbcrConversionInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSamplerYcbcrConversionInfo>
{
using Type = SamplerYcbcrConversionInfo;
};
using SamplerYcbcrConversionInfoKHR = SamplerYcbcrConversionInfo;
#if defined(VK_USE_PLATFORM_SCREEN_QNX)
struct ScreenSurfaceCreateInfoQNX
{
using NativeType = VkScreenSurfaceCreateInfoQNX;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eScreenSurfaceCreateInfoQNX;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ScreenSurfaceCreateInfoQNX(VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateFlagsQNX flags_ = {},
struct _screen_context *context_ = {},
struct _screen_window *window_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
context(context_),
window(window_)
{
}
VULKAN_HPP_CONSTEXPR ScreenSurfaceCreateInfoQNX(ScreenSurfaceCreateInfoQNX const &rhs) VULKAN_HPP_NOEXCEPT = default;
ScreenSurfaceCreateInfoQNX(VkScreenSurfaceCreateInfoQNX const &rhs) VULKAN_HPP_NOEXCEPT
: ScreenSurfaceCreateInfoQNX(*reinterpret_cast<ScreenSurfaceCreateInfoQNX const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ScreenSurfaceCreateInfoQNX &operator=(ScreenSurfaceCreateInfoQNX const &rhs) VULKAN_HPP_NOEXCEPT = default;
ScreenSurfaceCreateInfoQNX &operator=(VkScreenSurfaceCreateInfoQNX const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateInfoQNX const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ScreenSurfaceCreateInfoQNX &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ScreenSurfaceCreateInfoQNX &setFlags(VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateFlagsQNX flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ScreenSurfaceCreateInfoQNX &setContext(struct _screen_context *context_) VULKAN_HPP_NOEXCEPT
{
context = context_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ScreenSurfaceCreateInfoQNX &setWindow(struct _screen_window *window_) VULKAN_HPP_NOEXCEPT
{
window = window_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkScreenSurfaceCreateInfoQNX const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkScreenSurfaceCreateInfoQNX *>(this);
}
explicit operator VkScreenSurfaceCreateInfoQNX &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkScreenSurfaceCreateInfoQNX *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateFlagsQNX const &,
struct _screen_context *const &,
struct _screen_window *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, context, window);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ScreenSurfaceCreateInfoQNX const &) const = default;
# else
bool operator==(ScreenSurfaceCreateInfoQNX const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (context == rhs.context) && (window == rhs.window);
# endif
}
bool operator!=(ScreenSurfaceCreateInfoQNX const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eScreenSurfaceCreateInfoQNX;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateFlagsQNX flags = {};
struct _screen_context *context = {};
struct _screen_window *window = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateInfoQNX) == sizeof(VkScreenSurfaceCreateInfoQNX),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateInfoQNX>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ScreenSurfaceCreateInfoQNX>::value,
"ScreenSurfaceCreateInfoQNX is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eScreenSurfaceCreateInfoQNX>
{
using Type = ScreenSurfaceCreateInfoQNX;
};
#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
struct SemaphoreCreateInfo
{
using NativeType = VkSemaphoreCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SemaphoreCreateInfo(VULKAN_HPP_NAMESPACE::SemaphoreCreateFlags flags_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR SemaphoreCreateInfo(SemaphoreCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreCreateInfo(VkSemaphoreCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT : SemaphoreCreateInfo(*reinterpret_cast<SemaphoreCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SemaphoreCreateInfo &operator=(SemaphoreCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreCreateInfo &operator=(VkSemaphoreCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SemaphoreCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::SemaphoreCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSemaphoreCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSemaphoreCreateInfo *>(this);
}
explicit operator VkSemaphoreCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSemaphoreCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::SemaphoreCreateFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SemaphoreCreateInfo const &) const = default;
#else
bool operator==(SemaphoreCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags);
# endif
}
bool operator!=(SemaphoreCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SemaphoreCreateFlags flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SemaphoreCreateInfo) == sizeof(VkSemaphoreCreateInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SemaphoreCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SemaphoreCreateInfo>::value,
"SemaphoreCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSemaphoreCreateInfo>
{
using Type = SemaphoreCreateInfo;
};
struct SemaphoreGetFdInfoKHR
{
using NativeType = VkSemaphoreGetFdInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreGetFdInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SemaphoreGetFdInfoKHR(
VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
semaphore(semaphore_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR SemaphoreGetFdInfoKHR(SemaphoreGetFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreGetFdInfoKHR(VkSemaphoreGetFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: SemaphoreGetFdInfoKHR(*reinterpret_cast<SemaphoreGetFdInfoKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SemaphoreGetFdInfoKHR &operator=(SemaphoreGetFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreGetFdInfoKHR &operator=(VkSemaphoreGetFdInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreGetFdInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SemaphoreGetFdInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreGetFdInfoKHR &setSemaphore(VULKAN_HPP_NAMESPACE::Semaphore semaphore_) VULKAN_HPP_NOEXCEPT
{
semaphore = semaphore_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreGetFdInfoKHR &setHandleType(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSemaphoreGetFdInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSemaphoreGetFdInfoKHR *>(this);
}
explicit operator VkSemaphoreGetFdInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSemaphoreGetFdInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Semaphore const &,
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, semaphore, handleType);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SemaphoreGetFdInfoKHR const &) const = default;
#else
bool operator==(SemaphoreGetFdInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (semaphore == rhs.semaphore) && (handleType == rhs.handleType);
# endif
}
bool operator!=(SemaphoreGetFdInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreGetFdInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SemaphoreGetFdInfoKHR) == sizeof(VkSemaphoreGetFdInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SemaphoreGetFdInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SemaphoreGetFdInfoKHR>::value,
"SemaphoreGetFdInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSemaphoreGetFdInfoKHR>
{
using Type = SemaphoreGetFdInfoKHR;
};
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct SemaphoreGetWin32HandleInfoKHR
{
using NativeType = VkSemaphoreGetWin32HandleInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreGetWin32HandleInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SemaphoreGetWin32HandleInfoKHR(
VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
semaphore(semaphore_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR SemaphoreGetWin32HandleInfoKHR(SemaphoreGetWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreGetWin32HandleInfoKHR(VkSemaphoreGetWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: SemaphoreGetWin32HandleInfoKHR(*reinterpret_cast<SemaphoreGetWin32HandleInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SemaphoreGetWin32HandleInfoKHR &operator=(SemaphoreGetWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreGetWin32HandleInfoKHR &operator=(VkSemaphoreGetWin32HandleInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreGetWin32HandleInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SemaphoreGetWin32HandleInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreGetWin32HandleInfoKHR &setSemaphore(VULKAN_HPP_NAMESPACE::Semaphore semaphore_) VULKAN_HPP_NOEXCEPT
{
semaphore = semaphore_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreGetWin32HandleInfoKHR &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSemaphoreGetWin32HandleInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSemaphoreGetWin32HandleInfoKHR *>(this);
}
explicit operator VkSemaphoreGetWin32HandleInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSemaphoreGetWin32HandleInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Semaphore const &,
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, semaphore, handleType);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SemaphoreGetWin32HandleInfoKHR const &) const = default;
# else
bool operator==(SemaphoreGetWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (semaphore == rhs.semaphore) && (handleType == rhs.handleType);
# endif
}
bool operator!=(SemaphoreGetWin32HandleInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreGetWin32HandleInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SemaphoreGetWin32HandleInfoKHR) == sizeof(VkSemaphoreGetWin32HandleInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SemaphoreGetWin32HandleInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SemaphoreGetWin32HandleInfoKHR>::value,
"SemaphoreGetWin32HandleInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSemaphoreGetWin32HandleInfoKHR>
{
using Type = SemaphoreGetWin32HandleInfoKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#if defined(VK_USE_PLATFORM_FUCHSIA)
struct SemaphoreGetZirconHandleInfoFUCHSIA
{
using NativeType = VkSemaphoreGetZirconHandleInfoFUCHSIA;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreGetZirconHandleInfoFUCHSIA;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SemaphoreGetZirconHandleInfoFUCHSIA(
VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_ = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
semaphore(semaphore_),
handleType(handleType_)
{
}
VULKAN_HPP_CONSTEXPR SemaphoreGetZirconHandleInfoFUCHSIA(SemaphoreGetZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreGetZirconHandleInfoFUCHSIA(VkSemaphoreGetZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
: SemaphoreGetZirconHandleInfoFUCHSIA(*reinterpret_cast<SemaphoreGetZirconHandleInfoFUCHSIA const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SemaphoreGetZirconHandleInfoFUCHSIA &operator=(SemaphoreGetZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreGetZirconHandleInfoFUCHSIA &operator=(VkSemaphoreGetZirconHandleInfoFUCHSIA const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreGetZirconHandleInfoFUCHSIA const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SemaphoreGetZirconHandleInfoFUCHSIA &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreGetZirconHandleInfoFUCHSIA &setSemaphore(VULKAN_HPP_NAMESPACE::Semaphore semaphore_) VULKAN_HPP_NOEXCEPT
{
semaphore = semaphore_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreGetZirconHandleInfoFUCHSIA &
setHandleType(VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType_) VULKAN_HPP_NOEXCEPT
{
handleType = handleType_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSemaphoreGetZirconHandleInfoFUCHSIA const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSemaphoreGetZirconHandleInfoFUCHSIA *>(this);
}
explicit operator VkSemaphoreGetZirconHandleInfoFUCHSIA &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSemaphoreGetZirconHandleInfoFUCHSIA *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Semaphore const &,
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, semaphore, handleType);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SemaphoreGetZirconHandleInfoFUCHSIA const &) const = default;
# else
bool operator==(SemaphoreGetZirconHandleInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (semaphore == rhs.semaphore) && (handleType == rhs.handleType);
# endif
}
bool operator!=(SemaphoreGetZirconHandleInfoFUCHSIA const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreGetZirconHandleInfoFUCHSIA;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits handleType = VULKAN_HPP_NAMESPACE::ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SemaphoreGetZirconHandleInfoFUCHSIA) == sizeof(VkSemaphoreGetZirconHandleInfoFUCHSIA),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SemaphoreGetZirconHandleInfoFUCHSIA>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SemaphoreGetZirconHandleInfoFUCHSIA>::value,
"SemaphoreGetZirconHandleInfoFUCHSIA is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSemaphoreGetZirconHandleInfoFUCHSIA>
{
using Type = SemaphoreGetZirconHandleInfoFUCHSIA;
};
#endif /*VK_USE_PLATFORM_FUCHSIA*/
struct SemaphoreSignalInfo
{
using NativeType = VkSemaphoreSignalInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreSignalInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
SemaphoreSignalInfo(VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {}, uint64_t value_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
semaphore(semaphore_),
value(value_)
{
}
VULKAN_HPP_CONSTEXPR SemaphoreSignalInfo(SemaphoreSignalInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreSignalInfo(VkSemaphoreSignalInfo const &rhs) VULKAN_HPP_NOEXCEPT : SemaphoreSignalInfo(*reinterpret_cast<SemaphoreSignalInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SemaphoreSignalInfo &operator=(SemaphoreSignalInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreSignalInfo &operator=(VkSemaphoreSignalInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SemaphoreSignalInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreSignalInfo &setSemaphore(VULKAN_HPP_NAMESPACE::Semaphore semaphore_) VULKAN_HPP_NOEXCEPT
{
semaphore = semaphore_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreSignalInfo &setValue(uint64_t value_) VULKAN_HPP_NOEXCEPT
{
value = value_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSemaphoreSignalInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSemaphoreSignalInfo *>(this);
}
explicit operator VkSemaphoreSignalInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSemaphoreSignalInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Semaphore const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, semaphore, value);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SemaphoreSignalInfo const &) const = default;
#else
bool operator==(SemaphoreSignalInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (semaphore == rhs.semaphore) && (value == rhs.value);
# endif
}
bool operator!=(SemaphoreSignalInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreSignalInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
uint64_t value = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo) == sizeof(VkSemaphoreSignalInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SemaphoreSignalInfo>::value,
"SemaphoreSignalInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSemaphoreSignalInfo>
{
using Type = SemaphoreSignalInfo;
};
using SemaphoreSignalInfoKHR = SemaphoreSignalInfo;
struct SemaphoreSubmitInfo
{
using NativeType = VkSemaphoreSubmitInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreSubmitInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SemaphoreSubmitInfo(VULKAN_HPP_NAMESPACE::Semaphore semaphore_ = {},
uint64_t value_ = {},
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 stageMask_ = {},
uint32_t deviceIndex_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
semaphore(semaphore_),
value(value_),
stageMask(stageMask_),
deviceIndex(deviceIndex_)
{
}
VULKAN_HPP_CONSTEXPR SemaphoreSubmitInfo(SemaphoreSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreSubmitInfo(VkSemaphoreSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT : SemaphoreSubmitInfo(*reinterpret_cast<SemaphoreSubmitInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SemaphoreSubmitInfo &operator=(SemaphoreSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreSubmitInfo &operator=(VkSemaphoreSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SemaphoreSubmitInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreSubmitInfo &setSemaphore(VULKAN_HPP_NAMESPACE::Semaphore semaphore_) VULKAN_HPP_NOEXCEPT
{
semaphore = semaphore_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreSubmitInfo &setValue(uint64_t value_) VULKAN_HPP_NOEXCEPT
{
value = value_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreSubmitInfo &setStageMask(VULKAN_HPP_NAMESPACE::PipelineStageFlags2 stageMask_) VULKAN_HPP_NOEXCEPT
{
stageMask = stageMask_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreSubmitInfo &setDeviceIndex(uint32_t deviceIndex_) VULKAN_HPP_NOEXCEPT
{
deviceIndex = deviceIndex_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSemaphoreSubmitInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSemaphoreSubmitInfo *>(this);
}
explicit operator VkSemaphoreSubmitInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSemaphoreSubmitInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Semaphore const &,
uint64_t const &,
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, semaphore, value, stageMask, deviceIndex);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SemaphoreSubmitInfo const &) const = default;
#else
bool operator==(SemaphoreSubmitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (semaphore == rhs.semaphore) && (value == rhs.value) && (stageMask == rhs.stageMask) &&
(deviceIndex == rhs.deviceIndex);
# endif
}
bool operator!=(SemaphoreSubmitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreSubmitInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Semaphore semaphore = {};
uint64_t value = {};
VULKAN_HPP_NAMESPACE::PipelineStageFlags2 stageMask = {};
uint32_t deviceIndex = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo) == sizeof(VkSemaphoreSubmitInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo>::value,
"SemaphoreSubmitInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSemaphoreSubmitInfo>
{
using Type = SemaphoreSubmitInfo;
};
using SemaphoreSubmitInfoKHR = SemaphoreSubmitInfo;
struct SemaphoreTypeCreateInfo
{
using NativeType = VkSemaphoreTypeCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreTypeCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SemaphoreTypeCreateInfo(VULKAN_HPP_NAMESPACE::SemaphoreType semaphoreType_ = VULKAN_HPP_NAMESPACE::SemaphoreType::eBinary,
uint64_t initialValue_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
semaphoreType(semaphoreType_),
initialValue(initialValue_)
{
}
VULKAN_HPP_CONSTEXPR SemaphoreTypeCreateInfo(SemaphoreTypeCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreTypeCreateInfo(VkSemaphoreTypeCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: SemaphoreTypeCreateInfo(*reinterpret_cast<SemaphoreTypeCreateInfo const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SemaphoreTypeCreateInfo &operator=(SemaphoreTypeCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreTypeCreateInfo &operator=(VkSemaphoreTypeCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreTypeCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SemaphoreTypeCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreTypeCreateInfo &setSemaphoreType(VULKAN_HPP_NAMESPACE::SemaphoreType semaphoreType_) VULKAN_HPP_NOEXCEPT
{
semaphoreType = semaphoreType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreTypeCreateInfo &setInitialValue(uint64_t initialValue_) VULKAN_HPP_NOEXCEPT
{
initialValue = initialValue_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSemaphoreTypeCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSemaphoreTypeCreateInfo *>(this);
}
explicit operator VkSemaphoreTypeCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSemaphoreTypeCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::SemaphoreType const &, uint64_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, semaphoreType, initialValue);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SemaphoreTypeCreateInfo const &) const = default;
#else
bool operator==(SemaphoreTypeCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (semaphoreType == rhs.semaphoreType) && (initialValue == rhs.initialValue);
# endif
}
bool operator!=(SemaphoreTypeCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreTypeCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SemaphoreType semaphoreType = VULKAN_HPP_NAMESPACE::SemaphoreType::eBinary;
uint64_t initialValue = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SemaphoreTypeCreateInfo) == sizeof(VkSemaphoreTypeCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SemaphoreTypeCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SemaphoreTypeCreateInfo>::value,
"SemaphoreTypeCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSemaphoreTypeCreateInfo>
{
using Type = SemaphoreTypeCreateInfo;
};
using SemaphoreTypeCreateInfoKHR = SemaphoreTypeCreateInfo;
struct SemaphoreWaitInfo
{
using NativeType = VkSemaphoreWaitInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSemaphoreWaitInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SemaphoreWaitInfo(VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags flags_ = {},
uint32_t semaphoreCount_ = {},
const VULKAN_HPP_NAMESPACE::Semaphore *pSemaphores_ = {},
const uint64_t *pValues_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
semaphoreCount(semaphoreCount_),
pSemaphores(pSemaphores_),
pValues(pValues_)
{
}
VULKAN_HPP_CONSTEXPR SemaphoreWaitInfo(SemaphoreWaitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreWaitInfo(VkSemaphoreWaitInfo const &rhs) VULKAN_HPP_NOEXCEPT : SemaphoreWaitInfo(*reinterpret_cast<SemaphoreWaitInfo const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SemaphoreWaitInfo(VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &semaphores_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &values_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, semaphoreCount(static_cast<uint32_t>(semaphores_.size()))
, pSemaphores(semaphores_.data())
, pValues(values_.data())
{
# ifdef VULKAN_HPP_NO_EXCEPTIONS
VULKAN_HPP_ASSERT(semaphores_.size() == values_.size());
# else
if(semaphores_.size() != values_.size())
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING "::SemaphoreWaitInfo::SemaphoreWaitInfo: semaphores_.size() != values_.size()");
}
# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SemaphoreWaitInfo &operator=(SemaphoreWaitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SemaphoreWaitInfo &operator=(VkSemaphoreWaitInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SemaphoreWaitInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreWaitInfo &setFlags(VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreWaitInfo &setSemaphoreCount(uint32_t semaphoreCount_) VULKAN_HPP_NOEXCEPT
{
semaphoreCount = semaphoreCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SemaphoreWaitInfo &setPSemaphores(const VULKAN_HPP_NAMESPACE::Semaphore *pSemaphores_) VULKAN_HPP_NOEXCEPT
{
pSemaphores = pSemaphores_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SemaphoreWaitInfo &
setSemaphores(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &semaphores_) VULKAN_HPP_NOEXCEPT
{
semaphoreCount = static_cast<uint32_t>(semaphores_.size());
pSemaphores = semaphores_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SemaphoreWaitInfo &setPValues(const uint64_t *pValues_) VULKAN_HPP_NOEXCEPT
{
pValues = pValues_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SemaphoreWaitInfo &setValues(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &values_) VULKAN_HPP_NOEXCEPT
{
semaphoreCount = static_cast<uint32_t>(values_.size());
pValues = values_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSemaphoreWaitInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSemaphoreWaitInfo *>(this);
}
explicit operator VkSemaphoreWaitInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSemaphoreWaitInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Semaphore *const &,
const uint64_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, semaphoreCount, pSemaphores, pValues);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SemaphoreWaitInfo const &) const = default;
#else
bool operator==(SemaphoreWaitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (semaphoreCount == rhs.semaphoreCount) &&
(pSemaphores == rhs.pSemaphores) && (pValues == rhs.pValues);
# endif
}
bool operator!=(SemaphoreWaitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSemaphoreWaitInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SemaphoreWaitFlags flags = {};
uint32_t semaphoreCount = {};
const VULKAN_HPP_NAMESPACE::Semaphore *pSemaphores = {};
const uint64_t *pValues = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo) == sizeof(VkSemaphoreWaitInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SemaphoreWaitInfo>::value,
"SemaphoreWaitInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSemaphoreWaitInfo>
{
using Type = SemaphoreWaitInfo;
};
using SemaphoreWaitInfoKHR = SemaphoreWaitInfo;
struct SetStateFlagsIndirectCommandNV
{
using NativeType = VkSetStateFlagsIndirectCommandNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SetStateFlagsIndirectCommandNV(uint32_t data_ = {}) VULKAN_HPP_NOEXCEPT : data(data_)
{}
VULKAN_HPP_CONSTEXPR SetStateFlagsIndirectCommandNV(SetStateFlagsIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
SetStateFlagsIndirectCommandNV(VkSetStateFlagsIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT
: SetStateFlagsIndirectCommandNV(*reinterpret_cast<SetStateFlagsIndirectCommandNV const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SetStateFlagsIndirectCommandNV &operator=(SetStateFlagsIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
SetStateFlagsIndirectCommandNV &operator=(VkSetStateFlagsIndirectCommandNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SetStateFlagsIndirectCommandNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SetStateFlagsIndirectCommandNV &setData(uint32_t data_) VULKAN_HPP_NOEXCEPT
{
data = data_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSetStateFlagsIndirectCommandNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSetStateFlagsIndirectCommandNV *>(this);
}
explicit operator VkSetStateFlagsIndirectCommandNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSetStateFlagsIndirectCommandNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(data);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SetStateFlagsIndirectCommandNV const &) const = default;
#else
bool operator==(SetStateFlagsIndirectCommandNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (data == rhs.data);
# endif
}
bool operator!=(SetStateFlagsIndirectCommandNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t data = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SetStateFlagsIndirectCommandNV) == sizeof(VkSetStateFlagsIndirectCommandNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SetStateFlagsIndirectCommandNV>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SetStateFlagsIndirectCommandNV>::value,
"SetStateFlagsIndirectCommandNV is not nothrow_move_constructible!");
struct ShaderModuleCreateInfo
{
using NativeType = VkShaderModuleCreateInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eShaderModuleCreateInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ShaderModuleCreateInfo(VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags flags_ = {},
size_t codeSize_ = {},
const uint32_t *pCode_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
codeSize(codeSize_),
pCode(pCode_)
{
}
VULKAN_HPP_CONSTEXPR ShaderModuleCreateInfo(ShaderModuleCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ShaderModuleCreateInfo(VkShaderModuleCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
: ShaderModuleCreateInfo(*reinterpret_cast<ShaderModuleCreateInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ShaderModuleCreateInfo(VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &code_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, codeSize(code_.size() * 4)
, pCode(code_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ShaderModuleCreateInfo &operator=(ShaderModuleCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
ShaderModuleCreateInfo &operator=(VkShaderModuleCreateInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShaderModuleCreateInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ShaderModuleCreateInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ShaderModuleCreateInfo &setFlags(VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ShaderModuleCreateInfo &setCodeSize(size_t codeSize_) VULKAN_HPP_NOEXCEPT
{
codeSize = codeSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ShaderModuleCreateInfo &setPCode(const uint32_t *pCode_) VULKAN_HPP_NOEXCEPT
{
pCode = pCode_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ShaderModuleCreateInfo &setCode(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &code_) VULKAN_HPP_NOEXCEPT
{
codeSize = code_.size() * 4;
pCode = code_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkShaderModuleCreateInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkShaderModuleCreateInfo *>(this);
}
explicit operator VkShaderModuleCreateInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkShaderModuleCreateInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags const &,
size_t const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, codeSize, pCode);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ShaderModuleCreateInfo const &) const = default;
#else
bool operator==(ShaderModuleCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (codeSize == rhs.codeSize) && (pCode == rhs.pCode);
# endif
}
bool operator!=(ShaderModuleCreateInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eShaderModuleCreateInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ShaderModuleCreateFlags flags = {};
size_t codeSize = {};
const uint32_t *pCode = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ShaderModuleCreateInfo) == sizeof(VkShaderModuleCreateInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ShaderModuleCreateInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ShaderModuleCreateInfo>::value,
"ShaderModuleCreateInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eShaderModuleCreateInfo>
{
using Type = ShaderModuleCreateInfo;
};
struct ShaderModuleValidationCacheCreateInfoEXT
{
using NativeType = VkShaderModuleValidationCacheCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eShaderModuleValidationCacheCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ShaderModuleValidationCacheCreateInfoEXT(VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
validationCache(validationCache_)
{
}
VULKAN_HPP_CONSTEXPR ShaderModuleValidationCacheCreateInfoEXT(ShaderModuleValidationCacheCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ShaderModuleValidationCacheCreateInfoEXT(VkShaderModuleValidationCacheCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: ShaderModuleValidationCacheCreateInfoEXT(*reinterpret_cast<ShaderModuleValidationCacheCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ShaderModuleValidationCacheCreateInfoEXT &operator=(ShaderModuleValidationCacheCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ShaderModuleValidationCacheCreateInfoEXT &operator=(VkShaderModuleValidationCacheCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShaderModuleValidationCacheCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ShaderModuleValidationCacheCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ShaderModuleValidationCacheCreateInfoEXT &
setValidationCache(VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache_) VULKAN_HPP_NOEXCEPT
{
validationCache = validationCache_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkShaderModuleValidationCacheCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkShaderModuleValidationCacheCreateInfoEXT *>(this);
}
explicit operator VkShaderModuleValidationCacheCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkShaderModuleValidationCacheCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ValidationCacheEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, validationCache);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ShaderModuleValidationCacheCreateInfoEXT const &) const = default;
#else
bool operator==(ShaderModuleValidationCacheCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (validationCache == rhs.validationCache);
# endif
}
bool operator!=(ShaderModuleValidationCacheCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eShaderModuleValidationCacheCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ValidationCacheEXT validationCache = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ShaderModuleValidationCacheCreateInfoEXT) == sizeof(VkShaderModuleValidationCacheCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ShaderModuleValidationCacheCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ShaderModuleValidationCacheCreateInfoEXT>::value,
"ShaderModuleValidationCacheCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eShaderModuleValidationCacheCreateInfoEXT>
{
using Type = ShaderModuleValidationCacheCreateInfoEXT;
};
struct ShaderResourceUsageAMD
{
using NativeType = VkShaderResourceUsageAMD;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ShaderResourceUsageAMD(uint32_t numUsedVgprs_ = {},
uint32_t numUsedSgprs_ = {},
uint32_t ldsSizePerLocalWorkGroup_ = {},
size_t ldsUsageSizeInBytes_ = {},
size_t scratchMemUsageInBytes_ = {}) VULKAN_HPP_NOEXCEPT
: numUsedVgprs(numUsedVgprs_),
numUsedSgprs(numUsedSgprs_),
ldsSizePerLocalWorkGroup(ldsSizePerLocalWorkGroup_),
ldsUsageSizeInBytes(ldsUsageSizeInBytes_),
scratchMemUsageInBytes(scratchMemUsageInBytes_)
{
}
VULKAN_HPP_CONSTEXPR ShaderResourceUsageAMD(ShaderResourceUsageAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
ShaderResourceUsageAMD(VkShaderResourceUsageAMD const &rhs) VULKAN_HPP_NOEXCEPT
: ShaderResourceUsageAMD(*reinterpret_cast<ShaderResourceUsageAMD const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ShaderResourceUsageAMD &operator=(ShaderResourceUsageAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
ShaderResourceUsageAMD &operator=(VkShaderResourceUsageAMD const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD const *>(&rhs);
return *this;
}
explicit operator VkShaderResourceUsageAMD const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkShaderResourceUsageAMD *>(this);
}
explicit operator VkShaderResourceUsageAMD &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkShaderResourceUsageAMD *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, uint32_t const &, size_t const &, size_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(numUsedVgprs, numUsedSgprs, ldsSizePerLocalWorkGroup, ldsUsageSizeInBytes, scratchMemUsageInBytes);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ShaderResourceUsageAMD const &) const = default;
#else
bool operator==(ShaderResourceUsageAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (numUsedVgprs == rhs.numUsedVgprs) && (numUsedSgprs == rhs.numUsedSgprs) && (ldsSizePerLocalWorkGroup == rhs.ldsSizePerLocalWorkGroup) &&
(ldsUsageSizeInBytes == rhs.ldsUsageSizeInBytes) && (scratchMemUsageInBytes == rhs.scratchMemUsageInBytes);
# endif
}
bool operator!=(ShaderResourceUsageAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t numUsedVgprs = {};
uint32_t numUsedSgprs = {};
uint32_t ldsSizePerLocalWorkGroup = {};
size_t ldsUsageSizeInBytes = {};
size_t scratchMemUsageInBytes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD) == sizeof(VkShaderResourceUsageAMD),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD>::value,
"ShaderResourceUsageAMD is not nothrow_move_constructible!");
struct ShaderStatisticsInfoAMD
{
using NativeType = VkShaderStatisticsInfoAMD;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 ShaderStatisticsInfoAMD(VULKAN_HPP_NAMESPACE::ShaderStageFlags shaderStageMask_ = {},
VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD resourceUsage_ = {},
uint32_t numPhysicalVgprs_ = {},
uint32_t numPhysicalSgprs_ = {},
uint32_t numAvailableVgprs_ = {},
uint32_t numAvailableSgprs_ = {},
std::array<uint32_t, 3> const &computeWorkGroupSize_ = {}) VULKAN_HPP_NOEXCEPT
: shaderStageMask(shaderStageMask_),
resourceUsage(resourceUsage_),
numPhysicalVgprs(numPhysicalVgprs_),
numPhysicalSgprs(numPhysicalSgprs_),
numAvailableVgprs(numAvailableVgprs_),
numAvailableSgprs(numAvailableSgprs_),
computeWorkGroupSize(computeWorkGroupSize_)
{
}
VULKAN_HPP_CONSTEXPR_14 ShaderStatisticsInfoAMD(ShaderStatisticsInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
ShaderStatisticsInfoAMD(VkShaderStatisticsInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT
: ShaderStatisticsInfoAMD(*reinterpret_cast<ShaderStatisticsInfoAMD const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ShaderStatisticsInfoAMD &operator=(ShaderStatisticsInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
ShaderStatisticsInfoAMD &operator=(VkShaderStatisticsInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ShaderStatisticsInfoAMD const *>(&rhs);
return *this;
}
explicit operator VkShaderStatisticsInfoAMD const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkShaderStatisticsInfoAMD *>(this);
}
explicit operator VkShaderStatisticsInfoAMD &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkShaderStatisticsInfoAMD *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ShaderStageFlags const &,
VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(shaderStageMask, resourceUsage, numPhysicalVgprs, numPhysicalSgprs, numAvailableVgprs, numAvailableSgprs, computeWorkGroupSize);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ShaderStatisticsInfoAMD const &) const = default;
#else
bool operator==(ShaderStatisticsInfoAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (shaderStageMask == rhs.shaderStageMask) && (resourceUsage == rhs.resourceUsage) && (numPhysicalVgprs == rhs.numPhysicalVgprs) &&
(numPhysicalSgprs == rhs.numPhysicalSgprs) && (numAvailableVgprs == rhs.numAvailableVgprs) && (numAvailableSgprs == rhs.numAvailableSgprs) &&
(computeWorkGroupSize == rhs.computeWorkGroupSize);
# endif
}
bool operator!=(ShaderStatisticsInfoAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ShaderStageFlags shaderStageMask = {};
VULKAN_HPP_NAMESPACE::ShaderResourceUsageAMD resourceUsage = {};
uint32_t numPhysicalVgprs = {};
uint32_t numPhysicalSgprs = {};
uint32_t numAvailableVgprs = {};
uint32_t numAvailableSgprs = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, 3> computeWorkGroupSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ShaderStatisticsInfoAMD) == sizeof(VkShaderStatisticsInfoAMD),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ShaderStatisticsInfoAMD>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ShaderStatisticsInfoAMD>::value,
"ShaderStatisticsInfoAMD is not nothrow_move_constructible!");
struct SharedPresentSurfaceCapabilitiesKHR
{
using NativeType = VkSharedPresentSurfaceCapabilitiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSharedPresentSurfaceCapabilitiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SharedPresentSurfaceCapabilitiesKHR(VULKAN_HPP_NAMESPACE::ImageUsageFlags sharedPresentSupportedUsageFlags_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
sharedPresentSupportedUsageFlags(sharedPresentSupportedUsageFlags_)
{
}
VULKAN_HPP_CONSTEXPR SharedPresentSurfaceCapabilitiesKHR(SharedPresentSurfaceCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SharedPresentSurfaceCapabilitiesKHR(VkSharedPresentSurfaceCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: SharedPresentSurfaceCapabilitiesKHR(*reinterpret_cast<SharedPresentSurfaceCapabilitiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SharedPresentSurfaceCapabilitiesKHR &operator=(SharedPresentSurfaceCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SharedPresentSurfaceCapabilitiesKHR &operator=(VkSharedPresentSurfaceCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SharedPresentSurfaceCapabilitiesKHR const *>(&rhs);
return *this;
}
explicit operator VkSharedPresentSurfaceCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSharedPresentSurfaceCapabilitiesKHR *>(this);
}
explicit operator VkSharedPresentSurfaceCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSharedPresentSurfaceCapabilitiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::ImageUsageFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, sharedPresentSupportedUsageFlags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SharedPresentSurfaceCapabilitiesKHR const &) const = default;
#else
bool operator==(SharedPresentSurfaceCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (sharedPresentSupportedUsageFlags == rhs.sharedPresentSupportedUsageFlags);
# endif
}
bool operator!=(SharedPresentSurfaceCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSharedPresentSurfaceCapabilitiesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::ImageUsageFlags sharedPresentSupportedUsageFlags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SharedPresentSurfaceCapabilitiesKHR) == sizeof(VkSharedPresentSurfaceCapabilitiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SharedPresentSurfaceCapabilitiesKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SharedPresentSurfaceCapabilitiesKHR>::value,
"SharedPresentSurfaceCapabilitiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSharedPresentSurfaceCapabilitiesKHR>
{
using Type = SharedPresentSurfaceCapabilitiesKHR;
};
struct SparseImageFormatProperties
{
using NativeType = VkSparseImageFormatProperties;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SparseImageFormatProperties(VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask_ = {},
VULKAN_HPP_NAMESPACE::Extent3D imageGranularity_ = {},
VULKAN_HPP_NAMESPACE::SparseImageFormatFlags flags_ = {}) VULKAN_HPP_NOEXCEPT
: aspectMask(aspectMask_),
imageGranularity(imageGranularity_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR SparseImageFormatProperties(SparseImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageFormatProperties(VkSparseImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT
: SparseImageFormatProperties(*reinterpret_cast<SparseImageFormatProperties const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SparseImageFormatProperties &operator=(SparseImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageFormatProperties &operator=(VkSparseImageFormatProperties const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties const *>(&rhs);
return *this;
}
explicit operator VkSparseImageFormatProperties const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSparseImageFormatProperties *>(this);
}
explicit operator VkSparseImageFormatProperties &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSparseImageFormatProperties *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::ImageAspectFlags const &, VULKAN_HPP_NAMESPACE::Extent3D const &, VULKAN_HPP_NAMESPACE::SparseImageFormatFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(aspectMask, imageGranularity, flags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SparseImageFormatProperties const &) const = default;
#else
bool operator==(SparseImageFormatProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (aspectMask == rhs.aspectMask) && (imageGranularity == rhs.imageGranularity) && (flags == rhs.flags);
# endif
}
bool operator!=(SparseImageFormatProperties const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::ImageAspectFlags aspectMask = {};
VULKAN_HPP_NAMESPACE::Extent3D imageGranularity = {};
VULKAN_HPP_NAMESPACE::SparseImageFormatFlags flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SparseImageFormatProperties) == sizeof(VkSparseImageFormatProperties),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties>::value,
"SparseImageFormatProperties is not nothrow_move_constructible!");
struct SparseImageFormatProperties2
{
using NativeType = VkSparseImageFormatProperties2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSparseImageFormatProperties2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SparseImageFormatProperties2(VULKAN_HPP_NAMESPACE::SparseImageFormatProperties properties_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
properties(properties_)
{
}
VULKAN_HPP_CONSTEXPR SparseImageFormatProperties2(SparseImageFormatProperties2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageFormatProperties2(VkSparseImageFormatProperties2 const &rhs) VULKAN_HPP_NOEXCEPT
: SparseImageFormatProperties2(*reinterpret_cast<SparseImageFormatProperties2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SparseImageFormatProperties2 &operator=(SparseImageFormatProperties2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageFormatProperties2 &operator=(VkSparseImageFormatProperties2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2 const *>(&rhs);
return *this;
}
explicit operator VkSparseImageFormatProperties2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSparseImageFormatProperties2 *>(this);
}
explicit operator VkSparseImageFormatProperties2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSparseImageFormatProperties2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::SparseImageFormatProperties const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, properties);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SparseImageFormatProperties2 const &) const = default;
#else
bool operator==(SparseImageFormatProperties2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (properties == rhs.properties);
# endif
}
bool operator!=(SparseImageFormatProperties2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSparseImageFormatProperties2;
void *pNext = {};
VULKAN_HPP_NAMESPACE::SparseImageFormatProperties properties = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2) == sizeof(VkSparseImageFormatProperties2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties2>::value,
"SparseImageFormatProperties2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSparseImageFormatProperties2>
{
using Type = SparseImageFormatProperties2;
};
using SparseImageFormatProperties2KHR = SparseImageFormatProperties2;
struct SparseImageMemoryRequirements
{
using NativeType = VkSparseImageMemoryRequirements;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SparseImageMemoryRequirements(VULKAN_HPP_NAMESPACE::SparseImageFormatProperties formatProperties_ = {},
uint32_t imageMipTailFirstLod_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailSize_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailOffset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailStride_ = {}) VULKAN_HPP_NOEXCEPT
: formatProperties(formatProperties_),
imageMipTailFirstLod(imageMipTailFirstLod_),
imageMipTailSize(imageMipTailSize_),
imageMipTailOffset(imageMipTailOffset_),
imageMipTailStride(imageMipTailStride_)
{
}
VULKAN_HPP_CONSTEXPR SparseImageMemoryRequirements(SparseImageMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageMemoryRequirements(VkSparseImageMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT
: SparseImageMemoryRequirements(*reinterpret_cast<SparseImageMemoryRequirements const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SparseImageMemoryRequirements &operator=(SparseImageMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageMemoryRequirements &operator=(VkSparseImageMemoryRequirements const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements const *>(&rhs);
return *this;
}
explicit operator VkSparseImageMemoryRequirements const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSparseImageMemoryRequirements *>(this);
}
explicit operator VkSparseImageMemoryRequirements &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSparseImageMemoryRequirements *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::SparseImageFormatProperties const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(formatProperties, imageMipTailFirstLod, imageMipTailSize, imageMipTailOffset, imageMipTailStride);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SparseImageMemoryRequirements const &) const = default;
#else
bool operator==(SparseImageMemoryRequirements const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (formatProperties == rhs.formatProperties) && (imageMipTailFirstLod == rhs.imageMipTailFirstLod) &&
(imageMipTailSize == rhs.imageMipTailSize) && (imageMipTailOffset == rhs.imageMipTailOffset) &&
(imageMipTailStride == rhs.imageMipTailStride);
# endif
}
bool operator!=(SparseImageMemoryRequirements const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::SparseImageFormatProperties formatProperties = {};
uint32_t imageMipTailFirstLod = {};
VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailSize = {};
VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailOffset = {};
VULKAN_HPP_NAMESPACE::DeviceSize imageMipTailStride = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements) == sizeof(VkSparseImageMemoryRequirements),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements>::value,
"SparseImageMemoryRequirements is not nothrow_move_constructible!");
struct SparseImageMemoryRequirements2
{
using NativeType = VkSparseImageMemoryRequirements2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSparseImageMemoryRequirements2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SparseImageMemoryRequirements2(VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements memoryRequirements_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memoryRequirements(memoryRequirements_)
{
}
VULKAN_HPP_CONSTEXPR SparseImageMemoryRequirements2(SparseImageMemoryRequirements2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageMemoryRequirements2(VkSparseImageMemoryRequirements2 const &rhs) VULKAN_HPP_NOEXCEPT
: SparseImageMemoryRequirements2(*reinterpret_cast<SparseImageMemoryRequirements2 const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SparseImageMemoryRequirements2 &operator=(SparseImageMemoryRequirements2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
SparseImageMemoryRequirements2 &operator=(VkSparseImageMemoryRequirements2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2 const *>(&rhs);
return *this;
}
explicit operator VkSparseImageMemoryRequirements2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSparseImageMemoryRequirements2 *>(this);
}
explicit operator VkSparseImageMemoryRequirements2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSparseImageMemoryRequirements2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memoryRequirements);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SparseImageMemoryRequirements2 const &) const = default;
#else
bool operator==(SparseImageMemoryRequirements2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memoryRequirements == rhs.memoryRequirements);
# endif
}
bool operator!=(SparseImageMemoryRequirements2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSparseImageMemoryRequirements2;
void *pNext = {};
VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements memoryRequirements = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2) == sizeof(VkSparseImageMemoryRequirements2),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SparseImageMemoryRequirements2>::value,
"SparseImageMemoryRequirements2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSparseImageMemoryRequirements2>
{
using Type = SparseImageMemoryRequirements2;
};
using SparseImageMemoryRequirements2KHR = SparseImageMemoryRequirements2;
#if defined(VK_USE_PLATFORM_GGP)
struct StreamDescriptorSurfaceCreateInfoGGP
{
using NativeType = VkStreamDescriptorSurfaceCreateInfoGGP;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eStreamDescriptorSurfaceCreateInfoGGP;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR StreamDescriptorSurfaceCreateInfoGGP(VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateFlagsGGP flags_ = {},
GgpStreamDescriptor streamDescriptor_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
streamDescriptor(streamDescriptor_)
{
}
VULKAN_HPP_CONSTEXPR StreamDescriptorSurfaceCreateInfoGGP(StreamDescriptorSurfaceCreateInfoGGP const &rhs) VULKAN_HPP_NOEXCEPT = default;
StreamDescriptorSurfaceCreateInfoGGP(VkStreamDescriptorSurfaceCreateInfoGGP const &rhs) VULKAN_HPP_NOEXCEPT
: StreamDescriptorSurfaceCreateInfoGGP(*reinterpret_cast<StreamDescriptorSurfaceCreateInfoGGP const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
StreamDescriptorSurfaceCreateInfoGGP &operator=(StreamDescriptorSurfaceCreateInfoGGP const &rhs) VULKAN_HPP_NOEXCEPT = default;
StreamDescriptorSurfaceCreateInfoGGP &operator=(VkStreamDescriptorSurfaceCreateInfoGGP const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateInfoGGP const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 StreamDescriptorSurfaceCreateInfoGGP &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 StreamDescriptorSurfaceCreateInfoGGP &
setFlags(VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateFlagsGGP flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 StreamDescriptorSurfaceCreateInfoGGP &setStreamDescriptor(GgpStreamDescriptor streamDescriptor_) VULKAN_HPP_NOEXCEPT
{
streamDescriptor = streamDescriptor_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkStreamDescriptorSurfaceCreateInfoGGP const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkStreamDescriptorSurfaceCreateInfoGGP *>(this);
}
explicit operator VkStreamDescriptorSurfaceCreateInfoGGP &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkStreamDescriptorSurfaceCreateInfoGGP *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateFlagsGGP const &,
GgpStreamDescriptor const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, streamDescriptor);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(StreamDescriptorSurfaceCreateInfoGGP const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = flags <=> rhs.flags; cmp != 0)
return cmp;
if(auto cmp = memcmp(&streamDescriptor, &rhs.streamDescriptor, sizeof(GgpStreamDescriptor)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(StreamDescriptorSurfaceCreateInfoGGP const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) &&
(memcmp(&streamDescriptor, &rhs.streamDescriptor, sizeof(GgpStreamDescriptor)) == 0);
}
bool operator!=(StreamDescriptorSurfaceCreateInfoGGP const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eStreamDescriptorSurfaceCreateInfoGGP;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateFlagsGGP flags = {};
GgpStreamDescriptor streamDescriptor = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateInfoGGP) == sizeof(VkStreamDescriptorSurfaceCreateInfoGGP),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateInfoGGP>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::StreamDescriptorSurfaceCreateInfoGGP>::value,
"StreamDescriptorSurfaceCreateInfoGGP is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eStreamDescriptorSurfaceCreateInfoGGP>
{
using Type = StreamDescriptorSurfaceCreateInfoGGP;
};
#endif /*VK_USE_PLATFORM_GGP*/
struct StridedDeviceAddressRegionKHR
{
using NativeType = VkStridedDeviceAddressRegionKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR StridedDeviceAddressRegionKHR(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize stride_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize size_ = {}) VULKAN_HPP_NOEXCEPT
: deviceAddress(deviceAddress_),
stride(stride_),
size(size_)
{
}
VULKAN_HPP_CONSTEXPR StridedDeviceAddressRegionKHR(StridedDeviceAddressRegionKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
StridedDeviceAddressRegionKHR(VkStridedDeviceAddressRegionKHR const &rhs) VULKAN_HPP_NOEXCEPT
: StridedDeviceAddressRegionKHR(*reinterpret_cast<StridedDeviceAddressRegionKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
StridedDeviceAddressRegionKHR &operator=(StridedDeviceAddressRegionKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
StridedDeviceAddressRegionKHR &operator=(VkStridedDeviceAddressRegionKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 StridedDeviceAddressRegionKHR &setDeviceAddress(VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress_) VULKAN_HPP_NOEXCEPT
{
deviceAddress = deviceAddress_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 StridedDeviceAddressRegionKHR &setStride(VULKAN_HPP_NAMESPACE::DeviceSize stride_) VULKAN_HPP_NOEXCEPT
{
stride = stride_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 StridedDeviceAddressRegionKHR &setSize(VULKAN_HPP_NAMESPACE::DeviceSize size_) VULKAN_HPP_NOEXCEPT
{
size = size_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkStridedDeviceAddressRegionKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkStridedDeviceAddressRegionKHR *>(this);
}
explicit operator VkStridedDeviceAddressRegionKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkStridedDeviceAddressRegionKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::DeviceAddress const &, VULKAN_HPP_NAMESPACE::DeviceSize const &, VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(deviceAddress, stride, size);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(StridedDeviceAddressRegionKHR const &) const = default;
#else
bool operator==(StridedDeviceAddressRegionKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (deviceAddress == rhs.deviceAddress) && (stride == rhs.stride) && (size == rhs.size);
# endif
}
bool operator!=(StridedDeviceAddressRegionKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::DeviceAddress deviceAddress = {};
VULKAN_HPP_NAMESPACE::DeviceSize stride = {};
VULKAN_HPP_NAMESPACE::DeviceSize size = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR) == sizeof(VkStridedDeviceAddressRegionKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::StridedDeviceAddressRegionKHR>::value,
"StridedDeviceAddressRegionKHR is not nothrow_move_constructible!");
struct SubmitInfo
{
using NativeType = VkSubmitInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubmitInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SubmitInfo(uint32_t waitSemaphoreCount_ = {},
const VULKAN_HPP_NAMESPACE::Semaphore *pWaitSemaphores_ = {},
const VULKAN_HPP_NAMESPACE::PipelineStageFlags *pWaitDstStageMask_ = {},
uint32_t commandBufferCount_ = {},
const VULKAN_HPP_NAMESPACE::CommandBuffer *pCommandBuffers_ = {},
uint32_t signalSemaphoreCount_ = {},
const VULKAN_HPP_NAMESPACE::Semaphore *pSignalSemaphores_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
waitSemaphoreCount(waitSemaphoreCount_),
pWaitSemaphores(pWaitSemaphores_),
pWaitDstStageMask(pWaitDstStageMask_),
commandBufferCount(commandBufferCount_),
pCommandBuffers(pCommandBuffers_),
signalSemaphoreCount(signalSemaphoreCount_),
pSignalSemaphores(pSignalSemaphores_)
{
}
VULKAN_HPP_CONSTEXPR SubmitInfo(SubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubmitInfo(VkSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT : SubmitInfo(*reinterpret_cast<SubmitInfo const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubmitInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &waitSemaphores_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineStageFlags> const &waitDstStageMask_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CommandBuffer> const &commandBuffers_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &signalSemaphores_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, waitSemaphoreCount(static_cast<uint32_t>(waitSemaphores_.size()))
, pWaitSemaphores(waitSemaphores_.data())
, pWaitDstStageMask(waitDstStageMask_.data())
, commandBufferCount(static_cast<uint32_t>(commandBuffers_.size()))
, pCommandBuffers(commandBuffers_.data())
, signalSemaphoreCount(static_cast<uint32_t>(signalSemaphores_.size()))
, pSignalSemaphores(signalSemaphores_.data())
{
# ifdef VULKAN_HPP_NO_EXCEPTIONS
VULKAN_HPP_ASSERT(waitSemaphores_.size() == waitDstStageMask_.size());
# else
if(waitSemaphores_.size() != waitDstStageMask_.size())
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING "::SubmitInfo::SubmitInfo: waitSemaphores_.size() != waitDstStageMask_.size()");
}
# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubmitInfo &operator=(SubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubmitInfo &operator=(VkSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubmitInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SubmitInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubmitInfo &setWaitSemaphoreCount(uint32_t waitSemaphoreCount_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreCount = waitSemaphoreCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubmitInfo &setPWaitSemaphores(const VULKAN_HPP_NAMESPACE::Semaphore *pWaitSemaphores_) VULKAN_HPP_NOEXCEPT
{
pWaitSemaphores = pWaitSemaphores_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubmitInfo &
setWaitSemaphores(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &waitSemaphores_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreCount = static_cast<uint32_t>(waitSemaphores_.size());
pWaitSemaphores = waitSemaphores_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SubmitInfo &setPWaitDstStageMask(const VULKAN_HPP_NAMESPACE::PipelineStageFlags *pWaitDstStageMask_) VULKAN_HPP_NOEXCEPT
{
pWaitDstStageMask = pWaitDstStageMask_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubmitInfo &setWaitDstStageMask(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::PipelineStageFlags> const &waitDstStageMask_)
VULKAN_HPP_NOEXCEPT
{
waitSemaphoreCount = static_cast<uint32_t>(waitDstStageMask_.size());
pWaitDstStageMask = waitDstStageMask_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SubmitInfo &setCommandBufferCount(uint32_t commandBufferCount_) VULKAN_HPP_NOEXCEPT
{
commandBufferCount = commandBufferCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubmitInfo &setPCommandBuffers(const VULKAN_HPP_NAMESPACE::CommandBuffer *pCommandBuffers_) VULKAN_HPP_NOEXCEPT
{
pCommandBuffers = pCommandBuffers_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubmitInfo &
setCommandBuffers(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CommandBuffer> const &commandBuffers_) VULKAN_HPP_NOEXCEPT
{
commandBufferCount = static_cast<uint32_t>(commandBuffers_.size());
pCommandBuffers = commandBuffers_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SubmitInfo &setSignalSemaphoreCount(uint32_t signalSemaphoreCount_) VULKAN_HPP_NOEXCEPT
{
signalSemaphoreCount = signalSemaphoreCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubmitInfo &setPSignalSemaphores(const VULKAN_HPP_NAMESPACE::Semaphore *pSignalSemaphores_) VULKAN_HPP_NOEXCEPT
{
pSignalSemaphores = pSignalSemaphores_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubmitInfo &
setSignalSemaphores(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Semaphore> const &signalSemaphores_) VULKAN_HPP_NOEXCEPT
{
signalSemaphoreCount = static_cast<uint32_t>(signalSemaphores_.size());
pSignalSemaphores = signalSemaphores_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSubmitInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubmitInfo *>(this);
}
explicit operator VkSubmitInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubmitInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Semaphore *const &,
const VULKAN_HPP_NAMESPACE::PipelineStageFlags *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::CommandBuffer *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::Semaphore *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, waitSemaphoreCount, pWaitSemaphores, pWaitDstStageMask, commandBufferCount, pCommandBuffers, signalSemaphoreCount, pSignalSemaphores);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubmitInfo const &) const = default;
#else
bool operator==(SubmitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (waitSemaphoreCount == rhs.waitSemaphoreCount) &&
(pWaitSemaphores == rhs.pWaitSemaphores) && (pWaitDstStageMask == rhs.pWaitDstStageMask) && (commandBufferCount == rhs.commandBufferCount) &&
(pCommandBuffers == rhs.pCommandBuffers) && (signalSemaphoreCount == rhs.signalSemaphoreCount) &&
(pSignalSemaphores == rhs.pSignalSemaphores);
# endif
}
bool operator!=(SubmitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubmitInfo;
const void *pNext = {};
uint32_t waitSemaphoreCount = {};
const VULKAN_HPP_NAMESPACE::Semaphore *pWaitSemaphores = {};
const VULKAN_HPP_NAMESPACE::PipelineStageFlags *pWaitDstStageMask = {};
uint32_t commandBufferCount = {};
const VULKAN_HPP_NAMESPACE::CommandBuffer *pCommandBuffers = {};
uint32_t signalSemaphoreCount = {};
const VULKAN_HPP_NAMESPACE::Semaphore *pSignalSemaphores = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubmitInfo) == sizeof(VkSubmitInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubmitInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubmitInfo>::value, "SubmitInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSubmitInfo>
{
using Type = SubmitInfo;
};
struct SubmitInfo2
{
using NativeType = VkSubmitInfo2;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubmitInfo2;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SubmitInfo2(VULKAN_HPP_NAMESPACE::SubmitFlags flags_ = {},
uint32_t waitSemaphoreInfoCount_ = {},
const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo *pWaitSemaphoreInfos_ = {},
uint32_t commandBufferInfoCount_ = {},
const VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfo *pCommandBufferInfos_ = {},
uint32_t signalSemaphoreInfoCount_ = {},
const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo *pSignalSemaphoreInfos_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
waitSemaphoreInfoCount(waitSemaphoreInfoCount_),
pWaitSemaphoreInfos(pWaitSemaphoreInfos_),
commandBufferInfoCount(commandBufferInfoCount_),
pCommandBufferInfos(pCommandBufferInfos_),
signalSemaphoreInfoCount(signalSemaphoreInfoCount_),
pSignalSemaphoreInfos(pSignalSemaphoreInfos_)
{
}
VULKAN_HPP_CONSTEXPR SubmitInfo2(SubmitInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubmitInfo2(VkSubmitInfo2 const &rhs) VULKAN_HPP_NOEXCEPT : SubmitInfo2(*reinterpret_cast<SubmitInfo2 const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubmitInfo2(VULKAN_HPP_NAMESPACE::SubmitFlags flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo> const &waitSemaphoreInfos_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfo> const &commandBufferInfos_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo> const &signalSemaphoreInfos_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, waitSemaphoreInfoCount(static_cast<uint32_t>(waitSemaphoreInfos_.size()))
, pWaitSemaphoreInfos(waitSemaphoreInfos_.data())
, commandBufferInfoCount(static_cast<uint32_t>(commandBufferInfos_.size()))
, pCommandBufferInfos(commandBufferInfos_.data())
, signalSemaphoreInfoCount(static_cast<uint32_t>(signalSemaphoreInfos_.size()))
, pSignalSemaphoreInfos(signalSemaphoreInfos_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubmitInfo2 &operator=(SubmitInfo2 const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubmitInfo2 &operator=(VkSubmitInfo2 const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubmitInfo2 const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SubmitInfo2 &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubmitInfo2 &setFlags(VULKAN_HPP_NAMESPACE::SubmitFlags flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubmitInfo2 &setWaitSemaphoreInfoCount(uint32_t waitSemaphoreInfoCount_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreInfoCount = waitSemaphoreInfoCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubmitInfo2 &setPWaitSemaphoreInfos(const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo *pWaitSemaphoreInfos_) VULKAN_HPP_NOEXCEPT
{
pWaitSemaphoreInfos = pWaitSemaphoreInfos_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubmitInfo2 &setWaitSemaphoreInfos(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo> const &waitSemaphoreInfos_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreInfoCount = static_cast<uint32_t>(waitSemaphoreInfos_.size());
pWaitSemaphoreInfos = waitSemaphoreInfos_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SubmitInfo2 &setCommandBufferInfoCount(uint32_t commandBufferInfoCount_) VULKAN_HPP_NOEXCEPT
{
commandBufferInfoCount = commandBufferInfoCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubmitInfo2 &
setPCommandBufferInfos(const VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfo *pCommandBufferInfos_) VULKAN_HPP_NOEXCEPT
{
pCommandBufferInfos = pCommandBufferInfos_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubmitInfo2 &setCommandBufferInfos(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfo> const &commandBufferInfos_) VULKAN_HPP_NOEXCEPT
{
commandBufferInfoCount = static_cast<uint32_t>(commandBufferInfos_.size());
pCommandBufferInfos = commandBufferInfos_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SubmitInfo2 &setSignalSemaphoreInfoCount(uint32_t signalSemaphoreInfoCount_) VULKAN_HPP_NOEXCEPT
{
signalSemaphoreInfoCount = signalSemaphoreInfoCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubmitInfo2 &
setPSignalSemaphoreInfos(const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo *pSignalSemaphoreInfos_) VULKAN_HPP_NOEXCEPT
{
pSignalSemaphoreInfos = pSignalSemaphoreInfos_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubmitInfo2 &setSignalSemaphoreInfos(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo> const &signalSemaphoreInfos_) VULKAN_HPP_NOEXCEPT
{
signalSemaphoreInfoCount = static_cast<uint32_t>(signalSemaphoreInfos_.size());
pSignalSemaphoreInfos = signalSemaphoreInfos_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSubmitInfo2 const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubmitInfo2 *>(this);
}
explicit operator VkSubmitInfo2 &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubmitInfo2 *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::SubmitFlags const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfo *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
waitSemaphoreInfoCount,
pWaitSemaphoreInfos,
commandBufferInfoCount,
pCommandBufferInfos,
signalSemaphoreInfoCount,
pSignalSemaphoreInfos);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubmitInfo2 const &) const = default;
#else
bool operator==(SubmitInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (waitSemaphoreInfoCount == rhs.waitSemaphoreInfoCount) &&
(pWaitSemaphoreInfos == rhs.pWaitSemaphoreInfos) && (commandBufferInfoCount == rhs.commandBufferInfoCount) &&
(pCommandBufferInfos == rhs.pCommandBufferInfos) && (signalSemaphoreInfoCount == rhs.signalSemaphoreInfoCount) &&
(pSignalSemaphoreInfos == rhs.pSignalSemaphoreInfos);
# endif
}
bool operator!=(SubmitInfo2 const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubmitInfo2;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SubmitFlags flags = {};
uint32_t waitSemaphoreInfoCount = {};
const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo *pWaitSemaphoreInfos = {};
uint32_t commandBufferInfoCount = {};
const VULKAN_HPP_NAMESPACE::CommandBufferSubmitInfo *pCommandBufferInfos = {};
uint32_t signalSemaphoreInfoCount = {};
const VULKAN_HPP_NAMESPACE::SemaphoreSubmitInfo *pSignalSemaphoreInfos = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubmitInfo2) == sizeof(VkSubmitInfo2), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubmitInfo2>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubmitInfo2>::value, "SubmitInfo2 is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSubmitInfo2>
{
using Type = SubmitInfo2;
};
using SubmitInfo2KHR = SubmitInfo2;
struct SubpassBeginInfo
{
using NativeType = VkSubpassBeginInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassBeginInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SubpassBeginInfo(VULKAN_HPP_NAMESPACE::SubpassContents contents_ = VULKAN_HPP_NAMESPACE::SubpassContents::eInline,
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
contents(contents_)
{
}
VULKAN_HPP_CONSTEXPR SubpassBeginInfo(SubpassBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassBeginInfo(VkSubpassBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT : SubpassBeginInfo(*reinterpret_cast<SubpassBeginInfo const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubpassBeginInfo &operator=(SubpassBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassBeginInfo &operator=(VkSubpassBeginInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassBeginInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SubpassBeginInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassBeginInfo &setContents(VULKAN_HPP_NAMESPACE::SubpassContents contents_) VULKAN_HPP_NOEXCEPT
{
contents = contents_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSubpassBeginInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubpassBeginInfo *>(this);
}
explicit operator VkSubpassBeginInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubpassBeginInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::SubpassContents const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, contents);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubpassBeginInfo const &) const = default;
#else
bool operator==(SubpassBeginInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (contents == rhs.contents);
# endif
}
bool operator!=(SubpassBeginInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassBeginInfo;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SubpassContents contents = VULKAN_HPP_NAMESPACE::SubpassContents::eInline;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubpassBeginInfo) == sizeof(VkSubpassBeginInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubpassBeginInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubpassBeginInfo>::value,
"SubpassBeginInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSubpassBeginInfo>
{
using Type = SubpassBeginInfo;
};
using SubpassBeginInfoKHR = SubpassBeginInfo;
struct SubpassDescriptionDepthStencilResolve
{
using NativeType = VkSubpassDescriptionDepthStencilResolve;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassDescriptionDepthStencilResolve;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
SubpassDescriptionDepthStencilResolve(VULKAN_HPP_NAMESPACE::ResolveModeFlagBits depthResolveMode_ = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone,
VULKAN_HPP_NAMESPACE::ResolveModeFlagBits stencilResolveMode_ = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone,
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pDepthStencilResolveAttachment_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
depthResolveMode(depthResolveMode_),
stencilResolveMode(stencilResolveMode_),
pDepthStencilResolveAttachment(pDepthStencilResolveAttachment_)
{
}
VULKAN_HPP_CONSTEXPR SubpassDescriptionDepthStencilResolve(SubpassDescriptionDepthStencilResolve const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassDescriptionDepthStencilResolve(VkSubpassDescriptionDepthStencilResolve const &rhs) VULKAN_HPP_NOEXCEPT
: SubpassDescriptionDepthStencilResolve(*reinterpret_cast<SubpassDescriptionDepthStencilResolve const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubpassDescriptionDepthStencilResolve &operator=(SubpassDescriptionDepthStencilResolve const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassDescriptionDepthStencilResolve &operator=(VkSubpassDescriptionDepthStencilResolve const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassDescriptionDepthStencilResolve const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SubpassDescriptionDepthStencilResolve &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescriptionDepthStencilResolve &
setDepthResolveMode(VULKAN_HPP_NAMESPACE::ResolveModeFlagBits depthResolveMode_) VULKAN_HPP_NOEXCEPT
{
depthResolveMode = depthResolveMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescriptionDepthStencilResolve &
setStencilResolveMode(VULKAN_HPP_NAMESPACE::ResolveModeFlagBits stencilResolveMode_) VULKAN_HPP_NOEXCEPT
{
stencilResolveMode = stencilResolveMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassDescriptionDepthStencilResolve &
setPDepthStencilResolveAttachment(const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pDepthStencilResolveAttachment_) VULKAN_HPP_NOEXCEPT
{
pDepthStencilResolveAttachment = pDepthStencilResolveAttachment_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSubpassDescriptionDepthStencilResolve const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubpassDescriptionDepthStencilResolve *>(this);
}
explicit operator VkSubpassDescriptionDepthStencilResolve &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubpassDescriptionDepthStencilResolve *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ResolveModeFlagBits const &,
VULKAN_HPP_NAMESPACE::ResolveModeFlagBits const &,
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, depthResolveMode, stencilResolveMode, pDepthStencilResolveAttachment);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubpassDescriptionDepthStencilResolve const &) const = default;
#else
bool operator==(SubpassDescriptionDepthStencilResolve const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (depthResolveMode == rhs.depthResolveMode) &&
(stencilResolveMode == rhs.stencilResolveMode) && (pDepthStencilResolveAttachment == rhs.pDepthStencilResolveAttachment);
# endif
}
bool operator!=(SubpassDescriptionDepthStencilResolve const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassDescriptionDepthStencilResolve;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ResolveModeFlagBits depthResolveMode = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone;
VULKAN_HPP_NAMESPACE::ResolveModeFlagBits stencilResolveMode = VULKAN_HPP_NAMESPACE::ResolveModeFlagBits::eNone;
const VULKAN_HPP_NAMESPACE::AttachmentReference2 *pDepthStencilResolveAttachment = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubpassDescriptionDepthStencilResolve) == sizeof(VkSubpassDescriptionDepthStencilResolve),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubpassDescriptionDepthStencilResolve>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubpassDescriptionDepthStencilResolve>::value,
"SubpassDescriptionDepthStencilResolve is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSubpassDescriptionDepthStencilResolve>
{
using Type = SubpassDescriptionDepthStencilResolve;
};
using SubpassDescriptionDepthStencilResolveKHR = SubpassDescriptionDepthStencilResolve;
struct SubpassEndInfo
{
using NativeType = VkSubpassEndInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassEndInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SubpassEndInfo(const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT : pNext(pNext_)
{}
VULKAN_HPP_CONSTEXPR SubpassEndInfo(SubpassEndInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassEndInfo(VkSubpassEndInfo const &rhs) VULKAN_HPP_NOEXCEPT : SubpassEndInfo(*reinterpret_cast<SubpassEndInfo const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubpassEndInfo &operator=(SubpassEndInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassEndInfo &operator=(VkSubpassEndInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassEndInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SubpassEndInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSubpassEndInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubpassEndInfo *>(this);
}
explicit operator VkSubpassEndInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubpassEndInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubpassEndInfo const &) const = default;
#else
bool operator==(SubpassEndInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext);
# endif
}
bool operator!=(SubpassEndInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassEndInfo;
const void *pNext = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubpassEndInfo) == sizeof(VkSubpassEndInfo), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubpassEndInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubpassEndInfo>::value,
"SubpassEndInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSubpassEndInfo>
{
using Type = SubpassEndInfo;
};
using SubpassEndInfoKHR = SubpassEndInfo;
struct SubpassFragmentDensityMapOffsetEndInfoQCOM
{
using NativeType = VkSubpassFragmentDensityMapOffsetEndInfoQCOM;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassFragmentDensityMapOffsetEndInfoQCOM;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SubpassFragmentDensityMapOffsetEndInfoQCOM(uint32_t fragmentDensityOffsetCount_ = {},
const VULKAN_HPP_NAMESPACE::Offset2D *pFragmentDensityOffsets_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fragmentDensityOffsetCount(fragmentDensityOffsetCount_),
pFragmentDensityOffsets(pFragmentDensityOffsets_)
{
}
VULKAN_HPP_CONSTEXPR SubpassFragmentDensityMapOffsetEndInfoQCOM(SubpassFragmentDensityMapOffsetEndInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassFragmentDensityMapOffsetEndInfoQCOM(VkSubpassFragmentDensityMapOffsetEndInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT
: SubpassFragmentDensityMapOffsetEndInfoQCOM(*reinterpret_cast<SubpassFragmentDensityMapOffsetEndInfoQCOM const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubpassFragmentDensityMapOffsetEndInfoQCOM(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Offset2D> const &fragmentDensityOffsets_, const void *pNext_ = nullptr)
: pNext(pNext_)
, fragmentDensityOffsetCount(static_cast<uint32_t>(fragmentDensityOffsets_.size()))
, pFragmentDensityOffsets(fragmentDensityOffsets_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubpassFragmentDensityMapOffsetEndInfoQCOM &operator=(SubpassFragmentDensityMapOffsetEndInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassFragmentDensityMapOffsetEndInfoQCOM &operator=(VkSubpassFragmentDensityMapOffsetEndInfoQCOM const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassFragmentDensityMapOffsetEndInfoQCOM const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SubpassFragmentDensityMapOffsetEndInfoQCOM &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassFragmentDensityMapOffsetEndInfoQCOM &
setFragmentDensityOffsetCount(uint32_t fragmentDensityOffsetCount_) VULKAN_HPP_NOEXCEPT
{
fragmentDensityOffsetCount = fragmentDensityOffsetCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SubpassFragmentDensityMapOffsetEndInfoQCOM &
setPFragmentDensityOffsets(const VULKAN_HPP_NAMESPACE::Offset2D *pFragmentDensityOffsets_) VULKAN_HPP_NOEXCEPT
{
pFragmentDensityOffsets = pFragmentDensityOffsets_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SubpassFragmentDensityMapOffsetEndInfoQCOM &setFragmentDensityOffsets(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::Offset2D> const &fragmentDensityOffsets_) VULKAN_HPP_NOEXCEPT
{
fragmentDensityOffsetCount = static_cast<uint32_t>(fragmentDensityOffsets_.size());
pFragmentDensityOffsets = fragmentDensityOffsets_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSubpassFragmentDensityMapOffsetEndInfoQCOM const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubpassFragmentDensityMapOffsetEndInfoQCOM *>(this);
}
explicit operator VkSubpassFragmentDensityMapOffsetEndInfoQCOM &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubpassFragmentDensityMapOffsetEndInfoQCOM *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::Offset2D *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fragmentDensityOffsetCount, pFragmentDensityOffsets);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubpassFragmentDensityMapOffsetEndInfoQCOM const &) const = default;
#else
bool operator==(SubpassFragmentDensityMapOffsetEndInfoQCOM const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fragmentDensityOffsetCount == rhs.fragmentDensityOffsetCount) &&
(pFragmentDensityOffsets == rhs.pFragmentDensityOffsets);
# endif
}
bool operator!=(SubpassFragmentDensityMapOffsetEndInfoQCOM const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassFragmentDensityMapOffsetEndInfoQCOM;
const void *pNext = {};
uint32_t fragmentDensityOffsetCount = {};
const VULKAN_HPP_NAMESPACE::Offset2D *pFragmentDensityOffsets = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubpassFragmentDensityMapOffsetEndInfoQCOM) ==
sizeof(VkSubpassFragmentDensityMapOffsetEndInfoQCOM),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubpassFragmentDensityMapOffsetEndInfoQCOM>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubpassFragmentDensityMapOffsetEndInfoQCOM>::value,
"SubpassFragmentDensityMapOffsetEndInfoQCOM is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSubpassFragmentDensityMapOffsetEndInfoQCOM>
{
using Type = SubpassFragmentDensityMapOffsetEndInfoQCOM;
};
struct SubpassShadingPipelineCreateInfoHUAWEI
{
using NativeType = VkSubpassShadingPipelineCreateInfoHUAWEI;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSubpassShadingPipelineCreateInfoHUAWEI;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SubpassShadingPipelineCreateInfoHUAWEI(VULKAN_HPP_NAMESPACE::RenderPass renderPass_ = {},
uint32_t subpass_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
renderPass(renderPass_),
subpass(subpass_)
{
}
VULKAN_HPP_CONSTEXPR SubpassShadingPipelineCreateInfoHUAWEI(SubpassShadingPipelineCreateInfoHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassShadingPipelineCreateInfoHUAWEI(VkSubpassShadingPipelineCreateInfoHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT
: SubpassShadingPipelineCreateInfoHUAWEI(*reinterpret_cast<SubpassShadingPipelineCreateInfoHUAWEI const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SubpassShadingPipelineCreateInfoHUAWEI &operator=(SubpassShadingPipelineCreateInfoHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT = default;
SubpassShadingPipelineCreateInfoHUAWEI &operator=(VkSubpassShadingPipelineCreateInfoHUAWEI const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SubpassShadingPipelineCreateInfoHUAWEI const *>(&rhs);
return *this;
}
explicit operator VkSubpassShadingPipelineCreateInfoHUAWEI const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSubpassShadingPipelineCreateInfoHUAWEI *>(this);
}
explicit operator VkSubpassShadingPipelineCreateInfoHUAWEI &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSubpassShadingPipelineCreateInfoHUAWEI *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::RenderPass const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, renderPass, subpass);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SubpassShadingPipelineCreateInfoHUAWEI const &) const = default;
#else
bool operator==(SubpassShadingPipelineCreateInfoHUAWEI const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (renderPass == rhs.renderPass) && (subpass == rhs.subpass);
# endif
}
bool operator!=(SubpassShadingPipelineCreateInfoHUAWEI const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSubpassShadingPipelineCreateInfoHUAWEI;
void *pNext = {};
VULKAN_HPP_NAMESPACE::RenderPass renderPass = {};
uint32_t subpass = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SubpassShadingPipelineCreateInfoHUAWEI) == sizeof(VkSubpassShadingPipelineCreateInfoHUAWEI),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SubpassShadingPipelineCreateInfoHUAWEI>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SubpassShadingPipelineCreateInfoHUAWEI>::value,
"SubpassShadingPipelineCreateInfoHUAWEI is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSubpassShadingPipelineCreateInfoHUAWEI>
{
using Type = SubpassShadingPipelineCreateInfoHUAWEI;
};
struct SurfaceCapabilities2EXT
{
using NativeType = VkSurfaceCapabilities2EXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceCapabilities2EXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SurfaceCapabilities2EXT(
uint32_t minImageCount_ = {},
uint32_t maxImageCount_ = {},
VULKAN_HPP_NAMESPACE::Extent2D currentExtent_ = {},
VULKAN_HPP_NAMESPACE::Extent2D minImageExtent_ = {},
VULKAN_HPP_NAMESPACE::Extent2D maxImageExtent_ = {},
uint32_t maxImageArrayLayers_ = {},
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms_ = {},
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR currentTransform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR supportedCompositeAlpha_ = {},
VULKAN_HPP_NAMESPACE::ImageUsageFlags supportedUsageFlags_ = {},
VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT supportedSurfaceCounters_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
minImageCount(minImageCount_),
maxImageCount(maxImageCount_),
currentExtent(currentExtent_),
minImageExtent(minImageExtent_),
maxImageExtent(maxImageExtent_),
maxImageArrayLayers(maxImageArrayLayers_),
supportedTransforms(supportedTransforms_),
currentTransform(currentTransform_),
supportedCompositeAlpha(supportedCompositeAlpha_),
supportedUsageFlags(supportedUsageFlags_),
supportedSurfaceCounters(supportedSurfaceCounters_)
{
}
VULKAN_HPP_CONSTEXPR SurfaceCapabilities2EXT(SurfaceCapabilities2EXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceCapabilities2EXT(VkSurfaceCapabilities2EXT const &rhs) VULKAN_HPP_NOEXCEPT
: SurfaceCapabilities2EXT(*reinterpret_cast<SurfaceCapabilities2EXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SurfaceCapabilities2EXT &operator=(SurfaceCapabilities2EXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceCapabilities2EXT &operator=(VkSurfaceCapabilities2EXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT const *>(&rhs);
return *this;
}
explicit operator VkSurfaceCapabilities2EXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSurfaceCapabilities2EXT *>(this);
}
explicit operator VkSurfaceCapabilities2EXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSurfaceCapabilities2EXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR const &,
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR const &,
VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR const &,
VULKAN_HPP_NAMESPACE::ImageUsageFlags const &,
VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
minImageCount,
maxImageCount,
currentExtent,
minImageExtent,
maxImageExtent,
maxImageArrayLayers,
supportedTransforms,
currentTransform,
supportedCompositeAlpha,
supportedUsageFlags,
supportedSurfaceCounters);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SurfaceCapabilities2EXT const &) const = default;
#else
bool operator==(SurfaceCapabilities2EXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (minImageCount == rhs.minImageCount) && (maxImageCount == rhs.maxImageCount) &&
(currentExtent == rhs.currentExtent) && (minImageExtent == rhs.minImageExtent) && (maxImageExtent == rhs.maxImageExtent) &&
(maxImageArrayLayers == rhs.maxImageArrayLayers) && (supportedTransforms == rhs.supportedTransforms) &&
(currentTransform == rhs.currentTransform) && (supportedCompositeAlpha == rhs.supportedCompositeAlpha) &&
(supportedUsageFlags == rhs.supportedUsageFlags) && (supportedSurfaceCounters == rhs.supportedSurfaceCounters);
# endif
}
bool operator!=(SurfaceCapabilities2EXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceCapabilities2EXT;
void *pNext = {};
uint32_t minImageCount = {};
uint32_t maxImageCount = {};
VULKAN_HPP_NAMESPACE::Extent2D currentExtent = {};
VULKAN_HPP_NAMESPACE::Extent2D minImageExtent = {};
VULKAN_HPP_NAMESPACE::Extent2D maxImageExtent = {};
uint32_t maxImageArrayLayers = {};
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms = {};
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR currentTransform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR supportedCompositeAlpha = {};
VULKAN_HPP_NAMESPACE::ImageUsageFlags supportedUsageFlags = {};
VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT supportedSurfaceCounters = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT) == sizeof(VkSurfaceCapabilities2EXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2EXT>::value,
"SurfaceCapabilities2EXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSurfaceCapabilities2EXT>
{
using Type = SurfaceCapabilities2EXT;
};
struct SurfaceCapabilitiesKHR
{
using NativeType = VkSurfaceCapabilitiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SurfaceCapabilitiesKHR(
uint32_t minImageCount_ = {},
uint32_t maxImageCount_ = {},
VULKAN_HPP_NAMESPACE::Extent2D currentExtent_ = {},
VULKAN_HPP_NAMESPACE::Extent2D minImageExtent_ = {},
VULKAN_HPP_NAMESPACE::Extent2D maxImageExtent_ = {},
uint32_t maxImageArrayLayers_ = {},
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms_ = {},
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR currentTransform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR supportedCompositeAlpha_ = {},
VULKAN_HPP_NAMESPACE::ImageUsageFlags supportedUsageFlags_ = {}) VULKAN_HPP_NOEXCEPT
: minImageCount(minImageCount_),
maxImageCount(maxImageCount_),
currentExtent(currentExtent_),
minImageExtent(minImageExtent_),
maxImageExtent(maxImageExtent_),
maxImageArrayLayers(maxImageArrayLayers_),
supportedTransforms(supportedTransforms_),
currentTransform(currentTransform_),
supportedCompositeAlpha(supportedCompositeAlpha_),
supportedUsageFlags(supportedUsageFlags_)
{
}
VULKAN_HPP_CONSTEXPR SurfaceCapabilitiesKHR(SurfaceCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceCapabilitiesKHR(VkSurfaceCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: SurfaceCapabilitiesKHR(*reinterpret_cast<SurfaceCapabilitiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SurfaceCapabilitiesKHR &operator=(SurfaceCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceCapabilitiesKHR &operator=(VkSurfaceCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR const *>(&rhs);
return *this;
}
explicit operator VkSurfaceCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSurfaceCapabilitiesKHR *>(this);
}
explicit operator VkSurfaceCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSurfaceCapabilitiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR const &,
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR const &,
VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR const &,
VULKAN_HPP_NAMESPACE::ImageUsageFlags const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(minImageCount,
maxImageCount,
currentExtent,
minImageExtent,
maxImageExtent,
maxImageArrayLayers,
supportedTransforms,
currentTransform,
supportedCompositeAlpha,
supportedUsageFlags);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SurfaceCapabilitiesKHR const &) const = default;
#else
bool operator==(SurfaceCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (minImageCount == rhs.minImageCount) && (maxImageCount == rhs.maxImageCount) && (currentExtent == rhs.currentExtent) &&
(minImageExtent == rhs.minImageExtent) && (maxImageExtent == rhs.maxImageExtent) && (maxImageArrayLayers == rhs.maxImageArrayLayers) &&
(supportedTransforms == rhs.supportedTransforms) && (currentTransform == rhs.currentTransform) &&
(supportedCompositeAlpha == rhs.supportedCompositeAlpha) && (supportedUsageFlags == rhs.supportedUsageFlags);
# endif
}
bool operator!=(SurfaceCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t minImageCount = {};
uint32_t maxImageCount = {};
VULKAN_HPP_NAMESPACE::Extent2D currentExtent = {};
VULKAN_HPP_NAMESPACE::Extent2D minImageExtent = {};
VULKAN_HPP_NAMESPACE::Extent2D maxImageExtent = {};
uint32_t maxImageArrayLayers = {};
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagsKHR supportedTransforms = {};
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR currentTransform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
VULKAN_HPP_NAMESPACE::CompositeAlphaFlagsKHR supportedCompositeAlpha = {};
VULKAN_HPP_NAMESPACE::ImageUsageFlags supportedUsageFlags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR) == sizeof(VkSurfaceCapabilitiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR>::value,
"SurfaceCapabilitiesKHR is not nothrow_move_constructible!");
struct SurfaceCapabilities2KHR
{
using NativeType = VkSurfaceCapabilities2KHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceCapabilities2KHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SurfaceCapabilities2KHR(VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR surfaceCapabilities_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
surfaceCapabilities(surfaceCapabilities_)
{
}
VULKAN_HPP_CONSTEXPR SurfaceCapabilities2KHR(SurfaceCapabilities2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceCapabilities2KHR(VkSurfaceCapabilities2KHR const &rhs) VULKAN_HPP_NOEXCEPT
: SurfaceCapabilities2KHR(*reinterpret_cast<SurfaceCapabilities2KHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SurfaceCapabilities2KHR &operator=(SurfaceCapabilities2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceCapabilities2KHR &operator=(VkSurfaceCapabilities2KHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR const *>(&rhs);
return *this;
}
explicit operator VkSurfaceCapabilities2KHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSurfaceCapabilities2KHR *>(this);
}
explicit operator VkSurfaceCapabilities2KHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSurfaceCapabilities2KHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, surfaceCapabilities);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SurfaceCapabilities2KHR const &) const = default;
#else
bool operator==(SurfaceCapabilities2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (surfaceCapabilities == rhs.surfaceCapabilities);
# endif
}
bool operator!=(SurfaceCapabilities2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceCapabilities2KHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesKHR surfaceCapabilities = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR) == sizeof(VkSurfaceCapabilities2KHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SurfaceCapabilities2KHR>::value,
"SurfaceCapabilities2KHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSurfaceCapabilities2KHR>
{
using Type = SurfaceCapabilities2KHR;
};
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct SurfaceCapabilitiesFullScreenExclusiveEXT
{
using NativeType = VkSurfaceCapabilitiesFullScreenExclusiveEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceCapabilitiesFullScreenExclusiveEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SurfaceCapabilitiesFullScreenExclusiveEXT(VULKAN_HPP_NAMESPACE::Bool32 fullScreenExclusiveSupported_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fullScreenExclusiveSupported(fullScreenExclusiveSupported_)
{
}
VULKAN_HPP_CONSTEXPR SurfaceCapabilitiesFullScreenExclusiveEXT(SurfaceCapabilitiesFullScreenExclusiveEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceCapabilitiesFullScreenExclusiveEXT(VkSurfaceCapabilitiesFullScreenExclusiveEXT const &rhs) VULKAN_HPP_NOEXCEPT
: SurfaceCapabilitiesFullScreenExclusiveEXT(*reinterpret_cast<SurfaceCapabilitiesFullScreenExclusiveEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SurfaceCapabilitiesFullScreenExclusiveEXT &operator=(SurfaceCapabilitiesFullScreenExclusiveEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceCapabilitiesFullScreenExclusiveEXT &operator=(VkSurfaceCapabilitiesFullScreenExclusiveEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesFullScreenExclusiveEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SurfaceCapabilitiesFullScreenExclusiveEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SurfaceCapabilitiesFullScreenExclusiveEXT &
setFullScreenExclusiveSupported(VULKAN_HPP_NAMESPACE::Bool32 fullScreenExclusiveSupported_) VULKAN_HPP_NOEXCEPT
{
fullScreenExclusiveSupported = fullScreenExclusiveSupported_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSurfaceCapabilitiesFullScreenExclusiveEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSurfaceCapabilitiesFullScreenExclusiveEXT *>(this);
}
explicit operator VkSurfaceCapabilitiesFullScreenExclusiveEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSurfaceCapabilitiesFullScreenExclusiveEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fullScreenExclusiveSupported);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SurfaceCapabilitiesFullScreenExclusiveEXT const &) const = default;
# else
bool operator==(SurfaceCapabilitiesFullScreenExclusiveEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fullScreenExclusiveSupported == rhs.fullScreenExclusiveSupported);
# endif
}
bool operator!=(SurfaceCapabilitiesFullScreenExclusiveEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceCapabilitiesFullScreenExclusiveEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 fullScreenExclusiveSupported = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesFullScreenExclusiveEXT) == sizeof(VkSurfaceCapabilitiesFullScreenExclusiveEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesFullScreenExclusiveEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SurfaceCapabilitiesFullScreenExclusiveEXT>::value,
"SurfaceCapabilitiesFullScreenExclusiveEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSurfaceCapabilitiesFullScreenExclusiveEXT>
{
using Type = SurfaceCapabilitiesFullScreenExclusiveEXT;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
struct SurfaceFormatKHR
{
using NativeType = VkSurfaceFormatKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
SurfaceFormatKHR(VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::ColorSpaceKHR colorSpace_ = VULKAN_HPP_NAMESPACE::ColorSpaceKHR::eSrgbNonlinear) VULKAN_HPP_NOEXCEPT
: format(format_),
colorSpace(colorSpace_)
{
}
VULKAN_HPP_CONSTEXPR SurfaceFormatKHR(SurfaceFormatKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceFormatKHR(VkSurfaceFormatKHR const &rhs) VULKAN_HPP_NOEXCEPT : SurfaceFormatKHR(*reinterpret_cast<SurfaceFormatKHR const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SurfaceFormatKHR &operator=(SurfaceFormatKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceFormatKHR &operator=(VkSurfaceFormatKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceFormatKHR const *>(&rhs);
return *this;
}
explicit operator VkSurfaceFormatKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSurfaceFormatKHR *>(this);
}
explicit operator VkSurfaceFormatKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSurfaceFormatKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::Format const &, VULKAN_HPP_NAMESPACE::ColorSpaceKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(format, colorSpace);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SurfaceFormatKHR const &) const = default;
#else
bool operator==(SurfaceFormatKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (format == rhs.format) && (colorSpace == rhs.colorSpace);
# endif
}
bool operator!=(SurfaceFormatKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::ColorSpaceKHR colorSpace = VULKAN_HPP_NAMESPACE::ColorSpaceKHR::eSrgbNonlinear;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SurfaceFormatKHR) == sizeof(VkSurfaceFormatKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SurfaceFormatKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SurfaceFormatKHR>::value,
"SurfaceFormatKHR is not nothrow_move_constructible!");
struct SurfaceFormat2KHR
{
using NativeType = VkSurfaceFormat2KHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceFormat2KHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SurfaceFormat2KHR(VULKAN_HPP_NAMESPACE::SurfaceFormatKHR surfaceFormat_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
surfaceFormat(surfaceFormat_)
{
}
VULKAN_HPP_CONSTEXPR SurfaceFormat2KHR(SurfaceFormat2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceFormat2KHR(VkSurfaceFormat2KHR const &rhs) VULKAN_HPP_NOEXCEPT : SurfaceFormat2KHR(*reinterpret_cast<SurfaceFormat2KHR const *>(&rhs)) {}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SurfaceFormat2KHR &operator=(SurfaceFormat2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceFormat2KHR &operator=(VkSurfaceFormat2KHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR const *>(&rhs);
return *this;
}
explicit operator VkSurfaceFormat2KHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSurfaceFormat2KHR *>(this);
}
explicit operator VkSurfaceFormat2KHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSurfaceFormat2KHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::SurfaceFormatKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, surfaceFormat);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SurfaceFormat2KHR const &) const = default;
#else
bool operator==(SurfaceFormat2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (surfaceFormat == rhs.surfaceFormat);
# endif
}
bool operator!=(SurfaceFormat2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceFormat2KHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::SurfaceFormatKHR surfaceFormat = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR) == sizeof(VkSurfaceFormat2KHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SurfaceFormat2KHR>::value,
"SurfaceFormat2KHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSurfaceFormat2KHR>
{
using Type = SurfaceFormat2KHR;
};
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct SurfaceFullScreenExclusiveInfoEXT
{
using NativeType = VkSurfaceFullScreenExclusiveInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceFullScreenExclusiveInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SurfaceFullScreenExclusiveInfoEXT(
VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT fullScreenExclusive_ = VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT::eDefault,
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
fullScreenExclusive(fullScreenExclusive_)
{
}
VULKAN_HPP_CONSTEXPR SurfaceFullScreenExclusiveInfoEXT(SurfaceFullScreenExclusiveInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceFullScreenExclusiveInfoEXT(VkSurfaceFullScreenExclusiveInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: SurfaceFullScreenExclusiveInfoEXT(*reinterpret_cast<SurfaceFullScreenExclusiveInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SurfaceFullScreenExclusiveInfoEXT &operator=(SurfaceFullScreenExclusiveInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceFullScreenExclusiveInfoEXT &operator=(VkSurfaceFullScreenExclusiveInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceFullScreenExclusiveInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SurfaceFullScreenExclusiveInfoEXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SurfaceFullScreenExclusiveInfoEXT &
setFullScreenExclusive(VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT fullScreenExclusive_) VULKAN_HPP_NOEXCEPT
{
fullScreenExclusive = fullScreenExclusive_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSurfaceFullScreenExclusiveInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSurfaceFullScreenExclusiveInfoEXT *>(this);
}
explicit operator VkSurfaceFullScreenExclusiveInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSurfaceFullScreenExclusiveInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, fullScreenExclusive);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SurfaceFullScreenExclusiveInfoEXT const &) const = default;
# else
bool operator==(SurfaceFullScreenExclusiveInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (fullScreenExclusive == rhs.fullScreenExclusive);
# endif
}
bool operator!=(SurfaceFullScreenExclusiveInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceFullScreenExclusiveInfoEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT fullScreenExclusive = VULKAN_HPP_NAMESPACE::FullScreenExclusiveEXT::eDefault;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SurfaceFullScreenExclusiveInfoEXT) == sizeof(VkSurfaceFullScreenExclusiveInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SurfaceFullScreenExclusiveInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SurfaceFullScreenExclusiveInfoEXT>::value,
"SurfaceFullScreenExclusiveInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSurfaceFullScreenExclusiveInfoEXT>
{
using Type = SurfaceFullScreenExclusiveInfoEXT;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct SurfaceFullScreenExclusiveWin32InfoEXT
{
using NativeType = VkSurfaceFullScreenExclusiveWin32InfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SurfaceFullScreenExclusiveWin32InfoEXT(HMONITOR hmonitor_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
hmonitor(hmonitor_)
{
}
VULKAN_HPP_CONSTEXPR SurfaceFullScreenExclusiveWin32InfoEXT(SurfaceFullScreenExclusiveWin32InfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceFullScreenExclusiveWin32InfoEXT(VkSurfaceFullScreenExclusiveWin32InfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: SurfaceFullScreenExclusiveWin32InfoEXT(*reinterpret_cast<SurfaceFullScreenExclusiveWin32InfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SurfaceFullScreenExclusiveWin32InfoEXT &operator=(SurfaceFullScreenExclusiveWin32InfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceFullScreenExclusiveWin32InfoEXT &operator=(VkSurfaceFullScreenExclusiveWin32InfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceFullScreenExclusiveWin32InfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SurfaceFullScreenExclusiveWin32InfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SurfaceFullScreenExclusiveWin32InfoEXT &setHmonitor(HMONITOR hmonitor_) VULKAN_HPP_NOEXCEPT
{
hmonitor = hmonitor_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSurfaceFullScreenExclusiveWin32InfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSurfaceFullScreenExclusiveWin32InfoEXT *>(this);
}
explicit operator VkSurfaceFullScreenExclusiveWin32InfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSurfaceFullScreenExclusiveWin32InfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, HMONITOR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, hmonitor);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SurfaceFullScreenExclusiveWin32InfoEXT const &) const = default;
# else
bool operator==(SurfaceFullScreenExclusiveWin32InfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (hmonitor == rhs.hmonitor);
# endif
}
bool operator!=(SurfaceFullScreenExclusiveWin32InfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT;
const void *pNext = {};
HMONITOR hmonitor = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SurfaceFullScreenExclusiveWin32InfoEXT) == sizeof(VkSurfaceFullScreenExclusiveWin32InfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SurfaceFullScreenExclusiveWin32InfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SurfaceFullScreenExclusiveWin32InfoEXT>::value,
"SurfaceFullScreenExclusiveWin32InfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT>
{
using Type = SurfaceFullScreenExclusiveWin32InfoEXT;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
struct SurfaceProtectedCapabilitiesKHR
{
using NativeType = VkSurfaceProtectedCapabilitiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSurfaceProtectedCapabilitiesKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SurfaceProtectedCapabilitiesKHR(VULKAN_HPP_NAMESPACE::Bool32 supportsProtected_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
supportsProtected(supportsProtected_)
{
}
VULKAN_HPP_CONSTEXPR SurfaceProtectedCapabilitiesKHR(SurfaceProtectedCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceProtectedCapabilitiesKHR(VkSurfaceProtectedCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: SurfaceProtectedCapabilitiesKHR(*reinterpret_cast<SurfaceProtectedCapabilitiesKHR const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SurfaceProtectedCapabilitiesKHR &operator=(SurfaceProtectedCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SurfaceProtectedCapabilitiesKHR &operator=(VkSurfaceProtectedCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SurfaceProtectedCapabilitiesKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SurfaceProtectedCapabilitiesKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SurfaceProtectedCapabilitiesKHR &setSupportsProtected(VULKAN_HPP_NAMESPACE::Bool32 supportsProtected_) VULKAN_HPP_NOEXCEPT
{
supportsProtected = supportsProtected_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSurfaceProtectedCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSurfaceProtectedCapabilitiesKHR *>(this);
}
explicit operator VkSurfaceProtectedCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSurfaceProtectedCapabilitiesKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, supportsProtected);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SurfaceProtectedCapabilitiesKHR const &) const = default;
#else
bool operator==(SurfaceProtectedCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (supportsProtected == rhs.supportsProtected);
# endif
}
bool operator!=(SurfaceProtectedCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSurfaceProtectedCapabilitiesKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 supportsProtected = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SurfaceProtectedCapabilitiesKHR) == sizeof(VkSurfaceProtectedCapabilitiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SurfaceProtectedCapabilitiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SurfaceProtectedCapabilitiesKHR>::value,
"SurfaceProtectedCapabilitiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSurfaceProtectedCapabilitiesKHR>
{
using Type = SurfaceProtectedCapabilitiesKHR;
};
struct SwapchainCounterCreateInfoEXT
{
using NativeType = VkSwapchainCounterCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSwapchainCounterCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SwapchainCounterCreateInfoEXT(VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT surfaceCounters_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
surfaceCounters(surfaceCounters_)
{
}
VULKAN_HPP_CONSTEXPR SwapchainCounterCreateInfoEXT(SwapchainCounterCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SwapchainCounterCreateInfoEXT(VkSwapchainCounterCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: SwapchainCounterCreateInfoEXT(*reinterpret_cast<SwapchainCounterCreateInfoEXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SwapchainCounterCreateInfoEXT &operator=(SwapchainCounterCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
SwapchainCounterCreateInfoEXT &operator=(VkSwapchainCounterCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SwapchainCounterCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SwapchainCounterCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCounterCreateInfoEXT &
setSurfaceCounters(VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT surfaceCounters_) VULKAN_HPP_NOEXCEPT
{
surfaceCounters = surfaceCounters_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSwapchainCounterCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSwapchainCounterCreateInfoEXT *>(this);
}
explicit operator VkSwapchainCounterCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSwapchainCounterCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, surfaceCounters);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SwapchainCounterCreateInfoEXT const &) const = default;
#else
bool operator==(SwapchainCounterCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (surfaceCounters == rhs.surfaceCounters);
# endif
}
bool operator!=(SwapchainCounterCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSwapchainCounterCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SurfaceCounterFlagsEXT surfaceCounters = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SwapchainCounterCreateInfoEXT) == sizeof(VkSwapchainCounterCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SwapchainCounterCreateInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SwapchainCounterCreateInfoEXT>::value,
"SwapchainCounterCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSwapchainCounterCreateInfoEXT>
{
using Type = SwapchainCounterCreateInfoEXT;
};
struct SwapchainCreateInfoKHR
{
using NativeType = VkSwapchainCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSwapchainCreateInfoKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
SwapchainCreateInfoKHR(VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR flags_ = {},
VULKAN_HPP_NAMESPACE::SurfaceKHR surface_ = {},
uint32_t minImageCount_ = {},
VULKAN_HPP_NAMESPACE::Format imageFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::ColorSpaceKHR imageColorSpace_ = VULKAN_HPP_NAMESPACE::ColorSpaceKHR::eSrgbNonlinear,
VULKAN_HPP_NAMESPACE::Extent2D imageExtent_ = {},
uint32_t imageArrayLayers_ = {},
VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage_ = {},
VULKAN_HPP_NAMESPACE::SharingMode imageSharingMode_ = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive,
uint32_t queueFamilyIndexCount_ = {},
const uint32_t *pQueueFamilyIndices_ = {},
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR preTransform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR compositeAlpha_ = VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR::eOpaque,
VULKAN_HPP_NAMESPACE::PresentModeKHR presentMode_ = VULKAN_HPP_NAMESPACE::PresentModeKHR::eImmediate,
VULKAN_HPP_NAMESPACE::Bool32 clipped_ = {},
VULKAN_HPP_NAMESPACE::SwapchainKHR oldSwapchain_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
surface(surface_),
minImageCount(minImageCount_),
imageFormat(imageFormat_),
imageColorSpace(imageColorSpace_),
imageExtent(imageExtent_),
imageArrayLayers(imageArrayLayers_),
imageUsage(imageUsage_),
imageSharingMode(imageSharingMode_),
queueFamilyIndexCount(queueFamilyIndexCount_),
pQueueFamilyIndices(pQueueFamilyIndices_),
preTransform(preTransform_),
compositeAlpha(compositeAlpha_),
presentMode(presentMode_),
clipped(clipped_),
oldSwapchain(oldSwapchain_)
{
}
VULKAN_HPP_CONSTEXPR SwapchainCreateInfoKHR(SwapchainCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SwapchainCreateInfoKHR(VkSwapchainCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: SwapchainCreateInfoKHR(*reinterpret_cast<SwapchainCreateInfoKHR const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SwapchainCreateInfoKHR(VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR flags_,
VULKAN_HPP_NAMESPACE::SurfaceKHR surface_,
uint32_t minImageCount_,
VULKAN_HPP_NAMESPACE::Format imageFormat_,
VULKAN_HPP_NAMESPACE::ColorSpaceKHR imageColorSpace_,
VULKAN_HPP_NAMESPACE::Extent2D imageExtent_,
uint32_t imageArrayLayers_,
VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage_,
VULKAN_HPP_NAMESPACE::SharingMode imageSharingMode_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &queueFamilyIndices_,
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR preTransform_ = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity,
VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR compositeAlpha_ = VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR::eOpaque,
VULKAN_HPP_NAMESPACE::PresentModeKHR presentMode_ = VULKAN_HPP_NAMESPACE::PresentModeKHR::eImmediate,
VULKAN_HPP_NAMESPACE::Bool32 clipped_ = {},
VULKAN_HPP_NAMESPACE::SwapchainKHR oldSwapchain_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, surface(surface_)
, minImageCount(minImageCount_)
, imageFormat(imageFormat_)
, imageColorSpace(imageColorSpace_)
, imageExtent(imageExtent_)
, imageArrayLayers(imageArrayLayers_)
, imageUsage(imageUsage_)
, imageSharingMode(imageSharingMode_)
, queueFamilyIndexCount(static_cast<uint32_t>(queueFamilyIndices_.size()))
, pQueueFamilyIndices(queueFamilyIndices_.data())
, preTransform(preTransform_)
, compositeAlpha(compositeAlpha_)
, presentMode(presentMode_)
, clipped(clipped_)
, oldSwapchain(oldSwapchain_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SwapchainCreateInfoKHR &operator=(SwapchainCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
SwapchainCreateInfoKHR &operator=(VkSwapchainCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setSurface(VULKAN_HPP_NAMESPACE::SurfaceKHR surface_) VULKAN_HPP_NOEXCEPT
{
surface = surface_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setMinImageCount(uint32_t minImageCount_) VULKAN_HPP_NOEXCEPT
{
minImageCount = minImageCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setImageFormat(VULKAN_HPP_NAMESPACE::Format imageFormat_) VULKAN_HPP_NOEXCEPT
{
imageFormat = imageFormat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setImageColorSpace(VULKAN_HPP_NAMESPACE::ColorSpaceKHR imageColorSpace_) VULKAN_HPP_NOEXCEPT
{
imageColorSpace = imageColorSpace_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setImageExtent(VULKAN_HPP_NAMESPACE::Extent2D const &imageExtent_) VULKAN_HPP_NOEXCEPT
{
imageExtent = imageExtent_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setImageArrayLayers(uint32_t imageArrayLayers_) VULKAN_HPP_NOEXCEPT
{
imageArrayLayers = imageArrayLayers_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setImageUsage(VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage_) VULKAN_HPP_NOEXCEPT
{
imageUsage = imageUsage_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setImageSharingMode(VULKAN_HPP_NAMESPACE::SharingMode imageSharingMode_) VULKAN_HPP_NOEXCEPT
{
imageSharingMode = imageSharingMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setQueueFamilyIndexCount(uint32_t queueFamilyIndexCount_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndexCount = queueFamilyIndexCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setPQueueFamilyIndices(const uint32_t *pQueueFamilyIndices_) VULKAN_HPP_NOEXCEPT
{
pQueueFamilyIndices = pQueueFamilyIndices_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
SwapchainCreateInfoKHR &
setQueueFamilyIndices(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &queueFamilyIndices_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndexCount = static_cast<uint32_t>(queueFamilyIndices_.size());
pQueueFamilyIndices = queueFamilyIndices_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setPreTransform(VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR preTransform_) VULKAN_HPP_NOEXCEPT
{
preTransform = preTransform_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setCompositeAlpha(VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR compositeAlpha_) VULKAN_HPP_NOEXCEPT
{
compositeAlpha = compositeAlpha_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setPresentMode(VULKAN_HPP_NAMESPACE::PresentModeKHR presentMode_) VULKAN_HPP_NOEXCEPT
{
presentMode = presentMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setClipped(VULKAN_HPP_NAMESPACE::Bool32 clipped_) VULKAN_HPP_NOEXCEPT
{
clipped = clipped_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainCreateInfoKHR &setOldSwapchain(VULKAN_HPP_NAMESPACE::SwapchainKHR oldSwapchain_) VULKAN_HPP_NOEXCEPT
{
oldSwapchain = oldSwapchain_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSwapchainCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSwapchainCreateInfoKHR *>(this);
}
explicit operator VkSwapchainCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSwapchainCreateInfoKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR const &,
VULKAN_HPP_NAMESPACE::SurfaceKHR const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::ColorSpaceKHR const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ImageUsageFlags const &,
VULKAN_HPP_NAMESPACE::SharingMode const &,
uint32_t const &,
const uint32_t *const &,
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR const &,
VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR const &,
VULKAN_HPP_NAMESPACE::PresentModeKHR const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::SwapchainKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
surface,
minImageCount,
imageFormat,
imageColorSpace,
imageExtent,
imageArrayLayers,
imageUsage,
imageSharingMode,
queueFamilyIndexCount,
pQueueFamilyIndices,
preTransform,
compositeAlpha,
presentMode,
clipped,
oldSwapchain);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SwapchainCreateInfoKHR const &) const = default;
#else
bool operator==(SwapchainCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (surface == rhs.surface) &&
(minImageCount == rhs.minImageCount) && (imageFormat == rhs.imageFormat) && (imageColorSpace == rhs.imageColorSpace) &&
(imageExtent == rhs.imageExtent) && (imageArrayLayers == rhs.imageArrayLayers) && (imageUsage == rhs.imageUsage) &&
(imageSharingMode == rhs.imageSharingMode) && (queueFamilyIndexCount == rhs.queueFamilyIndexCount) &&
(pQueueFamilyIndices == rhs.pQueueFamilyIndices) && (preTransform == rhs.preTransform) && (compositeAlpha == rhs.compositeAlpha) &&
(presentMode == rhs.presentMode) && (clipped == rhs.clipped) && (oldSwapchain == rhs.oldSwapchain);
# endif
}
bool operator!=(SwapchainCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSwapchainCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::SwapchainCreateFlagsKHR flags = {};
VULKAN_HPP_NAMESPACE::SurfaceKHR surface = {};
uint32_t minImageCount = {};
VULKAN_HPP_NAMESPACE::Format imageFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::ColorSpaceKHR imageColorSpace = VULKAN_HPP_NAMESPACE::ColorSpaceKHR::eSrgbNonlinear;
VULKAN_HPP_NAMESPACE::Extent2D imageExtent = {};
uint32_t imageArrayLayers = {};
VULKAN_HPP_NAMESPACE::ImageUsageFlags imageUsage = {};
VULKAN_HPP_NAMESPACE::SharingMode imageSharingMode = VULKAN_HPP_NAMESPACE::SharingMode::eExclusive;
uint32_t queueFamilyIndexCount = {};
const uint32_t *pQueueFamilyIndices = {};
VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR preTransform = VULKAN_HPP_NAMESPACE::SurfaceTransformFlagBitsKHR::eIdentity;
VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR compositeAlpha = VULKAN_HPP_NAMESPACE::CompositeAlphaFlagBitsKHR::eOpaque;
VULKAN_HPP_NAMESPACE::PresentModeKHR presentMode = VULKAN_HPP_NAMESPACE::PresentModeKHR::eImmediate;
VULKAN_HPP_NAMESPACE::Bool32 clipped = {};
VULKAN_HPP_NAMESPACE::SwapchainKHR oldSwapchain = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR) == sizeof(VkSwapchainCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SwapchainCreateInfoKHR>::value,
"SwapchainCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSwapchainCreateInfoKHR>
{
using Type = SwapchainCreateInfoKHR;
};
struct SwapchainDisplayNativeHdrCreateInfoAMD
{
using NativeType = VkSwapchainDisplayNativeHdrCreateInfoAMD;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eSwapchainDisplayNativeHdrCreateInfoAMD;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR SwapchainDisplayNativeHdrCreateInfoAMD(VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
localDimmingEnable(localDimmingEnable_)
{
}
VULKAN_HPP_CONSTEXPR SwapchainDisplayNativeHdrCreateInfoAMD(SwapchainDisplayNativeHdrCreateInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
SwapchainDisplayNativeHdrCreateInfoAMD(VkSwapchainDisplayNativeHdrCreateInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT
: SwapchainDisplayNativeHdrCreateInfoAMD(*reinterpret_cast<SwapchainDisplayNativeHdrCreateInfoAMD const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
SwapchainDisplayNativeHdrCreateInfoAMD &operator=(SwapchainDisplayNativeHdrCreateInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
SwapchainDisplayNativeHdrCreateInfoAMD &operator=(VkSwapchainDisplayNativeHdrCreateInfoAMD const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SwapchainDisplayNativeHdrCreateInfoAMD const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 SwapchainDisplayNativeHdrCreateInfoAMD &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 SwapchainDisplayNativeHdrCreateInfoAMD &
setLocalDimmingEnable(VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable_) VULKAN_HPP_NOEXCEPT
{
localDimmingEnable = localDimmingEnable_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkSwapchainDisplayNativeHdrCreateInfoAMD const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkSwapchainDisplayNativeHdrCreateInfoAMD *>(this);
}
explicit operator VkSwapchainDisplayNativeHdrCreateInfoAMD &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkSwapchainDisplayNativeHdrCreateInfoAMD *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, localDimmingEnable);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(SwapchainDisplayNativeHdrCreateInfoAMD const &) const = default;
#else
bool operator==(SwapchainDisplayNativeHdrCreateInfoAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (localDimmingEnable == rhs.localDimmingEnable);
# endif
}
bool operator!=(SwapchainDisplayNativeHdrCreateInfoAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSwapchainDisplayNativeHdrCreateInfoAMD;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 localDimmingEnable = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::SwapchainDisplayNativeHdrCreateInfoAMD) == sizeof(VkSwapchainDisplayNativeHdrCreateInfoAMD),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::SwapchainDisplayNativeHdrCreateInfoAMD>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SwapchainDisplayNativeHdrCreateInfoAMD>::value,
"SwapchainDisplayNativeHdrCreateInfoAMD is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eSwapchainDisplayNativeHdrCreateInfoAMD>
{
using Type = SwapchainDisplayNativeHdrCreateInfoAMD;
};
struct TextureLODGatherFormatPropertiesAMD
{
using NativeType = VkTextureLODGatherFormatPropertiesAMD;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eTextureLodGatherFormatPropertiesAMD;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR TextureLODGatherFormatPropertiesAMD(VULKAN_HPP_NAMESPACE::Bool32 supportsTextureGatherLODBiasAMD_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
supportsTextureGatherLODBiasAMD(supportsTextureGatherLODBiasAMD_)
{
}
VULKAN_HPP_CONSTEXPR TextureLODGatherFormatPropertiesAMD(TextureLODGatherFormatPropertiesAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
TextureLODGatherFormatPropertiesAMD(VkTextureLODGatherFormatPropertiesAMD const &rhs) VULKAN_HPP_NOEXCEPT
: TextureLODGatherFormatPropertiesAMD(*reinterpret_cast<TextureLODGatherFormatPropertiesAMD const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
TextureLODGatherFormatPropertiesAMD &operator=(TextureLODGatherFormatPropertiesAMD const &rhs) VULKAN_HPP_NOEXCEPT = default;
TextureLODGatherFormatPropertiesAMD &operator=(VkTextureLODGatherFormatPropertiesAMD const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::TextureLODGatherFormatPropertiesAMD const *>(&rhs);
return *this;
}
explicit operator VkTextureLODGatherFormatPropertiesAMD const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkTextureLODGatherFormatPropertiesAMD *>(this);
}
explicit operator VkTextureLODGatherFormatPropertiesAMD &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkTextureLODGatherFormatPropertiesAMD *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Bool32 const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, supportsTextureGatherLODBiasAMD);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(TextureLODGatherFormatPropertiesAMD const &) const = default;
#else
bool operator==(TextureLODGatherFormatPropertiesAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (supportsTextureGatherLODBiasAMD == rhs.supportsTextureGatherLODBiasAMD);
# endif
}
bool operator!=(TextureLODGatherFormatPropertiesAMD const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eTextureLodGatherFormatPropertiesAMD;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Bool32 supportsTextureGatherLODBiasAMD = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::TextureLODGatherFormatPropertiesAMD) == sizeof(VkTextureLODGatherFormatPropertiesAMD),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::TextureLODGatherFormatPropertiesAMD>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::TextureLODGatherFormatPropertiesAMD>::value,
"TextureLODGatherFormatPropertiesAMD is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eTextureLodGatherFormatPropertiesAMD>
{
using Type = TextureLODGatherFormatPropertiesAMD;
};
struct TimelineSemaphoreSubmitInfo
{
using NativeType = VkTimelineSemaphoreSubmitInfo;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eTimelineSemaphoreSubmitInfo;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR TimelineSemaphoreSubmitInfo(uint32_t waitSemaphoreValueCount_ = {},
const uint64_t *pWaitSemaphoreValues_ = {},
uint32_t signalSemaphoreValueCount_ = {},
const uint64_t *pSignalSemaphoreValues_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
waitSemaphoreValueCount(waitSemaphoreValueCount_),
pWaitSemaphoreValues(pWaitSemaphoreValues_),
signalSemaphoreValueCount(signalSemaphoreValueCount_),
pSignalSemaphoreValues(pSignalSemaphoreValues_)
{
}
VULKAN_HPP_CONSTEXPR TimelineSemaphoreSubmitInfo(TimelineSemaphoreSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
TimelineSemaphoreSubmitInfo(VkTimelineSemaphoreSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT
: TimelineSemaphoreSubmitInfo(*reinterpret_cast<TimelineSemaphoreSubmitInfo const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
TimelineSemaphoreSubmitInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &waitSemaphoreValues_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &signalSemaphoreValues_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, waitSemaphoreValueCount(static_cast<uint32_t>(waitSemaphoreValues_.size()))
, pWaitSemaphoreValues(waitSemaphoreValues_.data())
, signalSemaphoreValueCount(static_cast<uint32_t>(signalSemaphoreValues_.size()))
, pSignalSemaphoreValues(signalSemaphoreValues_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
TimelineSemaphoreSubmitInfo &operator=(TimelineSemaphoreSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT = default;
TimelineSemaphoreSubmitInfo &operator=(VkTimelineSemaphoreSubmitInfo const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::TimelineSemaphoreSubmitInfo const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 TimelineSemaphoreSubmitInfo &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 TimelineSemaphoreSubmitInfo &setWaitSemaphoreValueCount(uint32_t waitSemaphoreValueCount_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreValueCount = waitSemaphoreValueCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 TimelineSemaphoreSubmitInfo &setPWaitSemaphoreValues(const uint64_t *pWaitSemaphoreValues_) VULKAN_HPP_NOEXCEPT
{
pWaitSemaphoreValues = pWaitSemaphoreValues_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
TimelineSemaphoreSubmitInfo &
setWaitSemaphoreValues(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &waitSemaphoreValues_) VULKAN_HPP_NOEXCEPT
{
waitSemaphoreValueCount = static_cast<uint32_t>(waitSemaphoreValues_.size());
pWaitSemaphoreValues = waitSemaphoreValues_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 TimelineSemaphoreSubmitInfo &setSignalSemaphoreValueCount(uint32_t signalSemaphoreValueCount_) VULKAN_HPP_NOEXCEPT
{
signalSemaphoreValueCount = signalSemaphoreValueCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 TimelineSemaphoreSubmitInfo &setPSignalSemaphoreValues(const uint64_t *pSignalSemaphoreValues_) VULKAN_HPP_NOEXCEPT
{
pSignalSemaphoreValues = pSignalSemaphoreValues_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
TimelineSemaphoreSubmitInfo &
setSignalSemaphoreValues(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &signalSemaphoreValues_) VULKAN_HPP_NOEXCEPT
{
signalSemaphoreValueCount = static_cast<uint32_t>(signalSemaphoreValues_.size());
pSignalSemaphoreValues = signalSemaphoreValues_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkTimelineSemaphoreSubmitInfo const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkTimelineSemaphoreSubmitInfo *>(this);
}
explicit operator VkTimelineSemaphoreSubmitInfo &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkTimelineSemaphoreSubmitInfo *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const uint64_t *const &,
uint32_t const &,
const uint64_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, waitSemaphoreValueCount, pWaitSemaphoreValues, signalSemaphoreValueCount, pSignalSemaphoreValues);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(TimelineSemaphoreSubmitInfo const &) const = default;
#else
bool operator==(TimelineSemaphoreSubmitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (waitSemaphoreValueCount == rhs.waitSemaphoreValueCount) &&
(pWaitSemaphoreValues == rhs.pWaitSemaphoreValues) && (signalSemaphoreValueCount == rhs.signalSemaphoreValueCount) &&
(pSignalSemaphoreValues == rhs.pSignalSemaphoreValues);
# endif
}
bool operator!=(TimelineSemaphoreSubmitInfo const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eTimelineSemaphoreSubmitInfo;
const void *pNext = {};
uint32_t waitSemaphoreValueCount = {};
const uint64_t *pWaitSemaphoreValues = {};
uint32_t signalSemaphoreValueCount = {};
const uint64_t *pSignalSemaphoreValues = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::TimelineSemaphoreSubmitInfo) == sizeof(VkTimelineSemaphoreSubmitInfo),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::TimelineSemaphoreSubmitInfo>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::TimelineSemaphoreSubmitInfo>::value,
"TimelineSemaphoreSubmitInfo is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eTimelineSemaphoreSubmitInfo>
{
using Type = TimelineSemaphoreSubmitInfo;
};
using TimelineSemaphoreSubmitInfoKHR = TimelineSemaphoreSubmitInfo;
struct TraceRaysIndirectCommandKHR
{
using NativeType = VkTraceRaysIndirectCommandKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR TraceRaysIndirectCommandKHR(uint32_t width_ = {}, uint32_t height_ = {}, uint32_t depth_ = {}) VULKAN_HPP_NOEXCEPT
: width(width_),
height(height_),
depth(depth_)
{
}
VULKAN_HPP_CONSTEXPR TraceRaysIndirectCommandKHR(TraceRaysIndirectCommandKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
TraceRaysIndirectCommandKHR(VkTraceRaysIndirectCommandKHR const &rhs) VULKAN_HPP_NOEXCEPT
: TraceRaysIndirectCommandKHR(*reinterpret_cast<TraceRaysIndirectCommandKHR const *>(&rhs))
{
}
explicit TraceRaysIndirectCommandKHR(Extent2D const &extent2D, uint32_t depth_ = {})
: width(extent2D.width)
, height(extent2D.height)
, depth(depth_)
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
TraceRaysIndirectCommandKHR &operator=(TraceRaysIndirectCommandKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
TraceRaysIndirectCommandKHR &operator=(VkTraceRaysIndirectCommandKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::TraceRaysIndirectCommandKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 TraceRaysIndirectCommandKHR &setWidth(uint32_t width_) VULKAN_HPP_NOEXCEPT
{
width = width_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 TraceRaysIndirectCommandKHR &setHeight(uint32_t height_) VULKAN_HPP_NOEXCEPT
{
height = height_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 TraceRaysIndirectCommandKHR &setDepth(uint32_t depth_) VULKAN_HPP_NOEXCEPT
{
depth = depth_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkTraceRaysIndirectCommandKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkTraceRaysIndirectCommandKHR *>(this);
}
explicit operator VkTraceRaysIndirectCommandKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkTraceRaysIndirectCommandKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(width, height, depth);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(TraceRaysIndirectCommandKHR const &) const = default;
#else
bool operator==(TraceRaysIndirectCommandKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (width == rhs.width) && (height == rhs.height) && (depth == rhs.depth);
# endif
}
bool operator!=(TraceRaysIndirectCommandKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
uint32_t width = {};
uint32_t height = {};
uint32_t depth = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::TraceRaysIndirectCommandKHR) == sizeof(VkTraceRaysIndirectCommandKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::TraceRaysIndirectCommandKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::TraceRaysIndirectCommandKHR>::value,
"TraceRaysIndirectCommandKHR is not nothrow_move_constructible!");
struct ValidationCacheCreateInfoEXT
{
using NativeType = VkValidationCacheCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eValidationCacheCreateInfoEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ValidationCacheCreateInfoEXT(VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT flags_ = {},
size_t initialDataSize_ = {},
const void *pInitialData_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
initialDataSize(initialDataSize_),
pInitialData(pInitialData_)
{
}
VULKAN_HPP_CONSTEXPR ValidationCacheCreateInfoEXT(ValidationCacheCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ValidationCacheCreateInfoEXT(VkValidationCacheCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: ValidationCacheCreateInfoEXT(*reinterpret_cast<ValidationCacheCreateInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
ValidationCacheCreateInfoEXT(VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT flags_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &initialData_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, initialDataSize(initialData_.size() * sizeof(T))
, pInitialData(initialData_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ValidationCacheCreateInfoEXT &operator=(ValidationCacheCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ValidationCacheCreateInfoEXT &operator=(VkValidationCacheCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ValidationCacheCreateInfoEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ValidationCacheCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ValidationCacheCreateInfoEXT &setFlags(VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ValidationCacheCreateInfoEXT &setInitialDataSize(size_t initialDataSize_) VULKAN_HPP_NOEXCEPT
{
initialDataSize = initialDataSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ValidationCacheCreateInfoEXT &setPInitialData(const void *pInitialData_) VULKAN_HPP_NOEXCEPT
{
pInitialData = pInitialData_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
ValidationCacheCreateInfoEXT &setInitialData(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &initialData_) VULKAN_HPP_NOEXCEPT
{
initialDataSize = initialData_.size() * sizeof(T);
pInitialData = initialData_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkValidationCacheCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkValidationCacheCreateInfoEXT *>(this);
}
explicit operator VkValidationCacheCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkValidationCacheCreateInfoEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT const &,
size_t const &,
const void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, initialDataSize, pInitialData);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ValidationCacheCreateInfoEXT const &) const = default;
#else
bool operator==(ValidationCacheCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (initialDataSize == rhs.initialDataSize) &&
(pInitialData == rhs.pInitialData);
# endif
}
bool operator!=(ValidationCacheCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eValidationCacheCreateInfoEXT;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ValidationCacheCreateFlagsEXT flags = {};
size_t initialDataSize = {};
const void *pInitialData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ValidationCacheCreateInfoEXT) == sizeof(VkValidationCacheCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ValidationCacheCreateInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ValidationCacheCreateInfoEXT>::value,
"ValidationCacheCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eValidationCacheCreateInfoEXT>
{
using Type = ValidationCacheCreateInfoEXT;
};
struct ValidationFeaturesEXT
{
using NativeType = VkValidationFeaturesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eValidationFeaturesEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ValidationFeaturesEXT(uint32_t enabledValidationFeatureCount_ = {},
const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT *pEnabledValidationFeatures_ = {},
uint32_t disabledValidationFeatureCount_ = {},
const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT *pDisabledValidationFeatures_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
enabledValidationFeatureCount(enabledValidationFeatureCount_),
pEnabledValidationFeatures(pEnabledValidationFeatures_),
disabledValidationFeatureCount(disabledValidationFeatureCount_),
pDisabledValidationFeatures(pDisabledValidationFeatures_)
{
}
VULKAN_HPP_CONSTEXPR ValidationFeaturesEXT(ValidationFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ValidationFeaturesEXT(VkValidationFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: ValidationFeaturesEXT(*reinterpret_cast<ValidationFeaturesEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ValidationFeaturesEXT(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT> const &enabledValidationFeatures_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT> const &disabledValidationFeatures_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, enabledValidationFeatureCount(static_cast<uint32_t>(enabledValidationFeatures_.size()))
, pEnabledValidationFeatures(enabledValidationFeatures_.data())
, disabledValidationFeatureCount(static_cast<uint32_t>(disabledValidationFeatures_.size()))
, pDisabledValidationFeatures(disabledValidationFeatures_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ValidationFeaturesEXT &operator=(ValidationFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ValidationFeaturesEXT &operator=(VkValidationFeaturesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ValidationFeaturesEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ValidationFeaturesEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ValidationFeaturesEXT &setEnabledValidationFeatureCount(uint32_t enabledValidationFeatureCount_) VULKAN_HPP_NOEXCEPT
{
enabledValidationFeatureCount = enabledValidationFeatureCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ValidationFeaturesEXT &
setPEnabledValidationFeatures(const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT *pEnabledValidationFeatures_) VULKAN_HPP_NOEXCEPT
{
pEnabledValidationFeatures = pEnabledValidationFeatures_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ValidationFeaturesEXT &setEnabledValidationFeatures(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT> const &enabledValidationFeatures_)
VULKAN_HPP_NOEXCEPT
{
enabledValidationFeatureCount = static_cast<uint32_t>(enabledValidationFeatures_.size());
pEnabledValidationFeatures = enabledValidationFeatures_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 ValidationFeaturesEXT &setDisabledValidationFeatureCount(uint32_t disabledValidationFeatureCount_) VULKAN_HPP_NOEXCEPT
{
disabledValidationFeatureCount = disabledValidationFeatureCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ValidationFeaturesEXT &
setPDisabledValidationFeatures(const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT *pDisabledValidationFeatures_) VULKAN_HPP_NOEXCEPT
{
pDisabledValidationFeatures = pDisabledValidationFeatures_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ValidationFeaturesEXT &setDisabledValidationFeatures(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT> const &disabledValidationFeatures_)
VULKAN_HPP_NOEXCEPT
{
disabledValidationFeatureCount = static_cast<uint32_t>(disabledValidationFeatures_.size());
pDisabledValidationFeatures = disabledValidationFeatures_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkValidationFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkValidationFeaturesEXT *>(this);
}
explicit operator VkValidationFeaturesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkValidationFeaturesEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, enabledValidationFeatureCount, pEnabledValidationFeatures, disabledValidationFeatureCount, pDisabledValidationFeatures);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ValidationFeaturesEXT const &) const = default;
#else
bool operator==(ValidationFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (enabledValidationFeatureCount == rhs.enabledValidationFeatureCount) &&
(pEnabledValidationFeatures == rhs.pEnabledValidationFeatures) && (disabledValidationFeatureCount == rhs.disabledValidationFeatureCount) &&
(pDisabledValidationFeatures == rhs.pDisabledValidationFeatures);
# endif
}
bool operator!=(ValidationFeaturesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eValidationFeaturesEXT;
const void *pNext = {};
uint32_t enabledValidationFeatureCount = {};
const VULKAN_HPP_NAMESPACE::ValidationFeatureEnableEXT *pEnabledValidationFeatures = {};
uint32_t disabledValidationFeatureCount = {};
const VULKAN_HPP_NAMESPACE::ValidationFeatureDisableEXT *pDisabledValidationFeatures = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ValidationFeaturesEXT) == sizeof(VkValidationFeaturesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ValidationFeaturesEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ValidationFeaturesEXT>::value,
"ValidationFeaturesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eValidationFeaturesEXT>
{
using Type = ValidationFeaturesEXT;
};
struct ValidationFlagsEXT
{
using NativeType = VkValidationFlagsEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eValidationFlagsEXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR ValidationFlagsEXT(uint32_t disabledValidationCheckCount_ = {},
const VULKAN_HPP_NAMESPACE::ValidationCheckEXT *pDisabledValidationChecks_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
disabledValidationCheckCount(disabledValidationCheckCount_),
pDisabledValidationChecks(pDisabledValidationChecks_)
{
}
VULKAN_HPP_CONSTEXPR ValidationFlagsEXT(ValidationFlagsEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ValidationFlagsEXT(VkValidationFlagsEXT const &rhs) VULKAN_HPP_NOEXCEPT : ValidationFlagsEXT(*reinterpret_cast<ValidationFlagsEXT const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ValidationFlagsEXT(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationCheckEXT> const &disabledValidationChecks_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, disabledValidationCheckCount(static_cast<uint32_t>(disabledValidationChecks_.size()))
, pDisabledValidationChecks(disabledValidationChecks_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ValidationFlagsEXT &operator=(ValidationFlagsEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
ValidationFlagsEXT &operator=(VkValidationFlagsEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ValidationFlagsEXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ValidationFlagsEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ValidationFlagsEXT &setDisabledValidationCheckCount(uint32_t disabledValidationCheckCount_) VULKAN_HPP_NOEXCEPT
{
disabledValidationCheckCount = disabledValidationCheckCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ValidationFlagsEXT &
setPDisabledValidationChecks(const VULKAN_HPP_NAMESPACE::ValidationCheckEXT *pDisabledValidationChecks_) VULKAN_HPP_NOEXCEPT
{
pDisabledValidationChecks = pDisabledValidationChecks_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
ValidationFlagsEXT &setDisabledValidationChecks(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::ValidationCheckEXT> const &disabledValidationChecks_) VULKAN_HPP_NOEXCEPT
{
disabledValidationCheckCount = static_cast<uint32_t>(disabledValidationChecks_.size());
pDisabledValidationChecks = disabledValidationChecks_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkValidationFlagsEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkValidationFlagsEXT *>(this);
}
explicit operator VkValidationFlagsEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkValidationFlagsEXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::ValidationCheckEXT *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, disabledValidationCheckCount, pDisabledValidationChecks);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ValidationFlagsEXT const &) const = default;
#else
bool operator==(ValidationFlagsEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (disabledValidationCheckCount == rhs.disabledValidationCheckCount) &&
(pDisabledValidationChecks == rhs.pDisabledValidationChecks);
# endif
}
bool operator!=(ValidationFlagsEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eValidationFlagsEXT;
const void *pNext = {};
uint32_t disabledValidationCheckCount = {};
const VULKAN_HPP_NAMESPACE::ValidationCheckEXT *pDisabledValidationChecks = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ValidationFlagsEXT) == sizeof(VkValidationFlagsEXT), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ValidationFlagsEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ValidationFlagsEXT>::value,
"ValidationFlagsEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eValidationFlagsEXT>
{
using Type = ValidationFlagsEXT;
};
struct VertexInputAttributeDescription2EXT
{
using NativeType = VkVertexInputAttributeDescription2EXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVertexInputAttributeDescription2EXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VertexInputAttributeDescription2EXT(uint32_t location_ = {},
uint32_t binding_ = {},
VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
uint32_t offset_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
location(location_),
binding(binding_),
format(format_),
offset(offset_)
{
}
VULKAN_HPP_CONSTEXPR VertexInputAttributeDescription2EXT(VertexInputAttributeDescription2EXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VertexInputAttributeDescription2EXT(VkVertexInputAttributeDescription2EXT const &rhs) VULKAN_HPP_NOEXCEPT
: VertexInputAttributeDescription2EXT(*reinterpret_cast<VertexInputAttributeDescription2EXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VertexInputAttributeDescription2EXT &operator=(VertexInputAttributeDescription2EXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VertexInputAttributeDescription2EXT &operator=(VkVertexInputAttributeDescription2EXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription2EXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VertexInputAttributeDescription2EXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputAttributeDescription2EXT &setLocation(uint32_t location_) VULKAN_HPP_NOEXCEPT
{
location = location_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputAttributeDescription2EXT &setBinding(uint32_t binding_) VULKAN_HPP_NOEXCEPT
{
binding = binding_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputAttributeDescription2EXT &setFormat(VULKAN_HPP_NAMESPACE::Format format_) VULKAN_HPP_NOEXCEPT
{
format = format_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputAttributeDescription2EXT &setOffset(uint32_t offset_) VULKAN_HPP_NOEXCEPT
{
offset = offset_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVertexInputAttributeDescription2EXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVertexInputAttributeDescription2EXT *>(this);
}
explicit operator VkVertexInputAttributeDescription2EXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVertexInputAttributeDescription2EXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Format const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, location, binding, format, offset);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VertexInputAttributeDescription2EXT const &) const = default;
#else
bool operator==(VertexInputAttributeDescription2EXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (location == rhs.location) && (binding == rhs.binding) && (format == rhs.format) &&
(offset == rhs.offset);
# endif
}
bool operator!=(VertexInputAttributeDescription2EXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVertexInputAttributeDescription2EXT;
void *pNext = {};
uint32_t location = {};
uint32_t binding = {};
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
uint32_t offset = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription2EXT) == sizeof(VkVertexInputAttributeDescription2EXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription2EXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VertexInputAttributeDescription2EXT>::value,
"VertexInputAttributeDescription2EXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVertexInputAttributeDescription2EXT>
{
using Type = VertexInputAttributeDescription2EXT;
};
struct VertexInputBindingDescription2EXT
{
using NativeType = VkVertexInputBindingDescription2EXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVertexInputBindingDescription2EXT;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VertexInputBindingDescription2EXT(uint32_t binding_ = {},
uint32_t stride_ = {},
VULKAN_HPP_NAMESPACE::VertexInputRate inputRate_ = VULKAN_HPP_NAMESPACE::VertexInputRate::eVertex,
uint32_t divisor_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
binding(binding_),
stride(stride_),
inputRate(inputRate_),
divisor(divisor_)
{
}
VULKAN_HPP_CONSTEXPR VertexInputBindingDescription2EXT(VertexInputBindingDescription2EXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VertexInputBindingDescription2EXT(VkVertexInputBindingDescription2EXT const &rhs) VULKAN_HPP_NOEXCEPT
: VertexInputBindingDescription2EXT(*reinterpret_cast<VertexInputBindingDescription2EXT const *>(&rhs))
{
}
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VertexInputBindingDescription2EXT &operator=(VertexInputBindingDescription2EXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VertexInputBindingDescription2EXT &operator=(VkVertexInputBindingDescription2EXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VertexInputBindingDescription2EXT const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDescription2EXT &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDescription2EXT &setBinding(uint32_t binding_) VULKAN_HPP_NOEXCEPT
{
binding = binding_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDescription2EXT &setStride(uint32_t stride_) VULKAN_HPP_NOEXCEPT
{
stride = stride_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDescription2EXT &setInputRate(VULKAN_HPP_NAMESPACE::VertexInputRate inputRate_) VULKAN_HPP_NOEXCEPT
{
inputRate = inputRate_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VertexInputBindingDescription2EXT &setDivisor(uint32_t divisor_) VULKAN_HPP_NOEXCEPT
{
divisor = divisor_;
return *this;
}
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVertexInputBindingDescription2EXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVertexInputBindingDescription2EXT *>(this);
}
explicit operator VkVertexInputBindingDescription2EXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVertexInputBindingDescription2EXT *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::VertexInputRate const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, binding, stride, inputRate, divisor);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VertexInputBindingDescription2EXT const &) const = default;
#else
bool operator==(VertexInputBindingDescription2EXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (binding == rhs.binding) && (stride == rhs.stride) && (inputRate == rhs.inputRate) &&
(divisor == rhs.divisor);
# endif
}
bool operator!=(VertexInputBindingDescription2EXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVertexInputBindingDescription2EXT;
void *pNext = {};
uint32_t binding = {};
uint32_t stride = {};
VULKAN_HPP_NAMESPACE::VertexInputRate inputRate = VULKAN_HPP_NAMESPACE::VertexInputRate::eVertex;
uint32_t divisor = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VertexInputBindingDescription2EXT) == sizeof(VkVertexInputBindingDescription2EXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VertexInputBindingDescription2EXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VertexInputBindingDescription2EXT>::value,
"VertexInputBindingDescription2EXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVertexInputBindingDescription2EXT>
{
using Type = VertexInputBindingDescription2EXT;
};
#if defined(VK_USE_PLATFORM_VI_NN)
struct ViSurfaceCreateInfoNN
{
using NativeType = VkViSurfaceCreateInfoNN;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eViSurfaceCreateInfoNN;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
ViSurfaceCreateInfoNN(VULKAN_HPP_NAMESPACE::ViSurfaceCreateFlagsNN flags_ = {}, void *window_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
window(window_)
{
}
VULKAN_HPP_CONSTEXPR ViSurfaceCreateInfoNN(ViSurfaceCreateInfoNN const &rhs) VULKAN_HPP_NOEXCEPT = default;
ViSurfaceCreateInfoNN(VkViSurfaceCreateInfoNN const &rhs) VULKAN_HPP_NOEXCEPT
: ViSurfaceCreateInfoNN(*reinterpret_cast<ViSurfaceCreateInfoNN const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
ViSurfaceCreateInfoNN &operator=(ViSurfaceCreateInfoNN const &rhs) VULKAN_HPP_NOEXCEPT = default;
ViSurfaceCreateInfoNN &operator=(VkViSurfaceCreateInfoNN const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::ViSurfaceCreateInfoNN const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 ViSurfaceCreateInfoNN &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ViSurfaceCreateInfoNN &setFlags(VULKAN_HPP_NAMESPACE::ViSurfaceCreateFlagsNN flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 ViSurfaceCreateInfoNN &setWindow(void *window_) VULKAN_HPP_NOEXCEPT
{
window = window_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkViSurfaceCreateInfoNN const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkViSurfaceCreateInfoNN *>(this);
}
explicit operator VkViSurfaceCreateInfoNN &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkViSurfaceCreateInfoNN *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::ViSurfaceCreateFlagsNN const &, void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, window);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(ViSurfaceCreateInfoNN const &) const = default;
# else
bool operator==(ViSurfaceCreateInfoNN const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (window == rhs.window);
# endif
}
bool operator!=(ViSurfaceCreateInfoNN const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eViSurfaceCreateInfoNN;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::ViSurfaceCreateFlagsNN flags = {};
void *window = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::ViSurfaceCreateInfoNN) == sizeof(VkViSurfaceCreateInfoNN),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::ViSurfaceCreateInfoNN>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ViSurfaceCreateInfoNN>::value,
"ViSurfaceCreateInfoNN is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eViSurfaceCreateInfoNN>
{
using Type = ViSurfaceCreateInfoNN;
};
#endif /*VK_USE_PLATFORM_VI_NN*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoPictureResourceKHR
{
using NativeType = VkVideoPictureResourceKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoPictureResourceKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoPictureResourceKHR(VULKAN_HPP_NAMESPACE::Offset2D codedOffset_ = {},
VULKAN_HPP_NAMESPACE::Extent2D codedExtent_ = {},
uint32_t baseArrayLayer_ = {},
VULKAN_HPP_NAMESPACE::ImageView imageViewBinding_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
codedOffset(codedOffset_),
codedExtent(codedExtent_),
baseArrayLayer(baseArrayLayer_),
imageViewBinding(imageViewBinding_)
{
}
VULKAN_HPP_CONSTEXPR VideoPictureResourceKHR(VideoPictureResourceKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoPictureResourceKHR(VkVideoPictureResourceKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoPictureResourceKHR(*reinterpret_cast<VideoPictureResourceKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoPictureResourceKHR &operator=(VideoPictureResourceKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoPictureResourceKHR &operator=(VkVideoPictureResourceKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoPictureResourceKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoPictureResourceKHR &setCodedOffset(VULKAN_HPP_NAMESPACE::Offset2D const &codedOffset_) VULKAN_HPP_NOEXCEPT
{
codedOffset = codedOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoPictureResourceKHR &setCodedExtent(VULKAN_HPP_NAMESPACE::Extent2D const &codedExtent_) VULKAN_HPP_NOEXCEPT
{
codedExtent = codedExtent_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoPictureResourceKHR &setBaseArrayLayer(uint32_t baseArrayLayer_) VULKAN_HPP_NOEXCEPT
{
baseArrayLayer = baseArrayLayer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoPictureResourceKHR &setImageViewBinding(VULKAN_HPP_NAMESPACE::ImageView imageViewBinding_) VULKAN_HPP_NOEXCEPT
{
imageViewBinding = imageViewBinding_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoPictureResourceKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoPictureResourceKHR *>(this);
}
explicit operator VkVideoPictureResourceKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoPictureResourceKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Offset2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ImageView const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, codedOffset, codedExtent, baseArrayLayer, imageViewBinding);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoPictureResourceKHR const &) const = default;
# else
bool operator==(VideoPictureResourceKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (codedOffset == rhs.codedOffset) && (codedExtent == rhs.codedExtent) &&
(baseArrayLayer == rhs.baseArrayLayer) && (imageViewBinding == rhs.imageViewBinding);
# endif
}
bool operator!=(VideoPictureResourceKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoPictureResourceKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Offset2D codedOffset = {};
VULKAN_HPP_NAMESPACE::Extent2D codedExtent = {};
uint32_t baseArrayLayer = {};
VULKAN_HPP_NAMESPACE::ImageView imageViewBinding = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR) == sizeof(VkVideoPictureResourceKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR>::value,
"VideoPictureResourceKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoPictureResourceKHR>
{
using Type = VideoPictureResourceKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoReferenceSlotKHR
{
using NativeType = VkVideoReferenceSlotKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoReferenceSlotKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoReferenceSlotKHR(int8_t slotIndex_ = {},
const VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR *pPictureResource_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
slotIndex(slotIndex_),
pPictureResource(pPictureResource_)
{
}
VULKAN_HPP_CONSTEXPR VideoReferenceSlotKHR(VideoReferenceSlotKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoReferenceSlotKHR(VkVideoReferenceSlotKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoReferenceSlotKHR(*reinterpret_cast<VideoReferenceSlotKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoReferenceSlotKHR &operator=(VideoReferenceSlotKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoReferenceSlotKHR &operator=(VkVideoReferenceSlotKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoReferenceSlotKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoReferenceSlotKHR &setSlotIndex(int8_t slotIndex_) VULKAN_HPP_NOEXCEPT
{
slotIndex = slotIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoReferenceSlotKHR &
setPPictureResource(const VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR *pPictureResource_) VULKAN_HPP_NOEXCEPT
{
pPictureResource = pPictureResource_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoReferenceSlotKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoReferenceSlotKHR *>(this);
}
explicit operator VkVideoReferenceSlotKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoReferenceSlotKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, int8_t const &, const VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, slotIndex, pPictureResource);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoReferenceSlotKHR const &) const = default;
# else
bool operator==(VideoReferenceSlotKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (slotIndex == rhs.slotIndex) && (pPictureResource == rhs.pPictureResource);
# endif
}
bool operator!=(VideoReferenceSlotKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoReferenceSlotKHR;
const void *pNext = {};
int8_t slotIndex = {};
const VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR *pPictureResource = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR) == sizeof(VkVideoReferenceSlotKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR>::value,
"VideoReferenceSlotKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoReferenceSlotKHR>
{
using Type = VideoReferenceSlotKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoBeginCodingInfoKHR
{
using NativeType = VkVideoBeginCodingInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoBeginCodingInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoBeginCodingInfoKHR(VULKAN_HPP_NAMESPACE::VideoBeginCodingFlagsKHR flags_ = {},
VULKAN_HPP_NAMESPACE::VideoCodingQualityPresetFlagsKHR codecQualityPreset_ = {},
VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession_ = {},
VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters_ = {},
uint32_t referenceSlotCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pReferenceSlots_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
codecQualityPreset(codecQualityPreset_),
videoSession(videoSession_),
videoSessionParameters(videoSessionParameters_),
referenceSlotCount(referenceSlotCount_),
pReferenceSlots(pReferenceSlots_)
{
}
VULKAN_HPP_CONSTEXPR VideoBeginCodingInfoKHR(VideoBeginCodingInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoBeginCodingInfoKHR(VkVideoBeginCodingInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoBeginCodingInfoKHR(*reinterpret_cast<VideoBeginCodingInfoKHR const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoBeginCodingInfoKHR(VULKAN_HPP_NAMESPACE::VideoBeginCodingFlagsKHR flags_,
VULKAN_HPP_NAMESPACE::VideoCodingQualityPresetFlagsKHR codecQualityPreset_,
VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession_,
VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR> const &referenceSlots_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, codecQualityPreset(codecQualityPreset_)
, videoSession(videoSession_)
, videoSessionParameters(videoSessionParameters_)
, referenceSlotCount(static_cast<uint32_t>(referenceSlots_.size()))
, pReferenceSlots(referenceSlots_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoBeginCodingInfoKHR &operator=(VideoBeginCodingInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoBeginCodingInfoKHR &operator=(VkVideoBeginCodingInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoBeginCodingInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoBeginCodingInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoBeginCodingInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::VideoBeginCodingFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoBeginCodingInfoKHR &
setCodecQualityPreset(VULKAN_HPP_NAMESPACE::VideoCodingQualityPresetFlagsKHR codecQualityPreset_) VULKAN_HPP_NOEXCEPT
{
codecQualityPreset = codecQualityPreset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoBeginCodingInfoKHR &setVideoSession(VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession_) VULKAN_HPP_NOEXCEPT
{
videoSession = videoSession_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoBeginCodingInfoKHR &
setVideoSessionParameters(VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters_) VULKAN_HPP_NOEXCEPT
{
videoSessionParameters = videoSessionParameters_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoBeginCodingInfoKHR &setReferenceSlotCount(uint32_t referenceSlotCount_) VULKAN_HPP_NOEXCEPT
{
referenceSlotCount = referenceSlotCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoBeginCodingInfoKHR &
setPReferenceSlots(const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pReferenceSlots_) VULKAN_HPP_NOEXCEPT
{
pReferenceSlots = pReferenceSlots_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoBeginCodingInfoKHR &setReferenceSlots(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR> const &referenceSlots_) VULKAN_HPP_NOEXCEPT
{
referenceSlotCount = static_cast<uint32_t>(referenceSlots_.size());
pReferenceSlots = referenceSlots_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoBeginCodingInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoBeginCodingInfoKHR *>(this);
}
explicit operator VkVideoBeginCodingInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoBeginCodingInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::VideoBeginCodingFlagsKHR const &,
VULKAN_HPP_NAMESPACE::VideoCodingQualityPresetFlagsKHR const &,
VULKAN_HPP_NAMESPACE::VideoSessionKHR const &,
VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, codecQualityPreset, videoSession, videoSessionParameters, referenceSlotCount, pReferenceSlots);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoBeginCodingInfoKHR const &) const = default;
# else
bool operator==(VideoBeginCodingInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (codecQualityPreset == rhs.codecQualityPreset) &&
(videoSession == rhs.videoSession) && (videoSessionParameters == rhs.videoSessionParameters) &&
(referenceSlotCount == rhs.referenceSlotCount) && (pReferenceSlots == rhs.pReferenceSlots);
# endif
}
bool operator!=(VideoBeginCodingInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoBeginCodingInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoBeginCodingFlagsKHR flags = {};
VULKAN_HPP_NAMESPACE::VideoCodingQualityPresetFlagsKHR codecQualityPreset = {};
VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession = {};
VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters = {};
uint32_t referenceSlotCount = {};
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pReferenceSlots = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoBeginCodingInfoKHR) == sizeof(VkVideoBeginCodingInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoBeginCodingInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoBeginCodingInfoKHR>::value,
"VideoBeginCodingInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoBeginCodingInfoKHR>
{
using Type = VideoBeginCodingInfoKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoBindMemoryKHR
{
using NativeType = VkVideoBindMemoryKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoBindMemoryKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoBindMemoryKHR(uint32_t memoryBindIndex_ = {},
VULKAN_HPP_NAMESPACE::DeviceMemory memory_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize memorySize_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memoryBindIndex(memoryBindIndex_),
memory(memory_),
memoryOffset(memoryOffset_),
memorySize(memorySize_)
{
}
VULKAN_HPP_CONSTEXPR VideoBindMemoryKHR(VideoBindMemoryKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoBindMemoryKHR(VkVideoBindMemoryKHR const &rhs) VULKAN_HPP_NOEXCEPT : VideoBindMemoryKHR(*reinterpret_cast<VideoBindMemoryKHR const *>(&rhs)) {}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoBindMemoryKHR &operator=(VideoBindMemoryKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoBindMemoryKHR &operator=(VkVideoBindMemoryKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoBindMemoryKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoBindMemoryKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoBindMemoryKHR &setMemoryBindIndex(uint32_t memoryBindIndex_) VULKAN_HPP_NOEXCEPT
{
memoryBindIndex = memoryBindIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoBindMemoryKHR &setMemory(VULKAN_HPP_NAMESPACE::DeviceMemory memory_) VULKAN_HPP_NOEXCEPT
{
memory = memory_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoBindMemoryKHR &setMemoryOffset(VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset_) VULKAN_HPP_NOEXCEPT
{
memoryOffset = memoryOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoBindMemoryKHR &setMemorySize(VULKAN_HPP_NAMESPACE::DeviceSize memorySize_) VULKAN_HPP_NOEXCEPT
{
memorySize = memorySize_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoBindMemoryKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoBindMemoryKHR *>(this);
}
explicit operator VkVideoBindMemoryKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoBindMemoryKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::DeviceMemory const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memoryBindIndex, memory, memoryOffset, memorySize);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoBindMemoryKHR const &) const = default;
# else
bool operator==(VideoBindMemoryKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memoryBindIndex == rhs.memoryBindIndex) && (memory == rhs.memory) &&
(memoryOffset == rhs.memoryOffset) && (memorySize == rhs.memorySize);
# endif
}
bool operator!=(VideoBindMemoryKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoBindMemoryKHR;
const void *pNext = {};
uint32_t memoryBindIndex = {};
VULKAN_HPP_NAMESPACE::DeviceMemory memory = {};
VULKAN_HPP_NAMESPACE::DeviceSize memoryOffset = {};
VULKAN_HPP_NAMESPACE::DeviceSize memorySize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoBindMemoryKHR) == sizeof(VkVideoBindMemoryKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoBindMemoryKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoBindMemoryKHR>::value,
"VideoBindMemoryKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoBindMemoryKHR>
{
using Type = VideoBindMemoryKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoCapabilitiesKHR
{
using NativeType = VkVideoCapabilitiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoCapabilitiesKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 VideoCapabilitiesKHR(VULKAN_HPP_NAMESPACE::VideoCapabilityFlagsKHR capabilityFlags_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize minBitstreamBufferOffsetAlignment_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize minBitstreamBufferSizeAlignment_ = {},
VULKAN_HPP_NAMESPACE::Extent2D videoPictureExtentGranularity_ = {},
VULKAN_HPP_NAMESPACE::Extent2D minExtent_ = {},
VULKAN_HPP_NAMESPACE::Extent2D maxExtent_ = {},
uint32_t maxReferencePicturesSlotsCount_ = {},
uint32_t maxReferencePicturesActiveCount_ = {},
VULKAN_HPP_NAMESPACE::ExtensionProperties stdHeaderVersion_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
capabilityFlags(capabilityFlags_),
minBitstreamBufferOffsetAlignment(minBitstreamBufferOffsetAlignment_),
minBitstreamBufferSizeAlignment(minBitstreamBufferSizeAlignment_),
videoPictureExtentGranularity(videoPictureExtentGranularity_),
minExtent(minExtent_),
maxExtent(maxExtent_),
maxReferencePicturesSlotsCount(maxReferencePicturesSlotsCount_),
maxReferencePicturesActiveCount(maxReferencePicturesActiveCount_),
stdHeaderVersion(stdHeaderVersion_)
{
}
VULKAN_HPP_CONSTEXPR_14 VideoCapabilitiesKHR(VideoCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoCapabilitiesKHR(VkVideoCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoCapabilitiesKHR(*reinterpret_cast<VideoCapabilitiesKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoCapabilitiesKHR &operator=(VideoCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoCapabilitiesKHR &operator=(VkVideoCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR const *>(&rhs);
return *this;
}
explicit operator VkVideoCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoCapabilitiesKHR *>(this);
}
explicit operator VkVideoCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoCapabilitiesKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::VideoCapabilityFlagsKHR const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::ExtensionProperties const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
capabilityFlags,
minBitstreamBufferOffsetAlignment,
minBitstreamBufferSizeAlignment,
videoPictureExtentGranularity,
minExtent,
maxExtent,
maxReferencePicturesSlotsCount,
maxReferencePicturesActiveCount,
stdHeaderVersion);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoCapabilitiesKHR const &) const = default;
# else
bool operator==(VideoCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (capabilityFlags == rhs.capabilityFlags) &&
(minBitstreamBufferOffsetAlignment == rhs.minBitstreamBufferOffsetAlignment) &&
(minBitstreamBufferSizeAlignment == rhs.minBitstreamBufferSizeAlignment) &&
(videoPictureExtentGranularity == rhs.videoPictureExtentGranularity) && (minExtent == rhs.minExtent) && (maxExtent == rhs.maxExtent) &&
(maxReferencePicturesSlotsCount == rhs.maxReferencePicturesSlotsCount) &&
(maxReferencePicturesActiveCount == rhs.maxReferencePicturesActiveCount) && (stdHeaderVersion == rhs.stdHeaderVersion);
# endif
}
bool operator!=(VideoCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoCapabilitiesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoCapabilityFlagsKHR capabilityFlags = {};
VULKAN_HPP_NAMESPACE::DeviceSize minBitstreamBufferOffsetAlignment = {};
VULKAN_HPP_NAMESPACE::DeviceSize minBitstreamBufferSizeAlignment = {};
VULKAN_HPP_NAMESPACE::Extent2D videoPictureExtentGranularity = {};
VULKAN_HPP_NAMESPACE::Extent2D minExtent = {};
VULKAN_HPP_NAMESPACE::Extent2D maxExtent = {};
uint32_t maxReferencePicturesSlotsCount = {};
uint32_t maxReferencePicturesActiveCount = {};
VULKAN_HPP_NAMESPACE::ExtensionProperties stdHeaderVersion = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR) == sizeof(VkVideoCapabilitiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoCapabilitiesKHR>::value,
"VideoCapabilitiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoCapabilitiesKHR>
{
using Type = VideoCapabilitiesKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoCodingControlInfoKHR
{
using NativeType = VkVideoCodingControlInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoCodingControlInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoCodingControlInfoKHR(VULKAN_HPP_NAMESPACE::VideoCodingControlFlagsKHR flags_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR VideoCodingControlInfoKHR(VideoCodingControlInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoCodingControlInfoKHR(VkVideoCodingControlInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoCodingControlInfoKHR(*reinterpret_cast<VideoCodingControlInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoCodingControlInfoKHR &operator=(VideoCodingControlInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoCodingControlInfoKHR &operator=(VkVideoCodingControlInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoCodingControlInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoCodingControlInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoCodingControlInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::VideoCodingControlFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoCodingControlInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoCodingControlInfoKHR *>(this);
}
explicit operator VkVideoCodingControlInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoCodingControlInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::VideoCodingControlFlagsKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoCodingControlInfoKHR const &) const = default;
# else
bool operator==(VideoCodingControlInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags);
# endif
}
bool operator!=(VideoCodingControlInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoCodingControlInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoCodingControlFlagsKHR flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoCodingControlInfoKHR) == sizeof(VkVideoCodingControlInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoCodingControlInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoCodingControlInfoKHR>::value,
"VideoCodingControlInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoCodingControlInfoKHR>
{
using Type = VideoCodingControlInfoKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeCapabilitiesKHR
{
using NativeType = VkVideoDecodeCapabilitiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeCapabilitiesKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeCapabilitiesKHR(VULKAN_HPP_NAMESPACE::VideoDecodeCapabilityFlagsKHR flags_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeCapabilitiesKHR(VideoDecodeCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeCapabilitiesKHR(VkVideoDecodeCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeCapabilitiesKHR(*reinterpret_cast<VideoDecodeCapabilitiesKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeCapabilitiesKHR &operator=(VideoDecodeCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeCapabilitiesKHR &operator=(VkVideoDecodeCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeCapabilitiesKHR const *>(&rhs);
return *this;
}
explicit operator VkVideoDecodeCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeCapabilitiesKHR *>(this);
}
explicit operator VkVideoDecodeCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeCapabilitiesKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::VideoDecodeCapabilityFlagsKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoDecodeCapabilitiesKHR const &) const = default;
# else
bool operator==(VideoDecodeCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags);
# endif
}
bool operator!=(VideoDecodeCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeCapabilitiesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoDecodeCapabilityFlagsKHR flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeCapabilitiesKHR) == sizeof(VkVideoDecodeCapabilitiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeCapabilitiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeCapabilitiesKHR>::value,
"VideoDecodeCapabilitiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeCapabilitiesKHR>
{
using Type = VideoDecodeCapabilitiesKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH264CapabilitiesEXT
{
using NativeType = VkVideoDecodeH264CapabilitiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH264CapabilitiesEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeH264CapabilitiesEXT(StdVideoH264Level maxLevel_ = {},
VULKAN_HPP_NAMESPACE::Offset2D fieldOffsetGranularity_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxLevel(maxLevel_),
fieldOffsetGranularity(fieldOffsetGranularity_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeH264CapabilitiesEXT(VideoDecodeH264CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264CapabilitiesEXT(VkVideoDecodeH264CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH264CapabilitiesEXT(*reinterpret_cast<VideoDecodeH264CapabilitiesEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH264CapabilitiesEXT &operator=(VideoDecodeH264CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264CapabilitiesEXT &operator=(VkVideoDecodeH264CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264CapabilitiesEXT const *>(&rhs);
return *this;
}
explicit operator VkVideoDecodeH264CapabilitiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH264CapabilitiesEXT *>(this);
}
explicit operator VkVideoDecodeH264CapabilitiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH264CapabilitiesEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, StdVideoH264Level const &, VULKAN_HPP_NAMESPACE::Offset2D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxLevel, fieldOffsetGranularity);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(VideoDecodeH264CapabilitiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = memcmp(&maxLevel, &rhs.maxLevel, sizeof(StdVideoH264Level)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
if(auto cmp = fieldOffsetGranularity <=> rhs.fieldOffsetGranularity; cmp != 0)
return cmp;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(VideoDecodeH264CapabilitiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memcmp(&maxLevel, &rhs.maxLevel, sizeof(StdVideoH264Level)) == 0) &&
(fieldOffsetGranularity == rhs.fieldOffsetGranularity);
}
bool operator!=(VideoDecodeH264CapabilitiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264CapabilitiesEXT;
void *pNext = {};
StdVideoH264Level maxLevel = {};
VULKAN_HPP_NAMESPACE::Offset2D fieldOffsetGranularity = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH264CapabilitiesEXT) == sizeof(VkVideoDecodeH264CapabilitiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH264CapabilitiesEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH264CapabilitiesEXT>::value,
"VideoDecodeH264CapabilitiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH264CapabilitiesEXT>
{
using Type = VideoDecodeH264CapabilitiesEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH264DpbSlotInfoEXT
{
using NativeType = VkVideoDecodeH264DpbSlotInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH264DpbSlotInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeH264DpbSlotInfoEXT(const StdVideoDecodeH264ReferenceInfo *pStdReferenceInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pStdReferenceInfo(pStdReferenceInfo_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeH264DpbSlotInfoEXT(VideoDecodeH264DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264DpbSlotInfoEXT(VkVideoDecodeH264DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH264DpbSlotInfoEXT(*reinterpret_cast<VideoDecodeH264DpbSlotInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH264DpbSlotInfoEXT &operator=(VideoDecodeH264DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264DpbSlotInfoEXT &operator=(VkVideoDecodeH264DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264DpbSlotInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264DpbSlotInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264DpbSlotInfoEXT &
setPStdReferenceInfo(const StdVideoDecodeH264ReferenceInfo *pStdReferenceInfo_) VULKAN_HPP_NOEXCEPT
{
pStdReferenceInfo = pStdReferenceInfo_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoDecodeH264DpbSlotInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH264DpbSlotInfoEXT *>(this);
}
explicit operator VkVideoDecodeH264DpbSlotInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH264DpbSlotInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, const StdVideoDecodeH264ReferenceInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pStdReferenceInfo);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoDecodeH264DpbSlotInfoEXT const &) const = default;
# else
bool operator==(VideoDecodeH264DpbSlotInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pStdReferenceInfo == rhs.pStdReferenceInfo);
# endif
}
bool operator!=(VideoDecodeH264DpbSlotInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264DpbSlotInfoEXT;
const void *pNext = {};
const StdVideoDecodeH264ReferenceInfo *pStdReferenceInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH264DpbSlotInfoEXT) == sizeof(VkVideoDecodeH264DpbSlotInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH264DpbSlotInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH264DpbSlotInfoEXT>::value,
"VideoDecodeH264DpbSlotInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH264DpbSlotInfoEXT>
{
using Type = VideoDecodeH264DpbSlotInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH264MvcEXT
{
using NativeType = VkVideoDecodeH264MvcEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH264MvcEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeH264MvcEXT(const StdVideoDecodeH264Mvc *pStdMvc_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pStdMvc(pStdMvc_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeH264MvcEXT(VideoDecodeH264MvcEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264MvcEXT(VkVideoDecodeH264MvcEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH264MvcEXT(*reinterpret_cast<VideoDecodeH264MvcEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH264MvcEXT &operator=(VideoDecodeH264MvcEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264MvcEXT &operator=(VkVideoDecodeH264MvcEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264MvcEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264MvcEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264MvcEXT &setPStdMvc(const StdVideoDecodeH264Mvc *pStdMvc_) VULKAN_HPP_NOEXCEPT
{
pStdMvc = pStdMvc_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoDecodeH264MvcEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH264MvcEXT *>(this);
}
explicit operator VkVideoDecodeH264MvcEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH264MvcEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, const StdVideoDecodeH264Mvc *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pStdMvc);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoDecodeH264MvcEXT const &) const = default;
# else
bool operator==(VideoDecodeH264MvcEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pStdMvc == rhs.pStdMvc);
# endif
}
bool operator!=(VideoDecodeH264MvcEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264MvcEXT;
const void *pNext = {};
const StdVideoDecodeH264Mvc *pStdMvc = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH264MvcEXT) == sizeof(VkVideoDecodeH264MvcEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH264MvcEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH264MvcEXT>::value,
"VideoDecodeH264MvcEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH264MvcEXT>
{
using Type = VideoDecodeH264MvcEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH264PictureInfoEXT
{
using NativeType = VkVideoDecodeH264PictureInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH264PictureInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeH264PictureInfoEXT(const StdVideoDecodeH264PictureInfo *pStdPictureInfo_ = {},
uint32_t slicesCount_ = {},
const uint32_t *pSlicesDataOffsets_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pStdPictureInfo(pStdPictureInfo_),
slicesCount(slicesCount_),
pSlicesDataOffsets(pSlicesDataOffsets_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeH264PictureInfoEXT(VideoDecodeH264PictureInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264PictureInfoEXT(VkVideoDecodeH264PictureInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH264PictureInfoEXT(*reinterpret_cast<VideoDecodeH264PictureInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeH264PictureInfoEXT(const StdVideoDecodeH264PictureInfo *pStdPictureInfo_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &slicesDataOffsets_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, pStdPictureInfo(pStdPictureInfo_)
, slicesCount(static_cast<uint32_t>(slicesDataOffsets_.size()))
, pSlicesDataOffsets(slicesDataOffsets_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH264PictureInfoEXT &operator=(VideoDecodeH264PictureInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264PictureInfoEXT &operator=(VkVideoDecodeH264PictureInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264PictureInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264PictureInfoEXT &setPStdPictureInfo(const StdVideoDecodeH264PictureInfo *pStdPictureInfo_) VULKAN_HPP_NOEXCEPT
{
pStdPictureInfo = pStdPictureInfo_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264PictureInfoEXT &setSlicesCount(uint32_t slicesCount_) VULKAN_HPP_NOEXCEPT
{
slicesCount = slicesCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264PictureInfoEXT &setPSlicesDataOffsets(const uint32_t *pSlicesDataOffsets_) VULKAN_HPP_NOEXCEPT
{
pSlicesDataOffsets = pSlicesDataOffsets_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeH264PictureInfoEXT &
setSlicesDataOffsets(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &slicesDataOffsets_) VULKAN_HPP_NOEXCEPT
{
slicesCount = static_cast<uint32_t>(slicesDataOffsets_.size());
pSlicesDataOffsets = slicesDataOffsets_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoDecodeH264PictureInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH264PictureInfoEXT *>(this);
}
explicit operator VkVideoDecodeH264PictureInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH264PictureInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
const StdVideoDecodeH264PictureInfo *const &,
uint32_t const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pStdPictureInfo, slicesCount, pSlicesDataOffsets);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoDecodeH264PictureInfoEXT const &) const = default;
# else
bool operator==(VideoDecodeH264PictureInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pStdPictureInfo == rhs.pStdPictureInfo) && (slicesCount == rhs.slicesCount) &&
(pSlicesDataOffsets == rhs.pSlicesDataOffsets);
# endif
}
bool operator!=(VideoDecodeH264PictureInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264PictureInfoEXT;
const void *pNext = {};
const StdVideoDecodeH264PictureInfo *pStdPictureInfo = {};
uint32_t slicesCount = {};
const uint32_t *pSlicesDataOffsets = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureInfoEXT) == sizeof(VkVideoDecodeH264PictureInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureInfoEXT>::value,
"VideoDecodeH264PictureInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH264PictureInfoEXT>
{
using Type = VideoDecodeH264PictureInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH264ProfileEXT
{
using NativeType = VkVideoDecodeH264ProfileEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH264ProfileEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeH264ProfileEXT(StdVideoH264ProfileIdc stdProfileIdc_ = {},
VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureLayoutFlagsEXT pictureLayout_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
stdProfileIdc(stdProfileIdc_),
pictureLayout(pictureLayout_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeH264ProfileEXT(VideoDecodeH264ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264ProfileEXT(VkVideoDecodeH264ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH264ProfileEXT(*reinterpret_cast<VideoDecodeH264ProfileEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH264ProfileEXT &operator=(VideoDecodeH264ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264ProfileEXT &operator=(VkVideoDecodeH264ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264ProfileEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264ProfileEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264ProfileEXT &setStdProfileIdc(StdVideoH264ProfileIdc stdProfileIdc_) VULKAN_HPP_NOEXCEPT
{
stdProfileIdc = stdProfileIdc_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264ProfileEXT &
setPictureLayout(VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureLayoutFlagsEXT pictureLayout_) VULKAN_HPP_NOEXCEPT
{
pictureLayout = pictureLayout_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoDecodeH264ProfileEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH264ProfileEXT *>(this);
}
explicit operator VkVideoDecodeH264ProfileEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH264ProfileEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
StdVideoH264ProfileIdc const &,
VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureLayoutFlagsEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, stdProfileIdc, pictureLayout);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(VideoDecodeH264ProfileEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = memcmp(&stdProfileIdc, &rhs.stdProfileIdc, sizeof(StdVideoH264ProfileIdc)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
if(auto cmp = pictureLayout <=> rhs.pictureLayout; cmp != 0)
return cmp;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(VideoDecodeH264ProfileEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memcmp(&stdProfileIdc, &rhs.stdProfileIdc, sizeof(StdVideoH264ProfileIdc)) == 0) &&
(pictureLayout == rhs.pictureLayout);
}
bool operator!=(VideoDecodeH264ProfileEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264ProfileEXT;
const void *pNext = {};
StdVideoH264ProfileIdc stdProfileIdc = {};
VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureLayoutFlagsEXT pictureLayout = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH264ProfileEXT) == sizeof(VkVideoDecodeH264ProfileEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH264ProfileEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH264ProfileEXT>::value,
"VideoDecodeH264ProfileEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH264ProfileEXT>
{
using Type = VideoDecodeH264ProfileEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH264SessionParametersAddInfoEXT
{
using NativeType = VkVideoDecodeH264SessionParametersAddInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH264SessionParametersAddInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeH264SessionParametersAddInfoEXT(uint32_t spsStdCount_ = {},
const StdVideoH264SequenceParameterSet *pSpsStd_ = {},
uint32_t ppsStdCount_ = {},
const StdVideoH264PictureParameterSet *pPpsStd_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
spsStdCount(spsStdCount_),
pSpsStd(pSpsStd_),
ppsStdCount(ppsStdCount_),
pPpsStd(pPpsStd_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeH264SessionParametersAddInfoEXT(VideoDecodeH264SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264SessionParametersAddInfoEXT(VkVideoDecodeH264SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH264SessionParametersAddInfoEXT(*reinterpret_cast<VideoDecodeH264SessionParametersAddInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeH264SessionParametersAddInfoEXT(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264SequenceParameterSet> const &spsStd_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264PictureParameterSet> const &ppsStd_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, spsStdCount(static_cast<uint32_t>(spsStd_.size()))
, pSpsStd(spsStd_.data())
, ppsStdCount(static_cast<uint32_t>(ppsStd_.size()))
, pPpsStd(ppsStd_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH264SessionParametersAddInfoEXT &operator=(VideoDecodeH264SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264SessionParametersAddInfoEXT &operator=(VkVideoDecodeH264SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersAddInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionParametersAddInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionParametersAddInfoEXT &setSpsStdCount(uint32_t spsStdCount_) VULKAN_HPP_NOEXCEPT
{
spsStdCount = spsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionParametersAddInfoEXT &setPSpsStd(const StdVideoH264SequenceParameterSet *pSpsStd_) VULKAN_HPP_NOEXCEPT
{
pSpsStd = pSpsStd_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeH264SessionParametersAddInfoEXT &
setSpsStd(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264SequenceParameterSet> const &spsStd_) VULKAN_HPP_NOEXCEPT
{
spsStdCount = static_cast<uint32_t>(spsStd_.size());
pSpsStd = spsStd_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionParametersAddInfoEXT &setPpsStdCount(uint32_t ppsStdCount_) VULKAN_HPP_NOEXCEPT
{
ppsStdCount = ppsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionParametersAddInfoEXT &setPPpsStd(const StdVideoH264PictureParameterSet *pPpsStd_) VULKAN_HPP_NOEXCEPT
{
pPpsStd = pPpsStd_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeH264SessionParametersAddInfoEXT &
setPpsStd(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264PictureParameterSet> const &ppsStd_) VULKAN_HPP_NOEXCEPT
{
ppsStdCount = static_cast<uint32_t>(ppsStd_.size());
pPpsStd = ppsStd_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoDecodeH264SessionParametersAddInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH264SessionParametersAddInfoEXT *>(this);
}
explicit operator VkVideoDecodeH264SessionParametersAddInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH264SessionParametersAddInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const StdVideoH264SequenceParameterSet *const &,
uint32_t const &,
const StdVideoH264PictureParameterSet *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, spsStdCount, pSpsStd, ppsStdCount, pPpsStd);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoDecodeH264SessionParametersAddInfoEXT const &) const = default;
# else
bool operator==(VideoDecodeH264SessionParametersAddInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (spsStdCount == rhs.spsStdCount) && (pSpsStd == rhs.pSpsStd) &&
(ppsStdCount == rhs.ppsStdCount) && (pPpsStd == rhs.pPpsStd);
# endif
}
bool operator!=(VideoDecodeH264SessionParametersAddInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264SessionParametersAddInfoEXT;
const void *pNext = {};
uint32_t spsStdCount = {};
const StdVideoH264SequenceParameterSet *pSpsStd = {};
uint32_t ppsStdCount = {};
const StdVideoH264PictureParameterSet *pPpsStd = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersAddInfoEXT) ==
sizeof(VkVideoDecodeH264SessionParametersAddInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersAddInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersAddInfoEXT>::value,
"VideoDecodeH264SessionParametersAddInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH264SessionParametersAddInfoEXT>
{
using Type = VideoDecodeH264SessionParametersAddInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH264SessionParametersCreateInfoEXT
{
using NativeType = VkVideoDecodeH264SessionParametersCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH264SessionParametersCreateInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
VideoDecodeH264SessionParametersCreateInfoEXT(uint32_t maxSpsStdCount_ = {},
uint32_t maxPpsStdCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersAddInfoEXT *pParametersAddInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxSpsStdCount(maxSpsStdCount_),
maxPpsStdCount(maxPpsStdCount_),
pParametersAddInfo(pParametersAddInfo_)
{
}
VULKAN_HPP_CONSTEXPR
VideoDecodeH264SessionParametersCreateInfoEXT(VideoDecodeH264SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264SessionParametersCreateInfoEXT(VkVideoDecodeH264SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH264SessionParametersCreateInfoEXT(*reinterpret_cast<VideoDecodeH264SessionParametersCreateInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH264SessionParametersCreateInfoEXT &operator=(VideoDecodeH264SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH264SessionParametersCreateInfoEXT &operator=(VkVideoDecodeH264SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersCreateInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionParametersCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionParametersCreateInfoEXT &setMaxSpsStdCount(uint32_t maxSpsStdCount_) VULKAN_HPP_NOEXCEPT
{
maxSpsStdCount = maxSpsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionParametersCreateInfoEXT &setMaxPpsStdCount(uint32_t maxPpsStdCount_) VULKAN_HPP_NOEXCEPT
{
maxPpsStdCount = maxPpsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH264SessionParametersCreateInfoEXT &
setPParametersAddInfo(const VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersAddInfoEXT *pParametersAddInfo_) VULKAN_HPP_NOEXCEPT
{
pParametersAddInfo = pParametersAddInfo_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoDecodeH264SessionParametersCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH264SessionParametersCreateInfoEXT *>(this);
}
explicit operator VkVideoDecodeH264SessionParametersCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH264SessionParametersCreateInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersAddInfoEXT *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxSpsStdCount, maxPpsStdCount, pParametersAddInfo);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoDecodeH264SessionParametersCreateInfoEXT const &) const = default;
# else
bool operator==(VideoDecodeH264SessionParametersCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxSpsStdCount == rhs.maxSpsStdCount) && (maxPpsStdCount == rhs.maxPpsStdCount) &&
(pParametersAddInfo == rhs.pParametersAddInfo);
# endif
}
bool operator!=(VideoDecodeH264SessionParametersCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH264SessionParametersCreateInfoEXT;
const void *pNext = {};
uint32_t maxSpsStdCount = {};
uint32_t maxPpsStdCount = {};
const VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersAddInfoEXT *pParametersAddInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersCreateInfoEXT) ==
sizeof(VkVideoDecodeH264SessionParametersCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH264SessionParametersCreateInfoEXT>::value,
"VideoDecodeH264SessionParametersCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH264SessionParametersCreateInfoEXT>
{
using Type = VideoDecodeH264SessionParametersCreateInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH265CapabilitiesEXT
{
using NativeType = VkVideoDecodeH265CapabilitiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH265CapabilitiesEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeH265CapabilitiesEXT(StdVideoH265Level maxLevel_ = {}, void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxLevel(maxLevel_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeH265CapabilitiesEXT(VideoDecodeH265CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH265CapabilitiesEXT(VkVideoDecodeH265CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH265CapabilitiesEXT(*reinterpret_cast<VideoDecodeH265CapabilitiesEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH265CapabilitiesEXT &operator=(VideoDecodeH265CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH265CapabilitiesEXT &operator=(VkVideoDecodeH265CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265CapabilitiesEXT const *>(&rhs);
return *this;
}
explicit operator VkVideoDecodeH265CapabilitiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH265CapabilitiesEXT *>(this);
}
explicit operator VkVideoDecodeH265CapabilitiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH265CapabilitiesEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, StdVideoH265Level const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxLevel);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(VideoDecodeH265CapabilitiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = memcmp(&maxLevel, &rhs.maxLevel, sizeof(StdVideoH265Level)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(VideoDecodeH265CapabilitiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memcmp(&maxLevel, &rhs.maxLevel, sizeof(StdVideoH265Level)) == 0);
}
bool operator!=(VideoDecodeH265CapabilitiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265CapabilitiesEXT;
void *pNext = {};
StdVideoH265Level maxLevel = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH265CapabilitiesEXT) == sizeof(VkVideoDecodeH265CapabilitiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH265CapabilitiesEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH265CapabilitiesEXT>::value,
"VideoDecodeH265CapabilitiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH265CapabilitiesEXT>
{
using Type = VideoDecodeH265CapabilitiesEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH265DpbSlotInfoEXT
{
using NativeType = VkVideoDecodeH265DpbSlotInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH265DpbSlotInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeH265DpbSlotInfoEXT(const StdVideoDecodeH265ReferenceInfo *pStdReferenceInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pStdReferenceInfo(pStdReferenceInfo_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeH265DpbSlotInfoEXT(VideoDecodeH265DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH265DpbSlotInfoEXT(VkVideoDecodeH265DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH265DpbSlotInfoEXT(*reinterpret_cast<VideoDecodeH265DpbSlotInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH265DpbSlotInfoEXT &operator=(VideoDecodeH265DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH265DpbSlotInfoEXT &operator=(VkVideoDecodeH265DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265DpbSlotInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265DpbSlotInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265DpbSlotInfoEXT &
setPStdReferenceInfo(const StdVideoDecodeH265ReferenceInfo *pStdReferenceInfo_) VULKAN_HPP_NOEXCEPT
{
pStdReferenceInfo = pStdReferenceInfo_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoDecodeH265DpbSlotInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH265DpbSlotInfoEXT *>(this);
}
explicit operator VkVideoDecodeH265DpbSlotInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH265DpbSlotInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, const StdVideoDecodeH265ReferenceInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pStdReferenceInfo);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoDecodeH265DpbSlotInfoEXT const &) const = default;
# else
bool operator==(VideoDecodeH265DpbSlotInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pStdReferenceInfo == rhs.pStdReferenceInfo);
# endif
}
bool operator!=(VideoDecodeH265DpbSlotInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265DpbSlotInfoEXT;
const void *pNext = {};
const StdVideoDecodeH265ReferenceInfo *pStdReferenceInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH265DpbSlotInfoEXT) == sizeof(VkVideoDecodeH265DpbSlotInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH265DpbSlotInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH265DpbSlotInfoEXT>::value,
"VideoDecodeH265DpbSlotInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH265DpbSlotInfoEXT>
{
using Type = VideoDecodeH265DpbSlotInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH265PictureInfoEXT
{
using NativeType = VkVideoDecodeH265PictureInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH265PictureInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeH265PictureInfoEXT(StdVideoDecodeH265PictureInfo *pStdPictureInfo_ = {},
uint32_t slicesCount_ = {},
const uint32_t *pSlicesDataOffsets_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pStdPictureInfo(pStdPictureInfo_),
slicesCount(slicesCount_),
pSlicesDataOffsets(pSlicesDataOffsets_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeH265PictureInfoEXT(VideoDecodeH265PictureInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH265PictureInfoEXT(VkVideoDecodeH265PictureInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH265PictureInfoEXT(*reinterpret_cast<VideoDecodeH265PictureInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeH265PictureInfoEXT(StdVideoDecodeH265PictureInfo *pStdPictureInfo_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &slicesDataOffsets_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, pStdPictureInfo(pStdPictureInfo_)
, slicesCount(static_cast<uint32_t>(slicesDataOffsets_.size()))
, pSlicesDataOffsets(slicesDataOffsets_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH265PictureInfoEXT &operator=(VideoDecodeH265PictureInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH265PictureInfoEXT &operator=(VkVideoDecodeH265PictureInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265PictureInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265PictureInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265PictureInfoEXT &setPStdPictureInfo(StdVideoDecodeH265PictureInfo *pStdPictureInfo_) VULKAN_HPP_NOEXCEPT
{
pStdPictureInfo = pStdPictureInfo_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265PictureInfoEXT &setSlicesCount(uint32_t slicesCount_) VULKAN_HPP_NOEXCEPT
{
slicesCount = slicesCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265PictureInfoEXT &setPSlicesDataOffsets(const uint32_t *pSlicesDataOffsets_) VULKAN_HPP_NOEXCEPT
{
pSlicesDataOffsets = pSlicesDataOffsets_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeH265PictureInfoEXT &
setSlicesDataOffsets(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &slicesDataOffsets_) VULKAN_HPP_NOEXCEPT
{
slicesCount = static_cast<uint32_t>(slicesDataOffsets_.size());
pSlicesDataOffsets = slicesDataOffsets_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoDecodeH265PictureInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH265PictureInfoEXT *>(this);
}
explicit operator VkVideoDecodeH265PictureInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH265PictureInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
StdVideoDecodeH265PictureInfo *const &,
uint32_t const &,
const uint32_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pStdPictureInfo, slicesCount, pSlicesDataOffsets);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoDecodeH265PictureInfoEXT const &) const = default;
# else
bool operator==(VideoDecodeH265PictureInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pStdPictureInfo == rhs.pStdPictureInfo) && (slicesCount == rhs.slicesCount) &&
(pSlicesDataOffsets == rhs.pSlicesDataOffsets);
# endif
}
bool operator!=(VideoDecodeH265PictureInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265PictureInfoEXT;
const void *pNext = {};
StdVideoDecodeH265PictureInfo *pStdPictureInfo = {};
uint32_t slicesCount = {};
const uint32_t *pSlicesDataOffsets = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH265PictureInfoEXT) == sizeof(VkVideoDecodeH265PictureInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH265PictureInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH265PictureInfoEXT>::value,
"VideoDecodeH265PictureInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH265PictureInfoEXT>
{
using Type = VideoDecodeH265PictureInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH265ProfileEXT
{
using NativeType = VkVideoDecodeH265ProfileEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH265ProfileEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeH265ProfileEXT(StdVideoH265ProfileIdc stdProfileIdc_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
stdProfileIdc(stdProfileIdc_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeH265ProfileEXT(VideoDecodeH265ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH265ProfileEXT(VkVideoDecodeH265ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH265ProfileEXT(*reinterpret_cast<VideoDecodeH265ProfileEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH265ProfileEXT &operator=(VideoDecodeH265ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH265ProfileEXT &operator=(VkVideoDecodeH265ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265ProfileEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265ProfileEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265ProfileEXT &setStdProfileIdc(StdVideoH265ProfileIdc stdProfileIdc_) VULKAN_HPP_NOEXCEPT
{
stdProfileIdc = stdProfileIdc_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoDecodeH265ProfileEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH265ProfileEXT *>(this);
}
explicit operator VkVideoDecodeH265ProfileEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH265ProfileEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, StdVideoH265ProfileIdc const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, stdProfileIdc);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(VideoDecodeH265ProfileEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = memcmp(&stdProfileIdc, &rhs.stdProfileIdc, sizeof(StdVideoH265ProfileIdc)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(VideoDecodeH265ProfileEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memcmp(&stdProfileIdc, &rhs.stdProfileIdc, sizeof(StdVideoH265ProfileIdc)) == 0);
}
bool operator!=(VideoDecodeH265ProfileEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265ProfileEXT;
const void *pNext = {};
StdVideoH265ProfileIdc stdProfileIdc = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH265ProfileEXT) == sizeof(VkVideoDecodeH265ProfileEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH265ProfileEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH265ProfileEXT>::value,
"VideoDecodeH265ProfileEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH265ProfileEXT>
{
using Type = VideoDecodeH265ProfileEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH265SessionParametersAddInfoEXT
{
using NativeType = VkVideoDecodeH265SessionParametersAddInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH265SessionParametersAddInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeH265SessionParametersAddInfoEXT(uint32_t vpsStdCount_ = {},
const StdVideoH265VideoParameterSet *pVpsStd_ = {},
uint32_t spsStdCount_ = {},
const StdVideoH265SequenceParameterSet *pSpsStd_ = {},
uint32_t ppsStdCount_ = {},
const StdVideoH265PictureParameterSet *pPpsStd_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
vpsStdCount(vpsStdCount_),
pVpsStd(pVpsStd_),
spsStdCount(spsStdCount_),
pSpsStd(pSpsStd_),
ppsStdCount(ppsStdCount_),
pPpsStd(pPpsStd_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeH265SessionParametersAddInfoEXT(VideoDecodeH265SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH265SessionParametersAddInfoEXT(VkVideoDecodeH265SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH265SessionParametersAddInfoEXT(*reinterpret_cast<VideoDecodeH265SessionParametersAddInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeH265SessionParametersAddInfoEXT(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265VideoParameterSet> const &vpsStd_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265SequenceParameterSet> const &spsStd_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265PictureParameterSet> const &ppsStd_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, vpsStdCount(static_cast<uint32_t>(vpsStd_.size()))
, pVpsStd(vpsStd_.data())
, spsStdCount(static_cast<uint32_t>(spsStd_.size()))
, pSpsStd(spsStd_.data())
, ppsStdCount(static_cast<uint32_t>(ppsStd_.size()))
, pPpsStd(ppsStd_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH265SessionParametersAddInfoEXT &operator=(VideoDecodeH265SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH265SessionParametersAddInfoEXT &operator=(VkVideoDecodeH265SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersAddInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersAddInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersAddInfoEXT &setVpsStdCount(uint32_t vpsStdCount_) VULKAN_HPP_NOEXCEPT
{
vpsStdCount = vpsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersAddInfoEXT &setPVpsStd(const StdVideoH265VideoParameterSet *pVpsStd_) VULKAN_HPP_NOEXCEPT
{
pVpsStd = pVpsStd_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeH265SessionParametersAddInfoEXT &
setVpsStd(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265VideoParameterSet> const &vpsStd_) VULKAN_HPP_NOEXCEPT
{
vpsStdCount = static_cast<uint32_t>(vpsStd_.size());
pVpsStd = vpsStd_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersAddInfoEXT &setSpsStdCount(uint32_t spsStdCount_) VULKAN_HPP_NOEXCEPT
{
spsStdCount = spsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersAddInfoEXT &setPSpsStd(const StdVideoH265SequenceParameterSet *pSpsStd_) VULKAN_HPP_NOEXCEPT
{
pSpsStd = pSpsStd_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeH265SessionParametersAddInfoEXT &
setSpsStd(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265SequenceParameterSet> const &spsStd_) VULKAN_HPP_NOEXCEPT
{
spsStdCount = static_cast<uint32_t>(spsStd_.size());
pSpsStd = spsStd_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersAddInfoEXT &setPpsStdCount(uint32_t ppsStdCount_) VULKAN_HPP_NOEXCEPT
{
ppsStdCount = ppsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersAddInfoEXT &setPPpsStd(const StdVideoH265PictureParameterSet *pPpsStd_) VULKAN_HPP_NOEXCEPT
{
pPpsStd = pPpsStd_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeH265SessionParametersAddInfoEXT &
setPpsStd(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265PictureParameterSet> const &ppsStd_) VULKAN_HPP_NOEXCEPT
{
ppsStdCount = static_cast<uint32_t>(ppsStd_.size());
pPpsStd = ppsStd_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoDecodeH265SessionParametersAddInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH265SessionParametersAddInfoEXT *>(this);
}
explicit operator VkVideoDecodeH265SessionParametersAddInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH265SessionParametersAddInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const StdVideoH265VideoParameterSet *const &,
uint32_t const &,
const StdVideoH265SequenceParameterSet *const &,
uint32_t const &,
const StdVideoH265PictureParameterSet *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, vpsStdCount, pVpsStd, spsStdCount, pSpsStd, ppsStdCount, pPpsStd);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoDecodeH265SessionParametersAddInfoEXT const &) const = default;
# else
bool operator==(VideoDecodeH265SessionParametersAddInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (vpsStdCount == rhs.vpsStdCount) && (pVpsStd == rhs.pVpsStd) &&
(spsStdCount == rhs.spsStdCount) && (pSpsStd == rhs.pSpsStd) && (ppsStdCount == rhs.ppsStdCount) && (pPpsStd == rhs.pPpsStd);
# endif
}
bool operator!=(VideoDecodeH265SessionParametersAddInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265SessionParametersAddInfoEXT;
const void *pNext = {};
uint32_t vpsStdCount = {};
const StdVideoH265VideoParameterSet *pVpsStd = {};
uint32_t spsStdCount = {};
const StdVideoH265SequenceParameterSet *pSpsStd = {};
uint32_t ppsStdCount = {};
const StdVideoH265PictureParameterSet *pPpsStd = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersAddInfoEXT) ==
sizeof(VkVideoDecodeH265SessionParametersAddInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersAddInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersAddInfoEXT>::value,
"VideoDecodeH265SessionParametersAddInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH265SessionParametersAddInfoEXT>
{
using Type = VideoDecodeH265SessionParametersAddInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeH265SessionParametersCreateInfoEXT
{
using NativeType = VkVideoDecodeH265SessionParametersCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeH265SessionParametersCreateInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
VideoDecodeH265SessionParametersCreateInfoEXT(uint32_t maxVpsStdCount_ = {},
uint32_t maxSpsStdCount_ = {},
uint32_t maxPpsStdCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersAddInfoEXT *pParametersAddInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxVpsStdCount(maxVpsStdCount_),
maxSpsStdCount(maxSpsStdCount_),
maxPpsStdCount(maxPpsStdCount_),
pParametersAddInfo(pParametersAddInfo_)
{
}
VULKAN_HPP_CONSTEXPR
VideoDecodeH265SessionParametersCreateInfoEXT(VideoDecodeH265SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH265SessionParametersCreateInfoEXT(VkVideoDecodeH265SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoDecodeH265SessionParametersCreateInfoEXT(*reinterpret_cast<VideoDecodeH265SessionParametersCreateInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeH265SessionParametersCreateInfoEXT &operator=(VideoDecodeH265SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeH265SessionParametersCreateInfoEXT &operator=(VkVideoDecodeH265SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersCreateInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersCreateInfoEXT &setMaxVpsStdCount(uint32_t maxVpsStdCount_) VULKAN_HPP_NOEXCEPT
{
maxVpsStdCount = maxVpsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersCreateInfoEXT &setMaxSpsStdCount(uint32_t maxSpsStdCount_) VULKAN_HPP_NOEXCEPT
{
maxSpsStdCount = maxSpsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersCreateInfoEXT &setMaxPpsStdCount(uint32_t maxPpsStdCount_) VULKAN_HPP_NOEXCEPT
{
maxPpsStdCount = maxPpsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeH265SessionParametersCreateInfoEXT &
setPParametersAddInfo(const VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersAddInfoEXT *pParametersAddInfo_) VULKAN_HPP_NOEXCEPT
{
pParametersAddInfo = pParametersAddInfo_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoDecodeH265SessionParametersCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeH265SessionParametersCreateInfoEXT *>(this);
}
explicit operator VkVideoDecodeH265SessionParametersCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeH265SessionParametersCreateInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersAddInfoEXT *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxVpsStdCount, maxSpsStdCount, maxPpsStdCount, pParametersAddInfo);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoDecodeH265SessionParametersCreateInfoEXT const &) const = default;
# else
bool operator==(VideoDecodeH265SessionParametersCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxVpsStdCount == rhs.maxVpsStdCount) && (maxSpsStdCount == rhs.maxSpsStdCount) &&
(maxPpsStdCount == rhs.maxPpsStdCount) && (pParametersAddInfo == rhs.pParametersAddInfo);
# endif
}
bool operator!=(VideoDecodeH265SessionParametersCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeH265SessionParametersCreateInfoEXT;
const void *pNext = {};
uint32_t maxVpsStdCount = {};
uint32_t maxSpsStdCount = {};
uint32_t maxPpsStdCount = {};
const VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersAddInfoEXT *pParametersAddInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersCreateInfoEXT) ==
sizeof(VkVideoDecodeH265SessionParametersCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH265SessionParametersCreateInfoEXT>::value,
"VideoDecodeH265SessionParametersCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeH265SessionParametersCreateInfoEXT>
{
using Type = VideoDecodeH265SessionParametersCreateInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoDecodeInfoKHR
{
using NativeType = VkVideoDecodeInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoDecodeInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoDecodeInfoKHR(VULKAN_HPP_NAMESPACE::VideoDecodeFlagsKHR flags_ = {},
VULKAN_HPP_NAMESPACE::Buffer srcBuffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize srcBufferOffset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize srcBufferRange_ = {},
VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR dstPictureResource_ = {},
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pSetupReferenceSlot_ = {},
uint32_t referenceSlotCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pReferenceSlots_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
srcBuffer(srcBuffer_),
srcBufferOffset(srcBufferOffset_),
srcBufferRange(srcBufferRange_),
dstPictureResource(dstPictureResource_),
pSetupReferenceSlot(pSetupReferenceSlot_),
referenceSlotCount(referenceSlotCount_),
pReferenceSlots(pReferenceSlots_)
{
}
VULKAN_HPP_CONSTEXPR VideoDecodeInfoKHR(VideoDecodeInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeInfoKHR(VkVideoDecodeInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT : VideoDecodeInfoKHR(*reinterpret_cast<VideoDecodeInfoKHR const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeInfoKHR(VULKAN_HPP_NAMESPACE::VideoDecodeFlagsKHR flags_,
VULKAN_HPP_NAMESPACE::Buffer srcBuffer_,
VULKAN_HPP_NAMESPACE::DeviceSize srcBufferOffset_,
VULKAN_HPP_NAMESPACE::DeviceSize srcBufferRange_,
VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR dstPictureResource_,
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pSetupReferenceSlot_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR> const &referenceSlots_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, srcBuffer(srcBuffer_)
, srcBufferOffset(srcBufferOffset_)
, srcBufferRange(srcBufferRange_)
, dstPictureResource(dstPictureResource_)
, pSetupReferenceSlot(pSetupReferenceSlot_)
, referenceSlotCount(static_cast<uint32_t>(referenceSlots_.size()))
, pReferenceSlots(referenceSlots_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoDecodeInfoKHR &operator=(VideoDecodeInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoDecodeInfoKHR &operator=(VkVideoDecodeInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoDecodeInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::VideoDecodeFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeInfoKHR &setSrcBuffer(VULKAN_HPP_NAMESPACE::Buffer srcBuffer_) VULKAN_HPP_NOEXCEPT
{
srcBuffer = srcBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeInfoKHR &setSrcBufferOffset(VULKAN_HPP_NAMESPACE::DeviceSize srcBufferOffset_) VULKAN_HPP_NOEXCEPT
{
srcBufferOffset = srcBufferOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeInfoKHR &setSrcBufferRange(VULKAN_HPP_NAMESPACE::DeviceSize srcBufferRange_) VULKAN_HPP_NOEXCEPT
{
srcBufferRange = srcBufferRange_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeInfoKHR &
setDstPictureResource(VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR const &dstPictureResource_) VULKAN_HPP_NOEXCEPT
{
dstPictureResource = dstPictureResource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeInfoKHR &
setPSetupReferenceSlot(const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pSetupReferenceSlot_) VULKAN_HPP_NOEXCEPT
{
pSetupReferenceSlot = pSetupReferenceSlot_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeInfoKHR &setReferenceSlotCount(uint32_t referenceSlotCount_) VULKAN_HPP_NOEXCEPT
{
referenceSlotCount = referenceSlotCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoDecodeInfoKHR &setPReferenceSlots(const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pReferenceSlots_) VULKAN_HPP_NOEXCEPT
{
pReferenceSlots = pReferenceSlots_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoDecodeInfoKHR &setReferenceSlots(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR> const &referenceSlots_) VULKAN_HPP_NOEXCEPT
{
referenceSlotCount = static_cast<uint32_t>(referenceSlots_.size());
pReferenceSlots = referenceSlots_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoDecodeInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoDecodeInfoKHR *>(this);
}
explicit operator VkVideoDecodeInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoDecodeInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::VideoDecodeFlagsKHR const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR const &,
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, flags, srcBuffer, srcBufferOffset, srcBufferRange, dstPictureResource, pSetupReferenceSlot, referenceSlotCount, pReferenceSlots);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoDecodeInfoKHR const &) const = default;
# else
bool operator==(VideoDecodeInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (srcBuffer == rhs.srcBuffer) &&
(srcBufferOffset == rhs.srcBufferOffset) && (srcBufferRange == rhs.srcBufferRange) && (dstPictureResource == rhs.dstPictureResource) &&
(pSetupReferenceSlot == rhs.pSetupReferenceSlot) && (referenceSlotCount == rhs.referenceSlotCount) &&
(pReferenceSlots == rhs.pReferenceSlots);
# endif
}
bool operator!=(VideoDecodeInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoDecodeInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoDecodeFlagsKHR flags = {};
VULKAN_HPP_NAMESPACE::Buffer srcBuffer = {};
VULKAN_HPP_NAMESPACE::DeviceSize srcBufferOffset = {};
VULKAN_HPP_NAMESPACE::DeviceSize srcBufferRange = {};
VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR dstPictureResource = {};
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pSetupReferenceSlot = {};
uint32_t referenceSlotCount = {};
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pReferenceSlots = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR) == sizeof(VkVideoDecodeInfoKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR>::value,
"VideoDecodeInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoDecodeInfoKHR>
{
using Type = VideoDecodeInfoKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeCapabilitiesKHR
{
using NativeType = VkVideoEncodeCapabilitiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeCapabilitiesKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeCapabilitiesKHR(VULKAN_HPP_NAMESPACE::VideoEncodeCapabilityFlagsKHR flags_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagsKHR rateControlModes_ = {},
uint8_t rateControlLayerCount_ = {},
uint8_t qualityLevelCount_ = {},
VULKAN_HPP_NAMESPACE::Extent2D inputImageDataFillAlignment_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
rateControlModes(rateControlModes_),
rateControlLayerCount(rateControlLayerCount_),
qualityLevelCount(qualityLevelCount_),
inputImageDataFillAlignment(inputImageDataFillAlignment_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeCapabilitiesKHR(VideoEncodeCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeCapabilitiesKHR(VkVideoEncodeCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeCapabilitiesKHR(*reinterpret_cast<VideoEncodeCapabilitiesKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeCapabilitiesKHR &operator=(VideoEncodeCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeCapabilitiesKHR &operator=(VkVideoEncodeCapabilitiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeCapabilitiesKHR const *>(&rhs);
return *this;
}
explicit operator VkVideoEncodeCapabilitiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeCapabilitiesKHR *>(this);
}
explicit operator VkVideoEncodeCapabilitiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeCapabilitiesKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::VideoEncodeCapabilityFlagsKHR const &,
VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagsKHR const &,
uint8_t const &,
uint8_t const &,
VULKAN_HPP_NAMESPACE::Extent2D const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, rateControlModes, rateControlLayerCount, qualityLevelCount, inputImageDataFillAlignment);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeCapabilitiesKHR const &) const = default;
# else
bool operator==(VideoEncodeCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (rateControlModes == rhs.rateControlModes) &&
(rateControlLayerCount == rhs.rateControlLayerCount) && (qualityLevelCount == rhs.qualityLevelCount) &&
(inputImageDataFillAlignment == rhs.inputImageDataFillAlignment);
# endif
}
bool operator!=(VideoEncodeCapabilitiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeCapabilitiesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoEncodeCapabilityFlagsKHR flags = {};
VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagsKHR rateControlModes = {};
uint8_t rateControlLayerCount = {};
uint8_t qualityLevelCount = {};
VULKAN_HPP_NAMESPACE::Extent2D inputImageDataFillAlignment = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeCapabilitiesKHR) == sizeof(VkVideoEncodeCapabilitiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeCapabilitiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeCapabilitiesKHR>::value,
"VideoEncodeCapabilitiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeCapabilitiesKHR>
{
using Type = VideoEncodeCapabilitiesKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264CapabilitiesEXT
{
using NativeType = VkVideoEncodeH264CapabilitiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264CapabilitiesEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH264CapabilitiesEXT(VULKAN_HPP_NAMESPACE::VideoEncodeH264CapabilityFlagsEXT flags_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH264InputModeFlagsEXT inputModeFlags_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH264OutputModeFlagsEXT outputModeFlags_ = {},
uint8_t maxPPictureL0ReferenceCount_ = {},
uint8_t maxBPictureL0ReferenceCount_ = {},
uint8_t maxL1ReferenceCount_ = {},
VULKAN_HPP_NAMESPACE::Bool32 motionVectorsOverPicBoundariesFlag_ = {},
uint32_t maxBytesPerPicDenom_ = {},
uint32_t maxBitsPerMbDenom_ = {},
uint32_t log2MaxMvLengthHorizontal_ = {},
uint32_t log2MaxMvLengthVertical_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
inputModeFlags(inputModeFlags_),
outputModeFlags(outputModeFlags_),
maxPPictureL0ReferenceCount(maxPPictureL0ReferenceCount_),
maxBPictureL0ReferenceCount(maxBPictureL0ReferenceCount_),
maxL1ReferenceCount(maxL1ReferenceCount_),
motionVectorsOverPicBoundariesFlag(motionVectorsOverPicBoundariesFlag_),
maxBytesPerPicDenom(maxBytesPerPicDenom_),
maxBitsPerMbDenom(maxBitsPerMbDenom_),
log2MaxMvLengthHorizontal(log2MaxMvLengthHorizontal_),
log2MaxMvLengthVertical(log2MaxMvLengthVertical_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH264CapabilitiesEXT(VideoEncodeH264CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264CapabilitiesEXT(VkVideoEncodeH264CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264CapabilitiesEXT(*reinterpret_cast<VideoEncodeH264CapabilitiesEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264CapabilitiesEXT &operator=(VideoEncodeH264CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264CapabilitiesEXT &operator=(VkVideoEncodeH264CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264CapabilitiesEXT const *>(&rhs);
return *this;
}
explicit operator VkVideoEncodeH264CapabilitiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264CapabilitiesEXT *>(this);
}
explicit operator VkVideoEncodeH264CapabilitiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264CapabilitiesEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH264CapabilityFlagsEXT const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH264InputModeFlagsEXT const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH264OutputModeFlagsEXT const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
inputModeFlags,
outputModeFlags,
maxPPictureL0ReferenceCount,
maxBPictureL0ReferenceCount,
maxL1ReferenceCount,
motionVectorsOverPicBoundariesFlag,
maxBytesPerPicDenom,
maxBitsPerMbDenom,
log2MaxMvLengthHorizontal,
log2MaxMvLengthVertical);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH264CapabilitiesEXT const &) const = default;
# else
bool operator==(VideoEncodeH264CapabilitiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (inputModeFlags == rhs.inputModeFlags) &&
(outputModeFlags == rhs.outputModeFlags) && (maxPPictureL0ReferenceCount == rhs.maxPPictureL0ReferenceCount) &&
(maxBPictureL0ReferenceCount == rhs.maxBPictureL0ReferenceCount) && (maxL1ReferenceCount == rhs.maxL1ReferenceCount) &&
(motionVectorsOverPicBoundariesFlag == rhs.motionVectorsOverPicBoundariesFlag) && (maxBytesPerPicDenom == rhs.maxBytesPerPicDenom) &&
(maxBitsPerMbDenom == rhs.maxBitsPerMbDenom) && (log2MaxMvLengthHorizontal == rhs.log2MaxMvLengthHorizontal) &&
(log2MaxMvLengthVertical == rhs.log2MaxMvLengthVertical);
# endif
}
bool operator!=(VideoEncodeH264CapabilitiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264CapabilitiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH264CapabilityFlagsEXT flags = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH264InputModeFlagsEXT inputModeFlags = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH264OutputModeFlagsEXT outputModeFlags = {};
uint8_t maxPPictureL0ReferenceCount = {};
uint8_t maxBPictureL0ReferenceCount = {};
uint8_t maxL1ReferenceCount = {};
VULKAN_HPP_NAMESPACE::Bool32 motionVectorsOverPicBoundariesFlag = {};
uint32_t maxBytesPerPicDenom = {};
uint32_t maxBitsPerMbDenom = {};
uint32_t log2MaxMvLengthHorizontal = {};
uint32_t log2MaxMvLengthVertical = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264CapabilitiesEXT) == sizeof(VkVideoEncodeH264CapabilitiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264CapabilitiesEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264CapabilitiesEXT>::value,
"VideoEncodeH264CapabilitiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH264CapabilitiesEXT>
{
using Type = VideoEncodeH264CapabilitiesEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264DpbSlotInfoEXT
{
using NativeType = VkVideoEncodeH264DpbSlotInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264DpbSlotInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH264DpbSlotInfoEXT(int8_t slotIndex_ = {},
const StdVideoEncodeH264ReferenceInfo *pStdReferenceInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
slotIndex(slotIndex_),
pStdReferenceInfo(pStdReferenceInfo_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH264DpbSlotInfoEXT(VideoEncodeH264DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264DpbSlotInfoEXT(VkVideoEncodeH264DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264DpbSlotInfoEXT(*reinterpret_cast<VideoEncodeH264DpbSlotInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264DpbSlotInfoEXT &operator=(VideoEncodeH264DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264DpbSlotInfoEXT &operator=(VkVideoEncodeH264DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264DpbSlotInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264DpbSlotInfoEXT &setSlotIndex(int8_t slotIndex_) VULKAN_HPP_NOEXCEPT
{
slotIndex = slotIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264DpbSlotInfoEXT &
setPStdReferenceInfo(const StdVideoEncodeH264ReferenceInfo *pStdReferenceInfo_) VULKAN_HPP_NOEXCEPT
{
pStdReferenceInfo = pStdReferenceInfo_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH264DpbSlotInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264DpbSlotInfoEXT *>(this);
}
explicit operator VkVideoEncodeH264DpbSlotInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264DpbSlotInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, int8_t const &, const StdVideoEncodeH264ReferenceInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, slotIndex, pStdReferenceInfo);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH264DpbSlotInfoEXT const &) const = default;
# else
bool operator==(VideoEncodeH264DpbSlotInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (slotIndex == rhs.slotIndex) && (pStdReferenceInfo == rhs.pStdReferenceInfo);
# endif
}
bool operator!=(VideoEncodeH264DpbSlotInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264DpbSlotInfoEXT;
const void *pNext = {};
int8_t slotIndex = {};
const StdVideoEncodeH264ReferenceInfo *pStdReferenceInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT) == sizeof(VkVideoEncodeH264DpbSlotInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT>::value,
"VideoEncodeH264DpbSlotInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH264DpbSlotInfoEXT>
{
using Type = VideoEncodeH264DpbSlotInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264EmitPictureParametersEXT
{
using NativeType = VkVideoEncodeH264EmitPictureParametersEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264EmitPictureParametersEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH264EmitPictureParametersEXT(uint8_t spsId_ = {},
VULKAN_HPP_NAMESPACE::Bool32 emitSpsEnable_ = {},
uint32_t ppsIdEntryCount_ = {},
const uint8_t *ppsIdEntries_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
spsId(spsId_),
emitSpsEnable(emitSpsEnable_),
ppsIdEntryCount(ppsIdEntryCount_),
ppsIdEntries(ppsIdEntries_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH264EmitPictureParametersEXT(VideoEncodeH264EmitPictureParametersEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264EmitPictureParametersEXT(VkVideoEncodeH264EmitPictureParametersEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264EmitPictureParametersEXT(*reinterpret_cast<VideoEncodeH264EmitPictureParametersEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH264EmitPictureParametersEXT(uint8_t spsId_,
VULKAN_HPP_NAMESPACE::Bool32 emitSpsEnable_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint8_t> const &psIdEntries_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, spsId(spsId_)
, emitSpsEnable(emitSpsEnable_)
, ppsIdEntryCount(static_cast<uint32_t>(psIdEntries_.size()))
, ppsIdEntries(psIdEntries_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264EmitPictureParametersEXT &operator=(VideoEncodeH264EmitPictureParametersEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264EmitPictureParametersEXT &operator=(VkVideoEncodeH264EmitPictureParametersEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264EmitPictureParametersEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264EmitPictureParametersEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264EmitPictureParametersEXT &setSpsId(uint8_t spsId_) VULKAN_HPP_NOEXCEPT
{
spsId = spsId_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264EmitPictureParametersEXT &setEmitSpsEnable(VULKAN_HPP_NAMESPACE::Bool32 emitSpsEnable_) VULKAN_HPP_NOEXCEPT
{
emitSpsEnable = emitSpsEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264EmitPictureParametersEXT &setPpsIdEntryCount(uint32_t ppsIdEntryCount_) VULKAN_HPP_NOEXCEPT
{
ppsIdEntryCount = ppsIdEntryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264EmitPictureParametersEXT &setPpsIdEntries(const uint8_t *ppsIdEntries_) VULKAN_HPP_NOEXCEPT
{
ppsIdEntries = ppsIdEntries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH264EmitPictureParametersEXT &
setPsIdEntries(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint8_t> const &psIdEntries_) VULKAN_HPP_NOEXCEPT
{
ppsIdEntryCount = static_cast<uint32_t>(psIdEntries_.size());
ppsIdEntries = psIdEntries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH264EmitPictureParametersEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264EmitPictureParametersEXT *>(this);
}
explicit operator VkVideoEncodeH264EmitPictureParametersEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264EmitPictureParametersEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint8_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
const uint8_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, spsId, emitSpsEnable, ppsIdEntryCount, ppsIdEntries);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH264EmitPictureParametersEXT const &) const = default;
# else
bool operator==(VideoEncodeH264EmitPictureParametersEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (spsId == rhs.spsId) && (emitSpsEnable == rhs.emitSpsEnable) &&
(ppsIdEntryCount == rhs.ppsIdEntryCount) && (ppsIdEntries == rhs.ppsIdEntries);
# endif
}
bool operator!=(VideoEncodeH264EmitPictureParametersEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264EmitPictureParametersEXT;
const void *pNext = {};
uint8_t spsId = {};
VULKAN_HPP_NAMESPACE::Bool32 emitSpsEnable = {};
uint32_t ppsIdEntryCount = {};
const uint8_t *ppsIdEntries = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264EmitPictureParametersEXT) == sizeof(VkVideoEncodeH264EmitPictureParametersEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264EmitPictureParametersEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264EmitPictureParametersEXT>::value,
"VideoEncodeH264EmitPictureParametersEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH264EmitPictureParametersEXT>
{
using Type = VideoEncodeH264EmitPictureParametersEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264FrameSizeEXT
{
using NativeType = VkVideoEncodeH264FrameSizeEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH264FrameSizeEXT(uint32_t frameISize_ = {}, uint32_t framePSize_ = {}, uint32_t frameBSize_ = {}) VULKAN_HPP_NOEXCEPT
: frameISize(frameISize_),
framePSize(framePSize_),
frameBSize(frameBSize_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH264FrameSizeEXT(VideoEncodeH264FrameSizeEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264FrameSizeEXT(VkVideoEncodeH264FrameSizeEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264FrameSizeEXT(*reinterpret_cast<VideoEncodeH264FrameSizeEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264FrameSizeEXT &operator=(VideoEncodeH264FrameSizeEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264FrameSizeEXT &operator=(VkVideoEncodeH264FrameSizeEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264FrameSizeEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264FrameSizeEXT &setFrameISize(uint32_t frameISize_) VULKAN_HPP_NOEXCEPT
{
frameISize = frameISize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264FrameSizeEXT &setFramePSize(uint32_t framePSize_) VULKAN_HPP_NOEXCEPT
{
framePSize = framePSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264FrameSizeEXT &setFrameBSize(uint32_t frameBSize_) VULKAN_HPP_NOEXCEPT
{
frameBSize = frameBSize_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH264FrameSizeEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264FrameSizeEXT *>(this);
}
explicit operator VkVideoEncodeH264FrameSizeEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264FrameSizeEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(frameISize, framePSize, frameBSize);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH264FrameSizeEXT const &) const = default;
# else
bool operator==(VideoEncodeH264FrameSizeEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (frameISize == rhs.frameISize) && (framePSize == rhs.framePSize) && (frameBSize == rhs.frameBSize);
# endif
}
bool operator!=(VideoEncodeH264FrameSizeEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
uint32_t frameISize = {};
uint32_t framePSize = {};
uint32_t frameBSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264FrameSizeEXT) == sizeof(VkVideoEncodeH264FrameSizeEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264FrameSizeEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264FrameSizeEXT>::value,
"VideoEncodeH264FrameSizeEXT is not nothrow_move_constructible!");
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264ReferenceListsEXT
{
using NativeType = VkVideoEncodeH264ReferenceListsEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264ReferenceListsEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH264ReferenceListsEXT(uint8_t referenceList0EntryCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT *pReferenceList0Entries_ = {},
uint8_t referenceList1EntryCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT *pReferenceList1Entries_ = {},
const StdVideoEncodeH264RefMemMgmtCtrlOperations *pMemMgmtCtrlOperations_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
referenceList0EntryCount(referenceList0EntryCount_),
pReferenceList0Entries(pReferenceList0Entries_),
referenceList1EntryCount(referenceList1EntryCount_),
pReferenceList1Entries(pReferenceList1Entries_),
pMemMgmtCtrlOperations(pMemMgmtCtrlOperations_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH264ReferenceListsEXT(VideoEncodeH264ReferenceListsEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264ReferenceListsEXT(VkVideoEncodeH264ReferenceListsEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264ReferenceListsEXT(*reinterpret_cast<VideoEncodeH264ReferenceListsEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH264ReferenceListsEXT(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT> const &referenceList0Entries_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT> const &referenceList1Entries_ = {},
const StdVideoEncodeH264RefMemMgmtCtrlOperations *pMemMgmtCtrlOperations_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, referenceList0EntryCount(static_cast<uint8_t>(referenceList0Entries_.size()))
, pReferenceList0Entries(referenceList0Entries_.data())
, referenceList1EntryCount(static_cast<uint8_t>(referenceList1Entries_.size()))
, pReferenceList1Entries(referenceList1Entries_.data())
, pMemMgmtCtrlOperations(pMemMgmtCtrlOperations_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264ReferenceListsEXT &operator=(VideoEncodeH264ReferenceListsEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264ReferenceListsEXT &operator=(VkVideoEncodeH264ReferenceListsEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264ReferenceListsEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264ReferenceListsEXT &setReferenceList0EntryCount(uint8_t referenceList0EntryCount_) VULKAN_HPP_NOEXCEPT
{
referenceList0EntryCount = referenceList0EntryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264ReferenceListsEXT &
setPReferenceList0Entries(const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT *pReferenceList0Entries_) VULKAN_HPP_NOEXCEPT
{
pReferenceList0Entries = pReferenceList0Entries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH264ReferenceListsEXT &setReferenceList0Entries(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT> const &referenceList0Entries_)
VULKAN_HPP_NOEXCEPT
{
referenceList0EntryCount = static_cast<uint8_t>(referenceList0Entries_.size());
pReferenceList0Entries = referenceList0Entries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264ReferenceListsEXT &setReferenceList1EntryCount(uint8_t referenceList1EntryCount_) VULKAN_HPP_NOEXCEPT
{
referenceList1EntryCount = referenceList1EntryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264ReferenceListsEXT &
setPReferenceList1Entries(const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT *pReferenceList1Entries_) VULKAN_HPP_NOEXCEPT
{
pReferenceList1Entries = pReferenceList1Entries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH264ReferenceListsEXT &setReferenceList1Entries(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT> const &referenceList1Entries_)
VULKAN_HPP_NOEXCEPT
{
referenceList1EntryCount = static_cast<uint8_t>(referenceList1Entries_.size());
pReferenceList1Entries = referenceList1Entries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264ReferenceListsEXT &
setPMemMgmtCtrlOperations(const StdVideoEncodeH264RefMemMgmtCtrlOperations *pMemMgmtCtrlOperations_) VULKAN_HPP_NOEXCEPT
{
pMemMgmtCtrlOperations = pMemMgmtCtrlOperations_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH264ReferenceListsEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264ReferenceListsEXT *>(this);
}
explicit operator VkVideoEncodeH264ReferenceListsEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264ReferenceListsEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint8_t const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT *const &,
uint8_t const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT *const &,
const StdVideoEncodeH264RefMemMgmtCtrlOperations *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, referenceList0EntryCount, pReferenceList0Entries, referenceList1EntryCount, pReferenceList1Entries, pMemMgmtCtrlOperations);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH264ReferenceListsEXT const &) const = default;
# else
bool operator==(VideoEncodeH264ReferenceListsEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (referenceList0EntryCount == rhs.referenceList0EntryCount) &&
(pReferenceList0Entries == rhs.pReferenceList0Entries) && (referenceList1EntryCount == rhs.referenceList1EntryCount) &&
(pReferenceList1Entries == rhs.pReferenceList1Entries) && (pMemMgmtCtrlOperations == rhs.pMemMgmtCtrlOperations);
# endif
}
bool operator!=(VideoEncodeH264ReferenceListsEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264ReferenceListsEXT;
const void *pNext = {};
uint8_t referenceList0EntryCount = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT *pReferenceList0Entries = {};
uint8_t referenceList1EntryCount = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeH264DpbSlotInfoEXT *pReferenceList1Entries = {};
const StdVideoEncodeH264RefMemMgmtCtrlOperations *pMemMgmtCtrlOperations = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT) == sizeof(VkVideoEncodeH264ReferenceListsEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT>::value,
"VideoEncodeH264ReferenceListsEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH264ReferenceListsEXT>
{
using Type = VideoEncodeH264ReferenceListsEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264NaluSliceEXT
{
using NativeType = VkVideoEncodeH264NaluSliceEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264NaluSliceEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH264NaluSliceEXT(uint32_t mbCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT *pReferenceFinalLists_ = {},
const StdVideoEncodeH264SliceHeader *pSliceHeaderStd_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
mbCount(mbCount_),
pReferenceFinalLists(pReferenceFinalLists_),
pSliceHeaderStd(pSliceHeaderStd_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH264NaluSliceEXT(VideoEncodeH264NaluSliceEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264NaluSliceEXT(VkVideoEncodeH264NaluSliceEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264NaluSliceEXT(*reinterpret_cast<VideoEncodeH264NaluSliceEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264NaluSliceEXT &operator=(VideoEncodeH264NaluSliceEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264NaluSliceEXT &operator=(VkVideoEncodeH264NaluSliceEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264NaluSliceEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264NaluSliceEXT &setMbCount(uint32_t mbCount_) VULKAN_HPP_NOEXCEPT
{
mbCount = mbCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264NaluSliceEXT &
setPReferenceFinalLists(const VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT *pReferenceFinalLists_) VULKAN_HPP_NOEXCEPT
{
pReferenceFinalLists = pReferenceFinalLists_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264NaluSliceEXT &setPSliceHeaderStd(const StdVideoEncodeH264SliceHeader *pSliceHeaderStd_) VULKAN_HPP_NOEXCEPT
{
pSliceHeaderStd = pSliceHeaderStd_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH264NaluSliceEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264NaluSliceEXT *>(this);
}
explicit operator VkVideoEncodeH264NaluSliceEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264NaluSliceEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT *const &,
const StdVideoEncodeH264SliceHeader *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, mbCount, pReferenceFinalLists, pSliceHeaderStd);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH264NaluSliceEXT const &) const = default;
# else
bool operator==(VideoEncodeH264NaluSliceEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (mbCount == rhs.mbCount) && (pReferenceFinalLists == rhs.pReferenceFinalLists) &&
(pSliceHeaderStd == rhs.pSliceHeaderStd);
# endif
}
bool operator!=(VideoEncodeH264NaluSliceEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264NaluSliceEXT;
const void *pNext = {};
uint32_t mbCount = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT *pReferenceFinalLists = {};
const StdVideoEncodeH264SliceHeader *pSliceHeaderStd = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT) == sizeof(VkVideoEncodeH264NaluSliceEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT>::value,
"VideoEncodeH264NaluSliceEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH264NaluSliceEXT>
{
using Type = VideoEncodeH264NaluSliceEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264ProfileEXT
{
using NativeType = VkVideoEncodeH264ProfileEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264ProfileEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH264ProfileEXT(StdVideoH264ProfileIdc stdProfileIdc_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
stdProfileIdc(stdProfileIdc_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH264ProfileEXT(VideoEncodeH264ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264ProfileEXT(VkVideoEncodeH264ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264ProfileEXT(*reinterpret_cast<VideoEncodeH264ProfileEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264ProfileEXT &operator=(VideoEncodeH264ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264ProfileEXT &operator=(VkVideoEncodeH264ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264ProfileEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264ProfileEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264ProfileEXT &setStdProfileIdc(StdVideoH264ProfileIdc stdProfileIdc_) VULKAN_HPP_NOEXCEPT
{
stdProfileIdc = stdProfileIdc_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH264ProfileEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264ProfileEXT *>(this);
}
explicit operator VkVideoEncodeH264ProfileEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264ProfileEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, StdVideoH264ProfileIdc const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, stdProfileIdc);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(VideoEncodeH264ProfileEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = memcmp(&stdProfileIdc, &rhs.stdProfileIdc, sizeof(StdVideoH264ProfileIdc)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(VideoEncodeH264ProfileEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memcmp(&stdProfileIdc, &rhs.stdProfileIdc, sizeof(StdVideoH264ProfileIdc)) == 0);
}
bool operator!=(VideoEncodeH264ProfileEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264ProfileEXT;
const void *pNext = {};
StdVideoH264ProfileIdc stdProfileIdc = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264ProfileEXT) == sizeof(VkVideoEncodeH264ProfileEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264ProfileEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264ProfileEXT>::value,
"VideoEncodeH264ProfileEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH264ProfileEXT>
{
using Type = VideoEncodeH264ProfileEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264QpEXT
{
using NativeType = VkVideoEncodeH264QpEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH264QpEXT(int32_t qpI_ = {}, int32_t qpP_ = {}, int32_t qpB_ = {}) VULKAN_HPP_NOEXCEPT
: qpI(qpI_),
qpP(qpP_),
qpB(qpB_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH264QpEXT(VideoEncodeH264QpEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264QpEXT(VkVideoEncodeH264QpEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264QpEXT(*reinterpret_cast<VideoEncodeH264QpEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264QpEXT &operator=(VideoEncodeH264QpEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264QpEXT &operator=(VkVideoEncodeH264QpEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264QpEXT &setQpI(int32_t qpI_) VULKAN_HPP_NOEXCEPT
{
qpI = qpI_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264QpEXT &setQpP(int32_t qpP_) VULKAN_HPP_NOEXCEPT
{
qpP = qpP_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264QpEXT &setQpB(int32_t qpB_) VULKAN_HPP_NOEXCEPT
{
qpB = qpB_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH264QpEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264QpEXT *>(this);
}
explicit operator VkVideoEncodeH264QpEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264QpEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<int32_t const &, int32_t const &, int32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(qpI, qpP, qpB);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH264QpEXT const &) const = default;
# else
bool operator==(VideoEncodeH264QpEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (qpI == rhs.qpI) && (qpP == rhs.qpP) && (qpB == rhs.qpB);
# endif
}
bool operator!=(VideoEncodeH264QpEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
int32_t qpI = {};
int32_t qpP = {};
int32_t qpB = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT) == sizeof(VkVideoEncodeH264QpEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT>::value,
"VideoEncodeH264QpEXT is not nothrow_move_constructible!");
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264RateControlInfoEXT
{
using NativeType = VkVideoEncodeH264RateControlInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264RateControlInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH264RateControlInfoEXT(uint32_t gopFrameCount_ = {},
uint32_t idrPeriod_ = {},
uint32_t consecutiveBFrameCount_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlStructureFlagBitsEXT rateControlStructure_ =
VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlStructureFlagBitsEXT::eUnknown,
uint8_t temporalLayerCount_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
gopFrameCount(gopFrameCount_),
idrPeriod(idrPeriod_),
consecutiveBFrameCount(consecutiveBFrameCount_),
rateControlStructure(rateControlStructure_),
temporalLayerCount(temporalLayerCount_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH264RateControlInfoEXT(VideoEncodeH264RateControlInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264RateControlInfoEXT(VkVideoEncodeH264RateControlInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264RateControlInfoEXT(*reinterpret_cast<VideoEncodeH264RateControlInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264RateControlInfoEXT &operator=(VideoEncodeH264RateControlInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264RateControlInfoEXT &operator=(VkVideoEncodeH264RateControlInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlInfoEXT &setGopFrameCount(uint32_t gopFrameCount_) VULKAN_HPP_NOEXCEPT
{
gopFrameCount = gopFrameCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlInfoEXT &setIdrPeriod(uint32_t idrPeriod_) VULKAN_HPP_NOEXCEPT
{
idrPeriod = idrPeriod_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlInfoEXT &setConsecutiveBFrameCount(uint32_t consecutiveBFrameCount_) VULKAN_HPP_NOEXCEPT
{
consecutiveBFrameCount = consecutiveBFrameCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlInfoEXT &
setRateControlStructure(VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlStructureFlagBitsEXT rateControlStructure_) VULKAN_HPP_NOEXCEPT
{
rateControlStructure = rateControlStructure_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlInfoEXT &setTemporalLayerCount(uint8_t temporalLayerCount_) VULKAN_HPP_NOEXCEPT
{
temporalLayerCount = temporalLayerCount_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH264RateControlInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264RateControlInfoEXT *>(this);
}
explicit operator VkVideoEncodeH264RateControlInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264RateControlInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlStructureFlagBitsEXT const &,
uint8_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, gopFrameCount, idrPeriod, consecutiveBFrameCount, rateControlStructure, temporalLayerCount);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH264RateControlInfoEXT const &) const = default;
# else
bool operator==(VideoEncodeH264RateControlInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (gopFrameCount == rhs.gopFrameCount) && (idrPeriod == rhs.idrPeriod) &&
(consecutiveBFrameCount == rhs.consecutiveBFrameCount) && (rateControlStructure == rhs.rateControlStructure) &&
(temporalLayerCount == rhs.temporalLayerCount);
# endif
}
bool operator!=(VideoEncodeH264RateControlInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264RateControlInfoEXT;
const void *pNext = {};
uint32_t gopFrameCount = {};
uint32_t idrPeriod = {};
uint32_t consecutiveBFrameCount = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlStructureFlagBitsEXT rateControlStructure =
VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlStructureFlagBitsEXT::eUnknown;
uint8_t temporalLayerCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlInfoEXT) == sizeof(VkVideoEncodeH264RateControlInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlInfoEXT>::value,
"VideoEncodeH264RateControlInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH264RateControlInfoEXT>
{
using Type = VideoEncodeH264RateControlInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264RateControlLayerInfoEXT
{
using NativeType = VkVideoEncodeH264RateControlLayerInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264RateControlLayerInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH264RateControlLayerInfoEXT(uint8_t temporalLayerId_ = {},
VULKAN_HPP_NAMESPACE::Bool32 useInitialRcQp_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT initialRcQp_ = {},
VULKAN_HPP_NAMESPACE::Bool32 useMinQp_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT minQp_ = {},
VULKAN_HPP_NAMESPACE::Bool32 useMaxQp_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT maxQp_ = {},
VULKAN_HPP_NAMESPACE::Bool32 useMaxFrameSize_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH264FrameSizeEXT maxFrameSize_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
temporalLayerId(temporalLayerId_),
useInitialRcQp(useInitialRcQp_),
initialRcQp(initialRcQp_),
useMinQp(useMinQp_),
minQp(minQp_),
useMaxQp(useMaxQp_),
maxQp(maxQp_),
useMaxFrameSize(useMaxFrameSize_),
maxFrameSize(maxFrameSize_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH264RateControlLayerInfoEXT(VideoEncodeH264RateControlLayerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264RateControlLayerInfoEXT(VkVideoEncodeH264RateControlLayerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264RateControlLayerInfoEXT(*reinterpret_cast<VideoEncodeH264RateControlLayerInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264RateControlLayerInfoEXT &operator=(VideoEncodeH264RateControlLayerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264RateControlLayerInfoEXT &operator=(VkVideoEncodeH264RateControlLayerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlLayerInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlLayerInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlLayerInfoEXT &setTemporalLayerId(uint8_t temporalLayerId_) VULKAN_HPP_NOEXCEPT
{
temporalLayerId = temporalLayerId_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlLayerInfoEXT &setUseInitialRcQp(VULKAN_HPP_NAMESPACE::Bool32 useInitialRcQp_) VULKAN_HPP_NOEXCEPT
{
useInitialRcQp = useInitialRcQp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlLayerInfoEXT &
setInitialRcQp(VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT const &initialRcQp_) VULKAN_HPP_NOEXCEPT
{
initialRcQp = initialRcQp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlLayerInfoEXT &setUseMinQp(VULKAN_HPP_NAMESPACE::Bool32 useMinQp_) VULKAN_HPP_NOEXCEPT
{
useMinQp = useMinQp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlLayerInfoEXT &setMinQp(VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT const &minQp_) VULKAN_HPP_NOEXCEPT
{
minQp = minQp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlLayerInfoEXT &setUseMaxQp(VULKAN_HPP_NAMESPACE::Bool32 useMaxQp_) VULKAN_HPP_NOEXCEPT
{
useMaxQp = useMaxQp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlLayerInfoEXT &setMaxQp(VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT const &maxQp_) VULKAN_HPP_NOEXCEPT
{
maxQp = maxQp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlLayerInfoEXT &setUseMaxFrameSize(VULKAN_HPP_NAMESPACE::Bool32 useMaxFrameSize_) VULKAN_HPP_NOEXCEPT
{
useMaxFrameSize = useMaxFrameSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264RateControlLayerInfoEXT &
setMaxFrameSize(VULKAN_HPP_NAMESPACE::VideoEncodeH264FrameSizeEXT const &maxFrameSize_) VULKAN_HPP_NOEXCEPT
{
maxFrameSize = maxFrameSize_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH264RateControlLayerInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264RateControlLayerInfoEXT *>(this);
}
explicit operator VkVideoEncodeH264RateControlLayerInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264RateControlLayerInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint8_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH264FrameSizeEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, temporalLayerId, useInitialRcQp, initialRcQp, useMinQp, minQp, useMaxQp, maxQp, useMaxFrameSize, maxFrameSize);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH264RateControlLayerInfoEXT const &) const = default;
# else
bool operator==(VideoEncodeH264RateControlLayerInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (temporalLayerId == rhs.temporalLayerId) && (useInitialRcQp == rhs.useInitialRcQp) &&
(initialRcQp == rhs.initialRcQp) && (useMinQp == rhs.useMinQp) && (minQp == rhs.minQp) && (useMaxQp == rhs.useMaxQp) &&
(maxQp == rhs.maxQp) && (useMaxFrameSize == rhs.useMaxFrameSize) && (maxFrameSize == rhs.maxFrameSize);
# endif
}
bool operator!=(VideoEncodeH264RateControlLayerInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264RateControlLayerInfoEXT;
const void *pNext = {};
uint8_t temporalLayerId = {};
VULKAN_HPP_NAMESPACE::Bool32 useInitialRcQp = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT initialRcQp = {};
VULKAN_HPP_NAMESPACE::Bool32 useMinQp = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT minQp = {};
VULKAN_HPP_NAMESPACE::Bool32 useMaxQp = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH264QpEXT maxQp = {};
VULKAN_HPP_NAMESPACE::Bool32 useMaxFrameSize = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH264FrameSizeEXT maxFrameSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlLayerInfoEXT) == sizeof(VkVideoEncodeH264RateControlLayerInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlLayerInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264RateControlLayerInfoEXT>::value,
"VideoEncodeH264RateControlLayerInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH264RateControlLayerInfoEXT>
{
using Type = VideoEncodeH264RateControlLayerInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264SessionParametersAddInfoEXT
{
using NativeType = VkVideoEncodeH264SessionParametersAddInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264SessionParametersAddInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH264SessionParametersAddInfoEXT(uint32_t spsStdCount_ = {},
const StdVideoH264SequenceParameterSet *pSpsStd_ = {},
uint32_t ppsStdCount_ = {},
const StdVideoH264PictureParameterSet *pPpsStd_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
spsStdCount(spsStdCount_),
pSpsStd(pSpsStd_),
ppsStdCount(ppsStdCount_),
pPpsStd(pPpsStd_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH264SessionParametersAddInfoEXT(VideoEncodeH264SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264SessionParametersAddInfoEXT(VkVideoEncodeH264SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264SessionParametersAddInfoEXT(*reinterpret_cast<VideoEncodeH264SessionParametersAddInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH264SessionParametersAddInfoEXT(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264SequenceParameterSet> const &spsStd_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264PictureParameterSet> const &ppsStd_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, spsStdCount(static_cast<uint32_t>(spsStd_.size()))
, pSpsStd(spsStd_.data())
, ppsStdCount(static_cast<uint32_t>(ppsStd_.size()))
, pPpsStd(ppsStd_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264SessionParametersAddInfoEXT &operator=(VideoEncodeH264SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264SessionParametersAddInfoEXT &operator=(VkVideoEncodeH264SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersAddInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionParametersAddInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionParametersAddInfoEXT &setSpsStdCount(uint32_t spsStdCount_) VULKAN_HPP_NOEXCEPT
{
spsStdCount = spsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionParametersAddInfoEXT &setPSpsStd(const StdVideoH264SequenceParameterSet *pSpsStd_) VULKAN_HPP_NOEXCEPT
{
pSpsStd = pSpsStd_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH264SessionParametersAddInfoEXT &
setSpsStd(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264SequenceParameterSet> const &spsStd_) VULKAN_HPP_NOEXCEPT
{
spsStdCount = static_cast<uint32_t>(spsStd_.size());
pSpsStd = spsStd_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionParametersAddInfoEXT &setPpsStdCount(uint32_t ppsStdCount_) VULKAN_HPP_NOEXCEPT
{
ppsStdCount = ppsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionParametersAddInfoEXT &setPPpsStd(const StdVideoH264PictureParameterSet *pPpsStd_) VULKAN_HPP_NOEXCEPT
{
pPpsStd = pPpsStd_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH264SessionParametersAddInfoEXT &
setPpsStd(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH264PictureParameterSet> const &ppsStd_) VULKAN_HPP_NOEXCEPT
{
ppsStdCount = static_cast<uint32_t>(ppsStd_.size());
pPpsStd = ppsStd_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH264SessionParametersAddInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264SessionParametersAddInfoEXT *>(this);
}
explicit operator VkVideoEncodeH264SessionParametersAddInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264SessionParametersAddInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const StdVideoH264SequenceParameterSet *const &,
uint32_t const &,
const StdVideoH264PictureParameterSet *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, spsStdCount, pSpsStd, ppsStdCount, pPpsStd);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH264SessionParametersAddInfoEXT const &) const = default;
# else
bool operator==(VideoEncodeH264SessionParametersAddInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (spsStdCount == rhs.spsStdCount) && (pSpsStd == rhs.pSpsStd) &&
(ppsStdCount == rhs.ppsStdCount) && (pPpsStd == rhs.pPpsStd);
# endif
}
bool operator!=(VideoEncodeH264SessionParametersAddInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264SessionParametersAddInfoEXT;
const void *pNext = {};
uint32_t spsStdCount = {};
const StdVideoH264SequenceParameterSet *pSpsStd = {};
uint32_t ppsStdCount = {};
const StdVideoH264PictureParameterSet *pPpsStd = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersAddInfoEXT) ==
sizeof(VkVideoEncodeH264SessionParametersAddInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersAddInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersAddInfoEXT>::value,
"VideoEncodeH264SessionParametersAddInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH264SessionParametersAddInfoEXT>
{
using Type = VideoEncodeH264SessionParametersAddInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264SessionParametersCreateInfoEXT
{
using NativeType = VkVideoEncodeH264SessionParametersCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264SessionParametersCreateInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
VideoEncodeH264SessionParametersCreateInfoEXT(uint32_t maxSpsStdCount_ = {},
uint32_t maxPpsStdCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersAddInfoEXT *pParametersAddInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxSpsStdCount(maxSpsStdCount_),
maxPpsStdCount(maxPpsStdCount_),
pParametersAddInfo(pParametersAddInfo_)
{
}
VULKAN_HPP_CONSTEXPR
VideoEncodeH264SessionParametersCreateInfoEXT(VideoEncodeH264SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264SessionParametersCreateInfoEXT(VkVideoEncodeH264SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264SessionParametersCreateInfoEXT(*reinterpret_cast<VideoEncodeH264SessionParametersCreateInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264SessionParametersCreateInfoEXT &operator=(VideoEncodeH264SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264SessionParametersCreateInfoEXT &operator=(VkVideoEncodeH264SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersCreateInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionParametersCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionParametersCreateInfoEXT &setMaxSpsStdCount(uint32_t maxSpsStdCount_) VULKAN_HPP_NOEXCEPT
{
maxSpsStdCount = maxSpsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionParametersCreateInfoEXT &setMaxPpsStdCount(uint32_t maxPpsStdCount_) VULKAN_HPP_NOEXCEPT
{
maxPpsStdCount = maxPpsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264SessionParametersCreateInfoEXT &
setPParametersAddInfo(const VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersAddInfoEXT *pParametersAddInfo_) VULKAN_HPP_NOEXCEPT
{
pParametersAddInfo = pParametersAddInfo_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH264SessionParametersCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264SessionParametersCreateInfoEXT *>(this);
}
explicit operator VkVideoEncodeH264SessionParametersCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264SessionParametersCreateInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersAddInfoEXT *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxSpsStdCount, maxPpsStdCount, pParametersAddInfo);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH264SessionParametersCreateInfoEXT const &) const = default;
# else
bool operator==(VideoEncodeH264SessionParametersCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxSpsStdCount == rhs.maxSpsStdCount) && (maxPpsStdCount == rhs.maxPpsStdCount) &&
(pParametersAddInfo == rhs.pParametersAddInfo);
# endif
}
bool operator!=(VideoEncodeH264SessionParametersCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264SessionParametersCreateInfoEXT;
const void *pNext = {};
uint32_t maxSpsStdCount = {};
uint32_t maxPpsStdCount = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersAddInfoEXT *pParametersAddInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersCreateInfoEXT) ==
sizeof(VkVideoEncodeH264SessionParametersCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264SessionParametersCreateInfoEXT>::value,
"VideoEncodeH264SessionParametersCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH264SessionParametersCreateInfoEXT>
{
using Type = VideoEncodeH264SessionParametersCreateInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH264VclFrameInfoEXT
{
using NativeType = VkVideoEncodeH264VclFrameInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH264VclFrameInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH264VclFrameInfoEXT(const VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT *pReferenceFinalLists_ = {},
uint32_t naluSliceEntryCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT *pNaluSliceEntries_ = {},
const StdVideoEncodeH264PictureInfo *pCurrentPictureInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pReferenceFinalLists(pReferenceFinalLists_),
naluSliceEntryCount(naluSliceEntryCount_),
pNaluSliceEntries(pNaluSliceEntries_),
pCurrentPictureInfo(pCurrentPictureInfo_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH264VclFrameInfoEXT(VideoEncodeH264VclFrameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264VclFrameInfoEXT(VkVideoEncodeH264VclFrameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH264VclFrameInfoEXT(*reinterpret_cast<VideoEncodeH264VclFrameInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH264VclFrameInfoEXT(
const VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT *pReferenceFinalLists_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT> const &naluSliceEntries_,
const StdVideoEncodeH264PictureInfo *pCurrentPictureInfo_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, pReferenceFinalLists(pReferenceFinalLists_)
, naluSliceEntryCount(static_cast<uint32_t>(naluSliceEntries_.size()))
, pNaluSliceEntries(naluSliceEntries_.data())
, pCurrentPictureInfo(pCurrentPictureInfo_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH264VclFrameInfoEXT &operator=(VideoEncodeH264VclFrameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH264VclFrameInfoEXT &operator=(VkVideoEncodeH264VclFrameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH264VclFrameInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264VclFrameInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264VclFrameInfoEXT &
setPReferenceFinalLists(const VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT *pReferenceFinalLists_) VULKAN_HPP_NOEXCEPT
{
pReferenceFinalLists = pReferenceFinalLists_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264VclFrameInfoEXT &setNaluSliceEntryCount(uint32_t naluSliceEntryCount_) VULKAN_HPP_NOEXCEPT
{
naluSliceEntryCount = naluSliceEntryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264VclFrameInfoEXT &
setPNaluSliceEntries(const VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT *pNaluSliceEntries_) VULKAN_HPP_NOEXCEPT
{
pNaluSliceEntries = pNaluSliceEntries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH264VclFrameInfoEXT &setNaluSliceEntries(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT> const &naluSliceEntries_) VULKAN_HPP_NOEXCEPT
{
naluSliceEntryCount = static_cast<uint32_t>(naluSliceEntries_.size());
pNaluSliceEntries = naluSliceEntries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH264VclFrameInfoEXT &
setPCurrentPictureInfo(const StdVideoEncodeH264PictureInfo *pCurrentPictureInfo_) VULKAN_HPP_NOEXCEPT
{
pCurrentPictureInfo = pCurrentPictureInfo_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH264VclFrameInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH264VclFrameInfoEXT *>(this);
}
explicit operator VkVideoEncodeH264VclFrameInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH264VclFrameInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT *const &,
const StdVideoEncodeH264PictureInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pReferenceFinalLists, naluSliceEntryCount, pNaluSliceEntries, pCurrentPictureInfo);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH264VclFrameInfoEXT const &) const = default;
# else
bool operator==(VideoEncodeH264VclFrameInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pReferenceFinalLists == rhs.pReferenceFinalLists) &&
(naluSliceEntryCount == rhs.naluSliceEntryCount) && (pNaluSliceEntries == rhs.pNaluSliceEntries) &&
(pCurrentPictureInfo == rhs.pCurrentPictureInfo);
# endif
}
bool operator!=(VideoEncodeH264VclFrameInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH264VclFrameInfoEXT;
const void *pNext = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeH264ReferenceListsEXT *pReferenceFinalLists = {};
uint32_t naluSliceEntryCount = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeH264NaluSliceEXT *pNaluSliceEntries = {};
const StdVideoEncodeH264PictureInfo *pCurrentPictureInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH264VclFrameInfoEXT) == sizeof(VkVideoEncodeH264VclFrameInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH264VclFrameInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH264VclFrameInfoEXT>::value,
"VideoEncodeH264VclFrameInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH264VclFrameInfoEXT>
{
using Type = VideoEncodeH264VclFrameInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265CapabilitiesEXT
{
using NativeType = VkVideoEncodeH265CapabilitiesEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH265CapabilitiesEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH265CapabilitiesEXT(VULKAN_HPP_NAMESPACE::VideoEncodeH265CapabilityFlagsEXT flags_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH265InputModeFlagsEXT inputModeFlags_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH265OutputModeFlagsEXT outputModeFlags_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH265CtbSizeFlagsEXT ctbSizes_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH265TransformBlockSizeFlagsEXT transformBlockSizes_ = {},
uint8_t maxPPictureL0ReferenceCount_ = {},
uint8_t maxBPictureL0ReferenceCount_ = {},
uint8_t maxL1ReferenceCount_ = {},
uint8_t maxSubLayersCount_ = {},
uint8_t minLog2MinLumaCodingBlockSizeMinus3_ = {},
uint8_t maxLog2MinLumaCodingBlockSizeMinus3_ = {},
uint8_t minLog2MinLumaTransformBlockSizeMinus2_ = {},
uint8_t maxLog2MinLumaTransformBlockSizeMinus2_ = {},
uint8_t minMaxTransformHierarchyDepthInter_ = {},
uint8_t maxMaxTransformHierarchyDepthInter_ = {},
uint8_t minMaxTransformHierarchyDepthIntra_ = {},
uint8_t maxMaxTransformHierarchyDepthIntra_ = {},
uint8_t maxDiffCuQpDeltaDepth_ = {},
uint8_t minMaxNumMergeCand_ = {},
uint8_t maxMaxNumMergeCand_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
inputModeFlags(inputModeFlags_),
outputModeFlags(outputModeFlags_),
ctbSizes(ctbSizes_),
transformBlockSizes(transformBlockSizes_),
maxPPictureL0ReferenceCount(maxPPictureL0ReferenceCount_),
maxBPictureL0ReferenceCount(maxBPictureL0ReferenceCount_),
maxL1ReferenceCount(maxL1ReferenceCount_),
maxSubLayersCount(maxSubLayersCount_),
minLog2MinLumaCodingBlockSizeMinus3(minLog2MinLumaCodingBlockSizeMinus3_),
maxLog2MinLumaCodingBlockSizeMinus3(maxLog2MinLumaCodingBlockSizeMinus3_),
minLog2MinLumaTransformBlockSizeMinus2(minLog2MinLumaTransformBlockSizeMinus2_),
maxLog2MinLumaTransformBlockSizeMinus2(maxLog2MinLumaTransformBlockSizeMinus2_),
minMaxTransformHierarchyDepthInter(minMaxTransformHierarchyDepthInter_),
maxMaxTransformHierarchyDepthInter(maxMaxTransformHierarchyDepthInter_),
minMaxTransformHierarchyDepthIntra(minMaxTransformHierarchyDepthIntra_),
maxMaxTransformHierarchyDepthIntra(maxMaxTransformHierarchyDepthIntra_),
maxDiffCuQpDeltaDepth(maxDiffCuQpDeltaDepth_),
minMaxNumMergeCand(minMaxNumMergeCand_),
maxMaxNumMergeCand(maxMaxNumMergeCand_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH265CapabilitiesEXT(VideoEncodeH265CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265CapabilitiesEXT(VkVideoEncodeH265CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265CapabilitiesEXT(*reinterpret_cast<VideoEncodeH265CapabilitiesEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265CapabilitiesEXT &operator=(VideoEncodeH265CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265CapabilitiesEXT &operator=(VkVideoEncodeH265CapabilitiesEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265CapabilitiesEXT const *>(&rhs);
return *this;
}
explicit operator VkVideoEncodeH265CapabilitiesEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265CapabilitiesEXT *>(this);
}
explicit operator VkVideoEncodeH265CapabilitiesEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265CapabilitiesEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
void *const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH265CapabilityFlagsEXT const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH265InputModeFlagsEXT const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH265OutputModeFlagsEXT const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH265CtbSizeFlagsEXT const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH265TransformBlockSizeFlagsEXT const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
uint8_t const &,
uint8_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
inputModeFlags,
outputModeFlags,
ctbSizes,
transformBlockSizes,
maxPPictureL0ReferenceCount,
maxBPictureL0ReferenceCount,
maxL1ReferenceCount,
maxSubLayersCount,
minLog2MinLumaCodingBlockSizeMinus3,
maxLog2MinLumaCodingBlockSizeMinus3,
minLog2MinLumaTransformBlockSizeMinus2,
maxLog2MinLumaTransformBlockSizeMinus2,
minMaxTransformHierarchyDepthInter,
maxMaxTransformHierarchyDepthInter,
minMaxTransformHierarchyDepthIntra,
maxMaxTransformHierarchyDepthIntra,
maxDiffCuQpDeltaDepth,
minMaxNumMergeCand,
maxMaxNumMergeCand);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH265CapabilitiesEXT const &) const = default;
# else
bool operator==(VideoEncodeH265CapabilitiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (inputModeFlags == rhs.inputModeFlags) &&
(outputModeFlags == rhs.outputModeFlags) && (ctbSizes == rhs.ctbSizes) && (transformBlockSizes == rhs.transformBlockSizes) &&
(maxPPictureL0ReferenceCount == rhs.maxPPictureL0ReferenceCount) && (maxBPictureL0ReferenceCount == rhs.maxBPictureL0ReferenceCount) &&
(maxL1ReferenceCount == rhs.maxL1ReferenceCount) && (maxSubLayersCount == rhs.maxSubLayersCount) &&
(minLog2MinLumaCodingBlockSizeMinus3 == rhs.minLog2MinLumaCodingBlockSizeMinus3) &&
(maxLog2MinLumaCodingBlockSizeMinus3 == rhs.maxLog2MinLumaCodingBlockSizeMinus3) &&
(minLog2MinLumaTransformBlockSizeMinus2 == rhs.minLog2MinLumaTransformBlockSizeMinus2) &&
(maxLog2MinLumaTransformBlockSizeMinus2 == rhs.maxLog2MinLumaTransformBlockSizeMinus2) &&
(minMaxTransformHierarchyDepthInter == rhs.minMaxTransformHierarchyDepthInter) &&
(maxMaxTransformHierarchyDepthInter == rhs.maxMaxTransformHierarchyDepthInter) &&
(minMaxTransformHierarchyDepthIntra == rhs.minMaxTransformHierarchyDepthIntra) &&
(maxMaxTransformHierarchyDepthIntra == rhs.maxMaxTransformHierarchyDepthIntra) && (maxDiffCuQpDeltaDepth == rhs.maxDiffCuQpDeltaDepth) &&
(minMaxNumMergeCand == rhs.minMaxNumMergeCand) && (maxMaxNumMergeCand == rhs.maxMaxNumMergeCand);
# endif
}
bool operator!=(VideoEncodeH265CapabilitiesEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH265CapabilitiesEXT;
void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH265CapabilityFlagsEXT flags = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH265InputModeFlagsEXT inputModeFlags = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH265OutputModeFlagsEXT outputModeFlags = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH265CtbSizeFlagsEXT ctbSizes = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH265TransformBlockSizeFlagsEXT transformBlockSizes = {};
uint8_t maxPPictureL0ReferenceCount = {};
uint8_t maxBPictureL0ReferenceCount = {};
uint8_t maxL1ReferenceCount = {};
uint8_t maxSubLayersCount = {};
uint8_t minLog2MinLumaCodingBlockSizeMinus3 = {};
uint8_t maxLog2MinLumaCodingBlockSizeMinus3 = {};
uint8_t minLog2MinLumaTransformBlockSizeMinus2 = {};
uint8_t maxLog2MinLumaTransformBlockSizeMinus2 = {};
uint8_t minMaxTransformHierarchyDepthInter = {};
uint8_t maxMaxTransformHierarchyDepthInter = {};
uint8_t minMaxTransformHierarchyDepthIntra = {};
uint8_t maxMaxTransformHierarchyDepthIntra = {};
uint8_t maxDiffCuQpDeltaDepth = {};
uint8_t minMaxNumMergeCand = {};
uint8_t maxMaxNumMergeCand = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265CapabilitiesEXT) == sizeof(VkVideoEncodeH265CapabilitiesEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265CapabilitiesEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265CapabilitiesEXT>::value,
"VideoEncodeH265CapabilitiesEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH265CapabilitiesEXT>
{
using Type = VideoEncodeH265CapabilitiesEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265DpbSlotInfoEXT
{
using NativeType = VkVideoEncodeH265DpbSlotInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH265DpbSlotInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH265DpbSlotInfoEXT(int8_t slotIndex_ = {},
const StdVideoEncodeH265ReferenceInfo *pStdReferenceInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
slotIndex(slotIndex_),
pStdReferenceInfo(pStdReferenceInfo_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH265DpbSlotInfoEXT(VideoEncodeH265DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265DpbSlotInfoEXT(VkVideoEncodeH265DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265DpbSlotInfoEXT(*reinterpret_cast<VideoEncodeH265DpbSlotInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265DpbSlotInfoEXT &operator=(VideoEncodeH265DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265DpbSlotInfoEXT &operator=(VkVideoEncodeH265DpbSlotInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265DpbSlotInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265DpbSlotInfoEXT &setSlotIndex(int8_t slotIndex_) VULKAN_HPP_NOEXCEPT
{
slotIndex = slotIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265DpbSlotInfoEXT &
setPStdReferenceInfo(const StdVideoEncodeH265ReferenceInfo *pStdReferenceInfo_) VULKAN_HPP_NOEXCEPT
{
pStdReferenceInfo = pStdReferenceInfo_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH265DpbSlotInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265DpbSlotInfoEXT *>(this);
}
explicit operator VkVideoEncodeH265DpbSlotInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265DpbSlotInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, int8_t const &, const StdVideoEncodeH265ReferenceInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, slotIndex, pStdReferenceInfo);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH265DpbSlotInfoEXT const &) const = default;
# else
bool operator==(VideoEncodeH265DpbSlotInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (slotIndex == rhs.slotIndex) && (pStdReferenceInfo == rhs.pStdReferenceInfo);
# endif
}
bool operator!=(VideoEncodeH265DpbSlotInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH265DpbSlotInfoEXT;
const void *pNext = {};
int8_t slotIndex = {};
const StdVideoEncodeH265ReferenceInfo *pStdReferenceInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT) == sizeof(VkVideoEncodeH265DpbSlotInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT>::value,
"VideoEncodeH265DpbSlotInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH265DpbSlotInfoEXT>
{
using Type = VideoEncodeH265DpbSlotInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265EmitPictureParametersEXT
{
using NativeType = VkVideoEncodeH265EmitPictureParametersEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH265EmitPictureParametersEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH265EmitPictureParametersEXT(uint8_t vpsId_ = {},
uint8_t spsId_ = {},
VULKAN_HPP_NAMESPACE::Bool32 emitVpsEnable_ = {},
VULKAN_HPP_NAMESPACE::Bool32 emitSpsEnable_ = {},
uint32_t ppsIdEntryCount_ = {},
const uint8_t *ppsIdEntries_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
vpsId(vpsId_),
spsId(spsId_),
emitVpsEnable(emitVpsEnable_),
emitSpsEnable(emitSpsEnable_),
ppsIdEntryCount(ppsIdEntryCount_),
ppsIdEntries(ppsIdEntries_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH265EmitPictureParametersEXT(VideoEncodeH265EmitPictureParametersEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265EmitPictureParametersEXT(VkVideoEncodeH265EmitPictureParametersEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265EmitPictureParametersEXT(*reinterpret_cast<VideoEncodeH265EmitPictureParametersEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH265EmitPictureParametersEXT(uint8_t vpsId_,
uint8_t spsId_,
VULKAN_HPP_NAMESPACE::Bool32 emitVpsEnable_,
VULKAN_HPP_NAMESPACE::Bool32 emitSpsEnable_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint8_t> const &psIdEntries_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, vpsId(vpsId_)
, spsId(spsId_)
, emitVpsEnable(emitVpsEnable_)
, emitSpsEnable(emitSpsEnable_)
, ppsIdEntryCount(static_cast<uint32_t>(psIdEntries_.size()))
, ppsIdEntries(psIdEntries_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265EmitPictureParametersEXT &operator=(VideoEncodeH265EmitPictureParametersEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265EmitPictureParametersEXT &operator=(VkVideoEncodeH265EmitPictureParametersEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265EmitPictureParametersEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265EmitPictureParametersEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265EmitPictureParametersEXT &setVpsId(uint8_t vpsId_) VULKAN_HPP_NOEXCEPT
{
vpsId = vpsId_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265EmitPictureParametersEXT &setSpsId(uint8_t spsId_) VULKAN_HPP_NOEXCEPT
{
spsId = spsId_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265EmitPictureParametersEXT &setEmitVpsEnable(VULKAN_HPP_NAMESPACE::Bool32 emitVpsEnable_) VULKAN_HPP_NOEXCEPT
{
emitVpsEnable = emitVpsEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265EmitPictureParametersEXT &setEmitSpsEnable(VULKAN_HPP_NAMESPACE::Bool32 emitSpsEnable_) VULKAN_HPP_NOEXCEPT
{
emitSpsEnable = emitSpsEnable_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265EmitPictureParametersEXT &setPpsIdEntryCount(uint32_t ppsIdEntryCount_) VULKAN_HPP_NOEXCEPT
{
ppsIdEntryCount = ppsIdEntryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265EmitPictureParametersEXT &setPpsIdEntries(const uint8_t *ppsIdEntries_) VULKAN_HPP_NOEXCEPT
{
ppsIdEntries = ppsIdEntries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH265EmitPictureParametersEXT &
setPsIdEntries(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint8_t> const &psIdEntries_) VULKAN_HPP_NOEXCEPT
{
ppsIdEntryCount = static_cast<uint32_t>(psIdEntries_.size());
ppsIdEntries = psIdEntries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH265EmitPictureParametersEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265EmitPictureParametersEXT *>(this);
}
explicit operator VkVideoEncodeH265EmitPictureParametersEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265EmitPictureParametersEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint8_t const &,
uint8_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
uint32_t const &,
const uint8_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, vpsId, spsId, emitVpsEnable, emitSpsEnable, ppsIdEntryCount, ppsIdEntries);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH265EmitPictureParametersEXT const &) const = default;
# else
bool operator==(VideoEncodeH265EmitPictureParametersEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (vpsId == rhs.vpsId) && (spsId == rhs.spsId) && (emitVpsEnable == rhs.emitVpsEnable) &&
(emitSpsEnable == rhs.emitSpsEnable) && (ppsIdEntryCount == rhs.ppsIdEntryCount) && (ppsIdEntries == rhs.ppsIdEntries);
# endif
}
bool operator!=(VideoEncodeH265EmitPictureParametersEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH265EmitPictureParametersEXT;
const void *pNext = {};
uint8_t vpsId = {};
uint8_t spsId = {};
VULKAN_HPP_NAMESPACE::Bool32 emitVpsEnable = {};
VULKAN_HPP_NAMESPACE::Bool32 emitSpsEnable = {};
uint32_t ppsIdEntryCount = {};
const uint8_t *ppsIdEntries = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265EmitPictureParametersEXT) == sizeof(VkVideoEncodeH265EmitPictureParametersEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265EmitPictureParametersEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265EmitPictureParametersEXT>::value,
"VideoEncodeH265EmitPictureParametersEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH265EmitPictureParametersEXT>
{
using Type = VideoEncodeH265EmitPictureParametersEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265FrameSizeEXT
{
using NativeType = VkVideoEncodeH265FrameSizeEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH265FrameSizeEXT(uint32_t frameISize_ = {}, uint32_t framePSize_ = {}, uint32_t frameBSize_ = {}) VULKAN_HPP_NOEXCEPT
: frameISize(frameISize_),
framePSize(framePSize_),
frameBSize(frameBSize_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH265FrameSizeEXT(VideoEncodeH265FrameSizeEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265FrameSizeEXT(VkVideoEncodeH265FrameSizeEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265FrameSizeEXT(*reinterpret_cast<VideoEncodeH265FrameSizeEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265FrameSizeEXT &operator=(VideoEncodeH265FrameSizeEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265FrameSizeEXT &operator=(VkVideoEncodeH265FrameSizeEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265FrameSizeEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265FrameSizeEXT &setFrameISize(uint32_t frameISize_) VULKAN_HPP_NOEXCEPT
{
frameISize = frameISize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265FrameSizeEXT &setFramePSize(uint32_t framePSize_) VULKAN_HPP_NOEXCEPT
{
framePSize = framePSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265FrameSizeEXT &setFrameBSize(uint32_t frameBSize_) VULKAN_HPP_NOEXCEPT
{
frameBSize = frameBSize_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH265FrameSizeEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265FrameSizeEXT *>(this);
}
explicit operator VkVideoEncodeH265FrameSizeEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265FrameSizeEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<uint32_t const &, uint32_t const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(frameISize, framePSize, frameBSize);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH265FrameSizeEXT const &) const = default;
# else
bool operator==(VideoEncodeH265FrameSizeEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (frameISize == rhs.frameISize) && (framePSize == rhs.framePSize) && (frameBSize == rhs.frameBSize);
# endif
}
bool operator!=(VideoEncodeH265FrameSizeEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
uint32_t frameISize = {};
uint32_t framePSize = {};
uint32_t frameBSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265FrameSizeEXT) == sizeof(VkVideoEncodeH265FrameSizeEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265FrameSizeEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265FrameSizeEXT>::value,
"VideoEncodeH265FrameSizeEXT is not nothrow_move_constructible!");
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265ReferenceListsEXT
{
using NativeType = VkVideoEncodeH265ReferenceListsEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH265ReferenceListsEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH265ReferenceListsEXT(uint8_t referenceList0EntryCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT *pReferenceList0Entries_ = {},
uint8_t referenceList1EntryCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT *pReferenceList1Entries_ = {},
const StdVideoEncodeH265ReferenceModifications *pReferenceModifications_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
referenceList0EntryCount(referenceList0EntryCount_),
pReferenceList0Entries(pReferenceList0Entries_),
referenceList1EntryCount(referenceList1EntryCount_),
pReferenceList1Entries(pReferenceList1Entries_),
pReferenceModifications(pReferenceModifications_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH265ReferenceListsEXT(VideoEncodeH265ReferenceListsEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265ReferenceListsEXT(VkVideoEncodeH265ReferenceListsEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265ReferenceListsEXT(*reinterpret_cast<VideoEncodeH265ReferenceListsEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH265ReferenceListsEXT(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT> const &referenceList0Entries_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT> const &referenceList1Entries_ = {},
const StdVideoEncodeH265ReferenceModifications *pReferenceModifications_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, referenceList0EntryCount(static_cast<uint8_t>(referenceList0Entries_.size()))
, pReferenceList0Entries(referenceList0Entries_.data())
, referenceList1EntryCount(static_cast<uint8_t>(referenceList1Entries_.size()))
, pReferenceList1Entries(referenceList1Entries_.data())
, pReferenceModifications(pReferenceModifications_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265ReferenceListsEXT &operator=(VideoEncodeH265ReferenceListsEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265ReferenceListsEXT &operator=(VkVideoEncodeH265ReferenceListsEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265ReferenceListsEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265ReferenceListsEXT &setReferenceList0EntryCount(uint8_t referenceList0EntryCount_) VULKAN_HPP_NOEXCEPT
{
referenceList0EntryCount = referenceList0EntryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265ReferenceListsEXT &
setPReferenceList0Entries(const VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT *pReferenceList0Entries_) VULKAN_HPP_NOEXCEPT
{
pReferenceList0Entries = pReferenceList0Entries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH265ReferenceListsEXT &setReferenceList0Entries(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT> const &referenceList0Entries_)
VULKAN_HPP_NOEXCEPT
{
referenceList0EntryCount = static_cast<uint8_t>(referenceList0Entries_.size());
pReferenceList0Entries = referenceList0Entries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265ReferenceListsEXT &setReferenceList1EntryCount(uint8_t referenceList1EntryCount_) VULKAN_HPP_NOEXCEPT
{
referenceList1EntryCount = referenceList1EntryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265ReferenceListsEXT &
setPReferenceList1Entries(const VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT *pReferenceList1Entries_) VULKAN_HPP_NOEXCEPT
{
pReferenceList1Entries = pReferenceList1Entries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH265ReferenceListsEXT &setReferenceList1Entries(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT> const &referenceList1Entries_)
VULKAN_HPP_NOEXCEPT
{
referenceList1EntryCount = static_cast<uint8_t>(referenceList1Entries_.size());
pReferenceList1Entries = referenceList1Entries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265ReferenceListsEXT &
setPReferenceModifications(const StdVideoEncodeH265ReferenceModifications *pReferenceModifications_) VULKAN_HPP_NOEXCEPT
{
pReferenceModifications = pReferenceModifications_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH265ReferenceListsEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265ReferenceListsEXT *>(this);
}
explicit operator VkVideoEncodeH265ReferenceListsEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265ReferenceListsEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint8_t const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT *const &,
uint8_t const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT *const &,
const StdVideoEncodeH265ReferenceModifications *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, referenceList0EntryCount, pReferenceList0Entries, referenceList1EntryCount, pReferenceList1Entries, pReferenceModifications);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH265ReferenceListsEXT const &) const = default;
# else
bool operator==(VideoEncodeH265ReferenceListsEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (referenceList0EntryCount == rhs.referenceList0EntryCount) &&
(pReferenceList0Entries == rhs.pReferenceList0Entries) && (referenceList1EntryCount == rhs.referenceList1EntryCount) &&
(pReferenceList1Entries == rhs.pReferenceList1Entries) && (pReferenceModifications == rhs.pReferenceModifications);
# endif
}
bool operator!=(VideoEncodeH265ReferenceListsEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH265ReferenceListsEXT;
const void *pNext = {};
uint8_t referenceList0EntryCount = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT *pReferenceList0Entries = {};
uint8_t referenceList1EntryCount = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeH265DpbSlotInfoEXT *pReferenceList1Entries = {};
const StdVideoEncodeH265ReferenceModifications *pReferenceModifications = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT) == sizeof(VkVideoEncodeH265ReferenceListsEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT>::value,
"VideoEncodeH265ReferenceListsEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH265ReferenceListsEXT>
{
using Type = VideoEncodeH265ReferenceListsEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265NaluSliceSegmentEXT
{
using NativeType = VkVideoEncodeH265NaluSliceSegmentEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH265NaluSliceSegmentEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH265NaluSliceSegmentEXT(uint32_t ctbCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT *pReferenceFinalLists_ = {},
const StdVideoEncodeH265SliceSegmentHeader *pSliceSegmentHeaderStd_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
ctbCount(ctbCount_),
pReferenceFinalLists(pReferenceFinalLists_),
pSliceSegmentHeaderStd(pSliceSegmentHeaderStd_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH265NaluSliceSegmentEXT(VideoEncodeH265NaluSliceSegmentEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265NaluSliceSegmentEXT(VkVideoEncodeH265NaluSliceSegmentEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265NaluSliceSegmentEXT(*reinterpret_cast<VideoEncodeH265NaluSliceSegmentEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265NaluSliceSegmentEXT &operator=(VideoEncodeH265NaluSliceSegmentEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265NaluSliceSegmentEXT &operator=(VkVideoEncodeH265NaluSliceSegmentEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265NaluSliceSegmentEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265NaluSliceSegmentEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265NaluSliceSegmentEXT &setCtbCount(uint32_t ctbCount_) VULKAN_HPP_NOEXCEPT
{
ctbCount = ctbCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265NaluSliceSegmentEXT &
setPReferenceFinalLists(const VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT *pReferenceFinalLists_) VULKAN_HPP_NOEXCEPT
{
pReferenceFinalLists = pReferenceFinalLists_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265NaluSliceSegmentEXT &
setPSliceSegmentHeaderStd(const StdVideoEncodeH265SliceSegmentHeader *pSliceSegmentHeaderStd_) VULKAN_HPP_NOEXCEPT
{
pSliceSegmentHeaderStd = pSliceSegmentHeaderStd_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH265NaluSliceSegmentEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265NaluSliceSegmentEXT *>(this);
}
explicit operator VkVideoEncodeH265NaluSliceSegmentEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265NaluSliceSegmentEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT *const &,
const StdVideoEncodeH265SliceSegmentHeader *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, ctbCount, pReferenceFinalLists, pSliceSegmentHeaderStd);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH265NaluSliceSegmentEXT const &) const = default;
# else
bool operator==(VideoEncodeH265NaluSliceSegmentEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (ctbCount == rhs.ctbCount) && (pReferenceFinalLists == rhs.pReferenceFinalLists) &&
(pSliceSegmentHeaderStd == rhs.pSliceSegmentHeaderStd);
# endif
}
bool operator!=(VideoEncodeH265NaluSliceSegmentEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH265NaluSliceSegmentEXT;
const void *pNext = {};
uint32_t ctbCount = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT *pReferenceFinalLists = {};
const StdVideoEncodeH265SliceSegmentHeader *pSliceSegmentHeaderStd = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265NaluSliceSegmentEXT) == sizeof(VkVideoEncodeH265NaluSliceSegmentEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265NaluSliceSegmentEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265NaluSliceSegmentEXT>::value,
"VideoEncodeH265NaluSliceSegmentEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH265NaluSliceSegmentEXT>
{
using Type = VideoEncodeH265NaluSliceSegmentEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265ProfileEXT
{
using NativeType = VkVideoEncodeH265ProfileEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH265ProfileEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH265ProfileEXT(StdVideoH265ProfileIdc stdProfileIdc_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
stdProfileIdc(stdProfileIdc_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH265ProfileEXT(VideoEncodeH265ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265ProfileEXT(VkVideoEncodeH265ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265ProfileEXT(*reinterpret_cast<VideoEncodeH265ProfileEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265ProfileEXT &operator=(VideoEncodeH265ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265ProfileEXT &operator=(VkVideoEncodeH265ProfileEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265ProfileEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265ProfileEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265ProfileEXT &setStdProfileIdc(StdVideoH265ProfileIdc stdProfileIdc_) VULKAN_HPP_NOEXCEPT
{
stdProfileIdc = stdProfileIdc_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH265ProfileEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265ProfileEXT *>(this);
}
explicit operator VkVideoEncodeH265ProfileEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265ProfileEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, StdVideoH265ProfileIdc const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, stdProfileIdc);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(VideoEncodeH265ProfileEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = memcmp(&stdProfileIdc, &rhs.stdProfileIdc, sizeof(StdVideoH265ProfileIdc)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(VideoEncodeH265ProfileEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memcmp(&stdProfileIdc, &rhs.stdProfileIdc, sizeof(StdVideoH265ProfileIdc)) == 0);
}
bool operator!=(VideoEncodeH265ProfileEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH265ProfileEXT;
const void *pNext = {};
StdVideoH265ProfileIdc stdProfileIdc = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265ProfileEXT) == sizeof(VkVideoEncodeH265ProfileEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265ProfileEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265ProfileEXT>::value,
"VideoEncodeH265ProfileEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH265ProfileEXT>
{
using Type = VideoEncodeH265ProfileEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265QpEXT
{
using NativeType = VkVideoEncodeH265QpEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH265QpEXT(int32_t qpI_ = {}, int32_t qpP_ = {}, int32_t qpB_ = {}) VULKAN_HPP_NOEXCEPT
: qpI(qpI_),
qpP(qpP_),
qpB(qpB_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH265QpEXT(VideoEncodeH265QpEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265QpEXT(VkVideoEncodeH265QpEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265QpEXT(*reinterpret_cast<VideoEncodeH265QpEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265QpEXT &operator=(VideoEncodeH265QpEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265QpEXT &operator=(VkVideoEncodeH265QpEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265QpEXT &setQpI(int32_t qpI_) VULKAN_HPP_NOEXCEPT
{
qpI = qpI_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265QpEXT &setQpP(int32_t qpP_) VULKAN_HPP_NOEXCEPT
{
qpP = qpP_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265QpEXT &setQpB(int32_t qpB_) VULKAN_HPP_NOEXCEPT
{
qpB = qpB_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH265QpEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265QpEXT *>(this);
}
explicit operator VkVideoEncodeH265QpEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265QpEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<int32_t const &, int32_t const &, int32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(qpI, qpP, qpB);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH265QpEXT const &) const = default;
# else
bool operator==(VideoEncodeH265QpEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (qpI == rhs.qpI) && (qpP == rhs.qpP) && (qpB == rhs.qpB);
# endif
}
bool operator!=(VideoEncodeH265QpEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
int32_t qpI = {};
int32_t qpP = {};
int32_t qpB = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT) == sizeof(VkVideoEncodeH265QpEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT>::value,
"VideoEncodeH265QpEXT is not nothrow_move_constructible!");
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265RateControlInfoEXT
{
using NativeType = VkVideoEncodeH265RateControlInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH265RateControlInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH265RateControlInfoEXT(uint32_t gopFrameCount_ = {},
uint32_t idrPeriod_ = {},
uint32_t consecutiveBFrameCount_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlStructureFlagBitsEXT rateControlStructure_ =
VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlStructureFlagBitsEXT::eUnknown,
uint8_t subLayerCount_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
gopFrameCount(gopFrameCount_),
idrPeriod(idrPeriod_),
consecutiveBFrameCount(consecutiveBFrameCount_),
rateControlStructure(rateControlStructure_),
subLayerCount(subLayerCount_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH265RateControlInfoEXT(VideoEncodeH265RateControlInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265RateControlInfoEXT(VkVideoEncodeH265RateControlInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265RateControlInfoEXT(*reinterpret_cast<VideoEncodeH265RateControlInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265RateControlInfoEXT &operator=(VideoEncodeH265RateControlInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265RateControlInfoEXT &operator=(VkVideoEncodeH265RateControlInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlInfoEXT &setGopFrameCount(uint32_t gopFrameCount_) VULKAN_HPP_NOEXCEPT
{
gopFrameCount = gopFrameCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlInfoEXT &setIdrPeriod(uint32_t idrPeriod_) VULKAN_HPP_NOEXCEPT
{
idrPeriod = idrPeriod_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlInfoEXT &setConsecutiveBFrameCount(uint32_t consecutiveBFrameCount_) VULKAN_HPP_NOEXCEPT
{
consecutiveBFrameCount = consecutiveBFrameCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlInfoEXT &
setRateControlStructure(VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlStructureFlagBitsEXT rateControlStructure_) VULKAN_HPP_NOEXCEPT
{
rateControlStructure = rateControlStructure_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlInfoEXT &setSubLayerCount(uint8_t subLayerCount_) VULKAN_HPP_NOEXCEPT
{
subLayerCount = subLayerCount_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH265RateControlInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265RateControlInfoEXT *>(this);
}
explicit operator VkVideoEncodeH265RateControlInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265RateControlInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlStructureFlagBitsEXT const &,
uint8_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, gopFrameCount, idrPeriod, consecutiveBFrameCount, rateControlStructure, subLayerCount);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH265RateControlInfoEXT const &) const = default;
# else
bool operator==(VideoEncodeH265RateControlInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (gopFrameCount == rhs.gopFrameCount) && (idrPeriod == rhs.idrPeriod) &&
(consecutiveBFrameCount == rhs.consecutiveBFrameCount) && (rateControlStructure == rhs.rateControlStructure) &&
(subLayerCount == rhs.subLayerCount);
# endif
}
bool operator!=(VideoEncodeH265RateControlInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH265RateControlInfoEXT;
const void *pNext = {};
uint32_t gopFrameCount = {};
uint32_t idrPeriod = {};
uint32_t consecutiveBFrameCount = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlStructureFlagBitsEXT rateControlStructure =
VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlStructureFlagBitsEXT::eUnknown;
uint8_t subLayerCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlInfoEXT) == sizeof(VkVideoEncodeH265RateControlInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlInfoEXT>::value,
"VideoEncodeH265RateControlInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH265RateControlInfoEXT>
{
using Type = VideoEncodeH265RateControlInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265RateControlLayerInfoEXT
{
using NativeType = VkVideoEncodeH265RateControlLayerInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH265RateControlLayerInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH265RateControlLayerInfoEXT(uint8_t temporalId_ = {},
VULKAN_HPP_NAMESPACE::Bool32 useInitialRcQp_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT initialRcQp_ = {},
VULKAN_HPP_NAMESPACE::Bool32 useMinQp_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT minQp_ = {},
VULKAN_HPP_NAMESPACE::Bool32 useMaxQp_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT maxQp_ = {},
VULKAN_HPP_NAMESPACE::Bool32 useMaxFrameSize_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeH265FrameSizeEXT maxFrameSize_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
temporalId(temporalId_),
useInitialRcQp(useInitialRcQp_),
initialRcQp(initialRcQp_),
useMinQp(useMinQp_),
minQp(minQp_),
useMaxQp(useMaxQp_),
maxQp(maxQp_),
useMaxFrameSize(useMaxFrameSize_),
maxFrameSize(maxFrameSize_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH265RateControlLayerInfoEXT(VideoEncodeH265RateControlLayerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265RateControlLayerInfoEXT(VkVideoEncodeH265RateControlLayerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265RateControlLayerInfoEXT(*reinterpret_cast<VideoEncodeH265RateControlLayerInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265RateControlLayerInfoEXT &operator=(VideoEncodeH265RateControlLayerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265RateControlLayerInfoEXT &operator=(VkVideoEncodeH265RateControlLayerInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlLayerInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlLayerInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlLayerInfoEXT &setTemporalId(uint8_t temporalId_) VULKAN_HPP_NOEXCEPT
{
temporalId = temporalId_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlLayerInfoEXT &setUseInitialRcQp(VULKAN_HPP_NAMESPACE::Bool32 useInitialRcQp_) VULKAN_HPP_NOEXCEPT
{
useInitialRcQp = useInitialRcQp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlLayerInfoEXT &
setInitialRcQp(VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT const &initialRcQp_) VULKAN_HPP_NOEXCEPT
{
initialRcQp = initialRcQp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlLayerInfoEXT &setUseMinQp(VULKAN_HPP_NAMESPACE::Bool32 useMinQp_) VULKAN_HPP_NOEXCEPT
{
useMinQp = useMinQp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlLayerInfoEXT &setMinQp(VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT const &minQp_) VULKAN_HPP_NOEXCEPT
{
minQp = minQp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlLayerInfoEXT &setUseMaxQp(VULKAN_HPP_NAMESPACE::Bool32 useMaxQp_) VULKAN_HPP_NOEXCEPT
{
useMaxQp = useMaxQp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlLayerInfoEXT &setMaxQp(VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT const &maxQp_) VULKAN_HPP_NOEXCEPT
{
maxQp = maxQp_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlLayerInfoEXT &setUseMaxFrameSize(VULKAN_HPP_NAMESPACE::Bool32 useMaxFrameSize_) VULKAN_HPP_NOEXCEPT
{
useMaxFrameSize = useMaxFrameSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265RateControlLayerInfoEXT &
setMaxFrameSize(VULKAN_HPP_NAMESPACE::VideoEncodeH265FrameSizeEXT const &maxFrameSize_) VULKAN_HPP_NOEXCEPT
{
maxFrameSize = maxFrameSize_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH265RateControlLayerInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265RateControlLayerInfoEXT *>(this);
}
explicit operator VkVideoEncodeH265RateControlLayerInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265RateControlLayerInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint8_t const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT const &,
VULKAN_HPP_NAMESPACE::Bool32 const &,
VULKAN_HPP_NAMESPACE::VideoEncodeH265FrameSizeEXT const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, temporalId, useInitialRcQp, initialRcQp, useMinQp, minQp, useMaxQp, maxQp, useMaxFrameSize, maxFrameSize);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH265RateControlLayerInfoEXT const &) const = default;
# else
bool operator==(VideoEncodeH265RateControlLayerInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (temporalId == rhs.temporalId) && (useInitialRcQp == rhs.useInitialRcQp) &&
(initialRcQp == rhs.initialRcQp) && (useMinQp == rhs.useMinQp) && (minQp == rhs.minQp) && (useMaxQp == rhs.useMaxQp) &&
(maxQp == rhs.maxQp) && (useMaxFrameSize == rhs.useMaxFrameSize) && (maxFrameSize == rhs.maxFrameSize);
# endif
}
bool operator!=(VideoEncodeH265RateControlLayerInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH265RateControlLayerInfoEXT;
const void *pNext = {};
uint8_t temporalId = {};
VULKAN_HPP_NAMESPACE::Bool32 useInitialRcQp = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT initialRcQp = {};
VULKAN_HPP_NAMESPACE::Bool32 useMinQp = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT minQp = {};
VULKAN_HPP_NAMESPACE::Bool32 useMaxQp = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH265QpEXT maxQp = {};
VULKAN_HPP_NAMESPACE::Bool32 useMaxFrameSize = {};
VULKAN_HPP_NAMESPACE::VideoEncodeH265FrameSizeEXT maxFrameSize = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlLayerInfoEXT) == sizeof(VkVideoEncodeH265RateControlLayerInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlLayerInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265RateControlLayerInfoEXT>::value,
"VideoEncodeH265RateControlLayerInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH265RateControlLayerInfoEXT>
{
using Type = VideoEncodeH265RateControlLayerInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265SessionParametersAddInfoEXT
{
using NativeType = VkVideoEncodeH265SessionParametersAddInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH265SessionParametersAddInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH265SessionParametersAddInfoEXT(uint32_t vpsStdCount_ = {},
const StdVideoH265VideoParameterSet *pVpsStd_ = {},
uint32_t spsStdCount_ = {},
const StdVideoH265SequenceParameterSet *pSpsStd_ = {},
uint32_t ppsStdCount_ = {},
const StdVideoH265PictureParameterSet *pPpsStd_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
vpsStdCount(vpsStdCount_),
pVpsStd(pVpsStd_),
spsStdCount(spsStdCount_),
pSpsStd(pSpsStd_),
ppsStdCount(ppsStdCount_),
pPpsStd(pPpsStd_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH265SessionParametersAddInfoEXT(VideoEncodeH265SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265SessionParametersAddInfoEXT(VkVideoEncodeH265SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265SessionParametersAddInfoEXT(*reinterpret_cast<VideoEncodeH265SessionParametersAddInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH265SessionParametersAddInfoEXT(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265VideoParameterSet> const &vpsStd_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265SequenceParameterSet> const &spsStd_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265PictureParameterSet> const &ppsStd_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, vpsStdCount(static_cast<uint32_t>(vpsStd_.size()))
, pVpsStd(vpsStd_.data())
, spsStdCount(static_cast<uint32_t>(spsStd_.size()))
, pSpsStd(spsStd_.data())
, ppsStdCount(static_cast<uint32_t>(ppsStd_.size()))
, pPpsStd(ppsStd_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265SessionParametersAddInfoEXT &operator=(VideoEncodeH265SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265SessionParametersAddInfoEXT &operator=(VkVideoEncodeH265SessionParametersAddInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265SessionParametersAddInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265SessionParametersAddInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265SessionParametersAddInfoEXT &setVpsStdCount(uint32_t vpsStdCount_) VULKAN_HPP_NOEXCEPT
{
vpsStdCount = vpsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265SessionParametersAddInfoEXT &setPVpsStd(const StdVideoH265VideoParameterSet *pVpsStd_) VULKAN_HPP_NOEXCEPT
{
pVpsStd = pVpsStd_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH265SessionParametersAddInfoEXT &
setVpsStd(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265VideoParameterSet> const &vpsStd_) VULKAN_HPP_NOEXCEPT
{
vpsStdCount = static_cast<uint32_t>(vpsStd_.size());
pVpsStd = vpsStd_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265SessionParametersAddInfoEXT &setSpsStdCount(uint32_t spsStdCount_) VULKAN_HPP_NOEXCEPT
{
spsStdCount = spsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265SessionParametersAddInfoEXT &setPSpsStd(const StdVideoH265SequenceParameterSet *pSpsStd_) VULKAN_HPP_NOEXCEPT
{
pSpsStd = pSpsStd_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH265SessionParametersAddInfoEXT &
setSpsStd(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265SequenceParameterSet> const &spsStd_) VULKAN_HPP_NOEXCEPT
{
spsStdCount = static_cast<uint32_t>(spsStd_.size());
pSpsStd = spsStd_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265SessionParametersAddInfoEXT &setPpsStdCount(uint32_t ppsStdCount_) VULKAN_HPP_NOEXCEPT
{
ppsStdCount = ppsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265SessionParametersAddInfoEXT &setPPpsStd(const StdVideoH265PictureParameterSet *pPpsStd_) VULKAN_HPP_NOEXCEPT
{
pPpsStd = pPpsStd_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH265SessionParametersAddInfoEXT &
setPpsStd(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const StdVideoH265PictureParameterSet> const &ppsStd_) VULKAN_HPP_NOEXCEPT
{
ppsStdCount = static_cast<uint32_t>(ppsStd_.size());
pPpsStd = ppsStd_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH265SessionParametersAddInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265SessionParametersAddInfoEXT *>(this);
}
explicit operator VkVideoEncodeH265SessionParametersAddInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265SessionParametersAddInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const StdVideoH265VideoParameterSet *const &,
uint32_t const &,
const StdVideoH265SequenceParameterSet *const &,
uint32_t const &,
const StdVideoH265PictureParameterSet *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, vpsStdCount, pVpsStd, spsStdCount, pSpsStd, ppsStdCount, pPpsStd);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH265SessionParametersAddInfoEXT const &) const = default;
# else
bool operator==(VideoEncodeH265SessionParametersAddInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (vpsStdCount == rhs.vpsStdCount) && (pVpsStd == rhs.pVpsStd) &&
(spsStdCount == rhs.spsStdCount) && (pSpsStd == rhs.pSpsStd) && (ppsStdCount == rhs.ppsStdCount) && (pPpsStd == rhs.pPpsStd);
# endif
}
bool operator!=(VideoEncodeH265SessionParametersAddInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH265SessionParametersAddInfoEXT;
const void *pNext = {};
uint32_t vpsStdCount = {};
const StdVideoH265VideoParameterSet *pVpsStd = {};
uint32_t spsStdCount = {};
const StdVideoH265SequenceParameterSet *pSpsStd = {};
uint32_t ppsStdCount = {};
const StdVideoH265PictureParameterSet *pPpsStd = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265SessionParametersAddInfoEXT) ==
sizeof(VkVideoEncodeH265SessionParametersAddInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265SessionParametersAddInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265SessionParametersAddInfoEXT>::value,
"VideoEncodeH265SessionParametersAddInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH265SessionParametersAddInfoEXT>
{
using Type = VideoEncodeH265SessionParametersAddInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265SessionParametersCreateInfoEXT
{
using NativeType = VkVideoEncodeH265SessionParametersCreateInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH265SessionParametersCreateInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
VideoEncodeH265SessionParametersCreateInfoEXT(uint32_t maxVpsStdCount_ = {},
uint32_t maxSpsStdCount_ = {},
uint32_t maxPpsStdCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoEncodeH265SessionParametersAddInfoEXT *pParametersAddInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
maxVpsStdCount(maxVpsStdCount_),
maxSpsStdCount(maxSpsStdCount_),
maxPpsStdCount(maxPpsStdCount_),
pParametersAddInfo(pParametersAddInfo_)
{
}
VULKAN_HPP_CONSTEXPR
VideoEncodeH265SessionParametersCreateInfoEXT(VideoEncodeH265SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265SessionParametersCreateInfoEXT(VkVideoEncodeH265SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265SessionParametersCreateInfoEXT(*reinterpret_cast<VideoEncodeH265SessionParametersCreateInfoEXT const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265SessionParametersCreateInfoEXT &operator=(VideoEncodeH265SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265SessionParametersCreateInfoEXT &operator=(VkVideoEncodeH265SessionParametersCreateInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265SessionParametersCreateInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265SessionParametersCreateInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265SessionParametersCreateInfoEXT &setMaxVpsStdCount(uint32_t maxVpsStdCount_) VULKAN_HPP_NOEXCEPT
{
maxVpsStdCount = maxVpsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265SessionParametersCreateInfoEXT &setMaxSpsStdCount(uint32_t maxSpsStdCount_) VULKAN_HPP_NOEXCEPT
{
maxSpsStdCount = maxSpsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265SessionParametersCreateInfoEXT &setMaxPpsStdCount(uint32_t maxPpsStdCount_) VULKAN_HPP_NOEXCEPT
{
maxPpsStdCount = maxPpsStdCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265SessionParametersCreateInfoEXT &
setPParametersAddInfo(const VULKAN_HPP_NAMESPACE::VideoEncodeH265SessionParametersAddInfoEXT *pParametersAddInfo_) VULKAN_HPP_NOEXCEPT
{
pParametersAddInfo = pParametersAddInfo_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH265SessionParametersCreateInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265SessionParametersCreateInfoEXT *>(this);
}
explicit operator VkVideoEncodeH265SessionParametersCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265SessionParametersCreateInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeH265SessionParametersAddInfoEXT *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, maxVpsStdCount, maxSpsStdCount, maxPpsStdCount, pParametersAddInfo);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH265SessionParametersCreateInfoEXT const &) const = default;
# else
bool operator==(VideoEncodeH265SessionParametersCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (maxVpsStdCount == rhs.maxVpsStdCount) && (maxSpsStdCount == rhs.maxSpsStdCount) &&
(maxPpsStdCount == rhs.maxPpsStdCount) && (pParametersAddInfo == rhs.pParametersAddInfo);
# endif
}
bool operator!=(VideoEncodeH265SessionParametersCreateInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH265SessionParametersCreateInfoEXT;
const void *pNext = {};
uint32_t maxVpsStdCount = {};
uint32_t maxSpsStdCount = {};
uint32_t maxPpsStdCount = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeH265SessionParametersAddInfoEXT *pParametersAddInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265SessionParametersCreateInfoEXT) ==
sizeof(VkVideoEncodeH265SessionParametersCreateInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265SessionParametersCreateInfoEXT>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265SessionParametersCreateInfoEXT>::value,
"VideoEncodeH265SessionParametersCreateInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH265SessionParametersCreateInfoEXT>
{
using Type = VideoEncodeH265SessionParametersCreateInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeH265VclFrameInfoEXT
{
using NativeType = VkVideoEncodeH265VclFrameInfoEXT;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeH265VclFrameInfoEXT;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeH265VclFrameInfoEXT(const VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT *pReferenceFinalLists_ = {},
uint32_t naluSliceSegmentEntryCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoEncodeH265NaluSliceSegmentEXT *pNaluSliceSegmentEntries_ = {},
const StdVideoEncodeH265PictureInfo *pCurrentPictureInfo_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
pReferenceFinalLists(pReferenceFinalLists_),
naluSliceSegmentEntryCount(naluSliceSegmentEntryCount_),
pNaluSliceSegmentEntries(pNaluSliceSegmentEntries_),
pCurrentPictureInfo(pCurrentPictureInfo_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeH265VclFrameInfoEXT(VideoEncodeH265VclFrameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265VclFrameInfoEXT(VkVideoEncodeH265VclFrameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeH265VclFrameInfoEXT(*reinterpret_cast<VideoEncodeH265VclFrameInfoEXT const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH265VclFrameInfoEXT(
const VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT *pReferenceFinalLists_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH265NaluSliceSegmentEXT> const &naluSliceSegmentEntries_,
const StdVideoEncodeH265PictureInfo *pCurrentPictureInfo_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, pReferenceFinalLists(pReferenceFinalLists_)
, naluSliceSegmentEntryCount(static_cast<uint32_t>(naluSliceSegmentEntries_.size()))
, pNaluSliceSegmentEntries(naluSliceSegmentEntries_.data())
, pCurrentPictureInfo(pCurrentPictureInfo_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeH265VclFrameInfoEXT &operator=(VideoEncodeH265VclFrameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeH265VclFrameInfoEXT &operator=(VkVideoEncodeH265VclFrameInfoEXT const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeH265VclFrameInfoEXT const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265VclFrameInfoEXT &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265VclFrameInfoEXT &
setPReferenceFinalLists(const VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT *pReferenceFinalLists_) VULKAN_HPP_NOEXCEPT
{
pReferenceFinalLists = pReferenceFinalLists_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265VclFrameInfoEXT &setNaluSliceSegmentEntryCount(uint32_t naluSliceSegmentEntryCount_) VULKAN_HPP_NOEXCEPT
{
naluSliceSegmentEntryCount = naluSliceSegmentEntryCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265VclFrameInfoEXT &
setPNaluSliceSegmentEntries(const VULKAN_HPP_NAMESPACE::VideoEncodeH265NaluSliceSegmentEXT *pNaluSliceSegmentEntries_) VULKAN_HPP_NOEXCEPT
{
pNaluSliceSegmentEntries = pNaluSliceSegmentEntries_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeH265VclFrameInfoEXT &setNaluSliceSegmentEntries(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeH265NaluSliceSegmentEXT> const &naluSliceSegmentEntries_)
VULKAN_HPP_NOEXCEPT
{
naluSliceSegmentEntryCount = static_cast<uint32_t>(naluSliceSegmentEntries_.size());
pNaluSliceSegmentEntries = naluSliceSegmentEntries_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoEncodeH265VclFrameInfoEXT &
setPCurrentPictureInfo(const StdVideoEncodeH265PictureInfo *pCurrentPictureInfo_) VULKAN_HPP_NOEXCEPT
{
pCurrentPictureInfo = pCurrentPictureInfo_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeH265VclFrameInfoEXT const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeH265VclFrameInfoEXT *>(this);
}
explicit operator VkVideoEncodeH265VclFrameInfoEXT &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeH265VclFrameInfoEXT *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeH265NaluSliceSegmentEXT *const &,
const StdVideoEncodeH265PictureInfo *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, pReferenceFinalLists, naluSliceSegmentEntryCount, pNaluSliceSegmentEntries, pCurrentPictureInfo);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeH265VclFrameInfoEXT const &) const = default;
# else
bool operator==(VideoEncodeH265VclFrameInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (pReferenceFinalLists == rhs.pReferenceFinalLists) &&
(naluSliceSegmentEntryCount == rhs.naluSliceSegmentEntryCount) && (pNaluSliceSegmentEntries == rhs.pNaluSliceSegmentEntries) &&
(pCurrentPictureInfo == rhs.pCurrentPictureInfo);
# endif
}
bool operator!=(VideoEncodeH265VclFrameInfoEXT const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeH265VclFrameInfoEXT;
const void *pNext = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeH265ReferenceListsEXT *pReferenceFinalLists = {};
uint32_t naluSliceSegmentEntryCount = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeH265NaluSliceSegmentEXT *pNaluSliceSegmentEntries = {};
const StdVideoEncodeH265PictureInfo *pCurrentPictureInfo = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeH265VclFrameInfoEXT) == sizeof(VkVideoEncodeH265VclFrameInfoEXT),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeH265VclFrameInfoEXT>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeH265VclFrameInfoEXT>::value,
"VideoEncodeH265VclFrameInfoEXT is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeH265VclFrameInfoEXT>
{
using Type = VideoEncodeH265VclFrameInfoEXT;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeInfoKHR
{
using NativeType = VkVideoEncodeInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeInfoKHR(VULKAN_HPP_NAMESPACE::VideoEncodeFlagsKHR flags_ = {},
uint32_t qualityLevel_ = {},
VULKAN_HPP_NAMESPACE::Buffer dstBitstreamBuffer_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferOffset_ = {},
VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferMaxRange_ = {},
VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR srcPictureResource_ = {},
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pSetupReferenceSlot_ = {},
uint32_t referenceSlotCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pReferenceSlots_ = {},
uint32_t precedingExternallyEncodedBytes_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
qualityLevel(qualityLevel_),
dstBitstreamBuffer(dstBitstreamBuffer_),
dstBitstreamBufferOffset(dstBitstreamBufferOffset_),
dstBitstreamBufferMaxRange(dstBitstreamBufferMaxRange_),
srcPictureResource(srcPictureResource_),
pSetupReferenceSlot(pSetupReferenceSlot_),
referenceSlotCount(referenceSlotCount_),
pReferenceSlots(pReferenceSlots_),
precedingExternallyEncodedBytes(precedingExternallyEncodedBytes_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeInfoKHR(VideoEncodeInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeInfoKHR(VkVideoEncodeInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT : VideoEncodeInfoKHR(*reinterpret_cast<VideoEncodeInfoKHR const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeInfoKHR(VULKAN_HPP_NAMESPACE::VideoEncodeFlagsKHR flags_,
uint32_t qualityLevel_,
VULKAN_HPP_NAMESPACE::Buffer dstBitstreamBuffer_,
VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferOffset_,
VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferMaxRange_,
VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR srcPictureResource_,
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pSetupReferenceSlot_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR> const &referenceSlots_,
uint32_t precedingExternallyEncodedBytes_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, qualityLevel(qualityLevel_)
, dstBitstreamBuffer(dstBitstreamBuffer_)
, dstBitstreamBufferOffset(dstBitstreamBufferOffset_)
, dstBitstreamBufferMaxRange(dstBitstreamBufferMaxRange_)
, srcPictureResource(srcPictureResource_)
, pSetupReferenceSlot(pSetupReferenceSlot_)
, referenceSlotCount(static_cast<uint32_t>(referenceSlots_.size()))
, pReferenceSlots(referenceSlots_.data())
, precedingExternallyEncodedBytes(precedingExternallyEncodedBytes_)
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeInfoKHR &operator=(VideoEncodeInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeInfoKHR &operator=(VkVideoEncodeInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::VideoEncodeFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeInfoKHR &setQualityLevel(uint32_t qualityLevel_) VULKAN_HPP_NOEXCEPT
{
qualityLevel = qualityLevel_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeInfoKHR &setDstBitstreamBuffer(VULKAN_HPP_NAMESPACE::Buffer dstBitstreamBuffer_) VULKAN_HPP_NOEXCEPT
{
dstBitstreamBuffer = dstBitstreamBuffer_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeInfoKHR &setDstBitstreamBufferOffset(VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferOffset_) VULKAN_HPP_NOEXCEPT
{
dstBitstreamBufferOffset = dstBitstreamBufferOffset_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeInfoKHR &
setDstBitstreamBufferMaxRange(VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferMaxRange_) VULKAN_HPP_NOEXCEPT
{
dstBitstreamBufferMaxRange = dstBitstreamBufferMaxRange_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeInfoKHR &
setSrcPictureResource(VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR const &srcPictureResource_) VULKAN_HPP_NOEXCEPT
{
srcPictureResource = srcPictureResource_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeInfoKHR &
setPSetupReferenceSlot(const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pSetupReferenceSlot_) VULKAN_HPP_NOEXCEPT
{
pSetupReferenceSlot = pSetupReferenceSlot_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeInfoKHR &setReferenceSlotCount(uint32_t referenceSlotCount_) VULKAN_HPP_NOEXCEPT
{
referenceSlotCount = referenceSlotCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeInfoKHR &setPReferenceSlots(const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pReferenceSlots_) VULKAN_HPP_NOEXCEPT
{
pReferenceSlots = pReferenceSlots_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeInfoKHR &setReferenceSlots(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR> const &referenceSlots_) VULKAN_HPP_NOEXCEPT
{
referenceSlotCount = static_cast<uint32_t>(referenceSlots_.size());
pReferenceSlots = referenceSlots_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 VideoEncodeInfoKHR &setPrecedingExternallyEncodedBytes(uint32_t precedingExternallyEncodedBytes_) VULKAN_HPP_NOEXCEPT
{
precedingExternallyEncodedBytes = precedingExternallyEncodedBytes_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeInfoKHR *>(this);
}
explicit operator VkVideoEncodeInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::VideoEncodeFlagsKHR const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::Buffer const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::DeviceSize const &,
VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR const &,
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
flags,
qualityLevel,
dstBitstreamBuffer,
dstBitstreamBufferOffset,
dstBitstreamBufferMaxRange,
srcPictureResource,
pSetupReferenceSlot,
referenceSlotCount,
pReferenceSlots,
precedingExternallyEncodedBytes);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeInfoKHR const &) const = default;
# else
bool operator==(VideoEncodeInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (qualityLevel == rhs.qualityLevel) &&
(dstBitstreamBuffer == rhs.dstBitstreamBuffer) && (dstBitstreamBufferOffset == rhs.dstBitstreamBufferOffset) &&
(dstBitstreamBufferMaxRange == rhs.dstBitstreamBufferMaxRange) && (srcPictureResource == rhs.srcPictureResource) &&
(pSetupReferenceSlot == rhs.pSetupReferenceSlot) && (referenceSlotCount == rhs.referenceSlotCount) &&
(pReferenceSlots == rhs.pReferenceSlots) && (precedingExternallyEncodedBytes == rhs.precedingExternallyEncodedBytes);
# endif
}
bool operator!=(VideoEncodeInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoEncodeFlagsKHR flags = {};
uint32_t qualityLevel = {};
VULKAN_HPP_NAMESPACE::Buffer dstBitstreamBuffer = {};
VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferOffset = {};
VULKAN_HPP_NAMESPACE::DeviceSize dstBitstreamBufferMaxRange = {};
VULKAN_HPP_NAMESPACE::VideoPictureResourceKHR srcPictureResource = {};
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pSetupReferenceSlot = {};
uint32_t referenceSlotCount = {};
const VULKAN_HPP_NAMESPACE::VideoReferenceSlotKHR *pReferenceSlots = {};
uint32_t precedingExternallyEncodedBytes = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeInfoKHR) == sizeof(VkVideoEncodeInfoKHR), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeInfoKHR>::value,
"VideoEncodeInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeInfoKHR>
{
using Type = VideoEncodeInfoKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeRateControlLayerInfoKHR
{
using NativeType = VkVideoEncodeRateControlLayerInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeRateControlLayerInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeRateControlLayerInfoKHR(uint32_t averageBitrate_ = {},
uint32_t maxBitrate_ = {},
uint32_t frameRateNumerator_ = {},
uint32_t frameRateDenominator_ = {},
uint32_t virtualBufferSizeInMs_ = {},
uint32_t initialVirtualBufferSizeInMs_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
averageBitrate(averageBitrate_),
maxBitrate(maxBitrate_),
frameRateNumerator(frameRateNumerator_),
frameRateDenominator(frameRateDenominator_),
virtualBufferSizeInMs(virtualBufferSizeInMs_),
initialVirtualBufferSizeInMs(initialVirtualBufferSizeInMs_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeRateControlLayerInfoKHR(VideoEncodeRateControlLayerInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeRateControlLayerInfoKHR(VkVideoEncodeRateControlLayerInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeRateControlLayerInfoKHR(*reinterpret_cast<VideoEncodeRateControlLayerInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeRateControlLayerInfoKHR &operator=(VideoEncodeRateControlLayerInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeRateControlLayerInfoKHR &operator=(VkVideoEncodeRateControlLayerInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeRateControlLayerInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlLayerInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlLayerInfoKHR &setAverageBitrate(uint32_t averageBitrate_) VULKAN_HPP_NOEXCEPT
{
averageBitrate = averageBitrate_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlLayerInfoKHR &setMaxBitrate(uint32_t maxBitrate_) VULKAN_HPP_NOEXCEPT
{
maxBitrate = maxBitrate_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlLayerInfoKHR &setFrameRateNumerator(uint32_t frameRateNumerator_) VULKAN_HPP_NOEXCEPT
{
frameRateNumerator = frameRateNumerator_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlLayerInfoKHR &setFrameRateDenominator(uint32_t frameRateDenominator_) VULKAN_HPP_NOEXCEPT
{
frameRateDenominator = frameRateDenominator_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlLayerInfoKHR &setVirtualBufferSizeInMs(uint32_t virtualBufferSizeInMs_) VULKAN_HPP_NOEXCEPT
{
virtualBufferSizeInMs = virtualBufferSizeInMs_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlLayerInfoKHR &setInitialVirtualBufferSizeInMs(uint32_t initialVirtualBufferSizeInMs_) VULKAN_HPP_NOEXCEPT
{
initialVirtualBufferSizeInMs = initialVirtualBufferSizeInMs_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeRateControlLayerInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeRateControlLayerInfoKHR *>(this);
}
explicit operator VkVideoEncodeRateControlLayerInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeRateControlLayerInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(
sType, pNext, averageBitrate, maxBitrate, frameRateNumerator, frameRateDenominator, virtualBufferSizeInMs, initialVirtualBufferSizeInMs);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeRateControlLayerInfoKHR const &) const = default;
# else
bool operator==(VideoEncodeRateControlLayerInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (averageBitrate == rhs.averageBitrate) && (maxBitrate == rhs.maxBitrate) &&
(frameRateNumerator == rhs.frameRateNumerator) && (frameRateDenominator == rhs.frameRateDenominator) &&
(virtualBufferSizeInMs == rhs.virtualBufferSizeInMs) && (initialVirtualBufferSizeInMs == rhs.initialVirtualBufferSizeInMs);
# endif
}
bool operator!=(VideoEncodeRateControlLayerInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeRateControlLayerInfoKHR;
const void *pNext = {};
uint32_t averageBitrate = {};
uint32_t maxBitrate = {};
uint32_t frameRateNumerator = {};
uint32_t frameRateDenominator = {};
uint32_t virtualBufferSizeInMs = {};
uint32_t initialVirtualBufferSizeInMs = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeRateControlLayerInfoKHR) == sizeof(VkVideoEncodeRateControlLayerInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeRateControlLayerInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeRateControlLayerInfoKHR>::value,
"VideoEncodeRateControlLayerInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeRateControlLayerInfoKHR>
{
using Type = VideoEncodeRateControlLayerInfoKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEncodeRateControlInfoKHR
{
using NativeType = VkVideoEncodeRateControlInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEncodeRateControlInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEncodeRateControlInfoKHR(
VULKAN_HPP_NAMESPACE::VideoEncodeRateControlFlagsKHR flags_ = {},
VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagBitsKHR rateControlMode_ = VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagBitsKHR::eNone,
uint8_t layerCount_ = {},
const VULKAN_HPP_NAMESPACE::VideoEncodeRateControlLayerInfoKHR *pLayerConfigs_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
rateControlMode(rateControlMode_),
layerCount(layerCount_),
pLayerConfigs(pLayerConfigs_)
{
}
VULKAN_HPP_CONSTEXPR VideoEncodeRateControlInfoKHR(VideoEncodeRateControlInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeRateControlInfoKHR(VkVideoEncodeRateControlInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEncodeRateControlInfoKHR(*reinterpret_cast<VideoEncodeRateControlInfoKHR const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeRateControlInfoKHR(
VULKAN_HPP_NAMESPACE::VideoEncodeRateControlFlagsKHR flags_,
VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagBitsKHR rateControlMode_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeRateControlLayerInfoKHR> const &layerConfigs_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, flags(flags_)
, rateControlMode(rateControlMode_)
, layerCount(static_cast<uint8_t>(layerConfigs_.size()))
, pLayerConfigs(layerConfigs_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEncodeRateControlInfoKHR &operator=(VideoEncodeRateControlInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEncodeRateControlInfoKHR &operator=(VkVideoEncodeRateControlInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEncodeRateControlInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::VideoEncodeRateControlFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlInfoKHR &
setRateControlMode(VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagBitsKHR rateControlMode_) VULKAN_HPP_NOEXCEPT
{
rateControlMode = rateControlMode_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlInfoKHR &setLayerCount(uint8_t layerCount_) VULKAN_HPP_NOEXCEPT
{
layerCount = layerCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEncodeRateControlInfoKHR &
setPLayerConfigs(const VULKAN_HPP_NAMESPACE::VideoEncodeRateControlLayerInfoKHR *pLayerConfigs_) VULKAN_HPP_NOEXCEPT
{
pLayerConfigs = pLayerConfigs_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
VideoEncodeRateControlInfoKHR &setLayerConfigs(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::VideoEncodeRateControlLayerInfoKHR> const &layerConfigs_) VULKAN_HPP_NOEXCEPT
{
layerCount = static_cast<uint8_t>(layerConfigs_.size());
pLayerConfigs = layerConfigs_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEncodeRateControlInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEncodeRateControlInfoKHR *>(this);
}
explicit operator VkVideoEncodeRateControlInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEncodeRateControlInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::VideoEncodeRateControlFlagsKHR const &,
VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagBitsKHR const &,
uint8_t const &,
const VULKAN_HPP_NAMESPACE::VideoEncodeRateControlLayerInfoKHR *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, rateControlMode, layerCount, pLayerConfigs);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEncodeRateControlInfoKHR const &) const = default;
# else
bool operator==(VideoEncodeRateControlInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (rateControlMode == rhs.rateControlMode) &&
(layerCount == rhs.layerCount) && (pLayerConfigs == rhs.pLayerConfigs);
# endif
}
bool operator!=(VideoEncodeRateControlInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEncodeRateControlInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoEncodeRateControlFlagsKHR flags = {};
VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagBitsKHR rateControlMode = VULKAN_HPP_NAMESPACE::VideoEncodeRateControlModeFlagBitsKHR::eNone;
uint8_t layerCount = {};
const VULKAN_HPP_NAMESPACE::VideoEncodeRateControlLayerInfoKHR *pLayerConfigs = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEncodeRateControlInfoKHR) == sizeof(VkVideoEncodeRateControlInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeRateControlInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeRateControlInfoKHR>::value,
"VideoEncodeRateControlInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEncodeRateControlInfoKHR>
{
using Type = VideoEncodeRateControlInfoKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoEndCodingInfoKHR
{
using NativeType = VkVideoEndCodingInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoEndCodingInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoEndCodingInfoKHR(VULKAN_HPP_NAMESPACE::VideoEndCodingFlagsKHR flags_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_)
{
}
VULKAN_HPP_CONSTEXPR VideoEndCodingInfoKHR(VideoEndCodingInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEndCodingInfoKHR(VkVideoEndCodingInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoEndCodingInfoKHR(*reinterpret_cast<VideoEndCodingInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoEndCodingInfoKHR &operator=(VideoEndCodingInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoEndCodingInfoKHR &operator=(VkVideoEndCodingInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoEndCodingInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoEndCodingInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoEndCodingInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::VideoEndCodingFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoEndCodingInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoEndCodingInfoKHR *>(this);
}
explicit operator VkVideoEndCodingInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoEndCodingInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, VULKAN_HPP_NAMESPACE::VideoEndCodingFlagsKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoEndCodingInfoKHR const &) const = default;
# else
bool operator==(VideoEndCodingInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags);
# endif
}
bool operator!=(VideoEndCodingInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoEndCodingInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoEndCodingFlagsKHR flags = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoEndCodingInfoKHR) == sizeof(VkVideoEndCodingInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEndCodingInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEndCodingInfoKHR>::value,
"VideoEndCodingInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoEndCodingInfoKHR>
{
using Type = VideoEndCodingInfoKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoFormatPropertiesKHR
{
using NativeType = VkVideoFormatPropertiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoFormatPropertiesKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoFormatPropertiesKHR(VULKAN_HPP_NAMESPACE::Format format_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
format(format_)
{
}
VULKAN_HPP_CONSTEXPR VideoFormatPropertiesKHR(VideoFormatPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoFormatPropertiesKHR(VkVideoFormatPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoFormatPropertiesKHR(*reinterpret_cast<VideoFormatPropertiesKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoFormatPropertiesKHR &operator=(VideoFormatPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoFormatPropertiesKHR &operator=(VkVideoFormatPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoFormatPropertiesKHR const *>(&rhs);
return *this;
}
explicit operator VkVideoFormatPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoFormatPropertiesKHR *>(this);
}
explicit operator VkVideoFormatPropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoFormatPropertiesKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::Format const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, format);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoFormatPropertiesKHR const &) const = default;
# else
bool operator==(VideoFormatPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (format == rhs.format);
# endif
}
bool operator!=(VideoFormatPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoFormatPropertiesKHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::Format format = VULKAN_HPP_NAMESPACE::Format::eUndefined;
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoFormatPropertiesKHR) == sizeof(VkVideoFormatPropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoFormatPropertiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoFormatPropertiesKHR>::value,
"VideoFormatPropertiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoFormatPropertiesKHR>
{
using Type = VideoFormatPropertiesKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoGetMemoryPropertiesKHR
{
using NativeType = VkVideoGetMemoryPropertiesKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoGetMemoryPropertiesKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoGetMemoryPropertiesKHR(uint32_t memoryBindIndex_ = {},
VULKAN_HPP_NAMESPACE::MemoryRequirements2 *pMemoryRequirements_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
memoryBindIndex(memoryBindIndex_),
pMemoryRequirements(pMemoryRequirements_)
{
}
VULKAN_HPP_CONSTEXPR VideoGetMemoryPropertiesKHR(VideoGetMemoryPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoGetMemoryPropertiesKHR(VkVideoGetMemoryPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoGetMemoryPropertiesKHR(*reinterpret_cast<VideoGetMemoryPropertiesKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoGetMemoryPropertiesKHR &operator=(VideoGetMemoryPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoGetMemoryPropertiesKHR &operator=(VkVideoGetMemoryPropertiesKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoGetMemoryPropertiesKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoGetMemoryPropertiesKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoGetMemoryPropertiesKHR &setMemoryBindIndex(uint32_t memoryBindIndex_) VULKAN_HPP_NOEXCEPT
{
memoryBindIndex = memoryBindIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoGetMemoryPropertiesKHR &
setPMemoryRequirements(VULKAN_HPP_NAMESPACE::MemoryRequirements2 *pMemoryRequirements_) VULKAN_HPP_NOEXCEPT
{
pMemoryRequirements = pMemoryRequirements_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoGetMemoryPropertiesKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoGetMemoryPropertiesKHR *>(this);
}
explicit operator VkVideoGetMemoryPropertiesKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoGetMemoryPropertiesKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, VULKAN_HPP_NAMESPACE::MemoryRequirements2 *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, memoryBindIndex, pMemoryRequirements);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoGetMemoryPropertiesKHR const &) const = default;
# else
bool operator==(VideoGetMemoryPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (memoryBindIndex == rhs.memoryBindIndex) &&
(pMemoryRequirements == rhs.pMemoryRequirements);
# endif
}
bool operator!=(VideoGetMemoryPropertiesKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoGetMemoryPropertiesKHR;
const void *pNext = {};
uint32_t memoryBindIndex = {};
VULKAN_HPP_NAMESPACE::MemoryRequirements2 *pMemoryRequirements = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoGetMemoryPropertiesKHR) == sizeof(VkVideoGetMemoryPropertiesKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoGetMemoryPropertiesKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoGetMemoryPropertiesKHR>::value,
"VideoGetMemoryPropertiesKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoGetMemoryPropertiesKHR>
{
using Type = VideoGetMemoryPropertiesKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoQueueFamilyProperties2KHR
{
using NativeType = VkVideoQueueFamilyProperties2KHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoQueueFamilyProperties2KHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoQueueFamilyProperties2KHR(VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagsKHR videoCodecOperations_ = {},
void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
videoCodecOperations(videoCodecOperations_)
{
}
VULKAN_HPP_CONSTEXPR VideoQueueFamilyProperties2KHR(VideoQueueFamilyProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoQueueFamilyProperties2KHR(VkVideoQueueFamilyProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoQueueFamilyProperties2KHR(*reinterpret_cast<VideoQueueFamilyProperties2KHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoQueueFamilyProperties2KHR &operator=(VideoQueueFamilyProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoQueueFamilyProperties2KHR &operator=(VkVideoQueueFamilyProperties2KHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoQueueFamilyProperties2KHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoQueueFamilyProperties2KHR &setPNext(void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoQueueFamilyProperties2KHR &
setVideoCodecOperations(VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagsKHR videoCodecOperations_) VULKAN_HPP_NOEXCEPT
{
videoCodecOperations = videoCodecOperations_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoQueueFamilyProperties2KHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoQueueFamilyProperties2KHR *>(this);
}
explicit operator VkVideoQueueFamilyProperties2KHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoQueueFamilyProperties2KHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, void *const &, VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagsKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, videoCodecOperations);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoQueueFamilyProperties2KHR const &) const = default;
# else
bool operator==(VideoQueueFamilyProperties2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (videoCodecOperations == rhs.videoCodecOperations);
# endif
}
bool operator!=(VideoQueueFamilyProperties2KHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoQueueFamilyProperties2KHR;
void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoCodecOperationFlagsKHR videoCodecOperations = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoQueueFamilyProperties2KHR) == sizeof(VkVideoQueueFamilyProperties2KHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoQueueFamilyProperties2KHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoQueueFamilyProperties2KHR>::value,
"VideoQueueFamilyProperties2KHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoQueueFamilyProperties2KHR>
{
using Type = VideoQueueFamilyProperties2KHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoSessionCreateInfoKHR
{
using NativeType = VkVideoSessionCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoSessionCreateInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR(uint32_t queueFamilyIndex_ = {},
VULKAN_HPP_NAMESPACE::VideoSessionCreateFlagsKHR flags_ = {},
const VULKAN_HPP_NAMESPACE::VideoProfileKHR *pVideoProfile_ = {},
VULKAN_HPP_NAMESPACE::Format pictureFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
VULKAN_HPP_NAMESPACE::Extent2D maxCodedExtent_ = {},
VULKAN_HPP_NAMESPACE::Format referencePicturesFormat_ = VULKAN_HPP_NAMESPACE::Format::eUndefined,
uint32_t maxReferencePicturesSlotsCount_ = {},
uint32_t maxReferencePicturesActiveCount_ = {},
const VULKAN_HPP_NAMESPACE::ExtensionProperties *pStdHeaderVersion_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
queueFamilyIndex(queueFamilyIndex_),
flags(flags_),
pVideoProfile(pVideoProfile_),
pictureFormat(pictureFormat_),
maxCodedExtent(maxCodedExtent_),
referencePicturesFormat(referencePicturesFormat_),
maxReferencePicturesSlotsCount(maxReferencePicturesSlotsCount_),
maxReferencePicturesActiveCount(maxReferencePicturesActiveCount_),
pStdHeaderVersion(pStdHeaderVersion_)
{
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR(VideoSessionCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoSessionCreateInfoKHR(VkVideoSessionCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoSessionCreateInfoKHR(*reinterpret_cast<VideoSessionCreateInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoSessionCreateInfoKHR &operator=(VideoSessionCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoSessionCreateInfoKHR &operator=(VkVideoSessionCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoSessionCreateInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR &setQueueFamilyIndex(uint32_t queueFamilyIndex_) VULKAN_HPP_NOEXCEPT
{
queueFamilyIndex = queueFamilyIndex_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::VideoSessionCreateFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR &setPVideoProfile(const VULKAN_HPP_NAMESPACE::VideoProfileKHR *pVideoProfile_) VULKAN_HPP_NOEXCEPT
{
pVideoProfile = pVideoProfile_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR &setPictureFormat(VULKAN_HPP_NAMESPACE::Format pictureFormat_) VULKAN_HPP_NOEXCEPT
{
pictureFormat = pictureFormat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR &setMaxCodedExtent(VULKAN_HPP_NAMESPACE::Extent2D const &maxCodedExtent_) VULKAN_HPP_NOEXCEPT
{
maxCodedExtent = maxCodedExtent_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR &setReferencePicturesFormat(VULKAN_HPP_NAMESPACE::Format referencePicturesFormat_) VULKAN_HPP_NOEXCEPT
{
referencePicturesFormat = referencePicturesFormat_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR &setMaxReferencePicturesSlotsCount(uint32_t maxReferencePicturesSlotsCount_) VULKAN_HPP_NOEXCEPT
{
maxReferencePicturesSlotsCount = maxReferencePicturesSlotsCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR &setMaxReferencePicturesActiveCount(uint32_t maxReferencePicturesActiveCount_) VULKAN_HPP_NOEXCEPT
{
maxReferencePicturesActiveCount = maxReferencePicturesActiveCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionCreateInfoKHR &
setPStdHeaderVersion(const VULKAN_HPP_NAMESPACE::ExtensionProperties *pStdHeaderVersion_) VULKAN_HPP_NOEXCEPT
{
pStdHeaderVersion = pStdHeaderVersion_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoSessionCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoSessionCreateInfoKHR *>(this);
}
explicit operator VkVideoSessionCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoSessionCreateInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::VideoSessionCreateFlagsKHR const &,
const VULKAN_HPP_NAMESPACE::VideoProfileKHR *const &,
VULKAN_HPP_NAMESPACE::Format const &,
VULKAN_HPP_NAMESPACE::Extent2D const &,
VULKAN_HPP_NAMESPACE::Format const &,
uint32_t const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::ExtensionProperties *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType,
pNext,
queueFamilyIndex,
flags,
pVideoProfile,
pictureFormat,
maxCodedExtent,
referencePicturesFormat,
maxReferencePicturesSlotsCount,
maxReferencePicturesActiveCount,
pStdHeaderVersion);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoSessionCreateInfoKHR const &) const = default;
# else
bool operator==(VideoSessionCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (queueFamilyIndex == rhs.queueFamilyIndex) && (flags == rhs.flags) &&
(pVideoProfile == rhs.pVideoProfile) && (pictureFormat == rhs.pictureFormat) && (maxCodedExtent == rhs.maxCodedExtent) &&
(referencePicturesFormat == rhs.referencePicturesFormat) && (maxReferencePicturesSlotsCount == rhs.maxReferencePicturesSlotsCount) &&
(maxReferencePicturesActiveCount == rhs.maxReferencePicturesActiveCount) && (pStdHeaderVersion == rhs.pStdHeaderVersion);
# endif
}
bool operator!=(VideoSessionCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoSessionCreateInfoKHR;
const void *pNext = {};
uint32_t queueFamilyIndex = {};
VULKAN_HPP_NAMESPACE::VideoSessionCreateFlagsKHR flags = {};
const VULKAN_HPP_NAMESPACE::VideoProfileKHR *pVideoProfile = {};
VULKAN_HPP_NAMESPACE::Format pictureFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
VULKAN_HPP_NAMESPACE::Extent2D maxCodedExtent = {};
VULKAN_HPP_NAMESPACE::Format referencePicturesFormat = VULKAN_HPP_NAMESPACE::Format::eUndefined;
uint32_t maxReferencePicturesSlotsCount = {};
uint32_t maxReferencePicturesActiveCount = {};
const VULKAN_HPP_NAMESPACE::ExtensionProperties *pStdHeaderVersion = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoSessionCreateInfoKHR) == sizeof(VkVideoSessionCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoSessionCreateInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoSessionCreateInfoKHR>::value,
"VideoSessionCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoSessionCreateInfoKHR>
{
using Type = VideoSessionCreateInfoKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoSessionParametersCreateInfoKHR
{
using NativeType = VkVideoSessionParametersCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoSessionParametersCreateInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoSessionParametersCreateInfoKHR(VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParametersTemplate_ = {},
VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
videoSessionParametersTemplate(videoSessionParametersTemplate_),
videoSession(videoSession_)
{
}
VULKAN_HPP_CONSTEXPR VideoSessionParametersCreateInfoKHR(VideoSessionParametersCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoSessionParametersCreateInfoKHR(VkVideoSessionParametersCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoSessionParametersCreateInfoKHR(*reinterpret_cast<VideoSessionParametersCreateInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoSessionParametersCreateInfoKHR &operator=(VideoSessionParametersCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoSessionParametersCreateInfoKHR &operator=(VkVideoSessionParametersCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoSessionParametersCreateInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoSessionParametersCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionParametersCreateInfoKHR &
setVideoSessionParametersTemplate(VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParametersTemplate_) VULKAN_HPP_NOEXCEPT
{
videoSessionParametersTemplate = videoSessionParametersTemplate_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionParametersCreateInfoKHR &setVideoSession(VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession_) VULKAN_HPP_NOEXCEPT
{
videoSession = videoSession_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoSessionParametersCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoSessionParametersCreateInfoKHR *>(this);
}
explicit operator VkVideoSessionParametersCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoSessionParametersCreateInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR const &,
VULKAN_HPP_NAMESPACE::VideoSessionKHR const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, videoSessionParametersTemplate, videoSession);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoSessionParametersCreateInfoKHR const &) const = default;
# else
bool operator==(VideoSessionParametersCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (videoSessionParametersTemplate == rhs.videoSessionParametersTemplate) &&
(videoSession == rhs.videoSession);
# endif
}
bool operator!=(VideoSessionParametersCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoSessionParametersCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParametersTemplate = {};
VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoSessionParametersCreateInfoKHR) == sizeof(VkVideoSessionParametersCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoSessionParametersCreateInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoSessionParametersCreateInfoKHR>::value,
"VideoSessionParametersCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoSessionParametersCreateInfoKHR>
{
using Type = VideoSessionParametersCreateInfoKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_ENABLE_BETA_EXTENSIONS)
struct VideoSessionParametersUpdateInfoKHR
{
using NativeType = VkVideoSessionParametersUpdateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eVideoSessionParametersUpdateInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR VideoSessionParametersUpdateInfoKHR(uint32_t updateSequenceCount_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
updateSequenceCount(updateSequenceCount_)
{
}
VULKAN_HPP_CONSTEXPR VideoSessionParametersUpdateInfoKHR(VideoSessionParametersUpdateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoSessionParametersUpdateInfoKHR(VkVideoSessionParametersUpdateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: VideoSessionParametersUpdateInfoKHR(*reinterpret_cast<VideoSessionParametersUpdateInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
VideoSessionParametersUpdateInfoKHR &operator=(VideoSessionParametersUpdateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
VideoSessionParametersUpdateInfoKHR &operator=(VkVideoSessionParametersUpdateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::VideoSessionParametersUpdateInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 VideoSessionParametersUpdateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 VideoSessionParametersUpdateInfoKHR &setUpdateSequenceCount(uint32_t updateSequenceCount_) VULKAN_HPP_NOEXCEPT
{
updateSequenceCount = updateSequenceCount_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkVideoSessionParametersUpdateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkVideoSessionParametersUpdateInfoKHR *>(this);
}
explicit operator VkVideoSessionParametersUpdateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkVideoSessionParametersUpdateInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, updateSequenceCount);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(VideoSessionParametersUpdateInfoKHR const &) const = default;
# else
bool operator==(VideoSessionParametersUpdateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (updateSequenceCount == rhs.updateSequenceCount);
# endif
}
bool operator!=(VideoSessionParametersUpdateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eVideoSessionParametersUpdateInfoKHR;
const void *pNext = {};
uint32_t updateSequenceCount = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::VideoSessionParametersUpdateInfoKHR) == sizeof(VkVideoSessionParametersUpdateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoSessionParametersUpdateInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoSessionParametersUpdateInfoKHR>::value,
"VideoSessionParametersUpdateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eVideoSessionParametersUpdateInfoKHR>
{
using Type = VideoSessionParametersUpdateInfoKHR;
};
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined(VK_USE_PLATFORM_WAYLAND_KHR)
struct WaylandSurfaceCreateInfoKHR
{
using NativeType = VkWaylandSurfaceCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWaylandSurfaceCreateInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR WaylandSurfaceCreateInfoKHR(VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateFlagsKHR flags_ = {},
struct wl_display *display_ = {},
struct wl_surface *surface_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
display(display_),
surface(surface_)
{
}
VULKAN_HPP_CONSTEXPR WaylandSurfaceCreateInfoKHR(WaylandSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
WaylandSurfaceCreateInfoKHR(VkWaylandSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: WaylandSurfaceCreateInfoKHR(*reinterpret_cast<WaylandSurfaceCreateInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
WaylandSurfaceCreateInfoKHR &operator=(WaylandSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
WaylandSurfaceCreateInfoKHR &operator=(VkWaylandSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 WaylandSurfaceCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WaylandSurfaceCreateInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WaylandSurfaceCreateInfoKHR &setDisplay(struct wl_display *display_) VULKAN_HPP_NOEXCEPT
{
display = display_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WaylandSurfaceCreateInfoKHR &setSurface(struct wl_surface *surface_) VULKAN_HPP_NOEXCEPT
{
surface = surface_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkWaylandSurfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkWaylandSurfaceCreateInfoKHR *>(this);
}
explicit operator VkWaylandSurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkWaylandSurfaceCreateInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateFlagsKHR const &,
struct wl_display *const &,
struct wl_surface *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, display, surface);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(WaylandSurfaceCreateInfoKHR const &) const = default;
# else
bool operator==(WaylandSurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (display == rhs.display) && (surface == rhs.surface);
# endif
}
bool operator!=(WaylandSurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWaylandSurfaceCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateFlagsKHR flags = {};
struct wl_display *display = {};
struct wl_surface *surface = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateInfoKHR) == sizeof(VkWaylandSurfaceCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::WaylandSurfaceCreateInfoKHR>::value,
"WaylandSurfaceCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eWaylandSurfaceCreateInfoKHR>
{
using Type = WaylandSurfaceCreateInfoKHR;
};
#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct Win32KeyedMutexAcquireReleaseInfoKHR
{
using NativeType = VkWin32KeyedMutexAcquireReleaseInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWin32KeyedMutexAcquireReleaseInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR Win32KeyedMutexAcquireReleaseInfoKHR(uint32_t acquireCount_ = {},
const VULKAN_HPP_NAMESPACE::DeviceMemory *pAcquireSyncs_ = {},
const uint64_t *pAcquireKeys_ = {},
const uint32_t *pAcquireTimeouts_ = {},
uint32_t releaseCount_ = {},
const VULKAN_HPP_NAMESPACE::DeviceMemory *pReleaseSyncs_ = {},
const uint64_t *pReleaseKeys_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
acquireCount(acquireCount_),
pAcquireSyncs(pAcquireSyncs_),
pAcquireKeys(pAcquireKeys_),
pAcquireTimeouts(pAcquireTimeouts_),
releaseCount(releaseCount_),
pReleaseSyncs(pReleaseSyncs_),
pReleaseKeys(pReleaseKeys_)
{
}
VULKAN_HPP_CONSTEXPR Win32KeyedMutexAcquireReleaseInfoKHR(Win32KeyedMutexAcquireReleaseInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
Win32KeyedMutexAcquireReleaseInfoKHR(VkWin32KeyedMutexAcquireReleaseInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: Win32KeyedMutexAcquireReleaseInfoKHR(*reinterpret_cast<Win32KeyedMutexAcquireReleaseInfoKHR const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
Win32KeyedMutexAcquireReleaseInfoKHR(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const &acquireSyncs_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &acquireKeys_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &acquireTimeouts_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const &releaseSyncs_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &releaseKeys_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, acquireCount(static_cast<uint32_t>(acquireSyncs_.size()))
, pAcquireSyncs(acquireSyncs_.data())
, pAcquireKeys(acquireKeys_.data())
, pAcquireTimeouts(acquireTimeouts_.data())
, releaseCount(static_cast<uint32_t>(releaseSyncs_.size()))
, pReleaseSyncs(releaseSyncs_.data())
, pReleaseKeys(releaseKeys_.data())
{
# ifdef VULKAN_HPP_NO_EXCEPTIONS
VULKAN_HPP_ASSERT(acquireSyncs_.size() == acquireKeys_.size());
VULKAN_HPP_ASSERT(acquireSyncs_.size() == acquireTimeouts_.size());
VULKAN_HPP_ASSERT(acquireKeys_.size() == acquireTimeouts_.size());
# else
if(acquireSyncs_.size() != acquireKeys_.size())
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING
"::Win32KeyedMutexAcquireReleaseInfoKHR::Win32KeyedMutexAcquireReleaseInfoKHR: acquireSyncs_.size() != acquireKeys_.size()");
}
if(acquireSyncs_.size() != acquireTimeouts_.size())
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING
"::Win32KeyedMutexAcquireReleaseInfoKHR::Win32KeyedMutexAcquireReleaseInfoKHR: acquireSyncs_.size() != acquireTimeouts_.size()");
}
if(acquireKeys_.size() != acquireTimeouts_.size())
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING
"::Win32KeyedMutexAcquireReleaseInfoKHR::Win32KeyedMutexAcquireReleaseInfoKHR: acquireKeys_.size() != acquireTimeouts_.size()");
}
# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
# ifdef VULKAN_HPP_NO_EXCEPTIONS
VULKAN_HPP_ASSERT(releaseSyncs_.size() == releaseKeys_.size());
# else
if(releaseSyncs_.size() != releaseKeys_.size())
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING
"::Win32KeyedMutexAcquireReleaseInfoKHR::Win32KeyedMutexAcquireReleaseInfoKHR: releaseSyncs_.size() != releaseKeys_.size()");
}
# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
Win32KeyedMutexAcquireReleaseInfoKHR &operator=(Win32KeyedMutexAcquireReleaseInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
Win32KeyedMutexAcquireReleaseInfoKHR &operator=(VkWin32KeyedMutexAcquireReleaseInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Win32KeyedMutexAcquireReleaseInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoKHR &setAcquireCount(uint32_t acquireCount_) VULKAN_HPP_NOEXCEPT
{
acquireCount = acquireCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoKHR &
setPAcquireSyncs(const VULKAN_HPP_NAMESPACE::DeviceMemory *pAcquireSyncs_) VULKAN_HPP_NOEXCEPT
{
pAcquireSyncs = pAcquireSyncs_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
Win32KeyedMutexAcquireReleaseInfoKHR &
setAcquireSyncs(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const &acquireSyncs_) VULKAN_HPP_NOEXCEPT
{
acquireCount = static_cast<uint32_t>(acquireSyncs_.size());
pAcquireSyncs = acquireSyncs_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoKHR &setPAcquireKeys(const uint64_t *pAcquireKeys_) VULKAN_HPP_NOEXCEPT
{
pAcquireKeys = pAcquireKeys_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
Win32KeyedMutexAcquireReleaseInfoKHR &
setAcquireKeys(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &acquireKeys_) VULKAN_HPP_NOEXCEPT
{
acquireCount = static_cast<uint32_t>(acquireKeys_.size());
pAcquireKeys = acquireKeys_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoKHR &setPAcquireTimeouts(const uint32_t *pAcquireTimeouts_) VULKAN_HPP_NOEXCEPT
{
pAcquireTimeouts = pAcquireTimeouts_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
Win32KeyedMutexAcquireReleaseInfoKHR &
setAcquireTimeouts(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &acquireTimeouts_) VULKAN_HPP_NOEXCEPT
{
acquireCount = static_cast<uint32_t>(acquireTimeouts_.size());
pAcquireTimeouts = acquireTimeouts_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoKHR &setReleaseCount(uint32_t releaseCount_) VULKAN_HPP_NOEXCEPT
{
releaseCount = releaseCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoKHR &
setPReleaseSyncs(const VULKAN_HPP_NAMESPACE::DeviceMemory *pReleaseSyncs_) VULKAN_HPP_NOEXCEPT
{
pReleaseSyncs = pReleaseSyncs_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
Win32KeyedMutexAcquireReleaseInfoKHR &
setReleaseSyncs(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const &releaseSyncs_) VULKAN_HPP_NOEXCEPT
{
releaseCount = static_cast<uint32_t>(releaseSyncs_.size());
pReleaseSyncs = releaseSyncs_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoKHR &setPReleaseKeys(const uint64_t *pReleaseKeys_) VULKAN_HPP_NOEXCEPT
{
pReleaseKeys = pReleaseKeys_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
Win32KeyedMutexAcquireReleaseInfoKHR &
setReleaseKeys(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &releaseKeys_) VULKAN_HPP_NOEXCEPT
{
releaseCount = static_cast<uint32_t>(releaseKeys_.size());
pReleaseKeys = releaseKeys_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkWin32KeyedMutexAcquireReleaseInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkWin32KeyedMutexAcquireReleaseInfoKHR *>(this);
}
explicit operator VkWin32KeyedMutexAcquireReleaseInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkWin32KeyedMutexAcquireReleaseInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DeviceMemory *const &,
const uint64_t *const &,
const uint32_t *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DeviceMemory *const &,
const uint64_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, acquireCount, pAcquireSyncs, pAcquireKeys, pAcquireTimeouts, releaseCount, pReleaseSyncs, pReleaseKeys);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(Win32KeyedMutexAcquireReleaseInfoKHR const &) const = default;
# else
bool operator==(Win32KeyedMutexAcquireReleaseInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (acquireCount == rhs.acquireCount) && (pAcquireSyncs == rhs.pAcquireSyncs) &&
(pAcquireKeys == rhs.pAcquireKeys) && (pAcquireTimeouts == rhs.pAcquireTimeouts) && (releaseCount == rhs.releaseCount) &&
(pReleaseSyncs == rhs.pReleaseSyncs) && (pReleaseKeys == rhs.pReleaseKeys);
# endif
}
bool operator!=(Win32KeyedMutexAcquireReleaseInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWin32KeyedMutexAcquireReleaseInfoKHR;
const void *pNext = {};
uint32_t acquireCount = {};
const VULKAN_HPP_NAMESPACE::DeviceMemory *pAcquireSyncs = {};
const uint64_t *pAcquireKeys = {};
const uint32_t *pAcquireTimeouts = {};
uint32_t releaseCount = {};
const VULKAN_HPP_NAMESPACE::DeviceMemory *pReleaseSyncs = {};
const uint64_t *pReleaseKeys = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::Win32KeyedMutexAcquireReleaseInfoKHR) == sizeof(VkWin32KeyedMutexAcquireReleaseInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::Win32KeyedMutexAcquireReleaseInfoKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::Win32KeyedMutexAcquireReleaseInfoKHR>::value,
"Win32KeyedMutexAcquireReleaseInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eWin32KeyedMutexAcquireReleaseInfoKHR>
{
using Type = Win32KeyedMutexAcquireReleaseInfoKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct Win32KeyedMutexAcquireReleaseInfoNV
{
using NativeType = VkWin32KeyedMutexAcquireReleaseInfoNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWin32KeyedMutexAcquireReleaseInfoNV;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR Win32KeyedMutexAcquireReleaseInfoNV(uint32_t acquireCount_ = {},
const VULKAN_HPP_NAMESPACE::DeviceMemory *pAcquireSyncs_ = {},
const uint64_t *pAcquireKeys_ = {},
const uint32_t *pAcquireTimeoutMilliseconds_ = {},
uint32_t releaseCount_ = {},
const VULKAN_HPP_NAMESPACE::DeviceMemory *pReleaseSyncs_ = {},
const uint64_t *pReleaseKeys_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
acquireCount(acquireCount_),
pAcquireSyncs(pAcquireSyncs_),
pAcquireKeys(pAcquireKeys_),
pAcquireTimeoutMilliseconds(pAcquireTimeoutMilliseconds_),
releaseCount(releaseCount_),
pReleaseSyncs(pReleaseSyncs_),
pReleaseKeys(pReleaseKeys_)
{
}
VULKAN_HPP_CONSTEXPR Win32KeyedMutexAcquireReleaseInfoNV(Win32KeyedMutexAcquireReleaseInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
Win32KeyedMutexAcquireReleaseInfoNV(VkWin32KeyedMutexAcquireReleaseInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
: Win32KeyedMutexAcquireReleaseInfoNV(*reinterpret_cast<Win32KeyedMutexAcquireReleaseInfoNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
Win32KeyedMutexAcquireReleaseInfoNV(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const &acquireSyncs_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &acquireKeys_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &acquireTimeoutMilliseconds_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const &releaseSyncs_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &releaseKeys_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, acquireCount(static_cast<uint32_t>(acquireSyncs_.size()))
, pAcquireSyncs(acquireSyncs_.data())
, pAcquireKeys(acquireKeys_.data())
, pAcquireTimeoutMilliseconds(acquireTimeoutMilliseconds_.data())
, releaseCount(static_cast<uint32_t>(releaseSyncs_.size()))
, pReleaseSyncs(releaseSyncs_.data())
, pReleaseKeys(releaseKeys_.data())
{
# ifdef VULKAN_HPP_NO_EXCEPTIONS
VULKAN_HPP_ASSERT(acquireSyncs_.size() == acquireKeys_.size());
VULKAN_HPP_ASSERT(acquireSyncs_.size() == acquireTimeoutMilliseconds_.size());
VULKAN_HPP_ASSERT(acquireKeys_.size() == acquireTimeoutMilliseconds_.size());
# else
if(acquireSyncs_.size() != acquireKeys_.size())
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING
"::Win32KeyedMutexAcquireReleaseInfoNV::Win32KeyedMutexAcquireReleaseInfoNV: acquireSyncs_.size() != acquireKeys_.size()");
}
if(acquireSyncs_.size() != acquireTimeoutMilliseconds_.size())
{
throw LogicError(
VULKAN_HPP_NAMESPACE_STRING
"::Win32KeyedMutexAcquireReleaseInfoNV::Win32KeyedMutexAcquireReleaseInfoNV: acquireSyncs_.size() != acquireTimeoutMilliseconds_.size()");
}
if(acquireKeys_.size() != acquireTimeoutMilliseconds_.size())
{
throw LogicError(
VULKAN_HPP_NAMESPACE_STRING
"::Win32KeyedMutexAcquireReleaseInfoNV::Win32KeyedMutexAcquireReleaseInfoNV: acquireKeys_.size() != acquireTimeoutMilliseconds_.size()");
}
# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
# ifdef VULKAN_HPP_NO_EXCEPTIONS
VULKAN_HPP_ASSERT(releaseSyncs_.size() == releaseKeys_.size());
# else
if(releaseSyncs_.size() != releaseKeys_.size())
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING
"::Win32KeyedMutexAcquireReleaseInfoNV::Win32KeyedMutexAcquireReleaseInfoNV: releaseSyncs_.size() != releaseKeys_.size()");
}
# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
Win32KeyedMutexAcquireReleaseInfoNV &operator=(Win32KeyedMutexAcquireReleaseInfoNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
Win32KeyedMutexAcquireReleaseInfoNV &operator=(VkWin32KeyedMutexAcquireReleaseInfoNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Win32KeyedMutexAcquireReleaseInfoNV const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoNV &setAcquireCount(uint32_t acquireCount_) VULKAN_HPP_NOEXCEPT
{
acquireCount = acquireCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoNV &
setPAcquireSyncs(const VULKAN_HPP_NAMESPACE::DeviceMemory *pAcquireSyncs_) VULKAN_HPP_NOEXCEPT
{
pAcquireSyncs = pAcquireSyncs_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
Win32KeyedMutexAcquireReleaseInfoNV &
setAcquireSyncs(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const &acquireSyncs_) VULKAN_HPP_NOEXCEPT
{
acquireCount = static_cast<uint32_t>(acquireSyncs_.size());
pAcquireSyncs = acquireSyncs_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoNV &setPAcquireKeys(const uint64_t *pAcquireKeys_) VULKAN_HPP_NOEXCEPT
{
pAcquireKeys = pAcquireKeys_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
Win32KeyedMutexAcquireReleaseInfoNV &
setAcquireKeys(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &acquireKeys_) VULKAN_HPP_NOEXCEPT
{
acquireCount = static_cast<uint32_t>(acquireKeys_.size());
pAcquireKeys = acquireKeys_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoNV &
setPAcquireTimeoutMilliseconds(const uint32_t *pAcquireTimeoutMilliseconds_) VULKAN_HPP_NOEXCEPT
{
pAcquireTimeoutMilliseconds = pAcquireTimeoutMilliseconds_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
Win32KeyedMutexAcquireReleaseInfoNV &
setAcquireTimeoutMilliseconds(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint32_t> const &acquireTimeoutMilliseconds_) VULKAN_HPP_NOEXCEPT
{
acquireCount = static_cast<uint32_t>(acquireTimeoutMilliseconds_.size());
pAcquireTimeoutMilliseconds = acquireTimeoutMilliseconds_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoNV &setReleaseCount(uint32_t releaseCount_) VULKAN_HPP_NOEXCEPT
{
releaseCount = releaseCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoNV &
setPReleaseSyncs(const VULKAN_HPP_NAMESPACE::DeviceMemory *pReleaseSyncs_) VULKAN_HPP_NOEXCEPT
{
pReleaseSyncs = pReleaseSyncs_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
Win32KeyedMutexAcquireReleaseInfoNV &
setReleaseSyncs(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DeviceMemory> const &releaseSyncs_) VULKAN_HPP_NOEXCEPT
{
releaseCount = static_cast<uint32_t>(releaseSyncs_.size());
pReleaseSyncs = releaseSyncs_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 Win32KeyedMutexAcquireReleaseInfoNV &setPReleaseKeys(const uint64_t *pReleaseKeys_) VULKAN_HPP_NOEXCEPT
{
pReleaseKeys = pReleaseKeys_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
Win32KeyedMutexAcquireReleaseInfoNV &
setReleaseKeys(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const uint64_t> const &releaseKeys_) VULKAN_HPP_NOEXCEPT
{
releaseCount = static_cast<uint32_t>(releaseKeys_.size());
pReleaseKeys = releaseKeys_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkWin32KeyedMutexAcquireReleaseInfoNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkWin32KeyedMutexAcquireReleaseInfoNV *>(this);
}
explicit operator VkWin32KeyedMutexAcquireReleaseInfoNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkWin32KeyedMutexAcquireReleaseInfoNV *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DeviceMemory *const &,
const uint64_t *const &,
const uint32_t *const &,
uint32_t const &,
const VULKAN_HPP_NAMESPACE::DeviceMemory *const &,
const uint64_t *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, acquireCount, pAcquireSyncs, pAcquireKeys, pAcquireTimeoutMilliseconds, releaseCount, pReleaseSyncs, pReleaseKeys);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(Win32KeyedMutexAcquireReleaseInfoNV const &) const = default;
# else
bool operator==(Win32KeyedMutexAcquireReleaseInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (acquireCount == rhs.acquireCount) && (pAcquireSyncs == rhs.pAcquireSyncs) &&
(pAcquireKeys == rhs.pAcquireKeys) && (pAcquireTimeoutMilliseconds == rhs.pAcquireTimeoutMilliseconds) &&
(releaseCount == rhs.releaseCount) && (pReleaseSyncs == rhs.pReleaseSyncs) && (pReleaseKeys == rhs.pReleaseKeys);
# endif
}
bool operator!=(Win32KeyedMutexAcquireReleaseInfoNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWin32KeyedMutexAcquireReleaseInfoNV;
const void *pNext = {};
uint32_t acquireCount = {};
const VULKAN_HPP_NAMESPACE::DeviceMemory *pAcquireSyncs = {};
const uint64_t *pAcquireKeys = {};
const uint32_t *pAcquireTimeoutMilliseconds = {};
uint32_t releaseCount = {};
const VULKAN_HPP_NAMESPACE::DeviceMemory *pReleaseSyncs = {};
const uint64_t *pReleaseKeys = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::Win32KeyedMutexAcquireReleaseInfoNV) == sizeof(VkWin32KeyedMutexAcquireReleaseInfoNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::Win32KeyedMutexAcquireReleaseInfoNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::Win32KeyedMutexAcquireReleaseInfoNV>::value,
"Win32KeyedMutexAcquireReleaseInfoNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eWin32KeyedMutexAcquireReleaseInfoNV>
{
using Type = Win32KeyedMutexAcquireReleaseInfoNV;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#if defined(VK_USE_PLATFORM_WIN32_KHR)
struct Win32SurfaceCreateInfoKHR
{
using NativeType = VkWin32SurfaceCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWin32SurfaceCreateInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR Win32SurfaceCreateInfoKHR(VULKAN_HPP_NAMESPACE::Win32SurfaceCreateFlagsKHR flags_ = {},
HINSTANCE hinstance_ = {},
HWND hwnd_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
hinstance(hinstance_),
hwnd(hwnd_)
{
}
VULKAN_HPP_CONSTEXPR Win32SurfaceCreateInfoKHR(Win32SurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
Win32SurfaceCreateInfoKHR(VkWin32SurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: Win32SurfaceCreateInfoKHR(*reinterpret_cast<Win32SurfaceCreateInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
Win32SurfaceCreateInfoKHR &operator=(Win32SurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
Win32SurfaceCreateInfoKHR &operator=(VkWin32SurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::Win32SurfaceCreateInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 Win32SurfaceCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Win32SurfaceCreateInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::Win32SurfaceCreateFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Win32SurfaceCreateInfoKHR &setHinstance(HINSTANCE hinstance_) VULKAN_HPP_NOEXCEPT
{
hinstance = hinstance_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 Win32SurfaceCreateInfoKHR &setHwnd(HWND hwnd_) VULKAN_HPP_NOEXCEPT
{
hwnd = hwnd_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkWin32SurfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkWin32SurfaceCreateInfoKHR *>(this);
}
explicit operator VkWin32SurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkWin32SurfaceCreateInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::Win32SurfaceCreateFlagsKHR const &,
HINSTANCE const &,
HWND const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, hinstance, hwnd);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(Win32SurfaceCreateInfoKHR const &) const = default;
# else
bool operator==(Win32SurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (hinstance == rhs.hinstance) && (hwnd == rhs.hwnd);
# endif
}
bool operator!=(Win32SurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
# endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWin32SurfaceCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::Win32SurfaceCreateFlagsKHR flags = {};
HINSTANCE hinstance = {};
HWND hwnd = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::Win32SurfaceCreateInfoKHR) == sizeof(VkWin32SurfaceCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::Win32SurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::Win32SurfaceCreateInfoKHR>::value,
"Win32SurfaceCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eWin32SurfaceCreateInfoKHR>
{
using Type = Win32SurfaceCreateInfoKHR;
};
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
struct WriteDescriptorSet
{
using NativeType = VkWriteDescriptorSet;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWriteDescriptorSet;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR WriteDescriptorSet(VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_ = {},
uint32_t dstBinding_ = {},
uint32_t dstArrayElement_ = {},
uint32_t descriptorCount_ = {},
VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_ = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler,
const VULKAN_HPP_NAMESPACE::DescriptorImageInfo *pImageInfo_ = {},
const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo *pBufferInfo_ = {},
const VULKAN_HPP_NAMESPACE::BufferView *pTexelBufferView_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
dstSet(dstSet_),
dstBinding(dstBinding_),
dstArrayElement(dstArrayElement_),
descriptorCount(descriptorCount_),
descriptorType(descriptorType_),
pImageInfo(pImageInfo_),
pBufferInfo(pBufferInfo_),
pTexelBufferView(pTexelBufferView_)
{
}
VULKAN_HPP_CONSTEXPR WriteDescriptorSet(WriteDescriptorSet const &rhs) VULKAN_HPP_NOEXCEPT = default;
WriteDescriptorSet(VkWriteDescriptorSet const &rhs) VULKAN_HPP_NOEXCEPT : WriteDescriptorSet(*reinterpret_cast<WriteDescriptorSet const *>(&rhs)) {}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
WriteDescriptorSet(VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_,
uint32_t dstBinding_,
uint32_t dstArrayElement_,
VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorImageInfo> const &imageInfo_,
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo> const &bufferInfo_ = {},
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferView> const &texelBufferView_ = {},
const void *pNext_ = nullptr)
: pNext(pNext_)
, dstSet(dstSet_)
, dstBinding(dstBinding_)
, dstArrayElement(dstArrayElement_)
, descriptorCount(static_cast<uint32_t>(!imageInfo_.empty() ? imageInfo_.size()
: !bufferInfo_.empty() ? bufferInfo_.size()
: texelBufferView_.size()))
, descriptorType(descriptorType_)
, pImageInfo(imageInfo_.data())
, pBufferInfo(bufferInfo_.data())
, pTexelBufferView(texelBufferView_.data())
{
# ifdef VULKAN_HPP_NO_EXCEPTIONS
VULKAN_HPP_ASSERT((!imageInfo_.empty() + !bufferInfo_.empty() + !texelBufferView_.empty()) <= 1);
# else
if(1 < (!imageInfo_.empty() + !bufferInfo_.empty() + !texelBufferView_.empty()))
{
throw LogicError(VULKAN_HPP_NAMESPACE_STRING
"::WriteDescriptorSet::WriteDescriptorSet: 1 < ( !imageInfo_.empty() + !bufferInfo_.empty() + !texelBufferView_.empty() )");
}
# endif /*VULKAN_HPP_NO_EXCEPTIONS*/
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
WriteDescriptorSet &operator=(WriteDescriptorSet const &rhs) VULKAN_HPP_NOEXCEPT = default;
WriteDescriptorSet &operator=(VkWriteDescriptorSet const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WriteDescriptorSet const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSet &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSet &setDstSet(VULKAN_HPP_NAMESPACE::DescriptorSet dstSet_) VULKAN_HPP_NOEXCEPT
{
dstSet = dstSet_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSet &setDstBinding(uint32_t dstBinding_) VULKAN_HPP_NOEXCEPT
{
dstBinding = dstBinding_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSet &setDstArrayElement(uint32_t dstArrayElement_) VULKAN_HPP_NOEXCEPT
{
dstArrayElement = dstArrayElement_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSet &setDescriptorCount(uint32_t descriptorCount_) VULKAN_HPP_NOEXCEPT
{
descriptorCount = descriptorCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSet &setDescriptorType(VULKAN_HPP_NAMESPACE::DescriptorType descriptorType_) VULKAN_HPP_NOEXCEPT
{
descriptorType = descriptorType_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSet &setPImageInfo(const VULKAN_HPP_NAMESPACE::DescriptorImageInfo *pImageInfo_) VULKAN_HPP_NOEXCEPT
{
pImageInfo = pImageInfo_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
WriteDescriptorSet &
setImageInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorImageInfo> const &imageInfo_) VULKAN_HPP_NOEXCEPT
{
descriptorCount = static_cast<uint32_t>(imageInfo_.size());
pImageInfo = imageInfo_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSet &setPBufferInfo(const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo *pBufferInfo_) VULKAN_HPP_NOEXCEPT
{
pBufferInfo = pBufferInfo_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
WriteDescriptorSet &
setBufferInfo(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo> const &bufferInfo_) VULKAN_HPP_NOEXCEPT
{
descriptorCount = static_cast<uint32_t>(bufferInfo_.size());
pBufferInfo = bufferInfo_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSet &setPTexelBufferView(const VULKAN_HPP_NAMESPACE::BufferView *pTexelBufferView_) VULKAN_HPP_NOEXCEPT
{
pTexelBufferView = pTexelBufferView_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
WriteDescriptorSet &
setTexelBufferView(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::BufferView> const &texelBufferView_) VULKAN_HPP_NOEXCEPT
{
descriptorCount = static_cast<uint32_t>(texelBufferView_.size());
pTexelBufferView = texelBufferView_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkWriteDescriptorSet const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkWriteDescriptorSet *>(this);
}
explicit operator VkWriteDescriptorSet &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkWriteDescriptorSet *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::DescriptorSet const &,
uint32_t const &,
uint32_t const &,
uint32_t const &,
VULKAN_HPP_NAMESPACE::DescriptorType const &,
const VULKAN_HPP_NAMESPACE::DescriptorImageInfo *const &,
const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo *const &,
const VULKAN_HPP_NAMESPACE::BufferView *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, dstSet, dstBinding, dstArrayElement, descriptorCount, descriptorType, pImageInfo, pBufferInfo, pTexelBufferView);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(WriteDescriptorSet const &) const = default;
#else
bool operator==(WriteDescriptorSet const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (dstSet == rhs.dstSet) && (dstBinding == rhs.dstBinding) &&
(dstArrayElement == rhs.dstArrayElement) && (descriptorCount == rhs.descriptorCount) && (descriptorType == rhs.descriptorType) &&
(pImageInfo == rhs.pImageInfo) && (pBufferInfo == rhs.pBufferInfo) && (pTexelBufferView == rhs.pTexelBufferView);
# endif
}
bool operator!=(WriteDescriptorSet const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWriteDescriptorSet;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::DescriptorSet dstSet = {};
uint32_t dstBinding = {};
uint32_t dstArrayElement = {};
uint32_t descriptorCount = {};
VULKAN_HPP_NAMESPACE::DescriptorType descriptorType = VULKAN_HPP_NAMESPACE::DescriptorType::eSampler;
const VULKAN_HPP_NAMESPACE::DescriptorImageInfo *pImageInfo = {};
const VULKAN_HPP_NAMESPACE::DescriptorBufferInfo *pBufferInfo = {};
const VULKAN_HPP_NAMESPACE::BufferView *pTexelBufferView = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::WriteDescriptorSet) == sizeof(VkWriteDescriptorSet), "struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::WriteDescriptorSet>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::WriteDescriptorSet>::value,
"WriteDescriptorSet is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eWriteDescriptorSet>
{
using Type = WriteDescriptorSet;
};
struct WriteDescriptorSetAccelerationStructureKHR
{
using NativeType = VkWriteDescriptorSetAccelerationStructureKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWriteDescriptorSetAccelerationStructureKHR;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR WriteDescriptorSetAccelerationStructureKHR(uint32_t accelerationStructureCount_ = {},
const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR *pAccelerationStructures_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
accelerationStructureCount(accelerationStructureCount_),
pAccelerationStructures(pAccelerationStructures_)
{
}
VULKAN_HPP_CONSTEXPR WriteDescriptorSetAccelerationStructureKHR(WriteDescriptorSetAccelerationStructureKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
WriteDescriptorSetAccelerationStructureKHR(VkWriteDescriptorSetAccelerationStructureKHR const &rhs) VULKAN_HPP_NOEXCEPT
: WriteDescriptorSetAccelerationStructureKHR(*reinterpret_cast<WriteDescriptorSetAccelerationStructureKHR const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
WriteDescriptorSetAccelerationStructureKHR(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const &accelerationStructures_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, accelerationStructureCount(static_cast<uint32_t>(accelerationStructures_.size()))
, pAccelerationStructures(accelerationStructures_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
WriteDescriptorSetAccelerationStructureKHR &operator=(WriteDescriptorSetAccelerationStructureKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
WriteDescriptorSetAccelerationStructureKHR &operator=(VkWriteDescriptorSetAccelerationStructureKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WriteDescriptorSetAccelerationStructureKHR const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSetAccelerationStructureKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSetAccelerationStructureKHR &
setAccelerationStructureCount(uint32_t accelerationStructureCount_) VULKAN_HPP_NOEXCEPT
{
accelerationStructureCount = accelerationStructureCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSetAccelerationStructureKHR &
setPAccelerationStructures(const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR *pAccelerationStructures_) VULKAN_HPP_NOEXCEPT
{
pAccelerationStructures = pAccelerationStructures_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
WriteDescriptorSetAccelerationStructureKHR &setAccelerationStructures(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> const &accelerationStructures_) VULKAN_HPP_NOEXCEPT
{
accelerationStructureCount = static_cast<uint32_t>(accelerationStructures_.size());
pAccelerationStructures = accelerationStructures_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkWriteDescriptorSetAccelerationStructureKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkWriteDescriptorSetAccelerationStructureKHR *>(this);
}
explicit operator VkWriteDescriptorSetAccelerationStructureKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkWriteDescriptorSetAccelerationStructureKHR *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::
tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, accelerationStructureCount, pAccelerationStructures);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(WriteDescriptorSetAccelerationStructureKHR const &) const = default;
#else
bool operator==(WriteDescriptorSetAccelerationStructureKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (accelerationStructureCount == rhs.accelerationStructureCount) &&
(pAccelerationStructures == rhs.pAccelerationStructures);
# endif
}
bool operator!=(WriteDescriptorSetAccelerationStructureKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWriteDescriptorSetAccelerationStructureKHR;
const void *pNext = {};
uint32_t accelerationStructureCount = {};
const VULKAN_HPP_NAMESPACE::AccelerationStructureKHR *pAccelerationStructures = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::WriteDescriptorSetAccelerationStructureKHR) ==
sizeof(VkWriteDescriptorSetAccelerationStructureKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::WriteDescriptorSetAccelerationStructureKHR>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::WriteDescriptorSetAccelerationStructureKHR>::value,
"WriteDescriptorSetAccelerationStructureKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eWriteDescriptorSetAccelerationStructureKHR>
{
using Type = WriteDescriptorSetAccelerationStructureKHR;
};
struct WriteDescriptorSetAccelerationStructureNV
{
using NativeType = VkWriteDescriptorSetAccelerationStructureNV;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWriteDescriptorSetAccelerationStructureNV;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR WriteDescriptorSetAccelerationStructureNV(uint32_t accelerationStructureCount_ = {},
const VULKAN_HPP_NAMESPACE::AccelerationStructureNV *pAccelerationStructures_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
accelerationStructureCount(accelerationStructureCount_),
pAccelerationStructures(pAccelerationStructures_)
{
}
VULKAN_HPP_CONSTEXPR WriteDescriptorSetAccelerationStructureNV(WriteDescriptorSetAccelerationStructureNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
WriteDescriptorSetAccelerationStructureNV(VkWriteDescriptorSetAccelerationStructureNV const &rhs) VULKAN_HPP_NOEXCEPT
: WriteDescriptorSetAccelerationStructureNV(*reinterpret_cast<WriteDescriptorSetAccelerationStructureNV const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
WriteDescriptorSetAccelerationStructureNV(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureNV> const &accelerationStructures_,
const void *pNext_ = nullptr)
: pNext(pNext_)
, accelerationStructureCount(static_cast<uint32_t>(accelerationStructures_.size()))
, pAccelerationStructures(accelerationStructures_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
WriteDescriptorSetAccelerationStructureNV &operator=(WriteDescriptorSetAccelerationStructureNV const &rhs) VULKAN_HPP_NOEXCEPT = default;
WriteDescriptorSetAccelerationStructureNV &operator=(VkWriteDescriptorSetAccelerationStructureNV const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WriteDescriptorSetAccelerationStructureNV const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSetAccelerationStructureNV &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSetAccelerationStructureNV &
setAccelerationStructureCount(uint32_t accelerationStructureCount_) VULKAN_HPP_NOEXCEPT
{
accelerationStructureCount = accelerationStructureCount_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSetAccelerationStructureNV &
setPAccelerationStructures(const VULKAN_HPP_NAMESPACE::AccelerationStructureNV *pAccelerationStructures_) VULKAN_HPP_NOEXCEPT
{
pAccelerationStructures = pAccelerationStructures_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
WriteDescriptorSetAccelerationStructureNV &setAccelerationStructures(
VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const VULKAN_HPP_NAMESPACE::AccelerationStructureNV> const &accelerationStructures_) VULKAN_HPP_NOEXCEPT
{
accelerationStructureCount = static_cast<uint32_t>(accelerationStructures_.size());
pAccelerationStructures = accelerationStructures_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkWriteDescriptorSetAccelerationStructureNV const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkWriteDescriptorSetAccelerationStructureNV *>(this);
}
explicit operator VkWriteDescriptorSetAccelerationStructureNV &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkWriteDescriptorSetAccelerationStructureNV *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::
tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const VULKAN_HPP_NAMESPACE::AccelerationStructureNV *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, accelerationStructureCount, pAccelerationStructures);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(WriteDescriptorSetAccelerationStructureNV const &) const = default;
#else
bool operator==(WriteDescriptorSetAccelerationStructureNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (accelerationStructureCount == rhs.accelerationStructureCount) &&
(pAccelerationStructures == rhs.pAccelerationStructures);
# endif
}
bool operator!=(WriteDescriptorSetAccelerationStructureNV const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWriteDescriptorSetAccelerationStructureNV;
const void *pNext = {};
uint32_t accelerationStructureCount = {};
const VULKAN_HPP_NAMESPACE::AccelerationStructureNV *pAccelerationStructures = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::WriteDescriptorSetAccelerationStructureNV) == sizeof(VkWriteDescriptorSetAccelerationStructureNV),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::WriteDescriptorSetAccelerationStructureNV>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::WriteDescriptorSetAccelerationStructureNV>::value,
"WriteDescriptorSetAccelerationStructureNV is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eWriteDescriptorSetAccelerationStructureNV>
{
using Type = WriteDescriptorSetAccelerationStructureNV;
};
struct WriteDescriptorSetInlineUniformBlock
{
using NativeType = VkWriteDescriptorSetInlineUniformBlock;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eWriteDescriptorSetInlineUniformBlock;
#if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR
WriteDescriptorSetInlineUniformBlock(uint32_t dataSize_ = {}, const void *pData_ = {}, const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
dataSize(dataSize_),
pData(pData_)
{
}
VULKAN_HPP_CONSTEXPR WriteDescriptorSetInlineUniformBlock(WriteDescriptorSetInlineUniformBlock const &rhs) VULKAN_HPP_NOEXCEPT = default;
WriteDescriptorSetInlineUniformBlock(VkWriteDescriptorSetInlineUniformBlock const &rhs) VULKAN_HPP_NOEXCEPT
: WriteDescriptorSetInlineUniformBlock(*reinterpret_cast<WriteDescriptorSetInlineUniformBlock const *>(&rhs))
{
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
WriteDescriptorSetInlineUniformBlock(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &data_, const void *pNext_ = nullptr)
: pNext(pNext_)
, dataSize(static_cast<uint32_t>(data_.size() * sizeof(T)))
, pData(data_.data())
{
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
WriteDescriptorSetInlineUniformBlock &operator=(WriteDescriptorSetInlineUniformBlock const &rhs) VULKAN_HPP_NOEXCEPT = default;
WriteDescriptorSetInlineUniformBlock &operator=(VkWriteDescriptorSetInlineUniformBlock const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::WriteDescriptorSetInlineUniformBlock const *>(&rhs);
return *this;
}
#if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSetInlineUniformBlock &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSetInlineUniformBlock &setDataSize(uint32_t dataSize_) VULKAN_HPP_NOEXCEPT
{
dataSize = dataSize_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 WriteDescriptorSetInlineUniformBlock &setPData(const void *pData_) VULKAN_HPP_NOEXCEPT
{
pData = pData_;
return *this;
}
# if !defined(VULKAN_HPP_DISABLE_ENHANCED_MODE)
template<typename T>
WriteDescriptorSetInlineUniformBlock &setData(VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<const T> const &data_) VULKAN_HPP_NOEXCEPT
{
dataSize = static_cast<uint32_t>(data_.size() * sizeof(T));
pData = data_.data();
return *this;
}
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkWriteDescriptorSetInlineUniformBlock const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkWriteDescriptorSetInlineUniformBlock *>(this);
}
explicit operator VkWriteDescriptorSetInlineUniformBlock &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkWriteDescriptorSetInlineUniformBlock *>(this);
}
#if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void *const &, uint32_t const &, const void *const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, dataSize, pData);
}
#endif
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
auto operator<=>(WriteDescriptorSetInlineUniformBlock const &) const = default;
#else
bool operator==(WriteDescriptorSetInlineUniformBlock const &rhs) const VULKAN_HPP_NOEXCEPT
{
# if defined(VULKAN_HPP_USE_REFLECT)
return this->reflect() == rhs.reflect();
# else
return (sType == rhs.sType) && (pNext == rhs.pNext) && (dataSize == rhs.dataSize) && (pData == rhs.pData);
# endif
}
bool operator!=(WriteDescriptorSetInlineUniformBlock const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
#endif
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eWriteDescriptorSetInlineUniformBlock;
const void *pNext = {};
uint32_t dataSize = {};
const void *pData = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::WriteDescriptorSetInlineUniformBlock) == sizeof(VkWriteDescriptorSetInlineUniformBlock),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::WriteDescriptorSetInlineUniformBlock>::value,
"struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::WriteDescriptorSetInlineUniformBlock>::value,
"WriteDescriptorSetInlineUniformBlock is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eWriteDescriptorSetInlineUniformBlock>
{
using Type = WriteDescriptorSetInlineUniformBlock;
};
using WriteDescriptorSetInlineUniformBlockEXT = WriteDescriptorSetInlineUniformBlock;
#if defined(VK_USE_PLATFORM_XCB_KHR)
struct XcbSurfaceCreateInfoKHR
{
using NativeType = VkXcbSurfaceCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eXcbSurfaceCreateInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR XcbSurfaceCreateInfoKHR(VULKAN_HPP_NAMESPACE::XcbSurfaceCreateFlagsKHR flags_ = {},
xcb_connection_t *connection_ = {},
xcb_window_t window_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
connection(connection_),
window(window_)
{
}
VULKAN_HPP_CONSTEXPR XcbSurfaceCreateInfoKHR(XcbSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
XcbSurfaceCreateInfoKHR(VkXcbSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: XcbSurfaceCreateInfoKHR(*reinterpret_cast<XcbSurfaceCreateInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
XcbSurfaceCreateInfoKHR &operator=(XcbSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
XcbSurfaceCreateInfoKHR &operator=(VkXcbSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::XcbSurfaceCreateInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 XcbSurfaceCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 XcbSurfaceCreateInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::XcbSurfaceCreateFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 XcbSurfaceCreateInfoKHR &setConnection(xcb_connection_t *connection_) VULKAN_HPP_NOEXCEPT
{
connection = connection_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 XcbSurfaceCreateInfoKHR &setWindow(xcb_window_t window_) VULKAN_HPP_NOEXCEPT
{
window = window_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkXcbSurfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkXcbSurfaceCreateInfoKHR *>(this);
}
explicit operator VkXcbSurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkXcbSurfaceCreateInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::XcbSurfaceCreateFlagsKHR const &,
xcb_connection_t *const &,
xcb_window_t const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, connection, window);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(XcbSurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = flags <=> rhs.flags; cmp != 0)
return cmp;
if(auto cmp = connection <=> rhs.connection; cmp != 0)
return cmp;
if(auto cmp = memcmp(&window, &rhs.window, sizeof(xcb_window_t)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(XcbSurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (connection == rhs.connection) &&
(memcmp(&window, &rhs.window, sizeof(xcb_window_t)) == 0);
}
bool operator!=(XcbSurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eXcbSurfaceCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::XcbSurfaceCreateFlagsKHR flags = {};
xcb_connection_t *connection = {};
xcb_window_t window = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::XcbSurfaceCreateInfoKHR) == sizeof(VkXcbSurfaceCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::XcbSurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::XcbSurfaceCreateInfoKHR>::value,
"XcbSurfaceCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eXcbSurfaceCreateInfoKHR>
{
using Type = XcbSurfaceCreateInfoKHR;
};
#endif /*VK_USE_PLATFORM_XCB_KHR*/
#if defined(VK_USE_PLATFORM_XLIB_KHR)
struct XlibSurfaceCreateInfoKHR
{
using NativeType = VkXlibSurfaceCreateInfoKHR;
static const bool allowDuplicate = false;
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eXlibSurfaceCreateInfoKHR;
# if !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS)
VULKAN_HPP_CONSTEXPR XlibSurfaceCreateInfoKHR(VULKAN_HPP_NAMESPACE::XlibSurfaceCreateFlagsKHR flags_ = {},
Display *dpy_ = {},
Window window_ = {},
const void *pNext_ = nullptr) VULKAN_HPP_NOEXCEPT
: pNext(pNext_),
flags(flags_),
dpy(dpy_),
window(window_)
{
}
VULKAN_HPP_CONSTEXPR XlibSurfaceCreateInfoKHR(XlibSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
XlibSurfaceCreateInfoKHR(VkXlibSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
: XlibSurfaceCreateInfoKHR(*reinterpret_cast<XlibSurfaceCreateInfoKHR const *>(&rhs))
{
}
# endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
XlibSurfaceCreateInfoKHR &operator=(XlibSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT = default;
XlibSurfaceCreateInfoKHR &operator=(VkXlibSurfaceCreateInfoKHR const &rhs) VULKAN_HPP_NOEXCEPT
{
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::XlibSurfaceCreateInfoKHR const *>(&rhs);
return *this;
}
# if !defined(VULKAN_HPP_NO_STRUCT_SETTERS)
VULKAN_HPP_CONSTEXPR_14 XlibSurfaceCreateInfoKHR &setPNext(const void *pNext_) VULKAN_HPP_NOEXCEPT
{
pNext = pNext_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 XlibSurfaceCreateInfoKHR &setFlags(VULKAN_HPP_NAMESPACE::XlibSurfaceCreateFlagsKHR flags_) VULKAN_HPP_NOEXCEPT
{
flags = flags_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 XlibSurfaceCreateInfoKHR &setDpy(Display *dpy_) VULKAN_HPP_NOEXCEPT
{
dpy = dpy_;
return *this;
}
VULKAN_HPP_CONSTEXPR_14 XlibSurfaceCreateInfoKHR &setWindow(Window window_) VULKAN_HPP_NOEXCEPT
{
window = window_;
return *this;
}
# endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
explicit operator VkXlibSurfaceCreateInfoKHR const &() const VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<const VkXlibSurfaceCreateInfoKHR *>(this);
}
explicit operator VkXlibSurfaceCreateInfoKHR &() VULKAN_HPP_NOEXCEPT
{
return *reinterpret_cast<VkXlibSurfaceCreateInfoKHR *>(this);
}
# if defined(VULKAN_HPP_USE_REFLECT)
# if 14 <= VULKAN_HPP_CPP_VERSION
auto
# else
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &,
const void *const &,
VULKAN_HPP_NAMESPACE::XlibSurfaceCreateFlagsKHR const &,
Display *const &,
Window const &>
# endif
reflect() const VULKAN_HPP_NOEXCEPT
{
return std::tie(sType, pNext, flags, dpy, window);
}
# endif
# if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
std::strong_ordering operator<=>(XlibSurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
if(auto cmp = sType <=> rhs.sType; cmp != 0)
return cmp;
if(auto cmp = pNext <=> rhs.pNext; cmp != 0)
return cmp;
if(auto cmp = flags <=> rhs.flags; cmp != 0)
return cmp;
if(auto cmp = dpy <=> rhs.dpy; cmp != 0)
return cmp;
if(auto cmp = memcmp(&window, &rhs.window, sizeof(Window)); cmp != 0)
return (cmp < 0) ? std::strong_ordering::less : std::strong_ordering::greater;
return std::strong_ordering::equivalent;
}
# endif
bool operator==(XlibSurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return (sType == rhs.sType) && (pNext == rhs.pNext) && (flags == rhs.flags) && (dpy == rhs.dpy) &&
(memcmp(&window, &rhs.window, sizeof(Window)) == 0);
}
bool operator!=(XlibSurfaceCreateInfoKHR const &rhs) const VULKAN_HPP_NOEXCEPT
{
return !operator==(rhs);
}
public:
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eXlibSurfaceCreateInfoKHR;
const void *pNext = {};
VULKAN_HPP_NAMESPACE::XlibSurfaceCreateFlagsKHR flags = {};
Display *dpy = {};
Window window = {};
};
VULKAN_HPP_STATIC_ASSERT(sizeof(VULKAN_HPP_NAMESPACE::XlibSurfaceCreateInfoKHR) == sizeof(VkXlibSurfaceCreateInfoKHR),
"struct and wrapper have different size!");
VULKAN_HPP_STATIC_ASSERT(std::is_standard_layout<VULKAN_HPP_NAMESPACE::XlibSurfaceCreateInfoKHR>::value, "struct wrapper is not a standard layout!");
VULKAN_HPP_STATIC_ASSERT(std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::XlibSurfaceCreateInfoKHR>::value,
"XlibSurfaceCreateInfoKHR is not nothrow_move_constructible!");
template<>
struct CppType<StructureType, StructureType::eXlibSurfaceCreateInfoKHR>
{
using Type = XlibSurfaceCreateInfoKHR;
};
#endif /*VK_USE_PLATFORM_XLIB_KHR*/
} // namespace VULKAN_HPP_NAMESPACE
#endif