The cellTable persistent data saved as a Map<dictionary>. More...


Public Member Functions | |
| cellTable () | |
| Construct null. More... | |
| cellTable (const objectRegistry &, const word &name="cellTable", const fileName &instance="constant") | |
| Construct read from registry, name. instance. More... | |
| ~cellTable ()=default | |
| Destructor. More... | |
| label | append (const dictionary &) |
| Append to the end, return index. More... | |
| label | findIndex (const word &name) const |
| Return index corresponding to name. More... | |
| word | name (const label id) const |
| Return the name corresponding to id. More... | |
| Map< word > | names () const |
| Return a Map of (id => name) More... | |
| Map< word > | names (const wordRes &patterns) const |
| Return a Map of (id => names) selected by patterns. More... | |
| Map< word > | selectType (const word &materialType) const |
| Return a Map of (id => name) for materialType. More... | |
| Map< word > | fluids () const |
| Return a Map of (id => name) for fluids. More... | |
| Map< word > | shells () const |
| Return a Map of (id => name) for shells. More... | |
| Map< word > | solids () const |
| Return a Map of (id => name) for solids. More... | |
| Map< word > | materialTypes () const |
| Return a Map of (id => fluid|solid|shell) More... | |
| void | setMaterial (const label, const word &) |
| Assign material Type. More... | |
| void | setName (const label, const word &) |
| Assign name. More... | |
| void | setName (const label) |
| Assign default name if not already set. More... | |
| void | readDict (const objectRegistry &, const word &name="cellTable", const fileName &instance="constant") |
| Read constant/cellTable. More... | |
| void | writeDict (const objectRegistry &, const word &name="cellTable", const fileName &instance="constant") const |
| Write constant/cellTable for later reuse. More... | |
| void | operator= (const cellTable &) |
| Assignment. More... | |
| void | operator= (const Map< dictionary > &) |
| Assign from Map<dictionary> More... | |
| void | operator= (const polyMesh &) |
| Assign from cellZones. More... | |
| void | addCellZones (polyMesh &, const labelList &tableIds) const |
| Classify tableIds into cellZones according to the cellTable. More... | |
| void | combine (const dictionary &mapDict, labelList &tableIds) |
| Combine tableIds together. More... | |
Public Member Functions inherited from Map< dictionary > | |
| Map () | |
| Default construct with default table capacity. More... | |
| Map (const label size) | |
| Construct with given initial table capacity. More... | |
| Map (Istream &is) | |
| Construct from Istream with default table capacity. More... | |
| Map (const this_type &map) | |
| Copy construct. More... | |
| Map (this_type &&map) | |
| Move construct. More... | |
| Map (std::initializer_list< std::pair< label, dictionary >> map) | |
| Construct from pairs of values. More... | |
| void | operator= (const this_type &rhs) |
| Copy assignment. More... | |
| void | operator= (this_type &&rhs) |
| Move assignment. More... | |
Public Member Functions inherited from HashTable< T, Key, Hash > | |
| HashTable () | |
| Default construct with default (128) table capacity. More... | |
| HashTable (const label size) | |
| Construct given initial table capacity. More... | |
| HashTable (Istream &is, const label size=128) | |
| Construct from Istream with default table capacity. More... | |
| HashTable (const this_type &ht) | |
| Copy construct. More... | |
| HashTable (this_type &&rhs) | |
| Move construct. More... | |
| HashTable (std::initializer_list< std::pair< Key, T >> list) | |
| Construct from an initializer list. More... | |
| ~HashTable () | |
| Destructor. More... | |
| bool | empty () const noexcept |
| True if the hash table is empty. More... | |
| label | size () const noexcept |
| The number of elements in table. More... | |
| label | capacity () const noexcept |
| The size of the underlying table. More... | |
| T & | at (const Key &key) |
| Find and return a hashed entry. FatalError if it does not exist. More... | |
| const T & | at (const Key &key) const |
| Find and return a hashed entry. FatalError if it does not exist. More... | |
| bool | contains (const Key &key) const |
| True if hashed key is contained (found) in table. More... | |
| iterator | find (const Key &key) |
| Find and return an iterator set at the hashed entry. More... | |
| const_iterator | find (const Key &key) const |
| Find and return an const_iterator set at the hashed entry. More... | |
| const_iterator | cfind (const Key &key) const |
| Find and return an const_iterator set at the hashed entry. More... | |
| const T & | lookup (const Key &key, const T &deflt) const |
| Return hashed entry if it exists, or return the given default. More... | |
| List< Key > | toc () const |
| The table of contents (the keys) in unsorted order. More... | |
| List< Key > | sortedToc () const |
| The table of contents (the keys) in sorted order. More... | |
| template<class Compare > | |
| List< Key > | sortedToc (const Compare &comp) const |
| The table of contents (the keys) sorted according to the specified comparator. More... | |
| template<class UnaryPredicate > | |
| List< Key > | tocKeys (const UnaryPredicate &pred, const bool invert=false) const |
| The table of contents (the keys) selected according to the unary predicate applied to the keys. More... | |
| template<class UnaryPredicate > | |
| List< Key > | tocValues (const UnaryPredicate &pred, const bool invert=false) const |
| The table of contents (the keys) selected according to the unary predicate applied to the values. More... | |
| template<class BinaryPredicate > | |
| List< Key > | tocEntries (const BinaryPredicate &pred, const bool invert=false) const |
| The table of contents (the keys) selected according to the binary predicate applied to the keys and values. More... | |
| UPtrList< const node_type > | csorted () const |
| Const access to the hash-table contents in sorted order (sorted by keys). More... | |
| UPtrList< const node_type > | sorted () const |
| Const access to the hash-table contents in sorted order (sorted by keys). More... | |
| UPtrList< node_type > | sorted () |
| Non-const access to the hash-table contents in sorted order (sorted by keys). More... | |
| template<class UnaryPredicate > | |
| label | countKeys (const UnaryPredicate &pred, const bool invert=false) const |
| Count the number of keys that satisfy the unary predicate. More... | |
| template<class UnaryPredicate > | |
| label | countValues (const UnaryPredicate &pred, const bool invert=false) const |
| Count the number of values that satisfy the unary predicate. More... | |
| template<class BinaryPredicate > | |
| label | countEntries (const BinaryPredicate &pred, const bool invert=false) const |
| Count the number of entries that satisfy the binary predicate. More... | |
| template<class... Args> | |
| bool | emplace (const Key &key, Args &&... args) |
| Emplace insert a new entry, not overwriting existing entries. More... | |
| template<class... Args> | |
| bool | emplace_set (const Key &key, Args &&... args) |
| Emplace set an entry, overwriting any existing entries. More... | |
| bool | insert (const Key &key, const T &obj) |
| Copy insert a new entry, not overwriting existing entries. More... | |
| bool | insert (const Key &key, T &&obj) |
| Move insert a new entry, not overwriting existing entries. More... | |
| bool | set (const Key &key, const T &obj) |
| Copy assign a new entry, overwriting existing entries. More... | |
| bool | set (const Key &key, T &&obj) |
| Move assign a new entry, overwriting existing entries. More... | |
| bool | erase (const iterator &iter) |
| Erase an entry specified by given iterator. More... | |
| bool | erase (const Key &key) |
| Erase an entry specified by the given key. More... | |
| template<class AnyType , class AnyHash > | |
| label | erase (const HashTable< AnyType, Key, AnyHash > &other) |
| Remove table entries given by keys of the other hash-table. More... | |
| label | erase (std::initializer_list< Key > keys) |
| Remove table entries given by the listed keys. More... | |
| template<class InputIter > | |
| label | erase (InputIter first, InputIter last) |
| Remove multiple entries using an iterator range of keys. More... | |
| template<unsigned N> | |
| label | erase (const FixedList< Key, N > &keys) |
| Remove table entries given by the listed keys. More... | |
| label | erase (const UList< Key > &keys) |
| Remove table entries given by the listed keys. More... | |
| template<class AnyType , class AnyHash > | |
| label | retain (const HashTable< AnyType, Key, AnyHash > &other) |
| Retain table entries given by keys of the other hash-table. More... | |
| template<class UnaryPredicate > | |
| label | filterKeys (const UnaryPredicate &pred, const bool pruning=false) |
| Generalized means to filter table entries based on their keys. More... | |
| template<class UnaryPredicate > | |
| label | filterValues (const UnaryPredicate &pred, const bool pruning=false) |
| Generalized means to filter table entries based on their values. More... | |
| template<class BinaryPredicate > | |
| label | filterEntries (const BinaryPredicate &pred, const bool pruning=false) |
| Generalized means to filter table entries based on their key/value. More... | |
| void | resize (const label sz) |
| Resize the hash table for efficiency. More... | |
| void | clear () |
| Clear all entries from table. More... | |
| void | clearStorage () |
| Clear the table entries and the table itself. More... | |
| void | swap (HashTable< T, Key, Hash > &rhs) |
| Swap contents into this table. More... | |
| void | transfer (HashTable< T, Key, Hash > &rhs) |
| Transfer contents into this table. More... | |
| void | merge (HashTable< T, Key, Hash > &source) |
Attempts to extract entries from source parameter and insert them into this, does not overwrite existing entries. The source will contains any items that could not be merged. More... | |
| void | merge (HashTable< T, Key, Hash > &&source) |
Attempts to extract entries from source parameter and insert them into this, does not overwrite existing entries. The source will contains any items that could not be merged. More... | |
| T & | operator[] (const Key &key) |
| Find and return a hashed entry. FatalError if it does not exist. More... | |
| const T & | operator[] (const Key &key) const |
| Find and return a hashed entry. FatalError if it does not exist. More... | |
| T & | operator() (const Key &key) |
| Return existing entry or create a new entry. More... | |
| T & | operator() (const Key &key, const T &deflt) |
| Return existing entry or insert a new entry. More... | |
| void | operator= (const this_type &rhs) |
| Copy assign. More... | |
| void | operator= (std::initializer_list< std::pair< Key, T >> rhs) |
| Copy assign from an initializer list. More... | |
| void | operator= (this_type &&rhs) |
| Move assign. More... | |
| bool | operator== (const this_type &rhs) const |
| Equality. Tables are equal if all keys and values are equal, independent of order or underlying storage size. More... | |
| bool | operator!= (const this_type &rhs) const |
| The opposite of the equality operation. More... | |
| this_type & | operator+= (const this_type &rhs) |
| Add entries into this HashTable. More... | |
| const_iterator_pair< const_key_iterator, this_type > | keys () const |
| A const iterator begin/end pair for iterating over keys. More... | |
| iterator | begin () |
| iterator set to the beginning of the HashTable More... | |
| const_iterator | begin () const |
| const_iterator set to the beginning of the HashTable More... | |
| const_iterator | cbegin () const |
| const_iterator set to the beginning of the HashTable More... | |
| iterator | end () noexcept |
| iterator to signal the end (for any HashTable) More... | |
| const_iterator | end () const noexcept |
| const_iterator to signal the end (for any HashTable) More... | |
| constexpr const_iterator | cend () const noexcept |
| const_iterator to signal the end (for any HashTable) More... | |
| Ostream & | printInfo (Ostream &os) const |
| Print information. More... | |
| Ostream & | writeKeys (Ostream &os, const label shortLen=0) const |
| Write unordered keys (list), with line-breaks when length exceeds shortLen. More... | |
| bool | found (const Key &key) const |
| Same as contains() More... | |
| template<class Compare > | |
| Foam::List< Key > | sortedToc (const Compare &comp) const |
| template<class UnaryPredicate > | |
| Foam::List< Key > | tocKeys (const UnaryPredicate &pred, const bool invert) const |
| template<class UnaryPredicate > | |
| Foam::List< Key > | tocValues (const UnaryPredicate &pred, const bool invert) const |
| template<class BinaryPredicate > | |
| Foam::List< Key > | tocEntries (const BinaryPredicate &pred, const bool invert) const |
| template<class UnaryPredicate > | |
| Foam::label | countKeys (const UnaryPredicate &pred, const bool invert) const |
| template<class UnaryPredicate > | |
| Foam::label | countValues (const UnaryPredicate &pred, const bool invert) const |
| template<class BinaryPredicate > | |
| Foam::label | countEntries (const BinaryPredicate &pred, const bool invert) const |
| template<class InputIter> | |
| Foam::label | erase (InputIter first, InputIter last) |
| template<unsigned N> | |
| Foam::label | erase (const FixedList< Key, N > &keys) |
| template<class AnyType, class AnyHash > | |
| Foam::label | erase (const HashTable< AnyType, Key, AnyHash > &other) |
| template<class AnyType , class AnyHash > | |
| Foam::label | retain (const HashTable< AnyType, Key, AnyHash > &other) |
| template<class UnaryPredicate > | |
| Foam::label | filterKeys (const UnaryPredicate &pred, const bool pruning) |
| template<class UnaryPredicate > | |
| Foam::label | filterValues (const UnaryPredicate &pred, const bool pruning) |
| template<class BinaryPredicate > | |
| Foam::label | filterEntries (const BinaryPredicate &pred, const bool pruning) |
Public Member Functions inherited from HashTableCore | |
| ClassName ("HashTable") | |
| Declare type-name (with debug switch) More... | |
| HashTableCore () noexcept=default | |
| Default construct. More... | |
Additional Inherited Members | |
Public Types inherited from Map< dictionary > | |
| typedef Map< dictionary > | this_type |
| The template instance used for this Map. More... | |
| typedef HashTable< dictionary, label, Hash< label > > | parent_type |
| The template instance used for the parent HashTable. More... | |
| using | iterator = typename parent_type::iterator |
| using | const_iterator = typename parent_type::const_iterator |
Public Types inherited from HashTable< T, Key, Hash > | |
| typedef HashTable< T, Key, Hash > | this_type |
| The template instance used for this HashTable. More... | |
| typedef std::conditional< std::is_same< Foam::zero, typename std::remove_cv< T >::type >::value, Detail::HashTableSingle< Key >, Detail::HashTablePair< Key, T > >::type | node_type |
| A table entry (node) that encapsulates the key/val tuple with an additional linked-list entry for hash collisions. More... | |
| typedef Key | key_type |
| The second template parameter, type of keys used. More... | |
| typedef T | mapped_type |
| The first template parameter, type of objects contained. More... | |
| typedef T | value_type |
| Same as mapped_type for OpenFOAM HashTables. More... | |
| typedef Hash | hasher |
| The third template parameter, the hash index method. More... | |
| typedef T * | pointer |
| Pointer type for storing into value_type objects. More... | |
| typedef T & | reference |
| Reference to the stored value_type. More... | |
| typedef const T * | const_pointer |
| Const pointer type for the stored value_type. More... | |
| typedef const T & | const_reference |
| Const reference to the stored value_type. More... | |
| typedef label | difference_type |
| The type to represent the difference between two iterators. More... | |
| typedef label | size_type |
| The type that can represent the size of a HashTable. More... | |
| using | key_iterator = key_iterator_base< iterator > |
| Forward iterator returning the key. More... | |
| using | const_key_iterator = key_iterator_base< const_iterator > |
| Forward const iterator returning the key. More... | |
Static Public Member Functions inherited from HashTableCore | |
| static label | canonicalSize (const label requested_size) |
| Return a canonical (power-of-two) of the requested size. More... | |
Static Public Attributes inherited from HashTableCore | |
| static const label | maxTableSize |
| Maximum allowable internal table size. Approximately labelMax/4. More... | |
The cellTable persistent data saved as a Map<dictionary>.
The meshReader supports cellTable information.
The constant/cellTable file is an IOMap<dictionary> that is used to save the information persistently. It contains the cellTable information of the following form:
(
ID
{
Label WORD;
MaterialType WORD;
MaterialId INT;
PorosityId INT;
ColorIdx INT;
...
}
...
)
If the Label is missing, a value cellTable_{ID} will be inferred. If the MaterialType is missing, the value fluid will be inferred.
Definition at line 76 of file cellTable.H.
| cellTable | ( | ) |
Construct null.
Definition at line 98 of file cellTable.C.
| cellTable | ( | const objectRegistry & | registry, |
| const word & | name = "cellTable", |
||
| const fileName & | instance = "constant" |
||
| ) |
Construct read from registry, name. instance.
Definition at line 105 of file cellTable.C.
References Foam::name().

