From c6c79ab313a20e8446a9ae5fbcf39fe8748ed9e7 Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Mon, 29 May 2017 11:07:39 +0200 Subject: [PATCH] STYLE: use std::pair (not Tuple2) in conjunction with std::initializer_list - no penalty compared to Tuple2, potential future benefits with C++ constructor forwarding. --- .../conformalVoronoiMesh/conformalVoronoiMeshIO.C | 9 +++++---- .../containers/HashTables/HashTable/HashTable.C | 11 +++++------ .../containers/HashTables/HashTable/HashTable.H | 10 +++++----- src/OpenFOAM/containers/HashTables/Map/Map.H | 2 +- src/OpenFOAM/global/profiling/profiling.H | 1 + 5 files changed, 17 insertions(+), 16 deletions(-) diff --git a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshIO.C b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshIO.C index 6b6d10d182..ee6a7b3662 100644 --- a/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshIO.C +++ b/applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/conformalVoronoiMesh/conformalVoronoiMeshIO.C @@ -900,12 +900,10 @@ void Foam::conformalVoronoiMesh::writeMesh mesh.addFvPatches(patches); - // Add zones to the mesh addZones(mesh, cellCentres); - Info<< indent << "Add pointZones" << endl; { label sz = mesh.pointZones().size(); @@ -914,6 +912,9 @@ void Foam::conformalVoronoiMesh::writeMesh forAll(dualMeshPointTypeNames_, typeI) { + const word& znName = + dualMeshPointTypeNames_[dualMeshPointType(typeI)]; + forAll(boundaryPts, ptI) { const label& bPtType = boundaryPts[ptI]; @@ -928,14 +929,14 @@ void Foam::conformalVoronoiMesh::writeMesh Info<< incrIndent << indent << "Adding " << bPts.size() - << " points of type " << dualMeshPointTypeNames_.words()[typeI] + << " points of type " << znName << decrIndent << endl; mesh.pointZones().append ( new pointZone ( - dualMeshPointTypeNames_.words()[typeI], + znName, bPts, sz + typeI, mesh.pointZones() diff --git a/src/OpenFOAM/containers/HashTables/HashTable/HashTable.C b/src/OpenFOAM/containers/HashTables/HashTable/HashTable.C index 9bf799d6b3..bc887b7d3b 100644 --- a/src/OpenFOAM/containers/HashTables/HashTable/HashTable.C +++ b/src/OpenFOAM/containers/HashTables/HashTable/HashTable.C @@ -29,7 +29,6 @@ License #include "HashTable.H" #include "List.H" #include "FixedList.H" -#include "Tuple2.H" // * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // @@ -112,14 +111,14 @@ Foam::HashTable::HashTable template Foam::HashTable::HashTable ( - std::initializer_list> lst + std::initializer_list> lst ) : HashTable(2*lst.size()) { - for (const Tuple2& pair : lst) + for (const auto& pair : lst) { - insert(pair.first(), pair.second()); + insert(pair.first, pair.second); } } @@ -889,7 +888,7 @@ void Foam::HashTable::operator= template void Foam::HashTable::operator= ( - std::initializer_list> lst + std::initializer_list> lst ) { // Could be zero-sized from a previous transfer() @@ -904,7 +903,7 @@ void Foam::HashTable::operator= for (const auto& pair : lst) { - insert(pair.first(), pair.second()); + insert(pair.first, pair.second); } } diff --git a/src/OpenFOAM/containers/HashTables/HashTable/HashTable.H b/src/OpenFOAM/containers/HashTables/HashTable/HashTable.H index 3f9a2df85f..06635bbac3 100644 --- a/src/OpenFOAM/containers/HashTables/HashTable/HashTable.H +++ b/src/OpenFOAM/containers/HashTables/HashTable/HashTable.H @@ -62,6 +62,7 @@ SourceFiles #include #include +#include // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -73,7 +74,6 @@ namespace Foam template class List; template class UList; template class FixedList; -template class Tuple2; template class HashTable; template @@ -212,7 +212,7 @@ private: // Private data type for table entries - //- Structure to hold a hashed entry, with a SLList for collisions + //- Structure to hold a hashed entry, with a linked-list for collisions struct hashedEntry { //- The lookup key @@ -224,7 +224,7 @@ private: //- Pointer to next hashedEntry in sub-list hashedEntry* next_; - //- Construct from key, next pointer and object + //- Construct from key, object, next pointer inline hashedEntry(const Key& key, const T& obj, hashedEntry* next); private: @@ -296,7 +296,7 @@ public: HashTable(const Xfer>& ht); //- Construct from an initializer list - HashTable(std::initializer_list> lst); + HashTable(std::initializer_list> lst); //- Destructor @@ -558,7 +558,7 @@ public: void operator=(const HashTable& rhs); //- Assignment from an initializer list - void operator=(std::initializer_list> lst); + void operator=(std::initializer_list> lst); //- Equality. Hash tables are equal if the keys and values are equal. // Independent of table storage size and table order. diff --git a/src/OpenFOAM/containers/HashTables/Map/Map.H b/src/OpenFOAM/containers/HashTables/Map/Map.H index 4ac6e90e60..56f59128dd 100644 --- a/src/OpenFOAM/containers/HashTables/Map/Map.H +++ b/src/OpenFOAM/containers/HashTables/Map/Map.H @@ -96,7 +96,7 @@ public: {} //- Construct from an initializer list - Map(std::initializer_list> map) + Map(std::initializer_list> map) : parent_type(map) {} diff --git a/src/OpenFOAM/global/profiling/profiling.H b/src/OpenFOAM/global/profiling/profiling.H index 03a014f48b..26337bcc4e 100644 --- a/src/OpenFOAM/global/profiling/profiling.H +++ b/src/OpenFOAM/global/profiling/profiling.H @@ -54,6 +54,7 @@ SourceFiles #include "profilingTrigger.H" #include "HashPtrTable.H" +#include "Tuple2.H" #include "LIFOStack.H" #include "Map.H" #include "Time.H"