Helper class to manage field selections. More...
Public Member Functions | |
fieldSelection (const objectRegistry &obr, const bool includeComponents=false) | |
Construct from object registry. More... | |
virtual | ~fieldSelection ()=default |
Destructor. More... | |
HashSet< wordRe > | filters () const |
Return the cuurent filters. More... | |
const List< fieldInfo > & | selection () const |
wordHashSet | selectionNames () const |
Return the current field selection. More... | |
virtual bool | resetFieldFilters (const HashSet< wordRe > &names) |
Reset the field filters to the given field names. More... | |
virtual bool | resetFieldFilters (const wordRe &name) |
Reset the field filters to the given field name. More... | |
virtual bool | read (const dictionary &dict) |
Read the fieldSelection data from dictionary. More... | |
virtual bool | containsPattern () const |
Return whether the field names contain a pattern. More... | |
virtual void | clearSelection () |
Clear the current selection. More... | |
virtual bool | updateSelection () |
Update the selection. More... | |
virtual bool | checkSelection () |
Check that all requested fielda have been found. More... | |
![]() | |
constexpr | List () noexcept |
Default construct. More... | |
List (const label len) | |
Construct with given size. More... | |
List (const label len, const fieldInfo &val) | |
Construct with given size and value for all elements. More... | |
List (const label len, const Foam::zero) | |
Construct with given size initializing all elements to zero. More... | |
List (const Foam::one, const fieldInfo &val) | |
Construct with length=1, copying the value as the only content. More... | |
List (const Foam::one, fieldInfo &&val) | |
Construct with length=1, moving the value as the only content. More... | |
List (const Foam::one, const Foam::zero) | |
Construct with length=1, initializing content to zero. More... | |
List (const List< fieldInfo > &a) | |
Copy construct from list. More... | |
List (const UList< fieldInfo > &a) | |
Copy construct contents from list. More... | |
List (List< fieldInfo > &a, bool reuse) | |
Construct as copy or re-use as specified. More... | |
List (const UList< fieldInfo > &list, const labelUList &indices) | |
Copy construct subset of list. More... | |
List (const UList< fieldInfo > &list, const FixedList< label, N > &indices) | |
Copy construct subset of list. More... | |
List (const FixedList< fieldInfo, N > &list) | |
Construct as copy of FixedList<T, N> More... | |
List (const PtrList< fieldInfo > &list) | |
Construct as copy of PtrList<T> More... | |
List (const SLList< fieldInfo > &list) | |
Construct as copy of SLList<T> More... | |
List (const IndirectListBase< fieldInfo, Addr > &list) | |
Construct as copy of IndirectList contents. More... | |
List (std::initializer_list< fieldInfo > list) | |
Construct from an initializer list. More... | |
List (List< fieldInfo > &&list) | |
Move construct from List. More... | |
List (DynamicList< fieldInfo, SizeMin > &&list) | |
Move construct from DynamicList. More... | |
List (SortableList< fieldInfo > &&list) | |
Move construct from SortableList. More... | |
List (SLList< fieldInfo > &&list) | |
Move construct from SLList. More... | |
List (Istream &is) | |
Construct from Istream. More... | |
autoPtr< List< fieldInfo > > | clone () const |
Clone. More... | |
~List () | |
Destructor. More... | |
void | clear () |
Clear the list, i.e. set size to zero. More... | |
void | resize (const label len) |
Adjust allocated size of list. More... | |
void | resize (const label len, const fieldInfo &val) |
Adjust allocated size of list and set val for new elements. More... | |
void | resize (const label newLen) |
void | resize_nocopy (const label len) |
Adjust allocated size of list without necessarily. More... | |
void | setSize (const label n) |
Alias for resize() More... | |
void | setSize (const label n, const fieldInfo &val) |
Alias for resize() More... | |
void | append (const fieldInfo &val) |
Append an element at the end of the list. More... | |
void | append (fieldInfo &&val) |
Move append an element at the end of the list. More... | |
void | append (const UList< fieldInfo > &list) |
Append a List to the end of this list. More... | |
void | append (const IndirectListBase< fieldInfo, Addr > &list) |
Append IndirectList contents at the end of this list. More... | |
label | appendUniq (const fieldInfo &val) |
Append an element if not already in the list. More... | |
void | transfer (List< fieldInfo > &list) |
void | transfer (DynamicList< fieldInfo, SizeMin > &list) |
void | transfer (SortableList< fieldInfo > &list) |
fieldInfo & | newElmt (const label i) |
void | operator= (const UList< fieldInfo > &a) |
Assignment to UList operator. Takes linear time. More... | |
void | operator= (const List< fieldInfo > &list) |
Assignment operator. Takes linear time. More... | |
void | operator= (const SLList< fieldInfo > &list) |
Assignment to SLList operator. Takes linear time. More... | |
void | operator= (const IndirectListBase< fieldInfo, Addr > &list) |
Assignment from IndirectList. Takes linear time. More... | |
void | operator= (const FixedList< fieldInfo, N > &list) |
Copy assignment from FixedList. More... | |
void | operator= (std::initializer_list< fieldInfo > list) |
Assignment to an initializer list. More... | |
void | operator= (const fieldInfo &val) |
Assignment of all entries to the given value. More... | |
void | operator= (const Foam::zero) |
Assignment of all entries to zero. More... | |
void | operator= (List< fieldInfo > &&list) |
Move assignment. Takes constant time. More... | |
void | operator= (DynamicList< fieldInfo, SizeMin > &&list) |
Move assignment. Takes constant time. More... | |
void | operator= (SortableList< fieldInfo > &&list) |
Move assignment. Takes constant time. More... | |
void | operator= (SLList< fieldInfo > &&list) |
Move assignment. Takes constant time. More... | |
Istream & | readList (Istream &is) |
Read List from Istream, discarding contents of existing List. More... | |
Istream & | readList (Istream &is) |
Istream & | readList (Istream &is) |
void | shallowCopy (const UList< fieldInfo > &)=delete |
No shallowCopy permitted. More... | |
std::enable_if< std::is_same< bool, TypeT >::value, bool >::type | set (const label i, bool val=true) |
A bitSet::set() method for a list of bool. More... | |
Protected Member Functions | |
template<class Type > | |
void | addRegistered (DynamicList< fieldInfo > &set) const |
Add registered objects of a given type. More... | |
Protected Attributes | |
const objectRegistry & | obr_ |
Reference to the database. More... | |
const bool | includeComponents_ |
Flag to indicate whether components are allowed. More... | |
List< fieldInfo > | selection_ |
Current field selection. More... | |
Additional Inherited Members | |
![]() | |
typedef SubList< fieldInfo > | subList |
Declare type of subList. More... | |
![]() | |
static const List< fieldInfo > & | null () |
Return a null List. More... | |
Helper class to manage field selections.
The class holds a list of field name filters which are then applied to a set of field objects (in derived classes) from which the resulting set is available via the selection() function. This returns a list of (fieldName, component) objects, e.g. for U.component(0) this is (U, 0).
Definition at line 63 of file fieldSelection.H.
fieldSelection | ( | const objectRegistry & | obr, |
const bool | includeComponents = false |
||
) |
Construct from object registry.
Definition at line 35 of file fieldSelection.C.
|
virtualdefault |
Destructor.
|
protected |
Add registered objects of a given type.
Definition at line 34 of file fieldSelectionTemplates.C.
References fieldInfo::component(), fieldInfo::found(), fieldInfo::name(), Foam::name(), Foam::PtrListOps::names(), and Foam::BitOps::set().
|
inline |
Return the cuurent filters.
Definition at line 29 of file fieldSelectionI.H.
References f(), and fieldInfo::name().
|
inline |
Definition at line 43 of file fieldSelectionI.H.
|
inline |
Return the current field selection.
Definition at line 50 of file fieldSelectionI.H.
References Foam::PtrListOps::names().
Referenced by solverInfo::writeFileHeader(), fieldExtents::writeFileHeader(), and fieldMinMax::writeFileHeader().
Reset the field filters to the given field names.
Definition at line 48 of file fieldSelection.C.
References Foam::component(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, n, Foam::name(), Foam::PtrListOps::names(), Foam::nl, and Foam::readLabel().
Referenced by fieldSelection::read().
Reset the field filters to the given field name.
Definition at line 115 of file fieldSelection.C.
References Foam::name().
|
virtual |
Read the fieldSelection data from dictionary.
Definition at line 125 of file fieldSelection.C.
References dict, fields, and fieldSelection::resetFieldFilters().
Referenced by limitFields::read().
|
virtual |
Return whether the field names contain a pattern.
Definition at line 133 of file fieldSelection.C.
References wordRe::isPattern(), and fieldInfo::name().
|
virtual |
Clear the current selection.
Definition at line 147 of file fieldSelection.C.
|
virtual |
Update the selection.
Reimplemented in fileFieldSelection, volFieldSelection, and solverFieldSelection.
Definition at line 153 of file fieldSelection.C.
|
virtual |
Check that all requested fielda have been found.
Definition at line 159 of file fieldSelection.C.
References Foam::endl(), fieldInfo::found(), fieldInfo::name(), and WarningInFunction.
Referenced by solverFieldSelection::updateSelection(), volFieldSelection::updateSelection(), and fileFieldSelection::updateSelection().
|
protected |
Reference to the database.
Definition at line 80 of file fieldSelection.H.
Referenced by solverFieldSelection::updateSelection().
|
protected |
Flag to indicate whether components are allowed.
Definition at line 83 of file fieldSelection.H.
Current field selection.
Definition at line 86 of file fieldSelection.H.
Referenced by solverFieldSelection::updateSelection(), volFieldSelection::updateSelection(), and fileFieldSelection::updateSelection().