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.
Inheritance diagram for timeSelector:
Collaboration diagram for timeSelector: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. | |
Public Member Functions inherited from scalarRanges | |
| 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. | |
Public Member Functions inherited from List< scalarRange > | |
| 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. | |
Public Member Functions inherited from UList< scalarRange > | |
| 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().