summaryrefslogtreecommitdiffstats
path: root/src/render/jobs/filterlayerentityjob.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Make tracing a runtime optionMike Krus2019-12-131-1/+1
| | | | | | | | | | | - Moved most of the code QSystemInformationService (private class for now) - Tracing can be enabled by setting QT3D_TRACE_ENABLED or calling QSystemInformationService::setTraceEnabled(bool) - Introduced QTaskLogger class to easy logging (RAII) Change-Id: I2a3e08e4371fcee3e9ef3cf575725f13f57d1a94 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Fix race condition when executing multiple filterlayerjobs at oncePaul Lemire2018-06-251-45/+2
| | | | | | | | | | The updating of referenced layer ids for each Entity should only be performed once and not by multiple jobs. Therefore, this update was moved into a dedicated job which is now a dependency of the filterentityjob instances. Change-Id: Ie8ecc49a7c6c7d41a1f1f0d18619b5e142b68204 Task-number: QTBUG-68942 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Prevent potential containers detachingMike Krus2018-01-141-1/+1
| | | | | | | Found by Clazy clazy-range-loop Change-Id: I4956f9be2b7b3f986b2fc83c1d883829314a8b6c Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Iterate by const reference on handlesMike Krus2018-01-131-4/+4
| | | | | | | | When iterating on handles, use const references to avoid copy of non trivial type. Found by Clazy clazy-range-loop Change-Id: I33ec54b3958160da2517e196411bcf92cd7b3bff Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Improve performance for finding entities in subsetSvenn-Arne Dragly2017-12-041-0/+3
| | | | | | | | | Using set_intersection reduces the time spent in this function by almost 90 %. Change-Id: I993930ad8e017d58352dfe504fa593e11860e6a7 Reviewed-by: Svenn-Arne Dragly <svenn-arne.dragly@qt.io> Reviewed-by: Christian Stromme <christian.stromme@qt.io>
* Fix and improve layer filteringPaul Lemire2017-08-181-101/+161
| | | | | | | | | | | | | | | | | We now handle the case where multiple LayerFilter nodes are nested within the same FrameGraphBranch. We also have improved the Accept/Discard into Accept Any/All and Discard Any/All which should now handle all filtering cases. We now build a list of layerIds stored into Entity based on the recursive flags on the layers being set. This allows to make layer filtering simpler but the layerIds list building step will need to be improved as a follow up commit Unit tests updated Change-Id: I93451493e41c6c9486defa7e88eaee073a9bc932 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Accept/Drop entities and filter recursivelyJuan José Casafranca2017-08-021-3/+86
| | | | | | | | | | The layer now may specify if a subtree must be completely accepted recursively. The layerfilter can specify if the entities must be accepted or dropped. Task-number: QTBUG-59814 Change-Id: I7beff9e036d5de8b128cf960ba5f11477e5784e1 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Correct filtering of disabled entitiesWieland Hagen2017-01-051-2/+2
| | | | | | | | | | | | | FilterLayerEntityJob would not check for the enabled-ness of parent entities, if present. We introduce another job that checks for each entity, whether it is enabled or not. Jobs that need to access this flag must take care to add a dependency on the UpdateTreeEnabledJob Task-number: QTBUG-56235 Change-Id: Ic087fc8e9efdd4829cdb18ae3e8430344f6ecf43 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Add unit tests for RenderViewBuilderPaul Lemire2016-12-121-0/+1
| | | | | Change-Id: I52b088804d836100b268a2b0998fe0a1cd86cf77 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Remove compile warnings when not defining QT3D_JOBS_RUN_STATSPaul Lemire2016-08-191-4/+0
| | | | | Change-Id: Ibccce418c750eada3a5bcabf7bd74f37b960b35a Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com>
* Fix regression: remove disabled entities from the renderingPaul Lemire2016-08-101-2/+9
| | | | | Change-Id: I40bbe3cb61e6ee825401a1ae55a12f3362b1a95f Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* LayerFiltering: move enabled filtering into job directlyPaul Lemire2016-07-181-6/+20
| | | | | Change-Id: I243cf9ff05086dc097545b62b02a4bd4deab1ef3 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Fix warnings that occur when QT3D_JOBS_RUN_STATS is not definedPaul Lemire2016-07-041-0/+2
| | | | | Change-Id: I248db48e6d15d70dde8e5101f9bb373486c2aba4 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update FiterLayerEntityJob to use QResourceManager::activeHandlesPaul Lemire2016-07-021-23/+21
| | | | | Change-Id: If90ae474c50a770367745928279da97903f879eb Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Unit tests for layer filtering jobPaul Lemire2016-07-021-0/+111
Change-Id: I15f9d1105a08a72e03c89da7b2c61c0ab88ee880 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>