Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QVkSampler Struct Reference

#include <qrhivulkan_p.h>

+ Inheritance diagram for QVkSampler:
+ Collaboration diagram for QVkSampler:

Public Member Functions

 QVkSampler (QRhiImplementation *rhi, Filter magFilter, Filter minFilter, Filter mipmapMode, AddressMode u, AddressMode v, AddressMode w)
 
 ~QVkSampler ()
 
void destroy () override
 Releases (or requests deferred releasing of) the underlying native graphics resources.
 
bool create () override
 
- Public Member Functions inherited from QRhiSampler
QRhiResource::Type resourceType () const override
 
Filter magFilter () const
 
void setMagFilter (Filter f)
 Sets the magnification filter mode to f.
 
Filter minFilter () const
 
void setMinFilter (Filter f)
 Sets the minification filter mode to f.
 
Filter mipmapMode () const
 
void setMipmapMode (Filter f)
 Sets the mipmap filter mode to f.
 
AddressMode addressU () const
 
void setAddressU (AddressMode mode)
 Sets the horizontal wrap mode.
 
AddressMode addressV () const
 
void setAddressV (AddressMode mode)
 Sets the vertical wrap mode.
 
AddressMode addressW () const
 
void setAddressW (AddressMode mode)
 Sets the depth wrap mode.
 
CompareOp textureCompareOp () const
 
void setTextureCompareOp (CompareOp op)
 Sets the texture comparison function op.
 
- Public Member Functions inherited from QRhiResource
virtual ~QRhiResource ()
 Destructor.
 
void deleteLater ()
 When called without a frame being recorded, this function is equivalent to deleting the object.
 
QByteArray name () const
 
void setName (const QByteArray &name)
 Sets a name for the object.
 
quint64 globalResourceId () const
 
QRhirhi () const
 

Public Attributes

VkSampler sampler = VK_NULL_HANDLE
 
int lastActiveFrameSlot = -1
 
uint generation = 0
 

Friends

class QRhiVulkan
 

Additional Inherited Members

- Public Types inherited from QRhiSampler
enum  Filter { None , Nearest , Linear }
 Specifies the minification, magnification, or mipmap filtering. More...
 
enum  AddressMode { Repeat , ClampToEdge , Mirror }
 Specifies the addressing mode. More...
 
enum  CompareOp {
  Never , Less , Equal , LessOrEqual ,
  Greater , NotEqual , GreaterOrEqual , Always
}
 Specifies the texture comparison function. More...
 
- Public Types inherited from QRhiResource
enum  Type {
  Buffer , Texture , Sampler , RenderBuffer ,
  RenderPassDescriptor , SwapChainRenderTarget , TextureRenderTarget , ShaderResourceBindings ,
  GraphicsPipeline , SwapChain , ComputePipeline , CommandBuffer
}
 Specifies type of the resource. More...
 
- Protected Member Functions inherited from QRhiSampler
 QRhiSampler (QRhiImplementation *rhi, Filter magFilter_, Filter minFilter_, Filter mipmapMode_, AddressMode u_, AddressMode v_, AddressMode w_)
 
- Protected Member Functions inherited from QRhiResource
 QRhiResource (QRhiImplementation *rhi)
 
- Protected Attributes inherited from QRhiSampler
Filter m_magFilter
 
Filter m_minFilter
 
Filter m_mipmapMode
 
AddressMode m_addressU
 
AddressMode m_addressV
 
AddressMode m_addressW
 
CompareOp m_compareOp
 
- Protected Attributes inherited from QRhiResource
QRhiImplementationm_rhi = nullptr
 
quint64 m_id
 
QByteArray m_objectName
 

Detailed Description

Definition at line 134 of file qrhivulkan_p.h.

Constructor & Destructor Documentation

◆ QVkSampler()

QVkSampler::QVkSampler ( QRhiImplementation * rhi,
Filter magFilter,
Filter minFilter,
Filter mipmapMode,
AddressMode u,
AddressMode v,
AddressMode w )

Definition at line 6758 of file qrhivulkan.cpp.

◆ ~QVkSampler()

QVkSampler::~QVkSampler ( )

Definition at line 6764 of file qrhivulkan.cpp.

References destroy().

+ Here is the call graph for this function:

Member Function Documentation

◆ create()

bool QVkSampler::create ( )
overridevirtual

◆ destroy()

void QVkSampler::destroy ( )
overridevirtual

Releases (or requests deferred releasing of) the underlying native graphics resources.

Safe to call multiple times, subsequent invocations will be a no-op then.

Once destroy() is called, the QRhiResource instance can be reused, by calling create() again. That will then result in creating new native graphics resources underneath.

Note
Resources referenced by commands for the current frame should not be released until the frame is submitted by QRhi::endFrame().

The QRhiResource destructor also performs the same task, so calling this function is not necessary before deleting a QRhiResource.

See also
deleteLater()

Implements QRhiResource.

Definition at line 6769 of file qrhivulkan.cpp.

References lastActiveFrameSlot, QRhiVulkan::DeferredReleaseEntry::lastActiveFrameSlot, QRHI_RES_RHI, sampler, QRhiVulkan::DeferredReleaseEntry::Sampler, QRhiVulkan::DeferredReleaseEntry::sampler, and QRhiVulkan::DeferredReleaseEntry::type.

Referenced by ~QVkSampler(), and create().

+ Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ QRhiVulkan

friend class QRhiVulkan
friend

Definition at line 145 of file qrhivulkan_p.h.

Member Data Documentation

◆ generation

uint QVkSampler::generation = 0

Definition at line 144 of file qrhivulkan_p.h.

Referenced by create().

◆ lastActiveFrameSlot

int QVkSampler::lastActiveFrameSlot = -1

Definition at line 143 of file qrhivulkan_p.h.

Referenced by create(), and destroy().

◆ sampler

VkSampler QVkSampler::sampler = VK_NULL_HANDLE

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