diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2016-02-29 01:01:50 +0100 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2016-05-14 16:02:22 +0000 |
commit | 85a9e258e961569e9b8bdd1d13d46fc80aed7dbd (patch) | |
tree | 199f94e9163ed52ec0da9d39974e55baad34eddf /src | |
parent | d03cfcec1448b8df7ff5084df21f427c58466cdc (diff) |
render: eradicate Q_FOREACH loops [remaining low-risk, take 2]
... by replacing them with C++11 range-for loops. To
avoid detaches of these mutable Qt containers, wrap
the container in qAsConst(), where needed.
This is the batch with low-risk changes. They operate
on local containers or the loop body clearly does not
cause the container to change.
Change-Id: I5a9e5fd1d64863da15b982558ae1aded045deb33
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/render/frontend/qrenderaspect.cpp | 4 | ||||
-rw-r--r-- | src/render/jobs/pickboundingvolumejob.cpp | 4 | ||||
-rw-r--r-- | src/render/materialsystem/qshaderdata.cpp | 6 | ||||
-rw-r--r-- | src/render/materialsystem/shaderdata.cpp | 5 | ||||
-rw-r--r-- | src/render/texture/texture.cpp | 2 |
5 files changed, 12 insertions, 9 deletions
diff --git a/src/render/frontend/qrenderaspect.cpp b/src/render/frontend/qrenderaspect.cpp index 35d866bd4..54db848d7 100644 --- a/src/render/frontend/qrenderaspect.cpp +++ b/src/render/frontend/qrenderaspect.cpp @@ -472,8 +472,8 @@ QVector<Qt3DCore::QAspectJobPtr> QRenderAspectPrivate::createGeometryRendererJob void QRenderAspectPrivate::loadSceneParsers() { - QStringList keys = QSceneIOFactory::keys(); - Q_FOREACH (QString key, keys) { + const QStringList keys = QSceneIOFactory::keys(); + for (const QString &key : keys) { QSceneIOHandler *sceneIOHandler = QSceneIOFactory::create(key, QStringList()); if (sceneIOHandler != nullptr) m_sceneIOHandler.append(sceneIOHandler); diff --git a/src/render/jobs/pickboundingvolumejob.cpp b/src/render/jobs/pickboundingvolumejob.cpp index 3760fd8ee..911412804 100644 --- a/src/render/jobs/pickboundingvolumejob.cpp +++ b/src/render/jobs/pickboundingvolumejob.cpp @@ -363,7 +363,7 @@ void PickBoundingVolumeJob::run() m_hoveredPickersToClear = m_hoveredPickers; ObjectPicker *lastCurrentPicker = m_manager->objectPickerManager()->data(m_currentPicker); - Q_FOREACH (const ViewportCameraAreaTriplet &vca, vcaTriplets) { + for (const ViewportCameraAreaTriplet &vca : vcaTriplets) { typedef AbstractCollisionGathererFunctor::result_type HitList; HitList sphereHits; QRay3D ray = rayForViewportAndCamera(vca.area, event.pos(), vca.viewport, vca.cameraId); @@ -542,7 +542,7 @@ QRay3D PickBoundingVolumeJob::rayForViewportAndCamera(const QSize &area, void PickBoundingVolumeJob::clearPreviouslyHoveredPickers() { - Q_FOREACH (const HObjectPicker &pickHandle, m_hoveredPickersToClear) { + for (const HObjectPicker pickHandle : qAsConst(m_hoveredPickersToClear)) { ObjectPicker *pick = m_manager->objectPickerManager()->data(pickHandle); if (pick) pick->onExited(); diff --git a/src/render/materialsystem/qshaderdata.cpp b/src/render/materialsystem/qshaderdata.cpp index 8db52fcf8..331401b45 100644 --- a/src/render/materialsystem/qshaderdata.cpp +++ b/src/render/materialsystem/qshaderdata.cpp @@ -122,7 +122,9 @@ Qt3DCore::QNodeCreatedChangeBasePtr QShaderData::createNodeCreationChange() cons const int propertyOffset = QShaderData::staticMetaObject.propertyOffset(); const int propertyCount = metaObj->propertyCount(); - data.properties.reserve(propertyCount - propertyOffset); + const auto propertyNames = dynamicPropertyNames(); + data.properties.reserve(propertyCount - propertyOffset + propertyNames.size()); + for (int i = propertyOffset; i < propertyCount; ++i) { const QMetaProperty pro = metaObj->property(i); if (pro.isWritable()) { @@ -131,7 +133,7 @@ Qt3DCore::QNodeCreatedChangeBasePtr QShaderData::createNodeCreationChange() cons } } - foreach (const QByteArray &propertyName, dynamicPropertyNames()) { + for (const QByteArray &propertyName : propertyNames) { data.properties.push_back(qMakePair(propertyName, propertyReader()->readProperty(property(propertyName)))); } diff --git a/src/render/materialsystem/shaderdata.cpp b/src/render/materialsystem/shaderdata.cpp index 27802bb93..0ac462e8d 100644 --- a/src/render/materialsystem/shaderdata.cpp +++ b/src/render/materialsystem/shaderdata.cpp @@ -147,7 +147,7 @@ void ShaderData::clearUpdatedProperties() void ShaderData::cleanup(NodeManagers *managers) { - Q_FOREACH (Qt3DCore::QNodeId id, m_updatedShaderData) { + for (Qt3DCore::QNodeId id : qAsConst(m_updatedShaderData)) { ShaderData *shaderData = ShaderData::lookupResource(managers, id); if (shaderData) shaderData->clearUpdatedProperties(); @@ -285,7 +285,8 @@ void ShaderData::readPeerProperties(QShaderData *shaderData) } // Also check the dynamic properties - foreach (const QByteArray &propertyName , shaderData->dynamicPropertyNames()) { + const auto propertyNames = shaderData->dynamicPropertyNames(); + for (const QByteArray &propertyName : propertyNames) { if (propertyName == "data" || propertyName == "childNodes") // We don't handle default Node properties continue; diff --git a/src/render/texture/texture.cpp b/src/render/texture/texture.cpp index 63b5b1abf..7d01e8080 100644 --- a/src/render/texture/texture.cpp +++ b/src/render/texture/texture.cpp @@ -641,7 +641,7 @@ void Texture::updateAndLoadTextureImage() } QVector<TextureImageDNA> dnas; - Q_FOREACH (HTextureImage t, m_textureImages) { + for (HTextureImage t : qAsConst(m_textureImages)) { TextureImage *img = m_textureImageManager->data(t); if (img != nullptr && img->isDirty()) { if (dnas.contains(img->dna())) { |