![]() |
Qt 6.x
The Qt SDK
|
#include <qrhimetal_p.h>
Public Member Functions | |
QMetalRenderBuffer (QRhiImplementation *rhi, Type type, const QSize &pixelSize, int sampleCount, QRhiRenderBuffer::Flags flags, QRhiTexture::Format backingFormatHint) | |
~QMetalRenderBuffer () | |
void | destroy () override |
Releases (or requests deferred releasing of) the underlying native graphics resources. | |
bool | create () override |
Creates the corresponding native graphics resources. | |
QRhiTexture::Format | backingFormat () const override |
![]() | |
QRhiResource::Type | resourceType () const override |
Type | type () const |
void | setType (Type t) |
Sets the type to t. | |
QSize | pixelSize () const |
void | setPixelSize (const QSize &sz) |
Sets the size (in pixels) to sz. | |
int | sampleCount () const |
void | setSampleCount (int s) |
Sets the sample count to s. | |
Flags | flags () const |
void | setFlags (Flags f) |
Sets the flags to f. | |
virtual bool | create ()=0 |
Creates the corresponding native graphics resources. | |
virtual bool | createFrom (NativeRenderBuffer src) |
Similar to create() except that no new native renderbuffer objects are created. | |
virtual QRhiTexture::Format | backingFormat () const =0 |
![]() | |
virtual | ~QRhiResource () |
Destructor. | |
virtual Type | resourceType () const =0 |
virtual void | destroy ()=0 |
Releases (or requests deferred releasing of) the underlying native graphics resources. | |
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 |
QRhi * | rhi () const |
Public Attributes | |
QMetalRenderBufferData * | d |
int | samples = 1 |
uint | generation = 0 |
int | lastActiveFrameSlot = -1 |
Friends | |
class | QRhiMetal |
Definition at line 50 of file qrhimetal_p.h.
QMetalRenderBuffer::QMetalRenderBuffer | ( | QRhiImplementation * | rhi, |
Type | type, | ||
const QSize & | pixelSize, | ||
int | sampleCount, | ||
QRhiRenderBuffer::Flags | flags, | ||
QRhiTexture::Format | backingFormatHint | ||
) |
Definition at line 3558 of file qrhimetal.mm.
QMetalRenderBuffer::~QMetalRenderBuffer | ( | ) |
|
overridevirtual |
Implements QRhiRenderBuffer.
Definition at line 3657 of file qrhimetal.mm.
References QRhiRenderBuffer::Color, QRhiRenderBuffer::m_backingFormatHint, QRhiRenderBuffer::m_type, QRhiTexture::RGBA8, and QRhiTexture::UnknownFormat.
|
overridevirtual |
Creates the corresponding native graphics resources.
If there are already resources present due to an earlier create() with no corresponding destroy(), then destroy() is called implicitly first.
true
when successful, false
when a graphics operation failed. Regardless of the return value, calling destroy() is always safe. Implements QRhiRenderBuffer.
Definition at line 3591 of file qrhimetal.mm.
References QRhiRenderBuffer::Color, QByteArray::constData(), d, QRhiRenderBuffer::DepthStencil, desc, destroy(), QMetalRenderBufferData::format, generation, QSize::height(), init(), QByteArray::isEmpty(), QSize::isEmpty(), lastActiveFrameSlot, QRhiRenderBuffer::m_backingFormatHint, QRhiResource::m_objectName, QRhiRenderBuffer::m_pixelSize, QRhiRenderBuffer::m_sampleCount, QRhiRenderBuffer::m_type, QRHI_RES_RHI, release(), QMetalRenderBufferData::tex, toMetalTextureFormat(), QRhiTexture::UnknownFormat, and QSize::width().
|
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.
The QRhiResource destructor also performs the same task, so calling this function is not necessary before deleting a QRhiResource.
Implements QRhiResource.
Definition at line 3572 of file qrhimetal.mm.
References d, e, lastActiveFrameSlot, QRHI_RES_RHI, QRhiMetalData::DeferredReleaseEntry::RenderBuffer, and QMetalRenderBufferData::tex.
Referenced by ~QMetalRenderBuffer(), and create().
|
friend |
Definition at line 64 of file qrhimetal_p.h.
QMetalRenderBufferData* QMetalRenderBuffer::d |
Definition at line 60 of file qrhimetal_p.h.
Referenced by ~QMetalRenderBuffer(), QRhiMetal::beginFrame(), create(), QMetalTextureRenderTarget::create(), destroy(), and QMetalTextureRenderTarget::newCompatibleRenderPassDescriptor().
uint QMetalRenderBuffer::generation = 0 |
Definition at line 62 of file qrhimetal_p.h.
Referenced by create().
int QMetalRenderBuffer::lastActiveFrameSlot = -1 |
Definition at line 63 of file qrhimetal_p.h.
Referenced by QRhiMetal::beginFrame(), create(), and destroy().
int QMetalRenderBuffer::samples = 1 |
Definition at line 61 of file qrhimetal_p.h.
Referenced by QMetalTextureRenderTarget::create().