VULKAN_HPP_NAMESPACE::ImageCreateInfo Struct Reference

`#include <vulkan.hpp>`

Collaboration diagram for VULKAN_HPP_NAMESPACE::ImageCreateInfo:
[legend]

## Public Member Functions

ImageCreateInfo (ImageCreateFlags flags_=ImageCreateFlags(), ImageType imageType_=ImageType::e1D, Format format_=Format::eUndefined, Extent3D extent_=Extent3D(), uint32_t mipLevels_=0, uint32_t arrayLayers_=0, SampleCountFlagBits samples_=SampleCountFlagBits::e1, ImageTiling tiling_=ImageTiling::eOptimal, ImageUsageFlags usage_=ImageUsageFlags(), SharingMode sharingMode_=SharingMode::eExclusive, uint32_t queueFamilyIndexCount_=0, const uint32_t *pQueueFamilyIndices_=nullptr, ImageLayout initialLayout_=ImageLayout::eUndefined)

| ImageCreateInfo (VkImageCreateInfo const &rhs)
ImageCreateInfo & | operator= (VkImageCreateInfo const &rhs)
ImageCreateInfo & | setPNext (const void *pNext_)
ImageCreateInfo & | setFlags (ImageCreateFlags flags_)
ImageCreateInfo & | setImageType (ImageType imageType_)
ImageCreateInfo & | setFormat (Format format_)
ImageCreateInfo & | setExtent (Extent3D extent_)
ImageCreateInfo & | setMipLevels (uint32_t mipLevels_)
ImageCreateInfo & | setArrayLayers (uint32_t arrayLayers_)
ImageCreateInfo & | setSamples (SampleCountFlagBits samples_)
ImageCreateInfo & | setTiling (ImageTiling tiling_)
ImageCreateInfo & | setUsage (ImageUsageFlags usage_)
ImageCreateInfo & | setSharingMode (SharingMode sharingMode_)
ImageCreateInfo & | setQueueFamilyIndexCount (uint32_t queueFamilyIndexCount_)
ImageCreateInfo & | setPQueueFamilyIndices (const uint32_t *pQueueFamilyIndices_)
ImageCreateInfo & | setInitialLayout (ImageLayout initialLayout_)
| operator VkImageCreateInfo const & () const
| operator VkImageCreateInfo & ()
bool | operator== (ImageCreateInfo const &rhs) const
bool | operator!= (ImageCreateInfo const &rhs) const

## Data Fields

const void * | pNext = nullptr
ImageCreateFlags | flags
ImageType | imageType
Format | format
Extent3D | extent
uint32_t | mipLevels
uint32_t | arrayLayers
SampleCountFlagBits | samples
ImageTiling | tiling
ImageUsageFlags | usage
SharingMode | sharingMode
uint32_t | queueFamilyIndexCount
const uint32_t * | pQueueFamilyIndices
ImageLayout | initialLayout

## Private Attributes

StructureType | sType = StructureType::eImageCreateInfo

## Detailed Description

Definition at line 27013 of file vulkan.hpp.

## Constructor & Destructor Documentation

## ImageCreateInfo() [1/2]

VULKAN_HPP_NAMESPACE::ImageCreateInfo::ImageCreateInfo | ( | ImageCreateFlags | flags_ = `ImageCreateFlags()`,
|  | ImageType | imageType_ = `ImageType::e1D`,
|  | Format | format_ = `Format::eUndefined`,
|  | Extent3D | extent_ = `Extent3D()`,
|  | uint32_t | mipLevels_ = `0`,
|  | uint32_t | arrayLayers_ = `0`,
|  | SampleCountFlagBits | samples_ = `SampleCountFlagBits::e1`,
|  | ImageTiling | tiling_ = `ImageTiling::eOptimal`,
|  | ImageUsageFlags | usage_ = `ImageUsageFlags()`,
|  | SharingMode | sharingMode_ = `SharingMode::eExclusive`,
|  | uint32_t | queueFamilyIndexCount_ = `0`,
|  | const uint32_t * | pQueueFamilyIndices_ = `nullptr`,
|  | ImageLayout | initialLayout_ = `ImageLayout::eUndefined`
| ) |  |

