A list that is sorted upon construction or when explicitly requested with the sort() method. More...
Classes | |
class | more |
Less function class used by the sort function. More... | |
Public Member Functions | |
SortableListEFA (const List< Type > &) | |
Construct from List, sorting the elements. Starts with indices set. More... | |
SortableListEFA (const label size) | |
Construct given size. Sort later on. More... | |
SortableListEFA (const label size, const Type &) | |
Construct given size and initial value. Sort later on. More... | |
SortableListEFA (const SortableListEFA< Type > &) | |
Construct as copy. More... | |
const labelList & | indices () const |
Return the list of sorted indices. Updated every sort. More... | |
void | setSize (const label) |
Size the list. If grow can cause undefined indices (until next sort) More... | |
void | sort () |
Sort the list (if changed after construction time) More... | |
void | partialSort (int M, int start) |
Partial sort the list (if changed after construction time) More... | |
void | stableSort () |
Sort the list (if changed after construction time) More... | |
void | operator= (const SortableListEFA< Type > &) |
Public Member Functions inherited from List< Type > | |
List () | |
Null constructor. More... | |
List (const label) | |
Construct with given size. More... | |
List (const label, const Type &) | |
Construct with given size and value for all elements. More... | |
List (const label, const zero) | |
Construct with given size initialising all elements to zero. More... | |
List (const List< Type > &) | |
Copy constructor. More... | |
List (const List< T2 > &) | |
Copy constructor from list containing another type. More... | |
List (List< Type > &&) | |
Move constructor. More... | |
List (List< Type > &, bool reuse) | |
Construct as copy or re-use as specified. More... | |
List (const UList< Type > &, const labelUList &mapAddressing) | |
Construct as subset. More... | |
List (InputIterator first, InputIterator last) | |
Construct given start and end iterators. More... | |
List (const FixedList< Type, Size > &) | |
Construct as copy of FixedList<T, Size> More... | |
List (const PtrList< Type > &) | |
Construct as copy of PtrList<T> More... | |
List (const SLList< Type > &) | |
Construct as copy of SLList<T> More... | |
List (const UIndirectList< Type > &) | |
Construct as copy of UIndirectList<T> More... | |
List (const BiIndirectList< Type > &) | |
Construct as copy of BiIndirectList<T> More... | |
List (std::initializer_list< Type >) | |
Construct from an initialiser list. More... | |
List (Istream &) | |
Construct from Istream. More... | |
label | size () const |
Return the number of elements in the UList. More... | |
autoPtr< List< Type > > | clone () const |
Clone. More... | |
~List () | |
Destructor. More... | |
void | resize (const label) |
Alias for setSize(const label) More... | |
void | resize (const label, const Type &) |
Alias for setSize(const label, const T&) More... | |
void | setSize (const label) |
Reset size of List. More... | |
void | setSize (const label, const Type &) |
Reset size of List and value for new elements. More... | |
void | clear () |
Clear the list, i.e. set size to zero. More... | |
void | append (const Type &) |
Append an element at the end of the list. More... | |
void | append (const UList< Type > &) |
Append a List at the end of this list. More... | |
void | append (const UIndirectList< Type > &) |
Append a UIndirectList at the end of this list. More... | |
void | transfer (List< Type > &) |
Transfer the contents of the argument List into this list. More... | |
void | transfer (DynamicList< Type, SizeInc, SizeMult, SizeDiv > &) |
Transfer the contents of the argument List into this list. More... | |
void | transfer (SortableList< Type > &) |
Transfer the contents of the argument List into this list. More... | |
Type & | newElmt (const label) |
Return subscript-checked element of UList. More... | |
void | shallowCopy (const UList< Type > &)=delete |
Disallow implicit shallowCopy. More... | |
void | operator= (const UList< Type > &) |
Assignment to UList operator. Takes linear time. More... | |
void | operator= (const List< Type > &) |
Assignment operator. Takes linear time. More... | |
void | operator= (List< Type > &&) |
Move assignment operator. More... | |
void | operator= (const SLList< Type > &) |
Assignment to SLList operator. Takes linear time. More... | |
void | operator= (const UIndirectList< Type > &) |
Assignment to UIndirectList operator. Takes linear time. More... | |
void | operator= (const BiIndirectList< Type > &) |
Assignment to BiIndirectList operator. Takes linear time. More... | |
void | operator= (std::initializer_list< Type >) |
Assignment to an initialiser list. More... | |
void | operator= (const Type &) |
Assignment of all entries to the given value. More... | |
void | operator= (const zero) |
Assignment of all entries to zero. More... | |
Public Member Functions inherited from UList< Type > | |
void | operator= (const Type &) |
Assignment of all entries to the given value. More... | |
void | operator= (const zero) |
Assignment of all entries to zero. More... | |
UList () | |
Null constructor. More... | |
UList (Type *__restrict__ v, label size) | |
Construct from components. More... | |
label | fcIndex (const label i) const |
Return the forward circular index, i.e. the next index. More... | |
label | rcIndex (const label i) const |
Return the reverse circular index, i.e. the previous index. More... | |
std::streamsize | byteSize () const |
Return the binary size in number of characters of the UList. More... | |
const Type * | cdata () const |
Return a const pointer to the first data element,. More... | |
Type * | data () |
Return a pointer to the first data element,. More... | |
Type & | first () |
Return the first element of the list. More... | |
const Type & | first () const |
Return first element of the list. More... | |
Type & | last () |
Return the last element of the list. More... | |
const Type & | last () const |
Return the last element of the list. More... | |
void | checkStart (const label start) const |
Check start is within valid range (0 ... size-1) More... | |
void | checkSize (const label size) const |
Check size is within valid range (0 ... size) More... | |
void | checkIndex (const label i) const |
Check index i is within valid range (0 ... size-1) More... | |
void | shallowCopy (const UList< Type > &) |
Copy the pointer held by the given UList. More... | |
void | deepCopy (const UList< Type > &) |
Copy elements of the given UList. More... | |
Type & | operator[] (const label) |
Return element of UList. More... | |
const Type & | operator[] (const label) const |
Return element of constant UList. More... | |
const bool & | operator[] (const label i) const |
operator const Foam::List< Type > & () const | |
Allow cast to a const List<T>&. More... | |
iterator | begin () |
Return an iterator to begin traversing the UList. More... | |
const_iterator | begin () const |
Return const_iterator to begin traversing the constant UList. More... | |
iterator | end () |
Return an iterator to end traversing the UList. More... | |
const_iterator | end () const |
Return const_iterator to end traversing the constant UList. More... | |
const_iterator | cbegin () const |
Return const_iterator to begin traversing the constant UList. More... | |
const_iterator | cend () const |
Return const_iterator to end traversing the constant UList. More... | |
reverse_iterator | rbegin () |
Return reverse_iterator to begin reverse traversing the UList. More... | |
const_reverse_iterator | rbegin () const |
Return const_reverse_iterator to begin reverse traversing the UList. More... | |
reverse_iterator | rend () |
Return reverse_iterator to end reverse traversing the UList. More... | |
const_reverse_iterator | rend () const |
Return const_reverse_iterator to end reverse traversing the UList. More... | |
const_reverse_iterator | crbegin () const |
Return const_reverse_iterator to begin reverse traversing the UList. More... | |
const_reverse_iterator | crend () const |
Return const_reverse_iterator to end reverse traversing the UList. More... | |
label | size () const |
Return the number of elements in the UList. More... | |
label | max_size () const |
Return size of the largest possible UList. More... | |
bool | empty () const |
Return true if the UList is empty (ie, size() is zero) More... | |
void | swap (UList< Type > &) |
Swap two ULists of the same type in constant time. More... | |
bool | operator== (const UList< Type > &) const |
Equality operation on ULists of the same type. More... | |
bool | operator!= (const UList< Type > &) const |
The opposite of the equality operation. Takes linear time. More... | |
bool | operator< (const UList< Type > &) const |
Compare two ULists lexicographically. Takes linear time. More... | |
bool | operator> (const UList< Type > &) const |
Compare two ULists lexicographically. Takes linear time. More... | |
bool | operator<= (const UList< Type > &) const |
Return true if !(a > b). Takes linear time. More... | |
bool | operator>= (const UList< Type > &) const |
Return true if !(a < b). Takes linear time. More... | |
Additional Inherited Members | |
Public Types inherited from List< Type > | |
typedef SubList< Type > | subList |
Declare type of subList. More... | |
Public Types inherited from UList< Type > | |
typedef Type | value_type |
Type of values the UList contains. More... | |
typedef Type & | reference |
Type that can be used for storing into. More... | |
typedef const Type & | const_reference |
Type that can be used for storing into. More... | |
typedef label | difference_type |
The type that can represent the difference between any two. More... | |
typedef label | size_type |
The type that can represent the size of a UList. More... | |
typedef Type * | iterator |
Random access iterator for traversing UList. More... | |
typedef const Type * | const_iterator |
Random access iterator for traversing UList. More... | |
typedef std::reverse_iterator< iterator > | reverse_iterator |
Reverse iterator for reverse traversal of UList. More... | |
typedef std::reverse_iterator< const_iterator > | const_reverse_iterator |
Reverse iterator for reverse traversal of constant UList. More... | |
Static Public Member Functions inherited from List< Type > | |
static const List< Type > & | null () |
Return a null List. More... | |
Static Public Member Functions inherited from UList< Type > | |
static const UList< Type > & | null () |
Return a null UList. More... | |
Protected Member Functions inherited from List< Type > | |
void | size (const label) |
Override size to be inconsistent with allocated storage. More... | |
A list that is sorted upon construction or when explicitly requested with the sort() method.
Definition at line 50 of file SortableListEFA.H.
|
explicit |
Construct from List, sorting the elements. Starts with indices set.
to index in argument
Definition at line 31 of file SortableListEFA.C.
References SortableListEFA< Type >::sort().
Referenced by SortableListEFA< Type >::more::operator()().
|
explicit |
Construct given size. Sort later on.
Definition at line 41 of file SortableListEFA.C.
References forAll.
SortableListEFA | ( | const label | size, |
const Type & | val | ||
) |
Construct given size and initial value. Sort later on.
Definition at line 54 of file SortableListEFA.C.
References forAll.
SortableListEFA | ( | const SortableListEFA< Type > & | lst | ) |
|
inline |
Return the list of sorted indices. Updated every sort.
Definition at line 102 of file SortableListEFA.H.
References M, SortableListEFA< Type >::operator=(), SortableListEFA< Type >::partialSort(), SortableListEFA< Type >::setSize(), SortableListEFA< Type >::sort(), and SortableListEFA< Type >::stableSort().
Referenced by SortableListEFA< Type >::operator=(), and EFA< ThermoType >::reduceMechanism().
void setSize | ( | const label | newSize | ) |
Size the list. If grow can cause undefined indices (until next sort)
Definition at line 83 of file SortableListEFA.C.
References List< T >::setSize().
Referenced by SortableListEFA< Type >::indices().
void sort | ( | ) |
Sort the list (if changed after construction time)
Definition at line 91 of file SortableListEFA.C.
References forAll, Foam::less(), UList< Type >::operator[](), List< Type >::size(), Foam::sort(), and List< T >::transfer().
Referenced by SortableListEFA< Type >::indices(), and SortableListEFA< Type >::SortableListEFA().
void partialSort | ( | int | M, |
int | start | ||
) |
Partial sort the list (if changed after construction time)
Definition at line 112 of file SortableListEFA.C.
References UList< T >::begin(), UList< T >::end(), and M.
Referenced by SortableListEFA< Type >::indices(), and EFA< ThermoType >::reduceMechanism().
void stableSort | ( | ) |
Sort the list (if changed after construction time)
Definition at line 125 of file SortableListEFA.C.
References forAll, Foam::less(), UList< Type >::operator[](), List< Type >::size(), Foam::stableSort(), and List< T >::transfer().
Referenced by SortableListEFA< Type >::indices().
void operator= | ( | const SortableListEFA< Type > & | rhs | ) |
Definition at line 148 of file SortableListEFA.C.
References SortableListEFA< Type >::indices(), and List< T >::operator=().
Referenced by SortableListEFA< Type >::indices().