A 1D vector of objects of type <T> with a fixed length <N>. More...
Classes | |
struct | Hash |
Deprecated(2021-04) hashing functor. Use hasher() More... | |
struct | hasher |
Hashing functor for FixedList. More... | |
Public Types | |
typedef T | value_type |
The value type the FixedList contains. More... | |
typedef T * | pointer |
The pointer type for non-const access to value_type items. More... | |
typedef const T * | const_pointer |
The pointer type for const access to value_type items. More... | |
typedef T & | reference |
The type used for storing into value_type objects. More... | |
typedef const T & | const_reference |
The type used for reading from constant value_type objects. More... | |
typedef T * | iterator |
Random access iterator for traversing FixedList. More... | |
typedef const T * | const_iterator |
Random access iterator for traversing FixedList. More... | |
typedef label | size_type |
The type to represent the size of a FixedList. More... | |
typedef label | difference_type |
The difference between iterator objects. More... | |
typedef std::reverse_iterator< iterator > | reverse_iterator |
Reverse iterator (non-const access) More... | |
typedef std::reverse_iterator< const_iterator > | const_reverse_iterator |
Reverse iterator (const access) More... | |
Public Member Functions | |
FixedList ()=default | |
Default construct. More... | |
FixedList (const T &val) | |
Construct and initialize all entries to given value. More... | |
FixedList (const Foam::zero) | |
Construct and initialize all entries to zero. More... | |
FixedList (const T list[N]) | |
Copy construct from C-array (deprecated) More... | |
FixedList (const FixedList< T, N > &list) | |
Copy construct. More... | |
FixedList (FixedList< T, N > &&list) | |
FixedList (std::initializer_list< T > list) | |
Construct from an initializer list. Runtime size check. More... | |
FixedList (const UList< T > &list) | |
Construct from UList. Runtime size check. More... | |
template<unsigned AnyNum> | |
FixedList (const FixedList< T, AnyNum > &list, const FixedList< label, N > &indices) | |
Copy construct from a subset of the input. No size check. More... | |
FixedList (const UList< T > &list, const FixedList< label, N > &indices) | |
Copy construct from a subset of the input. No size check. More... | |
FixedList (const SLList< T > &list) | |
Construct from SLList. Runtime size check. More... | |
FixedList (Istream &is) | |
Construct from Istream. More... | |
autoPtr< FixedList< T, N > > | clone () const |
Clone. More... | |
const T * | cdata () const noexcept |
Return pointer to the underlying array serving as data storage. More... | |
T * | data () noexcept |
Return pointer to the underlying array serving as data storage. More... | |
const char * | cdata_bytes () const noexcept |
Return pointer to the underlying array serving as data storage,. More... | |
char * | data_bytes () noexcept |
Return pointer to the underlying array serving as data storage,. More... | |
T & | first () noexcept |
The first element of the list, position [0]. More... | |
const T & | first () const noexcept |
The first element of the list, position [0]. More... | |
T & | last () noexcept |
The last element of the list, position [N-1]. More... | |
const T & | last () const noexcept |
The last element of the list, position [N-1]. More... | |
label | fcIndex (const label i) const |
const T & | fcValue (const label i) const |
Return forward circular value (ie, next value in the list) More... | |
T & | fcValue (const label i) |
Return forward circular value (ie, next value in the list) More... | |
label | rcIndex (const label i) const |
const T & | rcValue (const label i) const |
Return reverse circular value (ie, previous value in the list) More... | |
T & | rcValue (const label i) |
Return reverse circular value (ie, previous value in the list) More... | |
void | checkStart (const label start) const |
Check start is within valid range [0,size) More... | |
void | checkSize (const label size) const |
Check size is identical to template parameter N. More... | |
void | checkIndex (const label i) const |
Check index is within valid range [0,N) More... | |
bool | uniform () const |
True if all entries have identical values, and list is non-empty. More... | |
label | find (const T &val, label pos=0) const |
Find index of the first occurrence of the value. More... | |
label | rfind (const T &val, label pos=-1) const |
Find index of the last occurrence of the value. More... | |
bool | found (const T &val, label pos=0) const |
True if the value if found in the list. More... | |
void | resize (const label n) |
Dummy function, to make FixedList consistent with List. More... | |
void | resize_nocopy (const label n) |
Dummy function, to make FixedList consistent with List. More... | |
void | setSize (const label n) |
Dummy function, to make FixedList consistent with List. More... | |
void | fill (const T &val) |
Assign all entries to the given value. More... | |
void | fill (const Foam::zero) |
Assign all entries to zero. More... | |
void | moveFirst (const label i) |
Move element to the first position. More... | |
void | moveLast (const label i) |
Move element to the last position. More... | |
void | swapFirst (const label i) |
Swap element with the first element. More... | |
void | swapLast (const label i) |
Swap element with the last element. More... | |
void | transfer (FixedList< T, N > &list) |
T & | operator[] (const label i) |
Return element of FixedList. More... | |
const T & | operator[] (const label i) const |
Return element of constant FixedList. More... | |
void | operator= (const T list[N]) |
Assignment to array operator. Takes linear time. More... | |
void | operator= (const UList< T > &list) |
Assignment to UList operator. Takes linear time. More... | |
void | operator= (const SLList< T > &list) |
Assignment to SLList operator. Takes linear time. More... | |
void | operator= (std::initializer_list< T > list) |
Assignment to an initializer list. Takes linear time. More... | |
void | operator= (const T &val) |
Assign all entries to the given value. fill() More... | |
void | operator= (const Foam::zero) |
Assign all entries to zero. fill() More... | |
void | operator= (const FixedList< T, N > &list) |
Copy assignment. More... | |
void | operator= (FixedList< T, N > &&list) |
Move assignment. More... | |
iterator | begin () noexcept |
Return an iterator to begin traversing the FixedList. More... | |
iterator | end () noexcept |
Return an iterator to end traversing the FixedList. More... | |
const_iterator | cbegin () const noexcept |
Return const_iterator to begin traversing the constant FixedList. More... | |
const_iterator | cend () const noexcept |
Return const_iterator to end traversing the constant FixedList. More... | |
const_iterator | begin () const noexcept |
Return const_iterator to begin traversing the constant FixedList. More... | |
const_iterator | end () const noexcept |
Return const_iterator to end traversing the constant FixedList. More... | |
reverse_iterator | rbegin () |
Return reverse_iterator to begin reverse traversing the FixedList. More... | |
reverse_iterator | rend () |
Return reverse_iterator to end reverse traversing the FixedList. More... | |
const_reverse_iterator | crbegin () const |
Return const_reverse_iterator to begin reverse traversing FixedList. More... | |
const_reverse_iterator | crend () const |
Return const_reverse_iterator to end reverse traversing FixedList. More... | |
const_reverse_iterator | rbegin () const |
Return const_reverse_iterator to begin reverse traversing FixedList. More... | |
const_reverse_iterator | rend () const |
Return const_reverse_iterator to end reverse traversing FixedList. More... | |
void | swap (FixedList< T, N > &other) |
Swap lists by swapping the content of the individual list elements. More... | |
bool | operator== (const FixedList< T, N > &list) const |
Equality operation on FixedLists of the same type. More... | |
bool | operator!= (const FixedList< T, N > &list) const |
The opposite of the equality operation. Takes linear time. More... | |
bool | operator< (const FixedList< T, N > &list) const |
Compare two FixedLists lexicographically. Takes linear time. More... | |
bool | operator> (const FixedList< T, N > &list) const |
Compare two FixedLists lexicographically. Takes linear time. More... | |
bool | operator<= (const FixedList< T, N > &list) const |
Return true if !(a > b). Takes linear time. More... | |
bool | operator>= (const FixedList< T, N > &list) const |
Return true if !(a < b). Takes linear time. More... | |
Istream & | readList (Istream &is) |
Read from Istream, discarding contents of existing List. More... | |
void | writeEntry (const word &keyword, Ostream &os) const |
Write the list as a dictionary entry with keyword. More... | |
Ostream & | writeList (Ostream &os, const label shortLen=0) const |
Write List, with line-breaks in ASCII when length exceeds shortLen. More... | |
Static Public Member Functions | |
static const FixedList< T, N > & | null () |
Return a null FixedList. More... | |
static std::streamsize | size_bytes () noexcept |
Number of contiguous bytes for the list data,. More... | |
static std::streamsize | byteSize () |
static constexpr bool | empty () noexcept |
Always false since zero-sized FixedList is compile-time disabled. More... | |
static constexpr label | size () noexcept |
Return the number of elements in the FixedList. More... | |
static constexpr unsigned | max_size () noexcept |
The dimensioned size (template parameter N) of the FixedList. More... | |
Protected Member Functions | |
void | writeEntry (Ostream &os) const |
Write the FixedList with its compound type. More... | |
Friends | |
Istream & | operator>> (Istream &is, FixedList< T, N > &list) |
Use the readList() method to read contents from Istream. More... | |
A 1D vector of objects of type <T> with a fixed length <N>.
Definition at line 80 of file FixedList.H.
typedef T value_type |
The value type the FixedList contains.
Definition at line 107 of file FixedList.H.
The pointer type for non-const access to value_type items.
Definition at line 110 of file FixedList.H.
typedef const T* const_pointer |
The pointer type for const access to value_type items.
Definition at line 113 of file FixedList.H.
The type used for storing into value_type objects.
Definition at line 116 of file FixedList.H.
typedef const T& const_reference |
The type used for reading from constant value_type objects.
Definition at line 119 of file FixedList.H.
Random access iterator for traversing FixedList.
Definition at line 122 of file FixedList.H.
typedef const T* const_iterator |
Random access iterator for traversing FixedList.
Definition at line 125 of file FixedList.H.
typedef label size_type |
The type to represent the size of a FixedList.
Definition at line 128 of file FixedList.H.
typedef label difference_type |
The difference between iterator objects.
Definition at line 131 of file FixedList.H.
typedef std::reverse_iterator<iterator> reverse_iterator |
Reverse iterator (non-const access)
Definition at line 134 of file FixedList.H.
typedef std::reverse_iterator<const_iterator> const_reverse_iterator |
Reverse iterator (const access)
Definition at line 137 of file FixedList.H.
|
default |
Default construct.
Construct and initialize all entries to given value.
Definition at line 45 of file FixedListI.H.
|
inlineexplicit |
Construct and initialize all entries to zero.
Definition at line 52 of file FixedListI.H.
Copy construct from C-array (deprecated)
Definition at line 59 of file FixedListI.H.
References N().
Copy construct.
Definition at line 69 of file FixedListI.H.
References N().
Move construct by using move assignment for the individual list elements
Definition at line 79 of file FixedListI.H.
References N().
Construct from an initializer list. Runtime size check.
Definition at line 89 of file FixedListI.H.
References N().
Construct from UList. Runtime size check.
Definition at line 103 of file FixedListI.H.
References N(), and UList< T >::size().
Copy construct from a subset of the input. No size check.
Definition at line 116 of file FixedListI.H.
References N().
Copy construct from a subset of the input. No size check.
Definition at line 130 of file FixedListI.H.
References N().
Construct from SLList. Runtime size check.
Definition at line 144 of file FixedListI.H.
References LList< LListBase, T >::begin(), and N().
Construct from Istream.
Definition at line 56 of file FixedListIO.C.
|
protected |
Write the FixedList with its compound type.
Definition at line 37 of file FixedListIO.C.
|
inlinestatic |
Return a null FixedList.
Definition at line 36 of file FixedListI.H.
|
inline |
Clone.
Definition at line 159 of file FixedListI.H.
|
inlinenoexcept |
Return pointer to the underlying array serving as data storage.
Definition at line 169 of file FixedListI.H.
Return pointer to the underlying array serving as data storage.
Definition at line 177 of file FixedListI.H.
|
inlinenoexcept |
Return pointer to the underlying array serving as data storage,.
reinterpreted as byte data
Definition at line 185 of file FixedListI.H.
Referenced by FixedList< T, N >::writeList().
|
inlinenoexcept |
Return pointer to the underlying array serving as data storage,.
reinterpreted as byte data
Definition at line 193 of file FixedListI.H.
Referenced by FixedList< T, N >::readList().
|
inlinenoexcept |
The first element of the list, position [0].
Definition at line 207 of file FixedListI.H.
Referenced by phaseChange::addToDriftRate(), globalIndexAndTransform::addToTransformIndex(), reconstructionSchemes::alreadyReconstructed(), meshRefinement::balance(), fieldMinMax::calcMinMaxFieldType(), meshReader::cellFaceIdentifier::cellId(), Pair< T >::compare(), InterfaceCompositionPhaseChangePhaseSystem< BasePhaseSystem >::correctInterfaceThermo(), multiWorldConnections::createComms(), pimpleControl::criteriaSatisfied(), simpleControl::criteriaSatisfied(), faMeshDistributor::distribute(), snappyRefineDriver::doRefine(), Foam::faceNij(), shellSurfaces::findDirectionalLevel(), ensightSurfaceReader::geometry(), globalIndexAndTransform::globalIndexAndTransform(), edge::hash_code(), InterfaceCompositionPhaseChangePhaseSystem< BasePhaseSystem >::iDmdt(), globalIndexAndTransform::index(), linearInterpolationWeights::integrationWeights(), isoSurfaceTopo::interpolateTemplate(), isoSurfaceTopo::isoSurfaceTopo(), LangmuirHinshelwoodReactionRate::LangmuirHinshelwoodReactionRate(), solutionControl::maxTypeResidual(), slidingInterface::modifyMotionPoints(), Distribution< Type >::normalised(), meshReader::cellFaceIdentifier::notUsed(), Pair< T >::symmHasher::operator()(), minFirstOp< T1 >::operator()(), maxFirstOp< T1 >::operator()(), Foam::operator<(), Foam::operator==(), Distribution< Type >::raw(), ensightSurfaceReader::readGeometryHeader(), meshRefinement::splitFacesUndo(), SquareMatrix< scalar >::SquareMatrix(), globalIndexAndTransform::transformIndicesForPatches(), meshReader::cellFaceIdentifier::used(), Distribution< Type >::validLimits(), ABAQUSsurfaceFormat< Face >::write(), LangmuirHinshelwoodReactionRate::write(), and meshRefinement::zonify().
|
inlinenoexcept |
The first element of the list, position [0].
Definition at line 214 of file FixedListI.H.
|
inlinenoexcept |
The last element of the list, position [N-1].
Definition at line 221 of file FixedListI.H.
Referenced by pimpleControl::criteriaSatisfied(), and solutionControl::maxTypeResidual().
|
inlinenoexcept |
The last element of the list, position [N-1].
Definition at line 228 of file FixedListI.H.
|
inlinestaticnoexcept |
Number of contiguous bytes for the list data,.
Definition at line 200 of file FixedListI.H.
Referenced by FixedList< T, N >::readList(), and FixedList< T, N >::writeList().
|
static |
Number of contiguous bytes for the list data, runtime FatalError if type is not contiguous
Definition at line 35 of file FixedList.C.
References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.
|
inline |
Return the forward circular index, i.e. next index which returns to the first at the end of the list
Definition at line 235 of file FixedListI.H.
References N().
Referenced by wallBoundedParticle::isTriAlongTrack(), and wallBoundedParticle::trackFaceTri().
|
inline |
Return forward circular value (ie, next value in the list)
Definition at line 242 of file FixedListI.H.
|
inline |
Return forward circular value (ie, next value in the list)
Definition at line 249 of file FixedListI.H.
|
inline |
Return the reverse circular index, i.e. previous index which returns to the last at the beginning of the list
Definition at line 256 of file FixedListI.H.
|
inline |
Return reverse circular value (ie, previous value in the list)
Definition at line 263 of file FixedListI.H.
|
inline |
Return reverse circular value (ie, previous value in the list)
Definition at line 270 of file FixedListI.H.
|
inline |
Check start is within valid range [0,size)
Definition at line 277 of file FixedListI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and N().
|
inline |
Check size is identical to template parameter N.
Definition at line 290 of file FixedListI.H.
|
inline |
Check index is within valid range [0,N)
Definition at line 302 of file FixedListI.H.
References FatalErrorInFunction, and N().
True if all entries have identical values, and list is non-empty.
Definition at line 314 of file FixedListI.H.
References N().
Foam::label find | ( | const T & | val, |
label | pos = 0 |
||
) | const |
Find index of the first occurrence of the value.
Any occurrences before the start pos are ignored. Linear search.
Definition at line 50 of file FixedList.C.
References List_CONST_ACCESS, N(), Foam::pos(), and T.
Referenced by triFace::which().
Foam::label rfind | ( | const T & | val, |
label | pos = -1 |
||
) | const |
Find index of the last occurrence of the value.
Any occurrences after the end pos are ignored. Linear search.
Definition at line 72 of file FixedList.C.
References List_CONST_ACCESS, N(), Foam::pos(), and T.
True if the value if found in the list.
Any occurrences before the start pos are ignored. Linear search.
Definition at line 331 of file FixedListI.H.
Referenced by wallBoundedParticle::isTriAlongTrack().
|
inline |
Dummy function, to make FixedList consistent with List.
Definition at line 342 of file FixedListI.H.
Referenced by FixedList< T, N >::setSize().
|
inline |
Dummy function, to make FixedList consistent with List.
Definition at line 351 of file FixedListI.H.
|
inline |
Dummy function, to make FixedList consistent with List.
Definition at line 304 of file FixedList.H.
References FixedList< T, N >::resize().
Referenced by blockDescriptor::facePoints().
|
inline |
Assign all entries to the given value.
Definition at line 360 of file FixedListI.H.
References N().
|
inline |
Assign all entries to zero.
Definition at line 370 of file FixedListI.H.
References N().
void moveFirst | ( | const label | i | ) |
Move element to the first position.
Definition at line 97 of file FixedList.C.
References Foam::Swap().
void moveLast | ( | const label | i | ) |
Move element to the last position.
Definition at line 109 of file FixedList.C.
References N(), and Foam::Swap().
void swapFirst | ( | const label | i | ) |
Swap element with the first element.
Definition at line 121 of file FixedList.C.
References Foam::Swap().
void swapLast | ( | const label | i | ) |
Swap element with the last element.
Definition at line 133 of file FixedList.C.
References N(), and Foam::Swap().
Transfer by swapping using a move assignment for the content of the individual list elements
Definition at line 395 of file FixedListI.H.
|
inline |
Return element of FixedList.
Definition at line 412 of file FixedListI.H.
|
inline |
Return element of constant FixedList.
Definition at line 422 of file FixedListI.H.
|
inline |
Assignment to array operator. Takes linear time.
Definition at line 432 of file FixedListI.H.
References N().
Referenced by boolVector::operator=().
Assignment to UList operator. Takes linear time.
Definition at line 441 of file FixedListI.H.
References N(), and UList< T >::size().
Assignment to SLList operator. Takes linear time.
Definition at line 452 of file FixedListI.H.
References LList< LListBase, T >::begin(), and N().
|
inline |
Assignment to an initializer list. Takes linear time.
Definition at line 465 of file FixedListI.H.
References N().
|
inline |
Assign all entries to the given value. fill()
Definition at line 478 of file FixedListI.H.
|
inline |
Assign all entries to zero. fill()
Definition at line 485 of file FixedListI.H.
Copy assignment.
Definition at line 492 of file FixedListI.H.
References N().
Move assignment.
Definition at line 506 of file FixedListI.H.
References N().
|
inlinenoexcept |
Return an iterator to begin traversing the FixedList.
Definition at line 524 of file FixedListI.H.
Referenced by bitSet::bitSet(), edge::erase(), HashSet< Key, Hash >::HashSet(), HashSet< Key, Hash >::insert(), edge::insert(), HashSet< Key, Hash >::operator=(), bitSet::set(), HashSet< Key, Hash >::unset(), and bitSet::unset().
|
inlinenoexcept |
Return an iterator to end traversing the FixedList.
Definition at line 548 of file FixedListI.H.
References N().
Referenced by bitSet::bitSet(), edge::erase(), HashSet< Key, Hash >::HashSet(), HashSet< Key, Hash >::insert(), edge::insert(), HashSet< Key, Hash >::operator=(), bitSet::set(), HashSet< Key, Hash >::unset(), and bitSet::unset().
|
inlinenoexcept |
Return const_iterator to begin traversing the constant FixedList.
Definition at line 540 of file FixedListI.H.
Referenced by HashTable< T, Key, Hash >::erase().
|
inlinenoexcept |
Return const_iterator to end traversing the constant FixedList.
Definition at line 564 of file FixedListI.H.
References N().
Referenced by HashTable< T, Key, Hash >::erase().
|
inlinenoexcept |
Return const_iterator to begin traversing the constant FixedList.
Definition at line 532 of file FixedListI.H.
|
inlinenoexcept |
Return const_iterator to end traversing the constant FixedList.
Definition at line 556 of file FixedListI.H.
References N().
|
inline |
Return reverse_iterator to begin reverse traversing the FixedList.
Definition at line 572 of file FixedListI.H.
|
inline |
Return reverse_iterator to end reverse traversing the FixedList.
Definition at line 596 of file FixedListI.H.
|
inline |
Return const_reverse_iterator to begin reverse traversing FixedList.
Definition at line 588 of file FixedListI.H.
|
inline |
Return const_reverse_iterator to end reverse traversing FixedList.
Definition at line 612 of file FixedListI.H.
|
inline |
Return const_reverse_iterator to begin reverse traversing FixedList.
Definition at line 580 of file FixedListI.H.
|
inline |
Return const_reverse_iterator to end reverse traversing FixedList.
Definition at line 604 of file FixedListI.H.
|
inlinestaticconstexprnoexcept |
Always false since zero-sized FixedList is compile-time disabled.
Definition at line 413 of file FixedList.H.
References N().
|
inlinestaticconstexprnoexcept |
Return the number of elements in the FixedList.
Definition at line 416 of file FixedList.H.
References N().
Referenced by DynamicList< T, SizeMin >::append(), isoSurfacePoint::generateFaceTriPoints(), indexedCell< Gt, Cb >::globallyOrderedCellVertices(), isoSurfaceCell::isoSurfaceCell(), isoSurfacePoint::isoSurfacePoint(), HashSet< Key, Hash >::operator=(), shellSurfaces::shellSurfaces(), pointConstraint::unconstrainedDirections(), patchEdgeFaceRegions::updateEdge(), and indexedCell< Gt, Cb >::vertexGlobalIndices().
|
inlinestaticconstexprnoexcept |
The dimensioned size (template parameter N) of the FixedList.
Definition at line 419 of file FixedList.H.
References N().
Swap lists by swapping the content of the individual list elements.
Definition at line 380 of file FixedListI.H.
Referenced by Foam::Swap().
Equality operation on FixedLists of the same type.
Returns true when the FixedLists are element-wise equal (using FixedList::value_type::operator==). Takes linear time
Definition at line 149 of file FixedList.C.
References List_CONST_ACCESS, N(), and T.
The opposite of the equality operation. Takes linear time.
Definition at line 193 of file FixedList.C.
References Foam::operator==().
Compare two FixedLists lexicographically. Takes linear time.
Definition at line 169 of file FixedList.C.
References List_CONST_ACCESS, N(), and T.
Compare two FixedLists lexicographically. Takes linear time.
Definition at line 200 of file FixedList.C.
Return true if !(a > b). Takes linear time.
Definition at line 207 of file FixedList.C.
Return true if !(a < b). Takes linear time.
Definition at line 214 of file FixedList.C.
References Foam::operator<().
Foam::Istream & readList | ( | Istream & | is | ) |
Read from Istream, discarding contents of existing List.
Definition at line 152 of file FixedListIO.C.
References FixedList< T, N >::data_bytes(), IOstream::fatalCheck(), IOstreamOption::format(), FUNCTION_NAME, token::isCompound(), and FixedList< T, N >::size_bytes().
Write the list as a dictionary entry with keyword.
Definition at line 65 of file FixedListIO.C.
References Foam::endl(), and os().
Foam::Ostream & writeList | ( | Ostream & | os, |
const label | shortLen = 0 |
||
) | const |
Write List, with line-breaks in ASCII when length exceeds shortLen.
Using '0' suppresses line-breaks entirely.
Definition at line 81 of file FixedListIO.C.
References FixedList< T, N >::cdata_bytes(), os(), and FixedList< T, N >::size_bytes().
Referenced by Foam::operator<<().
Use the readList() method to read contents from Istream.
Definition at line 540 of file FixedList.H.