inline

Definition at line 27015 of file vulkan.hpp.

: 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_ )
{
}

## ImageCreateInfo() [2/2]

VULKAN_HPP_NAMESPACE::ImageCreateInfo::ImageCreateInfo | ( | VkImageCreateInfo const & | rhs | ) |

inline

Definition at line 27044 of file vulkan.hpp.

{
memcpy( this, &rhs, sizeof( ImageCreateInfo ) );
}

References memcpy.

## Member Function Documentation

## operator VkImageCreateInfo &()

VULKAN_HPP_NAMESPACE::ImageCreateInfo::operator VkImageCreateInfo & | ( |  | ) |

inline

Definition at line 27143 of file vulkan.hpp.

{
return *reinterpret_cast<VkImageCreateInfo*>(this);
}

## operator VkImageCreateInfo const &()

VULKAN_HPP_NAMESPACE::ImageCreateInfo::operator VkImageCreateInfo const & | ( |  | ) | const

inline

Definition at line 27138 of file vulkan.hpp.

{
return *reinterpret_cast<const VkImageCreateInfo*>(this);
}

## operator!=()

bool VULKAN_HPP_NAMESPACE::ImageCreateInfo::operator!= | ( | ImageCreateInfo const & | rhs | ) | const

inline

Definition at line 27167 of file vulkan.hpp.

{
return !operator==( rhs );
}

References operator==().

## operator=()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::operator= | ( | VkImageCreateInfo const & | rhs | ) |

inline

Definition at line 27049 of file vulkan.hpp.

{
memcpy( this, &rhs, sizeof( ImageCreateInfo ) );
return *this;
}

References memcpy.

## operator==()

bool VULKAN_HPP_NAMESPACE::ImageCreateInfo::operator== | ( | ImageCreateInfo const & | rhs | ) | const

inline

Definition at line 27148 of file vulkan.hpp.

{
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 );
}

References arrayLayers, extent, flags, format, imageType, initialLayout, mipLevels, pNext, pQueueFamilyIndices, queueFamilyIndexCount, samples, sharingMode, sType, tiling, and usage.

Referenced by operator!=().

## setArrayLayers()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setArrayLayers | ( | uint32_t | arrayLayers_ | ) |

inline

Definition at line 27090 of file vulkan.hpp.

{
arrayLayers = arrayLayers_;
return *this;
}

References arrayLayers.

## setExtent()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setExtent | ( | Extent3D | extent_ | ) |

inline

Definition at line 27078 of file vulkan.hpp.

{
extent = extent_;
return *this;
}

References extent.

## setFlags()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setFlags | ( | ImageCreateFlags | flags_ | ) |

inline

Definition at line 27060 of file vulkan.hpp.

{
flags = flags_;
return *this;
}

## setFormat()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setFormat | ( | Format | format_ | ) |

inline

Definition at line 27072 of file vulkan.hpp.

{
format = format_;
return *this;
}

## setImageType()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setImageType | ( | ImageType | imageType_ | ) |

inline

Definition at line 27066 of file vulkan.hpp.

{
imageType = imageType_;
return *this;
}

References imageType.

## setInitialLayout()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setInitialLayout | ( | ImageLayout | initialLayout_ | ) |

inline

Definition at line 27132 of file vulkan.hpp.

{
initialLayout = initialLayout_;
return *this;
}

References initialLayout.

## setMipLevels()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setMipLevels | ( | uint32_t | mipLevels_ | ) |

inline

Definition at line 27084 of file vulkan.hpp.

{
mipLevels = mipLevels_;
return *this;
}

References mipLevels.

## setPNext()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setPNext | ( | const void * | pNext_ | ) |

inline

Definition at line 27054 of file vulkan.hpp.

{
pNext = pNext_;
return *this;
}

References pNext.

## setPQueueFamilyIndices()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setPQueueFamilyIndices | ( | const uint32_t * | pQueueFamilyIndices_ | ) |

inline

Definition at line 27126 of file vulkan.hpp.

{
pQueueFamilyIndices = pQueueFamilyIndices_;
return *this;
}

References pQueueFamilyIndices.

