ENH: code reduction in PackedList, PackedBoolList (issue #751)
- eliminate iterators from PackedList since they were unused, had lower performance than direct access and added unneeded complexity. - eliminate auto-vivify for the PackedList '[] operator. The set() method provides any required auto-vivification and removing this ability from the '[]' operator allows for a lower when accessing the values. Replaced the previous cascade of iterators with simpler reference class. PackedBoolList: - (temporarily) eliminate logic and addition operators since these contained partially unclear semantics. - the new test() method tests the value of a single bit position and returns a bool without any ambiguity caused by the return type (like the get() method), nor the const/non-const access (like operator[] has). The name corresponds to what std::bitset uses. - more consistent use of PackedBoolList test(), set(), unset() methods for fewer operation and clearer code. Eg, if (list.test(index)) ... | if (list[index]) ... if (!list.test(index)) ... | if (list[index] == 0u) ... list.set(index); | list[index] = 1u; list.unset(index); | list[index] = 0u; - deleted the operator=(const labelUList&) and replaced with a setMany() method for more clarity about the intended operation and to avoid any potential inadvertent behaviour.
Showing
- applications/solvers/combustion/PDRFoam/PDRFoamAutoRefine.C 2 additions, 2 deletionsapplications/solvers/combustion/PDRFoam/PDRFoamAutoRefine.C
- applications/solvers/incompressible/pimpleFoam/overPimpleDyMFoam/interpolatedFaces.H 2 additions, 2 deletions...ressible/pimpleFoam/overPimpleDyMFoam/interpolatedFaces.H
- applications/test/PackedList1/Test-PackedList1.C 0 additions, 70 deletionsapplications/test/PackedList1/Test-PackedList1.C
- applications/test/PackedList2/Test-PackedList2.C 0 additions, 42 deletionsapplications/test/PackedList2/Test-PackedList2.C
- applications/test/PackedList4/Test-PackedList4.C 5 additions, 59 deletionsapplications/test/PackedList4/Test-PackedList4.C
- applications/utilities/mesh/advanced/PDRMesh/PDRMesh.C 4 additions, 5 deletionsapplications/utilities/mesh/advanced/PDRMesh/PDRMesh.C
- applications/utilities/mesh/advanced/modifyMesh/modifyMesh.C 1 addition, 1 deletionapplications/utilities/mesh/advanced/modifyMesh/modifyMesh.C
- applications/utilities/mesh/generation/extrude/extrudeMesh/extrudeMesh.C 1 addition, 1 deletion...ilities/mesh/generation/extrude/extrudeMesh/extrudeMesh.C
- applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMesh.C 4 additions, 4 deletions...eration/extrude/extrudeToRegionMesh/extrudeToRegionMesh.C
- applications/utilities/mesh/generation/extrude2DMesh/extrude2DMeshApp.C 1 addition, 1 deletion...tilities/mesh/generation/extrude2DMesh/extrude2DMeshApp.C
- applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/cellShapeControl/controlMeshRefinement/controlMeshRefinement.C 2 additions, 2 deletions...hapeControl/controlMeshRefinement/controlMeshRefinement.C
- applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMesh.C 12 additions, 16 deletions...alVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMesh.C
- applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshCalcDualMesh.C 9 additions, 25 deletions...h/conformalVoronoiMesh/conformalVoronoiMeshCalcDualMesh.C
- applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshConformToSurface.C 1 addition, 1 deletion...nformalVoronoiMesh/conformalVoronoiMeshConformToSurface.C
- applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshIO.C 1 addition, 12 deletions...VoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshIO.C
- applications/utilities/mesh/generation/foamyMesh/foamyQuadMesh/CV2D.C 5 additions, 5 deletions.../utilities/mesh/generation/foamyMesh/foamyQuadMesh/CV2D.C
- applications/utilities/mesh/manipulation/checkMesh/checkTools.C 4 additions, 4 deletions...ations/utilities/mesh/manipulation/checkMesh/checkTools.C
- applications/utilities/mesh/manipulation/createBaffles/createBaffles.C 1 addition, 2 deletions...utilities/mesh/manipulation/createBaffles/createBaffles.C
- applications/utilities/mesh/manipulation/polyDualMesh/meshDualiser.C 4 additions, 7 deletions...s/utilities/mesh/manipulation/polyDualMesh/meshDualiser.C
- applications/utilities/mesh/manipulation/polyDualMesh/meshDualiser.H 4 additions, 4 deletions...s/utilities/mesh/manipulation/polyDualMesh/meshDualiser.H
Please register or sign in to comment