diff options
author | Laszlo Agocs <laszlo.agocs@qt.io> | 2021-09-15 14:33:01 +0200 |
---|---|---|
committer | Laszlo Agocs <laszlo.agocs@qt.io> | 2021-09-16 22:58:22 +0200 |
commit | eda1276f80e39d519c88e7a491ff1d960c7a4dac (patch) | |
tree | 8e6678e520177aa02b5ef319609a4dfa1d4ef26f /src | |
parent | 43a42fa19693d8ee1a52a5723aa026ee1ccd5de2 (diff) |
rhi: document serializedLayoutDescription
The docs are internal still but won't hurt to keep them up-to-date.
At the same time, enhance the QRhiRenderPassDescriptor
serializedFormat() docs as well, with appropriate notes about the
intended usage of the "serialized" data.
Pick-to: 6.2
Change-Id: I8425fff625903468621e3b09d089b345fada85f4
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/gui/rhi/qrhi.cpp | 35 |
1 files changed, 31 insertions, 4 deletions
diff --git a/src/gui/rhi/qrhi.cpp b/src/gui/rhi/qrhi.cpp index 072d100c59..f13da926b8 100644 --- a/src/gui/rhi/qrhi.cpp +++ b/src/gui/rhi/qrhi.cpp @@ -2778,10 +2778,16 @@ QRhiResource::Type QRhiRenderPassDescriptor::resourceType() const \fn QVector<quint32> QRhiRenderPassDescriptor::serializedFormat() const \return a vector of integers containing an opaque blob describing the data - relevant for \l{isCompatible()}{compatibility}. Given two - QRhiRenderPassDescriptor objects \c rp1 and \c rp2, if the data returned - from this function is identical, then \c{rp1->isCompatible(rp2)}, and vice - versa hold true as well. + relevant for \l{isCompatible()}{compatibility}. + + Given two QRhiRenderPassDescriptor objects \c rp1 and \c rp2, if the data + returned from this function is identical, then \c{rp1->isCompatible(rp2)}, + and vice versa hold true as well. + + \note The returned data is meant to be used for storing in memory and + comparisons during the lifetime of the QRhi the object belongs to. It is not + meant for storing on disk, reusing between processes, or using with multiple + QRhi instances with potentially different backends. \sa isCompatible() */ @@ -3054,6 +3060,8 @@ QRhiResource::Type QRhiShaderResourceBindings::resourceType() const is more efficient than iterating through two binding lists and calling QRhiShaderResourceBinding::isLayoutCompatible() on each pair. This becomes relevant especially when this function is called at a high frequency. + + \sa serializedLayoutDescription() */ bool QRhiShaderResourceBindings::isLayoutCompatible(const QRhiShaderResourceBindings *other) const { @@ -3072,6 +3080,25 @@ bool QRhiShaderResourceBindings::isLayoutCompatible(const QRhiShaderResourceBind && m_layoutDesc == other->m_layoutDesc; } +/*! + \fn QVector<quint32> QRhiShaderResourceBindings::serializedLayoutDescription() const + + \return a vector of integers containing an opaque blob describing the layout + of the binding list, i.e. the data relevant for + \l{isLayoutCompatible()}{layout compatibility tests}. + + Given two objects \c srb1 and \c srb2, if the data returned from this + function is identical, then \c{srb1->isLayoutCompatible(srb2), and vice + versa hold true as well. + + \note The returned data is meant to be used for storing in memory and + comparisons during the lifetime of the QRhi the object belongs to. It is not + meant for storing on disk, reusing between processes, or using with multiple + QRhi instances with potentially different backends. + + \sa isLayoutCompatible() + */ + void QRhiImplementation::updateLayoutDesc(QRhiShaderResourceBindings *srb) { srb->m_layoutDescHash = 0; |