## setQueueFamilyIndexCount()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setQueueFamilyIndexCount | ( | uint32_t | queueFamilyIndexCount_ | ) |

inline

Definition at line 27120 of file vulkan.hpp.

{
queueFamilyIndexCount = queueFamilyIndexCount_;
return *this;
}

References queueFamilyIndexCount.

## setSamples()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setSamples | ( | SampleCountFlagBits | samples_ | ) |

inline

Definition at line 27096 of file vulkan.hpp.

{
samples = samples_;
return *this;
}

## setSharingMode()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setSharingMode | ( | SharingMode | sharingMode_ | ) |

inline

Definition at line 27114 of file vulkan.hpp.

{
sharingMode = sharingMode_;
return *this;
}

References sharingMode.

## setTiling()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setTiling | ( | ImageTiling | tiling_ | ) |

inline

Definition at line 27102 of file vulkan.hpp.

{
tiling = tiling_;
return *this;
}

References tiling.

## setUsage()

ImageCreateInfo& VULKAN_HPP_NAMESPACE::ImageCreateInfo::setUsage | ( | ImageUsageFlags | usage_ | ) |

inline

Definition at line 27108 of file vulkan.hpp.

{
usage = usage_;
return *this;
}

## Field Documentation

## arrayLayers

uint32_t VULKAN_HPP_NAMESPACE::ImageCreateInfo::arrayLayers

Definition at line 27182 of file vulkan.hpp.

Referenced by operator==(), and setArrayLayers().

## extent

Extent3D VULKAN_HPP_NAMESPACE::ImageCreateInfo::extent

Definition at line 27180 of file vulkan.hpp.

Referenced by operator==(), and setExtent().

## flags

ImageCreateFlags VULKAN_HPP_NAMESPACE::ImageCreateInfo::flags

Definition at line 27177 of file vulkan.hpp.

Referenced by operator==().

## format

Format VULKAN_HPP_NAMESPACE::ImageCreateInfo::format

Definition at line 27179 of file vulkan.hpp.

Referenced by operator==().

## imageType

ImageType VULKAN_HPP_NAMESPACE::ImageCreateInfo::imageType

Definition at line 27178 of file vulkan.hpp.

Referenced by operator==(), and setImageType().

## initialLayout

ImageLayout VULKAN_HPP_NAMESPACE::ImageCreateInfo::initialLayout

Definition at line 27189 of file vulkan.hpp.

Referenced by operator==(), and setInitialLayout().

## mipLevels

uint32_t VULKAN_HPP_NAMESPACE::ImageCreateInfo::mipLevels

Definition at line 27181 of file vulkan.hpp.

Referenced by operator==(), and setMipLevels().

## pNext

const void* VULKAN_HPP_NAMESPACE::ImageCreateInfo::pNext = nullptr

Definition at line 27176 of file vulkan.hpp.

Referenced by operator==(), and setPNext().

## pQueueFamilyIndices

const uint32_t* VULKAN_HPP_NAMESPACE::ImageCreateInfo::pQueueFamilyIndices

Definition at line 27188 of file vulkan.hpp.

Referenced by operator==(), and setPQueueFamilyIndices().

## queueFamilyIndexCount

uint32_t VULKAN_HPP_NAMESPACE::ImageCreateInfo::queueFamilyIndexCount

Definition at line 27187 of file vulkan.hpp.

Referenced by operator==(), and setQueueFamilyIndexCount().

## samples

SampleCountFlagBits VULKAN_HPP_NAMESPACE::ImageCreateInfo::samples

Definition at line 27183 of file vulkan.hpp.

Referenced by operator==().

## sharingMode

SharingMode VULKAN_HPP_NAMESPACE::ImageCreateInfo::sharingMode

Definition at line 27186 of file vulkan.hpp.

Referenced by operator==(), and setSharingMode().

## sType

StructureType VULKAN_HPP_NAMESPACE::ImageCreateInfo::sType = StructureType::eImageCreateInfo

private

Definition at line 27173 of file vulkan.hpp.

Referenced by operator==().

## tiling

ImageTiling VULKAN_HPP_NAMESPACE::ImageCreateInfo::tiling

