A List of scalarRange for selecting times. More...
#include <OpenFOAM/timeSelector.H>
A List of scalarRange for selecting times.
The timeSelector provides a convenient means of selecting multiple times. A typical use would be the following:
timeSelector::addOptions(); // add other options #include <OpenFOAM/setRootCase.H> #include <OpenFOAM/createTime.H> instantList timeDirs = timeSelector::select0(runTime, args); ... forAll(timeDirs, timeI) { ... }
The result program would receive -time, -latestTime, -constant and -noZero options. The -constant option explicitly includes the constant/
directory in the time list and the -noZero option explicitly excludes the 0/
directory from the time list.
There may however also be many cases in which neither the constant/
directory nor the 0/
directory contain particularly relevant information. This might occur, for example, when post-processing results. In this case, addOptions is called with optional boolean arguments.
timeSelector::addOptions(false, true);
The first argument avoids adding the -constant option. The second argument adds an additional -zeroTime option and also prevents the 0/
directory from being included in the default time range and in the -latestTime selection.
Definition at line 90 of file timeSelector.H.
Public Member Functions | |
timeSelector () | |
Construct Null. | |
timeSelector (Istream &) | |
Construct from Istream. | |
bool | selected (const instant &) const |
Return true if the given instant is within the ranges. | |
List< bool > | selected (const List< instant > &) const |
Return the set of selected instants in the given list that are. | |
List< instant > | select (const List< instant > &) const |
Select a list of Time values that are within the ranges. | |
void | inplaceSelect (List< instant > &) const |
Select a list of Time values that are within the ranges. | |
![]() | |
scalarRanges () | |
Construct Null. | |
scalarRanges (Istream &) | |
Construct from Istream. | |
bool | selected (const scalar &) const |
Return true if the given value is within the ranges. | |
List< bool > | selected (const List< scalar > &) const |
Return the set of selected entries in the given list. | |
List< scalar > | select (const List< scalar > &) const |
Select a list of values that are within the ranges. | |
void | inplaceSelect (List< scalar > &) const |
Select a list of values that are within the ranges. | |
![]() | |
label | size () const |
Return the number of elements in the UList. | |
List () | |
Null constructor. | |
List (const label) | |
Construct with given size. | |
List (const label, const scalarRange &) | |
Construct with given size and value for all elements. | |
List (const List< scalarRange > &) | |
Copy constructor. | |
List (const Xfer< List< scalarRange > > &) | |
Construct by transferring the parameter contents. | |
List (List< scalarRange > &, bool reUse) | |
Construct as copy or re-use as specified. | |
List (const UList< scalarRange > &, const unallocLabelList &mapAddressing) | |
Construct as subset. | |
List (InputIterator first, InputIterator last) | |
Construct given start and end iterators. | |
List (const FixedList< scalarRange, Size > &) | |
Construct as copy of FixedList<T, Size> | |
List (const PtrList< scalarRange > &) | |
Construct as copy of PtrList<T> | |
List (const SLList< scalarRange > &) | |
Construct as copy of SLList<T> | |
List (const IndirectList< scalarRange > &) | |
Construct as copy of IndirectList<T> | |
List (const UIndirectList< scalarRange > &) | |
Construct as copy of UIndirectList<T> | |
List (const BiIndirectList< scalarRange > &) | |
Construct as copy of BiIndirectList<T> | |
List (Istream &) | |
Construct from Istream. | |
autoPtr< List< scalarRange > > | clone () const |
Clone. | |
~List () | |
void | resize (const label) |
Reset size of List. | |
void | resize (const label, const scalarRange &) |
Reset size of List and value for new elements. | |
void | setSize (const label) |
Reset size of List. | |
void | setSize (const label, const scalarRange &) |
Reset size of List and value for new elements. | |
void | clear () |
Clear the list, i.e. set size to zero. | |
void | append (const UList< scalarRange > &) |
Append a List at the end of this list. | |
void | append (const UIndirectList< scalarRange > &) |
Append a UIndirectList at the end of this list. | |
void | transfer (List< scalarRange > &) |
Transfer the contents of the argument List into this list. | |
void | transfer (DynamicList< scalarRange, SizeInc, SizeMult, SizeDiv > &) |
Transfer the contents of the argument List into this list. | |
void | transfer (SortableList< scalarRange > &) |
Transfer the contents of the argument List into this list. | |
Xfer< List< scalarRange > > | xfer () |
Transfer contents to the Xfer container. | |
scalarRange & | newElmt (const label) |
Return subscript-checked element of UList. | |
void | operator= (const UList< scalarRange > &) |
Assignment from UList operator. Takes linear time. | |
void | operator= (const List< scalarRange > &) |
Assignment operator. Takes linear time. | |
void | operator= (const SLList< scalarRange > &) |
Assignment from SLList operator. Takes linear time. | |
void | operator= (const IndirectList< scalarRange > &) |
Assignment from IndirectList operator. Takes linear time. | |
void | operator= (const UIndirectList< scalarRange > &) |
Assignment from UIndirectList operator. Takes linear time. | |
void | operator= (const BiIndirectList< scalarRange > &) |
Assignment from BiIndirectList operator. Takes linear time. | |
void | operator= (const scalarRange &) |
Assignment of all entries to the given value. | |
![]() | |
UList () | |
Null constructor. | |
UList (scalarRange *__restrict__ v, label size) | |
Construct from components. | |
label | fcIndex (const label i) const |
Return the forward circular index, i.e. the next index. | |
label | rcIndex (const label i) const |
Return the reverse circular index, i.e. the previous index. | |
label | byteSize () const |
Return the binary size in number of characters of the UList. | |
const scalarRange * | cdata () const |
Return a const pointer to the first data element,. | |
scalarRange * | data () |
Return a pointer to the first data element,. | |
void | checkStart (const label start) const |
Check start is within valid range (0 ... size-1). | |
void | checkSize (const label size) const |
Check size is within valid range (0 ... size). | |
void | checkIndex (const label i) const |
Check index i is within valid range (0 ... size-1). | |
void | writeEntry (Ostream &) const |
Write the UList as a dictionary entry. | |
void | writeEntry (const word &keyword, Ostream &) const |
Write the UList as a dictionary entry with keyword. | |
void | assign (const UList< scalarRange > &) |
Assign elements to those from UList. | |
scalarRange & | operator[] (const label) |
Return element of UList. | |
const scalarRange & | operator[] (const label) const |
Return element of constant UList. | |
operator const Foam::List< scalarRange > & () const | |
Allow cast to a const List<T>&. | |
iterator | begin () |
Return an iterator to begin traversing the UList. | |
const_iterator | begin () const |
Return const_iterator to begin traversing the constant UList. | |
iterator | end () |
Return an iterator to end traversing the UList. | |
const_iterator | end () const |
Return const_iterator to end traversing the constant UList. | |
const_iterator | cbegin () const |
Return const_iterator to begin traversing the constant UList. | |
const_iterator | cend () const |
Return const_iterator to end traversing the constant UList. | |
reverse_iterator | rbegin () |
Return reverse_iterator to begin reverse traversing the UList. | |
const_reverse_iterator | rbegin () const |
Return const_reverse_iterator to begin reverse traversing the UList. | |
reverse_iterator | rend () |
Return reverse_iterator to end reverse traversing the UList. | |
const_reverse_iterator | rend () const |
Return const_reverse_iterator to end reverse traversing the UList. | |
const_reverse_iterator | crbegin () const |
Return const_reverse_iterator to begin reverse traversing the UList. | |
const_reverse_iterator | crend () const |
Return const_reverse_iterator to end reverse traversing the UList. | |
label | max_size () const |
Return size of the largest possible UList. | |
bool | empty () const |
Return true if the UList is empty (ie, size() is zero). | |
void | swap (UList< scalarRange > &) |
Swap two ULists of the same type in constant time. | |
bool | operator== (const UList< scalarRange > &) const |
Equality operation on ULists of the same type. | |
bool | operator!= (const UList< scalarRange > &) const |
The opposite of the equality operation. Takes linear time. | |
bool | operator< (const UList< scalarRange > &) const |
Compare two ULists lexicographically. Takes linear time. | |
bool | operator> (const UList< scalarRange > &) const |
Compare two ULists lexicographically. Takes linear time. | |
bool | operator<= (const UList< scalarRange > &) const |
Return true if !(a > b). Takes linear time. | |
bool | operator>= (const UList< scalarRange > &) const |
Return true if !(a < b). Takes linear time. |
Static Public Member Functions | |
static void | addOptions (const bool constant=true, const bool zeroTime=false) |
Add the options handled by timeSelector to argList::validOptions. | |
static List< instant > | select (const List< instant > &, const argList &args) |
Return the set of times selected based on the argList options. | |
static List< instant > | select0 (Time &runTime, const argList &args) |
Return the set of times selected based on the argList options. |
timeSelector | ( | ) |
Construct Null.
Definition at line 34 of file timeSelector.C.
timeSelector | ( | Istream & | is | ) |
Construct from Istream.
Definition at line 40 of file timeSelector.C.
bool selected | ( | const instant & | value | ) | const |
Return true if the given instant is within the ranges.
Definition at line 48 of file timeSelector.C.
References scalarRanges::selected(), and instant::value().
Referenced by timeSelector::select().
Foam::List< bool > selected | ( | const List< instant > & | Times | ) | const |
Return the set of selected instants in the given list that are.
within the ranges
Definition at line 54 of file timeSelector.C.
References forAll, Foam::name(), and List< T >::size().
Foam::List< Foam::instant > select | ( | const List< instant > & | Times | ) | const |
Select a list of Time values that are within the ranges.
Definition at line 101 of file timeSelector.C.
References Foam::subset().
Referenced by timeSelector::select0().
Select a list of Time values that are within the ranges.
Definition at line 110 of file timeSelector.C.
References Foam::inplaceSubset().
|
static |
Add the options handled by timeSelector to argList::validOptions.
constant | Add the -constant option to include the constant/ directory |
zeroTime | Enable the -zeroTime option and alter the normal time selection behaviour (and -latestTime behaviour) to exclude the 0/ directory. The 0/ directory will only be included when -zeroTime is specified. The -noZero option has precedence over the -zeroTime option. |
Definition at line 119 of file timeSelector.C.
References HashTable< T, Key, Hash >::insert(), and argList::validOptions.
Referenced by main().
|
static |
Return the set of times selected based on the argList options.
Definition at line 139 of file timeSelector.C.
References forAll, Foam::name(), argList::optionFound(), argList::optionLookup(), timeSelector::selected(), List< T >::size(), Foam::subset(), timeDirs, and argList::validOptions.
|
static |
Return the set of times selected based on the argList options.
also set the runTime to the first instance
Definition at line 231 of file timeSelector.C.
References args, UList< T >::empty(), argList::executable(), Foam::exit(), Foam::FatalError, FatalErrorIn, timeSelector::select(), Time::setTime(), timeDirs, and Time::times().
Referenced by main().