31#ifndef Foam_ccmSolutionTable_H
32#define Foam_ccmSolutionTable_H
67 using iterator =
typename SLList<Type>::iterator;
81 for (
const Type& item : *
this)
83 if (item.name() == key)
100 for (; (iter !=
last); ++iter)
102 if ((*iter).name() == key)
115 const wordRes& allow,
116 const wordRes& deny = wordRes()
123 for (
const Type& item : *
this)
127 if (allow.match(
name) && !deny.match(
name))
129 matched[count] =
name;
172 const word& shortName,
174 const char*
units =
nullptr
222 if (maxCellId_ < val)
232 if (maxFaceId_ < val)
248 <<
" [" <<
entry.units_.c_str()
249 <<
"] maxCell: " <<
entry.maxCellId_
250 <<
" maxFace: " <<
entry.maxFaceId_;
315 <<
" iter: " <<
entry.iter_
316 <<
" time: " <<
entry.time_;
355 for (
const auto& item : *
this)
357 const label val = item.maxCellId();
373 for (
const auto& item : *
this)
375 const label val = item.maxFaceId();
389 friend Ostream&
operator<<
397 <<
"maxCell: " << tbl.maxCellId()
398 <<
" maxFace: " << tbl.maxFaceId();
Non-intrusive singly-linked list.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
void resize(const label len)
Adjust allocated size of list.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
label size() const noexcept
The number of elements in list.
A ccm field entry with short name, name, maxId and type.
void maxCellId(const int val)
Set the max cell Id for the field.
const string & fullName() const noexcept
The full field name.
label maxFaceId() const noexcept
The max face id for the field.
const string & units() const noexcept
The field units.
const word & name() const noexcept
The field name (PROSTAR short name).
label maxCellId() const noexcept
The max cell id for the field.
void maxFaceId(const int val)
Set the max face Id for the field.
fieldEntry(const word &shortName, const string &fullName, const char *units=nullptr)
Construct from components with optional units.
void units(const std::string &units)
Set the field units.
A list of the available fields.
label maxCellId() const
The maximum cell Id referenced in the list.
fieldTable()=default
Default construct.
label maxFaceId() const
The maximum face Id referenced in the list.
A linked-list that is searchable by the 'name()' of the items.
typename SLList< Type >::iterator iterator
List< word > findNames(const wordRes &allow, const wordRes &deny=wordRes()) const
Return a list of names in allow-list and not in deny-list.
iterator find(const word &key)
Find list element by name.
namesList()=default
Default construct.
typename SLList< Type >::const_iterator const_iterator
bool found(const word &key) const
True if a list element has a name that matches key.
A ccm solution entry with name, iteration and time.
const word & name() const noexcept
The solution name.
label iteration() const noexcept
The solution iteration/timestep.
scalar timeValue() const noexcept
The solution time (sec).
solutionEntry(const word &name, const label iteration, const scalar timeValue=0)
Construct from components.
A keyword and a list of tokens is an 'entry'.
A List of wordRe with additional matching capabilities.
static bool match(const UList< wordRe > &selectors, const std::string &text, bool literal=false)
Test for a match of any selectors against the text.
A class for handling words, derived from Foam::string.
OBJstream os(runTime.globalPath()/outputName)
Ostream & operator<<(Ostream &os, const interfaceEntry &entry)
namesList< solutionEntry > solutionTable
LList< SLListBase, T > SLList
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for expressions::valueTypeCode::INVALID.
constexpr char nl
The newline '\n' character (0x0a).