mirror of
https://github.com/skyline-emu/skyline.git
synced 2024-11-19 02:29:15 +01:00
500b49d329
This commit adds Vulkan-Hpp as a library to the project. The headers are from a modified version of `VulkanHppGenerator`. They are broken into multiple files to avoid exceeding the Intellisense file size limit of Android Studio.
713 lines
28 KiB
C++
713 lines
28 KiB
C++
// Copyright (c) 2015-2019 The Khronos Group Inc.
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
//
|
|
// ---- Exceptions to the Apache 2.0 License: ----
|
|
//
|
|
// As an exception, if you use this Software to generate code and portions of
|
|
// this Software are embedded into the generated code as a result, you may
|
|
// redistribute such product without providing attribution as would otherwise
|
|
// be required by Sections 4(a), 4(b) and 4(d) of the License.
|
|
//
|
|
// In addition, if you combine or link code generated by this Software with
|
|
// software that is licensed under the GPLv2 or the LGPL v2.0 or 2.1
|
|
// ("`Combined Software`") and if a court of competent jurisdiction determines
|
|
// that the patent provision (Section 3), the indemnity provision (Section 9)
|
|
// or other Section of the License conflicts with the conditions of the
|
|
// applicable GPL or LGPL license, you may retroactively and prospectively
|
|
// choose to deem waived or otherwise exclude such Section(s) of the License,
|
|
// but only in their entirety and only with respect to the Combined Software.
|
|
//
|
|
|
|
// This header is generated from the Khronos Vulkan XML API Registry.
|
|
|
|
#pragma once
|
|
|
|
#include "../handles.hpp"
|
|
#include "VkAcquire.hpp"
|
|
#include "VkAcceleration.hpp"
|
|
#include "VkApplication.hpp"
|
|
#include "VkInitialize.hpp"
|
|
#include "VkAllocation.hpp"
|
|
#include "VkExternal.hpp"
|
|
#include "VkBind.hpp"
|
|
#include "VkObject.hpp"
|
|
#include "VkCooperative.hpp"
|
|
#include "VkAndroid.hpp"
|
|
#include "VkImport.hpp"
|
|
#include "VkImage.hpp"
|
|
#include "VkDescriptor.hpp"
|
|
#include "VkBase.hpp"
|
|
#include "VkAttachment.hpp"
|
|
#include "VkBuffer.hpp"
|
|
#include "VkFramebuffer.hpp"
|
|
#include "VkCalibrated.hpp"
|
|
#include "VkDevice.hpp"
|
|
#include "VkCheckpoint.hpp"
|
|
#include "VkConformance.hpp"
|
|
#include "VkClear.hpp"
|
|
#include "VkCmd.hpp"
|
|
#include "VkCoarse.hpp"
|
|
#include "VkExtension.hpp"
|
|
#include "VkCommand.hpp"
|
|
#include "VkFormat.hpp"
|
|
#include "VkMetal.hpp"
|
|
#include "VkComponent.hpp"
|
|
#include "VkCopy.hpp"
|
|
#include "VkCompute.hpp"
|
|
#include "VkPast.hpp"
|
|
#include "VkConditional.hpp"
|
|
#include "VkMapped.hpp"
|
|
#include "VkD3D.hpp"
|
|
#include "VkDebug.hpp"
|
|
#include "VkDedicated.hpp"
|
|
#include "VkFence.hpp"
|
|
#include "VkDispatch.hpp"
|
|
#include "VkPipeline.hpp"
|
|
#include "VkDraw.hpp"
|
|
#include "VkDisplay.hpp"
|
|
#include "VkDrm.hpp"
|
|
#include "VkEvent.hpp"
|
|
#include "VkExport.hpp"
|
|
#include "VkRay.hpp"
|
|
#include "VkExtent.hpp"
|
|
#include "VkPerformance.hpp"
|
|
#include "VkFilter.hpp"
|
|
#include "VkRender.hpp"
|
|
#include "VkGeometry.hpp"
|
|
#include "VkGraphics.hpp"
|
|
#include "VkHdr.hpp"
|
|
#include "VkHeadless.hpp"
|
|
#include "VkMultisample.hpp"
|
|
#include "VkI.hpp"
|
|
#include "VkIndirect.hpp"
|
|
#include "VkInput.hpp"
|
|
#include "VkOffset.hpp"
|
|
#include "VkMemory.hpp"
|
|
#include "VkInstance.hpp"
|
|
#include "VkLayer.hpp"
|
|
#include "VkMac.hpp"
|
|
#include "VkPhysical.hpp"
|
|
#include "VkPresent.hpp"
|
|
#include "VkProtected.hpp"
|
|
#include "VkPush.hpp"
|
|
#include "VkQuery.hpp"
|
|
#include "VkQueue.hpp"
|
|
#include "VkRect.hpp"
|
|
#include "VkRefresh.hpp"
|
|
#include "VkSample.hpp"
|
|
#include "VkSampler.hpp"
|
|
|
|
namespace VULKAN_HPP_NAMESPACE
|
|
{
|
|
struct SamplerCreateInfo
|
|
{
|
|
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_ = {} ) VULKAN_HPP_NOEXCEPT
|
|
: 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
|
|
: 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 )
|
|
{}
|
|
|
|
SamplerCreateInfo & operator=( SamplerCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
memcpy( &pNext, &rhs.pNext, sizeof( SamplerCreateInfo ) - offsetof( SamplerCreateInfo, pNext ) );
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo( VkSamplerCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
*this = rhs;
|
|
}
|
|
|
|
SamplerCreateInfo& operator=( VkSamplerCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerCreateInfo const *>(&rhs);
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
pNext = pNext_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setFlags( VULKAN_HPP_NAMESPACE::SamplerCreateFlags flags_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
flags = flags_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setMagFilter( VULKAN_HPP_NAMESPACE::Filter magFilter_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
magFilter = magFilter_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setMinFilter( VULKAN_HPP_NAMESPACE::Filter minFilter_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
minFilter = minFilter_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setMipmapMode( VULKAN_HPP_NAMESPACE::SamplerMipmapMode mipmapMode_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
mipmapMode = mipmapMode_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setAddressModeU( VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeU_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
addressModeU = addressModeU_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setAddressModeV( VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeV_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
addressModeV = addressModeV_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setAddressModeW( VULKAN_HPP_NAMESPACE::SamplerAddressMode addressModeW_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
addressModeW = addressModeW_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setMipLodBias( float mipLodBias_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
mipLodBias = mipLodBias_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setAnisotropyEnable( VULKAN_HPP_NAMESPACE::Bool32 anisotropyEnable_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
anisotropyEnable = anisotropyEnable_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setMaxAnisotropy( float maxAnisotropy_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
maxAnisotropy = maxAnisotropy_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setCompareEnable( VULKAN_HPP_NAMESPACE::Bool32 compareEnable_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
compareEnable = compareEnable_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setCompareOp( VULKAN_HPP_NAMESPACE::CompareOp compareOp_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
compareOp = compareOp_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setMinLod( float minLod_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
minLod = minLod_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setMaxLod( float maxLod_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
maxLod = maxLod_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setBorderColor( VULKAN_HPP_NAMESPACE::BorderColor borderColor_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
borderColor = borderColor_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerCreateInfo & setUnnormalizedCoordinates( VULKAN_HPP_NAMESPACE::Bool32 unnormalizedCoordinates_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
unnormalizedCoordinates = unnormalizedCoordinates_;
|
|
return *this;
|
|
}
|
|
|
|
operator VkSamplerCreateInfo const&() const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return *reinterpret_cast<const VkSamplerCreateInfo*>( this );
|
|
}
|
|
|
|
operator VkSamplerCreateInfo &() VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return *reinterpret_cast<VkSamplerCreateInfo*>( this );
|
|
}
|
|
|
|
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
|
|
auto operator<=>( SamplerCreateInfo const& ) const = default;
|
|
#else
|
|
bool operator==( SamplerCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
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 );
|
|
}
|
|
|
|
bool operator!=( SamplerCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return !operator==( rhs );
|
|
}
|
|
#endif
|
|
|
|
public:
|
|
const 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 = {};
|
|
};
|
|
static_assert( sizeof( SamplerCreateInfo ) == sizeof( VkSamplerCreateInfo ), "struct and wrapper have different size!" );
|
|
static_assert( std::is_standard_layout<SamplerCreateInfo>::value, "struct wrapper is not a standard layout!" );
|
|
|
|
struct SamplerReductionModeCreateInfoEXT
|
|
{
|
|
VULKAN_HPP_CONSTEXPR SamplerReductionModeCreateInfoEXT( VULKAN_HPP_NAMESPACE::SamplerReductionModeEXT reductionMode_ = VULKAN_HPP_NAMESPACE::SamplerReductionModeEXT::eWeightedAverage ) VULKAN_HPP_NOEXCEPT
|
|
: reductionMode( reductionMode_ )
|
|
{}
|
|
|
|
VULKAN_HPP_CONSTEXPR SamplerReductionModeCreateInfoEXT( SamplerReductionModeCreateInfoEXT const& rhs ) VULKAN_HPP_NOEXCEPT
|
|
: pNext( rhs.pNext )
|
|
, reductionMode( rhs.reductionMode )
|
|
{}
|
|
|
|
SamplerReductionModeCreateInfoEXT & operator=( SamplerReductionModeCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
memcpy( &pNext, &rhs.pNext, sizeof( SamplerReductionModeCreateInfoEXT ) - offsetof( SamplerReductionModeCreateInfoEXT, pNext ) );
|
|
return *this;
|
|
}
|
|
|
|
SamplerReductionModeCreateInfoEXT( VkSamplerReductionModeCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
*this = rhs;
|
|
}
|
|
|
|
SamplerReductionModeCreateInfoEXT& operator=( VkSamplerReductionModeCreateInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerReductionModeCreateInfoEXT const *>(&rhs);
|
|
return *this;
|
|
}
|
|
|
|
SamplerReductionModeCreateInfoEXT & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
pNext = pNext_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerReductionModeCreateInfoEXT & setReductionMode( VULKAN_HPP_NAMESPACE::SamplerReductionModeEXT reductionMode_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
reductionMode = reductionMode_;
|
|
return *this;
|
|
}
|
|
|
|
operator VkSamplerReductionModeCreateInfoEXT const&() const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return *reinterpret_cast<const VkSamplerReductionModeCreateInfoEXT*>( this );
|
|
}
|
|
|
|
operator VkSamplerReductionModeCreateInfoEXT &() VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return *reinterpret_cast<VkSamplerReductionModeCreateInfoEXT*>( this );
|
|
}
|
|
|
|
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
|
|
auto operator<=>( SamplerReductionModeCreateInfoEXT const& ) const = default;
|
|
#else
|
|
bool operator==( SamplerReductionModeCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return ( sType == rhs.sType )
|
|
&& ( pNext == rhs.pNext )
|
|
&& ( reductionMode == rhs.reductionMode );
|
|
}
|
|
|
|
bool operator!=( SamplerReductionModeCreateInfoEXT const& rhs ) const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return !operator==( rhs );
|
|
}
|
|
#endif
|
|
|
|
public:
|
|
const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerReductionModeCreateInfoEXT;
|
|
const void* pNext = {};
|
|
VULKAN_HPP_NAMESPACE::SamplerReductionModeEXT reductionMode = VULKAN_HPP_NAMESPACE::SamplerReductionModeEXT::eWeightedAverage;
|
|
};
|
|
static_assert( sizeof( SamplerReductionModeCreateInfoEXT ) == sizeof( VkSamplerReductionModeCreateInfoEXT ), "struct and wrapper have different size!" );
|
|
static_assert( std::is_standard_layout<SamplerReductionModeCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
|
|
|
|
struct SamplerYcbcrConversionCreateInfo
|
|
{
|
|
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_ = {} ) VULKAN_HPP_NOEXCEPT
|
|
: 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
|
|
: 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 )
|
|
{}
|
|
|
|
SamplerYcbcrConversionCreateInfo & operator=( SamplerYcbcrConversionCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
memcpy( &pNext, &rhs.pNext, sizeof( SamplerYcbcrConversionCreateInfo ) - offsetof( SamplerYcbcrConversionCreateInfo, pNext ) );
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionCreateInfo( VkSamplerYcbcrConversionCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
*this = rhs;
|
|
}
|
|
|
|
SamplerYcbcrConversionCreateInfo& operator=( VkSamplerYcbcrConversionCreateInfo const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionCreateInfo const *>(&rhs);
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionCreateInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
pNext = pNext_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionCreateInfo & setFormat( VULKAN_HPP_NAMESPACE::Format format_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
format = format_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionCreateInfo & setYcbcrModel( VULKAN_HPP_NAMESPACE::SamplerYcbcrModelConversion ycbcrModel_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
ycbcrModel = ycbcrModel_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionCreateInfo & setYcbcrRange( VULKAN_HPP_NAMESPACE::SamplerYcbcrRange ycbcrRange_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
ycbcrRange = ycbcrRange_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionCreateInfo & setComponents( VULKAN_HPP_NAMESPACE::ComponentMapping components_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
components = components_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionCreateInfo & setXChromaOffset( VULKAN_HPP_NAMESPACE::ChromaLocation xChromaOffset_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
xChromaOffset = xChromaOffset_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionCreateInfo & setYChromaOffset( VULKAN_HPP_NAMESPACE::ChromaLocation yChromaOffset_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
yChromaOffset = yChromaOffset_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionCreateInfo & setChromaFilter( VULKAN_HPP_NAMESPACE::Filter chromaFilter_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
chromaFilter = chromaFilter_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionCreateInfo & setForceExplicitReconstruction( VULKAN_HPP_NAMESPACE::Bool32 forceExplicitReconstruction_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
forceExplicitReconstruction = forceExplicitReconstruction_;
|
|
return *this;
|
|
}
|
|
|
|
operator VkSamplerYcbcrConversionCreateInfo const&() const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return *reinterpret_cast<const VkSamplerYcbcrConversionCreateInfo*>( this );
|
|
}
|
|
|
|
operator VkSamplerYcbcrConversionCreateInfo &() VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return *reinterpret_cast<VkSamplerYcbcrConversionCreateInfo*>( this );
|
|
}
|
|
|
|
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
|
|
auto operator<=>( SamplerYcbcrConversionCreateInfo const& ) const = default;
|
|
#else
|
|
bool operator==( SamplerYcbcrConversionCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
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 );
|
|
}
|
|
|
|
bool operator!=( SamplerYcbcrConversionCreateInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return !operator==( rhs );
|
|
}
|
|
#endif
|
|
|
|
public:
|
|
const 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 = {};
|
|
};
|
|
static_assert( sizeof( SamplerYcbcrConversionCreateInfo ) == sizeof( VkSamplerYcbcrConversionCreateInfo ), "struct and wrapper have different size!" );
|
|
static_assert( std::is_standard_layout<SamplerYcbcrConversionCreateInfo>::value, "struct wrapper is not a standard layout!" );
|
|
|
|
struct SamplerYcbcrConversionImageFormatProperties
|
|
{
|
|
VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionImageFormatProperties( uint32_t combinedImageSamplerDescriptorCount_ = {} ) VULKAN_HPP_NOEXCEPT
|
|
: combinedImageSamplerDescriptorCount( combinedImageSamplerDescriptorCount_ )
|
|
{}
|
|
|
|
VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionImageFormatProperties( SamplerYcbcrConversionImageFormatProperties const& rhs ) VULKAN_HPP_NOEXCEPT
|
|
: pNext( rhs.pNext )
|
|
, combinedImageSamplerDescriptorCount( rhs.combinedImageSamplerDescriptorCount )
|
|
{}
|
|
|
|
SamplerYcbcrConversionImageFormatProperties & operator=( SamplerYcbcrConversionImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
memcpy( &pNext, &rhs.pNext, sizeof( SamplerYcbcrConversionImageFormatProperties ) - offsetof( SamplerYcbcrConversionImageFormatProperties, pNext ) );
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionImageFormatProperties( VkSamplerYcbcrConversionImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
*this = rhs;
|
|
}
|
|
|
|
SamplerYcbcrConversionImageFormatProperties& operator=( VkSamplerYcbcrConversionImageFormatProperties const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionImageFormatProperties const *>(&rhs);
|
|
return *this;
|
|
}
|
|
|
|
operator VkSamplerYcbcrConversionImageFormatProperties const&() const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return *reinterpret_cast<const VkSamplerYcbcrConversionImageFormatProperties*>( this );
|
|
}
|
|
|
|
operator VkSamplerYcbcrConversionImageFormatProperties &() VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return *reinterpret_cast<VkSamplerYcbcrConversionImageFormatProperties*>( this );
|
|
}
|
|
|
|
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
|
|
auto operator<=>( SamplerYcbcrConversionImageFormatProperties const& ) const = default;
|
|
#else
|
|
bool operator==( SamplerYcbcrConversionImageFormatProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return ( sType == rhs.sType )
|
|
&& ( pNext == rhs.pNext )
|
|
&& ( combinedImageSamplerDescriptorCount == rhs.combinedImageSamplerDescriptorCount );
|
|
}
|
|
|
|
bool operator!=( SamplerYcbcrConversionImageFormatProperties const& rhs ) const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return !operator==( rhs );
|
|
}
|
|
#endif
|
|
|
|
public:
|
|
const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerYcbcrConversionImageFormatProperties;
|
|
void* pNext = {};
|
|
uint32_t combinedImageSamplerDescriptorCount = {};
|
|
};
|
|
static_assert( sizeof( SamplerYcbcrConversionImageFormatProperties ) == sizeof( VkSamplerYcbcrConversionImageFormatProperties ), "struct and wrapper have different size!" );
|
|
static_assert( std::is_standard_layout<SamplerYcbcrConversionImageFormatProperties>::value, "struct wrapper is not a standard layout!" );
|
|
|
|
struct SamplerYcbcrConversionInfo
|
|
{
|
|
VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionInfo( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion conversion_ = {} ) VULKAN_HPP_NOEXCEPT
|
|
: conversion( conversion_ )
|
|
{}
|
|
|
|
VULKAN_HPP_CONSTEXPR SamplerYcbcrConversionInfo( SamplerYcbcrConversionInfo const& rhs ) VULKAN_HPP_NOEXCEPT
|
|
: pNext( rhs.pNext )
|
|
, conversion( rhs.conversion )
|
|
{}
|
|
|
|
SamplerYcbcrConversionInfo & operator=( SamplerYcbcrConversionInfo const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
memcpy( &pNext, &rhs.pNext, sizeof( SamplerYcbcrConversionInfo ) - offsetof( SamplerYcbcrConversionInfo, pNext ) );
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionInfo( VkSamplerYcbcrConversionInfo const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
*this = rhs;
|
|
}
|
|
|
|
SamplerYcbcrConversionInfo& operator=( VkSamplerYcbcrConversionInfo const & rhs ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
*this = *reinterpret_cast<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversionInfo const *>(&rhs);
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionInfo & setPNext( const void* pNext_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
pNext = pNext_;
|
|
return *this;
|
|
}
|
|
|
|
SamplerYcbcrConversionInfo & setConversion( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion conversion_ ) VULKAN_HPP_NOEXCEPT
|
|
{
|
|
conversion = conversion_;
|
|
return *this;
|
|
}
|
|
|
|
operator VkSamplerYcbcrConversionInfo const&() const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return *reinterpret_cast<const VkSamplerYcbcrConversionInfo*>( this );
|
|
}
|
|
|
|
operator VkSamplerYcbcrConversionInfo &() VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return *reinterpret_cast<VkSamplerYcbcrConversionInfo*>( this );
|
|
}
|
|
|
|
#if defined(VULKAN_HPP_HAS_SPACESHIP_OPERATOR)
|
|
auto operator<=>( SamplerYcbcrConversionInfo const& ) const = default;
|
|
#else
|
|
bool operator==( SamplerYcbcrConversionInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return ( sType == rhs.sType )
|
|
&& ( pNext == rhs.pNext )
|
|
&& ( conversion == rhs.conversion );
|
|
}
|
|
|
|
bool operator!=( SamplerYcbcrConversionInfo const& rhs ) const VULKAN_HPP_NOEXCEPT
|
|
{
|
|
return !operator==( rhs );
|
|
}
|
|
#endif
|
|
|
|
public:
|
|
const VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eSamplerYcbcrConversionInfo;
|
|
const void* pNext = {};
|
|
VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion conversion = {};
|
|
};
|
|
static_assert( sizeof( SamplerYcbcrConversionInfo ) == sizeof( VkSamplerYcbcrConversionInfo ), "struct and wrapper have different size!" );
|
|
static_assert( std::is_standard_layout<SamplerYcbcrConversionInfo>::value, "struct wrapper is not a standard layout!" );
|
|
} // namespace VULKAN_HPP_NAMESPACE
|