|
default |
Destructor.
| Foam::label append | ( | const dictionary & | dict | ) |
Append to the end, return index.
Definition at line 119 of file cellTable.C.
References dict, forAllConstIters(), and insert().

| Foam::label findIndex | ( | const word & | name | ) | const |
Return index corresponding to name.
returns -1 if not found
Definition at line 195 of file cellTable.C.
References forAllConstIters(), Foam::name(), and word::null.

| Foam::word name | ( | const label | id | ) | const |
Return the name corresponding to id.
returns cellTable_ID if not otherwise defined
Definition at line 181 of file cellTable.C.
References Foam::name().

| Foam::Map< Foam::word > names | ( | ) | const |
Return a Map of (id => name)
Definition at line 135 of file cellTable.C.
References forAllConstIters(), and Foam::name().

| Foam::Map< Foam::word > names | ( | const wordRes & | patterns | ) | const |
Return a Map of (id => names) selected by patterns.
Definition at line 157 of file cellTable.C.
References forAllConstIters(), wordRes::match(), and Foam::name().

| Foam::Map< Foam::word > selectType | ( | const word & | materialType | ) | const |
Return a Map of (id => name) for materialType.
(fluid | solid | shell)
Definition at line 231 of file cellTable.C.
References dict, forAllConstIters(), dictionary::getOrDefault(), and Foam::name().

| Foam::Map< Foam::word > fluids | ( | ) | const |
Return a Map of (id => name) for fluids.
Definition at line 262 of file cellTable.C.
Referenced by reader::fluids().

| Foam::Map< Foam::word > shells | ( | ) | const |
Return a Map of (id => name) for shells.
Definition at line 274 of file cellTable.C.
| Foam::Map< Foam::word > solids | ( | ) | const |
Return a Map of (id => name) for solids.
Definition at line 268 of file cellTable.C.
Referenced by reader::solids().

| Foam::Map< Foam::word > materialTypes | ( | ) | const |
Return a Map of (id => fluid|solid|shell)
Definition at line 214 of file cellTable.C.
References forAllConstIters().

| void setMaterial | ( | const label | id, |
| const word & | matlType | ||
| ) |
Assign material Type.
Definition at line 281 of file cellTable.C.
Referenced by STARCDMeshReader::readCells().

| void setName | ( | const label | id, |
| const word & | name | ||
| ) |
Assign name.
Definition at line 287 of file cellTable.C.
References Foam::name().
Referenced by STARCDMeshReader::readCells().


| void setName | ( | const label | id | ) |
Assign default name if not already set.
Definition at line 293 of file cellTable.C.
References Foam::ListOps::find(), and Foam::name().

| void readDict | ( | const objectRegistry & | registry, |
| const word & | name = "cellTable", |
||
| const fileName & | instance = "constant" |
||
| ) |
Read constant/cellTable.
Definition at line 305 of file cellTable.C.
References clear(), Foam::endl(), regIOobject::headerOk(), Foam::Info, Foam::name(), IOobjectOption::NO_REGISTER, IOobjectOption::NO_WRITE, and IOobjectOption::READ_IF_PRESENT.

| void writeDict | ( | const objectRegistry & | registry, |
| const word & | name = "cellTable", |
||
| const fileName & | instance = "constant" |
||
| ) | const |
Write constant/cellTable for later reuse.
Definition at line 340 of file cellTable.C.
References Foam::endl(), Foam::Info, Foam::name(), IOobject::name(), IOobjectOption::NO_READ, IOobjectOption::NO_REGISTER, IOobjectOption::NO_WRITE, IOobject::note(), IOobject::objectPath(), os(), and IOobject::writeHeader().

Assignment.
Definition at line 373 of file cellTable.C.
References Map< T >::operator=().

| void operator= | ( | const Map< dictionary > & | rhs | ) |
Assign from Map<dictionary>
Definition at line 380 of file cellTable.C.
References Map< T >::operator=().

Assign from cellZones.
Definition at line 387 of file cellTable.C.
References dictionary::add(), polyMesh::cellZones(), HashTable< T, Key, Hash >::clear(), dict, forAll, HashTable< T, Key, Hash >::insert(), mesh, ZoneMesh< ZoneType, MeshType >::names(), primitiveMesh::nCells(), Map< T >::operator=(), and UList< T >::size().

Classify tableIds into cellZones according to the cellTable.
Definition at line 433 of file cellTable.C.
References List< T >::append(), IOobjectOption::AUTO_WRITE, polyMesh::cellZones(), HashTable< T, Key, Hash >::cfind(), ZoneMesh< ZoneType, MeshType >::clear(), Foam::endl(), forAll, Foam::Info, mesh, PtrList< T >::set(), List< T >::setSize(), PtrList< T >::setSize(), UList< T >::size(), and IOobjectOption::writeOpt().

| void combine | ( | const dictionary & | mapDict, |
| labelList & | tableIds | ||
| ) |
Combine tableIds together.
each dictionary entry is a wordList
Definition at line 499 of file cellTable.C.
References Foam::endl(), erase(), HashTable< T, label, Hash< label > >::erase(), Foam::findIndex(), forAllConstIters(), Foam::identity(), Foam::Info, Foam::inplaceRenumber(), HashTable< T, label, Hash< label > >::insert(), wordRes::match(), Foam::max(), Foam::min(), Foam::PtrListOps::names(), HashTable< T, label, Hash< label > >::size(), and HashTable< T, label, Hash< label > >::toc().

Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.