SortableListDRGEP< Type > Class Template Reference

A list that is sorted upon construction or when explicitly requested with the sort() method. More...

Inheritance diagram for SortableListDRGEP< Type >:
[legend]
Collaboration diagram for SortableListDRGEP< Type >:
[legend]

Classes

class  less
 Less function class used by the sort function. More...
 

Public Member Functions

 SortableListDRGEP (const List< Type > &)
 Construct from List, sorting the elements. Starts with indices set. More...
 
 SortableListDRGEP (const label size)
 Construct given size. Sort later on. More...
 
 SortableListDRGEP (const label size, const Type &)
 Construct given size and initial value. Sort later on. More...
 
 SortableListDRGEP (const SortableListDRGEP< Type > &)
 Construct as copy. More...
 
const labelListindices () 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)
 Partial sort the list (if changed after construction time) More...
 
void stableSort ()
 Sort the list (if changed after construction time) More...
 
void operator= (const SortableListDRGEP< Type > &)
 
- Public Member Functions inherited from List< Type >
constexpr List () noexcept
 Default construct. More...
 
 List (const label len)
 Construct with given size. More...
 
 List (const label len, const Type &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 Type &val)
 Construct with length=1, copying the value as the only content. More...
 
 List (const Foam::one, Type &&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< Type > &a)
 Copy construct from list. More...
 
 List (const UList< Type > &a)
 Copy construct contents from list. More...
 
 List (List< Type > &a, bool reuse)
 Construct as copy or re-use as specified. More...
 
 List (const UList< Type > &list, const labelUList &indices)
 Copy construct subset of list. More...
 
 List (const UList< Type > &list, const FixedList< label, N > &indices)
 Copy construct subset of list. More...
 
 List (const FixedList< Type, N > &list)
 Construct as copy of FixedList<T, N> More...
 
 List (const PtrList< Type > &list)
 Construct as copy of PtrList<T> More...
 
 List (const SLList< Type > &list)
 Construct as copy of SLList<T> More...
 
 List (const IndirectListBase< Type, Addr > &list)
 Construct as copy of IndirectList contents. More...
 
 List (std::initializer_list< Type > list)
 Construct from an initializer list. More...
 
 List (List< Type > &&list)
 Move construct from List. More...
 
 List (DynamicList< Type, SizeMin > &&list)
 Move construct from DynamicList. More...
 
 List (SortableList< Type > &&list)
 Move construct from SortableList. More...
 
 List (SLList< Type > &&list)
 Move construct from SLList. More...
 
 List (Istream &is)
 Construct from Istream. More...
 
autoPtr< List< Type > > 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 Type &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 Type &val)
 Alias for resize() More...
 
void append (const Type &val)
 Append an element at the end of the list. More...
 
void append (Type &&val)
 Move append an element at the end of the list. More...
 
void append (const UList< Type > &list)
 Append a List to the end of this list. More...
 
void append (const IndirectListBase< Type, Addr > &list)
 Append IndirectList contents at the end of this list. More...
 
label appendUniq (const Type &val)
 Append an element if not already in the list. More...
 
void transfer (List< Type > &list)
 
void transfer (DynamicList< Type, SizeMin > &list)
 
void transfer (SortableList< Type > &list)
 
Type & newElmt (const label i)
 
void operator= (const UList< Type > &a)
 Assignment to UList operator. Takes linear time. More...
 
void operator= (const List< Type > &list)
 Assignment operator. Takes linear time. More...
 
void operator= (const SLList< Type > &list)
 Assignment to SLList operator. Takes linear time. More...
 
void operator= (const IndirectListBase< Type, Addr > &list)
 Assignment from IndirectList. Takes linear time. More...
 
void operator= (const FixedList< Type, N > &list)
 Copy assignment from FixedList. More...
 
void operator= (std::initializer_list< Type > list)
 Assignment to an initializer list. More...
 
void operator= (const Type &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< Type > &&list)
 Move assignment. Takes constant time. More...
 
void operator= (DynamicList< Type, SizeMin > &&list)
 Move assignment. Takes constant time. More...
 
void operator= (SortableList< Type > &&list)
 Move assignment. Takes constant time. More...
 
void operator= (SLList< Type > &&list)
 Move assignment. Takes constant time. More...
 
IstreamreadList (Istream &is)
 Read List from Istream, discarding contents of existing List. More...
 
IstreamreadList (Istream &is)
 
IstreamreadList (Istream &is)
 
void shallowCopy (const UList< Type > &)=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...
 

Additional Inherited Members

- Public Types inherited from List< Type >
typedef SubList< Type > subList
 Declare type of subList. More...
 
- Static Public Member Functions inherited from List< Type >
static const List< Type > & null ()
 Return a null List. More...
 

Detailed Description

template<class Type>
class Foam::SortableListDRGEP< Type >

A list that is sorted upon construction or when explicitly requested with the sort() method.

Source files

Definition at line 52 of file SortableListDRGEP.H.

Constructor & Destructor Documentation

◆ SortableListDRGEP() [1/4]

SortableListDRGEP ( const List< Type > &  values)
explicit

Construct from List, sorting the elements. Starts with indices set.

to index in argument

Definition at line 34 of file SortableListDRGEP.C.

References SortableListDRGEP< Type >::sort().

Here is the call graph for this function:

◆ SortableListDRGEP() [2/4]

SortableListDRGEP ( const label  size)
explicit

Construct given size. Sort later on.

Definition at line 44 of file SortableListDRGEP.C.

◆ SortableListDRGEP() [3/4]

SortableListDRGEP ( const label  size,
const Type &  val 
)

Construct given size and initial value. Sort later on.

Definition at line 53 of file SortableListDRGEP.C.

◆ SortableListDRGEP() [4/4]

SortableListDRGEP ( const SortableListDRGEP< Type > &  lst)

Construct as copy.

Definition at line 65 of file SortableListDRGEP.C.

Member Function Documentation

◆ indices()

const labelList& indices ( ) const
inline

Return the list of sorted indices. Updated every sort.

Definition at line 104 of file SortableListDRGEP.H.

Referenced by SortableListDRGEP< Type >::operator=(), and DRGEP< CompType, ThermoType >::reduceMechanism().

Here is the caller graph for this function:

◆ setSize()

void setSize ( const label  newSize)

Size the list. If grow can cause undefined indices (until next sort)

Definition at line 77 of file SortableListDRGEP.C.

References List< T >::setSize().

Here is the call graph for this function:

◆ sort()

void sort ( )

Sort the list (if changed after construction time)

Definition at line 85 of file SortableListDRGEP.C.

References forAll, Foam::less(), Foam::sort(), and List< T >::transfer().

Referenced by SortableListDRGEP< Type >::SortableListDRGEP().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ partialSort()

void partialSort ( int  M)

Partial sort the list (if changed after construction time)

Definition at line 106 of file SortableListDRGEP.C.

References forAll, Foam::less(), and M.

Referenced by DRGEP< CompType, ThermoType >::reduceMechanism().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ stableSort()

void stableSort ( )

Sort the list (if changed after construction time)

Definition at line 124 of file SortableListDRGEP.C.

References forAll, Foam::less(), Foam::stableSort(), and List< T >::transfer().

Here is the call graph for this function:

◆ operator=()

void operator= ( const SortableListDRGEP< Type > &  rhs)

Definition at line 148 of file SortableListDRGEP.C.

References SortableListDRGEP< Type >::indices(), and List< T >::operator=().

Here is the call graph for this function:

The documentation for this class was generated from the following files: