Lluvia
ll::ImageViewDescriptor Class Reference

Descriptor for ll::ImageView objects. More...

#include <ImageViewDescriptor.h>

Public Member Functions

 ImageViewDescriptor ()=default
 
 ImageViewDescriptor (const ImageViewDescriptor &descriptor)=default
 
 ImageViewDescriptor (ImageViewDescriptor &&descriptor)=default
 
 ImageViewDescriptor (const ll::ImageAddressMode addressmode, const ll::ImageFilterMode filterMode, const bool normalizedCoordinates, const bool isSampled)
 
 ~ImageViewDescriptor ()=default
 
ImageViewDescriptoroperator= (const ImageViewDescriptor &descriptor)=default
 
ImageViewDescriptoroperator= (ImageViewDescriptor &&descriptor)=default
 
ImageViewDescriptorsetFilterMode (ll::ImageFilterMode filterMode) noexcept
 Sets the filtering mode. More...
 
ll::ImageFilterMode getFilterMode () const noexcept
 Gets the filter mode. More...
 
ImageViewDescriptorsetAddressMode (ll::ImageAddressMode addressMode) noexcept
 Sets the address mode to all image axes. More...
 
ImageViewDescriptorsetAddressMode (ll::ImageAxis axis, ll::ImageAddressMode addressMode) noexcept
 Sets the address mode to a given image axis. More...
 
ll::ImageAddressMode getAddressModeU () const noexcept
 Gets the address mode for the U axis. More...
 
ll::ImageAddressMode getAddressModeV () const noexcept
 Gets the address mode for the V axis. More...
 
ll::ImageAddressMode getAddressModeW () const noexcept
 Gets the address mode for the W axis. More...
 
ImageViewDescriptorsetNormalizedCoordinates (bool normalizedCoordinates) noexcept
 Sets whether or not the image view will use normalized coordinates. More...
 
bool isNormalizedCoordinates () const noexcept
 Determines if normalized coordinates are used for this image view. More...
 
ImageViewDescriptorsetIsSampled (bool isSampled) noexcept
 Sets whether or not the image view will be sampled. More...
 
bool isSampled () const noexcept
 Determines if the image view is sampled. More...
 
vk::SamplerCreateInfo getVkSamplerCreateInfo () const noexcept
 Return the Vulkan sampler creation info filled from this object. More...
 

Detailed Description

Descriptor for ll::ImageView objects.

The following code creates a descriptor for a sampled image using nearest filtering and unnormalized coordinates. The repeat address mode is used for pixels outside the image boundaries.

auto imgViewDesc = ll::ImageViewDescriptor {}
.setIsSampled(true)
Descriptor for ll::ImageView objects.
Definition: ImageViewDescriptor.h:41
ImageViewDescriptor & setIsSampled(bool isSampled) noexcept
Sets whether or not the image view will be sampled.
ImageViewDescriptor & setAddressMode(ll::ImageAddressMode addressMode) noexcept
Sets the address mode to all image axes.
ImageViewDescriptor & setFilterMode(ll::ImageFilterMode filterMode) noexcept
Sets the filtering mode.
ImageViewDescriptor & setNormalizedCoordinates(bool normalizedCoordinates) noexcept
Sets whether or not the image view will use normalized coordinates.

Constructor & Destructor Documentation

◆ ImageViewDescriptor() [1/4]

ll::ImageViewDescriptor::ImageViewDescriptor ( )
default

◆ ImageViewDescriptor() [2/4]

ll::ImageViewDescriptor::ImageViewDescriptor ( const ImageViewDescriptor descriptor)
default

◆ ImageViewDescriptor() [3/4]

ll::ImageViewDescriptor::ImageViewDescriptor ( ImageViewDescriptor &&  descriptor)
default

◆ ImageViewDescriptor() [4/4]

ll::ImageViewDescriptor::ImageViewDescriptor ( const ll::ImageAddressMode  addressmode,
const ll::ImageFilterMode  filterMode,
const bool  normalizedCoordinates,
const bool  isSampled 
)

◆ ~ImageViewDescriptor()

ll::ImageViewDescriptor::~ImageViewDescriptor ( )
default

Member Function Documentation

◆ getAddressModeU()

ll::ImageAddressMode ll::ImageViewDescriptor::getAddressModeU ( ) const
noexcept

Gets the address mode for the U axis.

Returns
The address mode.

◆ getAddressModeV()

ll::ImageAddressMode ll::ImageViewDescriptor::getAddressModeV ( ) const
noexcept

Gets the address mode for the V axis.

Returns
The address mode.

◆ getAddressModeW()

ll::ImageAddressMode ll::ImageViewDescriptor::getAddressModeW ( ) const
noexcept

Gets the address mode for the W axis.

Returns
The address mode.

◆ getFilterMode()

ll::ImageFilterMode ll::ImageViewDescriptor::getFilterMode ( ) const
noexcept

Gets the filter mode.

Returns
The filter mode.

◆ getVkSamplerCreateInfo()

vk::SamplerCreateInfo ll::ImageViewDescriptor::getVkSamplerCreateInfo ( ) const
noexcept

Return the Vulkan sampler creation info filled from this object.

See https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VkSamplerCreateInfo

Returns
The Vulkan sampler create info.

◆ isNormalizedCoordinates()

bool ll::ImageViewDescriptor::isNormalizedCoordinates ( ) const
noexcept

Determines if normalized coordinates are used for this image view.

Returns
True if normalized coordinates, False otherwise.

◆ isSampled()

bool ll::ImageViewDescriptor::isSampled ( ) const
noexcept

Determines if the image view is sampled.

Returns
True if sampled, False otherwise.

◆ operator=() [1/2]

ImageViewDescriptor& ll::ImageViewDescriptor::operator= ( const ImageViewDescriptor descriptor)
default

◆ operator=() [2/2]

ImageViewDescriptor& ll::ImageViewDescriptor::operator= ( ImageViewDescriptor &&  descriptor)
default

◆ setAddressMode() [1/2]

ImageViewDescriptor& ll::ImageViewDescriptor::setAddressMode ( ll::ImageAddressMode  addressMode)
noexcept

Sets the address mode to all image axes.

Parameters
[in]addressModeThe address mode
Returns
A reference to this object.

◆ setAddressMode() [2/2]

ImageViewDescriptor& ll::ImageViewDescriptor::setAddressMode ( ll::ImageAxis  axis,
ll::ImageAddressMode  addressMode 
)
noexcept

Sets the address mode to a given image axis.

Parameters
[in]axisThe axis
[in]addressModeThe address mode
Returns
A reference to this object.

◆ setFilterMode()

ImageViewDescriptor& ll::ImageViewDescriptor::setFilterMode ( ll::ImageFilterMode  filterMode)
noexcept

Sets the filtering mode.

Parameters
[in]filterModeThe filter mode
Returns
A reference to this object.

◆ setIsSampled()

ImageViewDescriptor& ll::ImageViewDescriptor::setIsSampled ( bool  isSampled)
noexcept

Sets whether or not the image view will be sampled.

Parameters
[in]isSampledIndicates if sampled
Returns
A reference to this object.

◆ setNormalizedCoordinates()

ImageViewDescriptor& ll::ImageViewDescriptor::setNormalizedCoordinates ( bool  normalizedCoordinates)
noexcept

Sets whether or not the image view will use normalized coordinates.

Parameters
[in]normalizedCoordinatesThe normalized coordinates.
Returns
A reference to this object.

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