![]() |
Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
|
#include <qrhigles2_p.h>
Classes | |
struct | UsageState |
Public Member Functions | |
QGles2Texture (QRhiImplementation *rhi, Format format, const QSize &pixelSize, int depth, int arraySize, int sampleCount, Flags flags) | |
~QGles2Texture () | |
void | destroy () override |
Releases (or requests deferred releasing of) the underlying native graphics resources. | |
bool | create () override |
Creates the corresponding native graphics resources. | |
bool | createFrom (NativeTexture src) override |
Similar to create(), except that no new native textures are created. | |
NativeTexture | nativeTexture () override |
bool | prepareCreate (QSize *adjustedSize=nullptr) |
Public Member Functions inherited from QRhiTexture | |
QRhiResource::Type | resourceType () const override |
Format | format () const |
void | setFormat (Format fmt) |
Sets the requested texture format to fmt. | |
QSize | pixelSize () const |
void | setPixelSize (const QSize &sz) |
Sets the texture size, specified in pixels, to sz. | |
int | depth () const |
void | setDepth (int depth) |
Sets the depth for a 3D texture. | |
int | arraySize () const |
void | setArraySize (int arraySize) |
Sets the texture arraySize. | |
int | arrayRangeStart () const |
int | arrayRangeLength () const |
void | setArrayRange (int startIndex, int count) |
Normally all array layers are exposed and it is up to the shader to select the layer via the third coordinate passed to the {texture()} GLSL function when sampling the sampler2DArray . | |
Flags | flags () const |
void | setFlags (Flags f) |
Sets the texture flags to f. | |
int | sampleCount () const |
void | setSampleCount (int s) |
Sets the sample count to s. | |
ViewFormat | readViewFormat () const |
\variable QRhiTexture::ViewFormat::format | |
void | setReadViewFormat (const ViewFormat &fmt) |
ViewFormat | writeViewFormat () const |
void | setWriteViewFormat (const ViewFormat &fmt) |
virtual void | setNativeLayout (int layout) |
With some graphics APIs, such as Vulkan, integrating custom rendering code that uses the graphics API directly needs special care when it comes to image layouts. | |
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 |
QRhi * | rhi () const |
Public Attributes | |
GLuint | texture = 0 |
bool | owns = true |
GLenum | target |
GLenum | glintformat |
GLenum | glsizedintformat |
GLenum | glformat |
GLenum | gltype |
QGles2SamplerData | samplerState |
bool | specified = false |
bool | zeroInitialized = false |
int | mipLevelCount = 0 |
int | samples |
UsageState | usageState |
uint | generation = 0 |
Friends | |
class | QRhiGles2 |
Additional Inherited Members | |
Protected Member Functions inherited from QRhiTexture | |
QRhiTexture (QRhiImplementation *rhi, Format format_, const QSize &pixelSize_, int depth_, int arraySize_, int sampleCount_, Flags flags_) | |
\variable QRhiTexture::NativeTexture::object | |
Protected Member Functions inherited from QRhiResource | |
QRhiResource (QRhiImplementation *rhi) | |
Protected Attributes inherited from QRhiTexture | |
Format | m_format |
QSize | m_pixelSize |
int | m_depth |
int | m_arraySize |
int | m_sampleCount |
Flags | m_flags |
int | m_arrayRangeStart = -1 |
int | m_arrayRangeLength = -1 |
ViewFormat | m_readViewFormat = { UnknownFormat, false } |
ViewFormat | m_writeViewFormat = { UnknownFormat, false } |
Protected Attributes inherited from QRhiResource | |
QRhiImplementation * | m_rhi = nullptr |
quint64 | m_id |
QByteArray | m_objectName |
Definition at line 108 of file qrhigles2_p.h.
Enumerator | |
---|---|
AccessNone | |
AccessSample | |
AccessFramebuffer | |
AccessStorageRead | |
AccessStorageWrite | |
AccessStorageReadWrite | |
AccessUpdate | |
AccessRead |
Definition at line 133 of file qrhigles2_p.h.
QGles2Texture::QGles2Texture | ( | QRhiImplementation * | rhi, |
Format | format, | ||
const QSize & | pixelSize, | ||
int | depth, | ||
int | arraySize, | ||
int | sampleCount, | ||
Flags | flags ) |
Definition at line 5749 of file qrhigles2.cpp.
QGles2Texture::~QGles2Texture | ( | ) |
Definition at line 5755 of file qrhigles2.cpp.
|
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 QRhiTexture.
Definition at line 5882 of file qrhigles2.cpp.
|
overridevirtual |
Similar to create(), except that no new native textures are created.
Instead, the native texture resources specified by src is used.
This allows importing an existing native texture object (which must belong to the same device or sharing context, depending on the graphics API) from an external graphics engine.
The opposite of this operation, exposing a QRhiTexture-created native texture object to a foreign engine, is possible via nativeTexture().
Reimplemented from QRhiTexture.
Definition at line 5997 of file qrhigles2.cpp.
|
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 5760 of file qrhigles2.cpp.
|
overridevirtual |
Reimplemented from QRhiTexture.
Definition at line 6018 of file qrhigles2.cpp.
bool QGles2Texture::prepareCreate | ( | QSize * | adjustedSize = nullptr | ) |
Definition at line 5782 of file qrhigles2.cpp.
|
friend |
Definition at line 149 of file qrhigles2_p.h.
uint QGles2Texture::generation = 0 |
Definition at line 148 of file qrhigles2_p.h.
GLenum QGles2Texture::glformat |
Definition at line 125 of file qrhigles2_p.h.
GLenum QGles2Texture::glintformat |
Definition at line 123 of file qrhigles2_p.h.
GLenum QGles2Texture::glsizedintformat |
Definition at line 124 of file qrhigles2_p.h.
GLenum QGles2Texture::gltype |
Definition at line 126 of file qrhigles2_p.h.
int QGles2Texture::mipLevelCount = 0 |
Definition at line 130 of file qrhigles2_p.h.
bool QGles2Texture::owns = true |
Definition at line 121 of file qrhigles2_p.h.
QGles2SamplerData QGles2Texture::samplerState |
Definition at line 127 of file qrhigles2_p.h.
int QGles2Texture::samples |
Definition at line 131 of file qrhigles2_p.h.
bool QGles2Texture::specified = false |
Definition at line 128 of file qrhigles2_p.h.
Referenced by QRhiGles2::enqueueResourceUpdates(), and QRhiGles2::enqueueSubresUpload().
GLenum QGles2Texture::target |
Definition at line 122 of file qrhigles2_p.h.
GLuint QGles2Texture::texture = 0 |
Definition at line 120 of file qrhigles2_p.h.
UsageState QGles2Texture::usageState |
Definition at line 146 of file qrhigles2_p.h.
Referenced by QRhiGles2::trackedImageBarrier(), and QRhiGles2::trackedRegisterTexture().
bool QGles2Texture::zeroInitialized = false |
Definition at line 129 of file qrhigles2_p.h.
Referenced by QRhiGles2::enqueueSubresUpload().