Definition at line 27184 of file vulkan.hpp.

Referenced by operator==(), and setTiling().

## usage

ImageUsageFlags VULKAN_HPP_NAMESPACE::ImageCreateInfo::usage

Definition at line 27185 of file vulkan.hpp.

Referenced by operator==().

The documentation for this struct was generated from the following file:

- src/video/khronos/vulkan/vulkan.hpp

format
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: SDL_opengl.h:1572
VULKAN_HPP_NAMESPACE::ImageCreateInfo::sType
StructureType sType
Definition: vulkan.hpp:27173
VULKAN_HPP_NAMESPACE::ImageCreateInfo::mipLevels
uint32_t mipLevels
Definition: vulkan.hpp:27181
VULKAN_HPP_NAMESPACE::ImageCreateInfo::sharingMode
SharingMode sharingMode
Definition: vulkan.hpp:27186
samples
GLsizei samples
Definition: SDL_opengl_glext.h:1185
VULKAN_HPP_NAMESPACE::ImageCreateInfo::extent
Extent3D extent
Definition: vulkan.hpp:27180
VULKAN_HPP_NAMESPACE::ImageCreateInfo::flags
ImageCreateFlags flags
Definition: vulkan.hpp:27177
memcpy
#define memcpy
Definition: SDL_malloc.c:630
VULKAN_HPP_NAMESPACE::ImageCreateInfo::initialLayout
ImageLayout initialLayout
Definition: vulkan.hpp:27189
usage
GLsizeiptr const void GLenum usage
Definition: SDL_opengl_glext.h:537
VULKAN_HPP_NAMESPACE::ImageCreateInfo::imageType
ImageType imageType
Definition: vulkan.hpp:27178
VkImageCreateInfo
Definition: vulkan_core.h:2216
VULKAN_HPP_NAMESPACE::ImageCreateInfo::pQueueFamilyIndices
const uint32_t * pQueueFamilyIndices
Definition: vulkan.hpp:27188
VULKAN_HPP_NAMESPACE::ImageCreateInfo::queueFamilyIndexCount
uint32_t queueFamilyIndexCount
Definition: vulkan.hpp:27187
VULKAN_HPP_NAMESPACE::ImageCreateInfo::ImageCreateInfo
ImageCreateInfo(ImageCreateFlags flags_=ImageCreateFlags(), ImageType imageType_=ImageType::e1D, Format format_=Format::eUndefined, Extent3D extent_=Extent3D(), uint32_t mipLevels_=0, uint32_t arrayLayers_=0, SampleCountFlagBits samples_=SampleCountFlagBits::e1, ImageTiling tiling_=ImageTiling::eOptimal, ImageUsageFlags usage_=ImageUsageFlags(), SharingMode sharingMode_=SharingMode::eExclusive, uint32_t queueFamilyIndexCount_=0, const uint32_t *pQueueFamilyIndices_=nullptr, ImageLayout initialLayout_=ImageLayout::eUndefined)
Definition: vulkan.hpp:27015
VULKAN_HPP_NAMESPACE::ImageCreateInfo::format
Format format
Definition: vulkan.hpp:27179
VULKAN_HPP_NAMESPACE::ImageCreateInfo::tiling
ImageTiling tiling
Definition: vulkan.hpp:27184
VULKAN_HPP_NAMESPACE::ImageCreateInfo::pNext
const void * pNext
Definition: vulkan.hpp:27176
VULKAN_HPP_NAMESPACE::ImageCreateInfo::operator==
bool operator==(ImageCreateInfo const &rhs) const
Definition: vulkan.hpp:27148
VULKAN_HPP_NAMESPACE::ImageCreateInfo::arrayLayers
uint32_t arrayLayers
Definition: vulkan.hpp:27182
VULKAN_HPP_NAMESPACE::ImageCreateInfo::samples
SampleCountFlagBits samples
Definition: vulkan.hpp:27183
flags
GLbitfield flags
Definition: SDL_opengl_glext.h:1480
VULKAN_HPP_NAMESPACE::ImageCreateInfo::usage
ImageUsageFlags usage
Definition: vulkan.hpp:27185