A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscript bounds checking, etc. More...
Data Structures | |
class | greater |
Greater function class that can be used for sorting. More... | |
class | less |
Less function class that can be used for sorting. More... | |
Public Types | |
typedef T | value_type |
Type of values the UList contains. More... | |
typedef T & | 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 T * | iterator |
Random access iterator for traversing UList. More... | |
typedef T * | reverse_iterator |
Reverse iterator for reverse traversal of UList. More... | |
Public Member Functions | |
UList () | |
Null constructor. More... | |
UList (T *__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 T * | cdata () const |
Return a const pointer to the first data element,. More... | |
T * | data () |
Return a pointer to the first data element,. More... | |
T & | first () |
Return the first element of the list. More... | |
const T & | first () const |
Return first element of the list. More... | |
T & | last () |
Return the last element of the list. More... | |
const T & | 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 | writeEntry (Ostream &) const |
Write the UList as a dictionary entry. More... | |
void | writeEntry (const word &keyword, Ostream &) const |
Write the UList as a dictionary entry with keyword. More... | |
void | assign (const UList< T > &) |
Assign elements to those from UList. More... | |
T & | operator[] (const label) |
Return element of UList. More... | |
const T & | operator[] (const label) const |
Return element of constant UList. More... | |
operator const Foam::List< T > & () const | |
Allow cast to a const List<T>&. More... | |
void | operator= (const T &) |
Assignment of all entries to the given value. More... | |
iterator | begin () |
Return an iterator to begin traversing the UList. More... | |
iterator | end () |
Return an iterator to end traversing the 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... | |
const_iterator | begin () const |
Return const_iterator to begin traversing the constant UList. More... | |
const_iterator | end () const |
Return const_iterator to end traversing the constant UList. More... | |
reverse_iterator | rbegin () |
Return 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 | 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... | |
const_reverse_iterator | rbegin () const |
Return const_reverse_iterator to begin reverse traversing the UList. More... | |
const_reverse_iterator | rend () 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< T > &) |
Swap two ULists of the same type in constant time. More... | |
bool | operator== (const UList< T > &) const |
Equality operation on ULists of the same type. More... | |
bool | operator!= (const UList< T > &) const |
The opposite of the equality operation. Takes linear time. More... | |
bool | operator< (const UList< T > &) const |
Compare two ULists lexicographically. Takes linear time. More... | |
bool | operator> (const UList< T > &) const |
Compare two ULists lexicographically. Takes linear time. More... | |
bool | operator<= (const UList< T > &) const |
Return true if !(a > b). Takes linear time. More... | |
bool | operator>= (const UList< T > &) const |
Return true if !(a < b). Takes linear time. More... | |
const bool & | operator[] (const label i) const |
Static Public Member Functions | |
static const UList< T > & | null () |
Return a null UList. More... | |
Data Fields | |
const typedef T & | const_reference |
Type that can be used for storing into. More... | |
const typedef T * | const_iterator |
Random access iterator for traversing UList. More... | |
const typedef T * | const_reverse_iterator |
Reverse iterator for reverse traversal of constant UList. More... | |
Private Attributes | |
label | size_ |
Number of elements in UList. More... | |
T *__restrict__ | v_ |
Vector of values of type T. More... | |
Friends | |
class | List< T > |
Declare friendship with the List class. More... | |
class | SubList< T > |
Declare friendship with the SubList class. More... | |
Ostream & | operator (Ostream &, const UList< T > &) |
Istream & | operator>> (Istream &, UList< T > &) |
Read UList contents from Istream. Requires size to have been set. More... | |
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscript bounds checking, etc.
Storage is not allocated during construction or use but is supplied to the constructor as an argument. This type of list is particularly useful for lists that refer to parts of existing lists such as SubList.
Definition at line 60 of file HashTable.H.
typedef T value_type |
Type that can be used for storing into.
UList::value_type objects.
typedef label difference_type |
typedef T* reverse_iterator |
|
inlinestatic |
Return a null UList.
Definition at line 51 of file UListI.H.
Referenced by FieldMapper::directAddressing(), pointFieldReconstructor::pointPatchFieldReconstructor::directAddressing(), fvFieldReconstructor::fvPatchFieldReconstructor::directAddressing(), parFvFieldReconstructor::reconstructPoints(), ensightPart::writeScalarField(), and ensightPart::writeVectorField().
|
inline |
|
inline |
std::streamsize byteSize | ( | ) | const |
Return the binary size in number of characters of the UList.
if the element is a primitive type i.e. contiguous<T>() == true. Note that is of type streamsize since used in stream ops
|
inline |
|
inline |
Return the first element of the list.
Definition at line 117 of file UListI.H.
Referenced by boundaryLayers::findPatchesToBeTreatedTogether().
|
inline |
|
inline |
Return the last element of the list.
Definition at line 131 of file UListI.H.
Referenced by globalIndex::gather().
|
inline |
|
inline |
Check start is within valid range (0 ... size-1).
Definition at line 73 of file UListI.H.
Referenced by SubList< T >::SubList().
|
inline |
Check size is within valid range (0 ... size).
Definition at line 86 of file UListI.H.
Referenced by SubList< T >::SubList().
|
inline |
Write the UList as a dictionary entry with keyword.
Assign elements to those from UList.
Definition at line 37 of file UList.C.
Referenced by viewFactor::calculate(), solarLoad::calculateQdiff(), solarHeatLoad::calculateQdiff(), meshToMesh::distributeAndMergeCells(), AMIInterpolation< SourcePatch, TargetPatch >::distributeAndMergePatches(), volPointInterpolation::flatBoundaryField(), globalIndex::gather(), fvMeshDistribute::getNeighbourData(), sampledPatchInternalField::interpolateField(), main(), KinematicCloud< CloudType >::penetration(), bezier::position(), GAMGSolver::procAgglomerateMatrix(), parFvFieldReconstructor::reconstructFvSurfaceField(), SloanRenumber::renumber(), sampledTriSurfaceMesh::sampleField(), and CellZoneInjection< CloudType >::setPositions().
Return element of constant UList.
Note that the bool specialization adds lazy evaluation so reading an out-of-range element returns false without any ill-effects
|
inline |
Assignment of all entries to the given value.
Definition at line 70 of file UList.C.
Referenced by slicedFvPatchField< Type >::slicedFvPatchField(), slicedFvsPatchField< Type >::slicedFvsPatchField(), SlicedGeometricField::DimensionedInternalField::~DimensionedInternalField(), slicedFvPatchField< Type >::~slicedFvPatchField(), slicedFvsPatchField< Type >::~slicedFvsPatchField(), and SlicedGeometricField::~SlicedGeometricField().
|
inline |
Return an iterator to begin traversing the UList.
Definition at line 216 of file UListI.H.
Referenced by TDILUPreconditioner< Type, DType, LUType >::calcInvD(), DICPreconditioner::calcReciprocalD(), DILUPreconditioner::calcReciprocalD(), LUscalarMatrix::convert(), lduMatrix::H(), lduMatrix::H1(), GAMGSolver::interpolate(), UList< Foam::wordRe >::operator<(), Foam::shuffle(), symGaussSeidelSmoother::smooth(), GaussSeidelSmoother::smooth(), TGaussSeidelSmoother< Type, DType, LUType >::smooth(), nonBlockingGaussSeidelSmoother::smooth(), PBiCGgpu::solve(), PCGgpu::solve(), Foam::sort(), and Foam::stableSort().
|
inline |
Return an iterator to end traversing the UList.
Definition at line 237 of file UListI.H.
Referenced by UList< Foam::wordRe >::operator<(), Foam::shuffle(), Foam::sort(), and Foam::stableSort().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Return the number of elements in the UList.
Definition at line 299 of file UListI.H.
Referenced by isoSurface::adaptPatchFields(), fvMatrix< Type >::addToInternalField(), pairGAMGAgglomeration::agglomerate(), GAMGAgglomeration::agglomerateLduAddressing(), ptscotchDecomp::append(), Field< Foam::Vector2D >::autoMap(), fvPatchField< Type >::autoMap(), cuttingPlane::calcCutCells(), oldCyclicPolyPatch::calcFaceCentres(), coupledPolyPatch::calcFaceTol(), meshSurfaceEngine::calcGlobalBoundaryFaceLabels(), lduAddressing::calcLosort(), blockMesh::calcMergeInfoFast(), meshSurfaceEngine::calculateBoundaryFacePatches(), meshSurfaceEngine::calculateBoundaryOwners(), meshSurfaceEngine::calculateFaceCentres(), meshSurfaceEngine::calculateFaceEdgesAddressing(), meshSurfaceEngine::calculateFaceFacesAddressing(), meshSurfaceEngine::calculateFaceNormals(), boundaryLayerOptimisation::calculateHairEdges(), GAMGAgglomeration::checkRestriction(), lduPrimitiveMesh::checkUpperTriangular(), ensightPartCells::classify(), GAMGAgglomeration::compactLevels(), immersedBoundaryFvPatchField< Type >::correctOffDiag(), partTriMesh::createPointsAndTrias(), createFundamentalSheetsJFS::createSheetsAtFeatureEdges(), MGridGenGAMGAgglomeration::detectSharedFaces(), directFvPatchFieldMapper::directFvPatchFieldMapper(), directPointPatchFieldMapper::directPointPatchFieldMapper(), meshSurfaceEdgeExtractorFUN::distributeBoundaryFaces(), edgeExtractor::distributeBoundaryFaces(), distributedUnallocatedDirectFieldMapper::distributedUnallocatedDirectFieldMapper(), distributedUnallocatedDirectFvPatchFieldMapper::distributedUnallocatedDirectFvPatchFieldMapper(), Foam::duplicateOrder(), DynList< Foam::triFace >::DynList(), regionSizeDistribution::extractData(), FaceCellWave< Type, int >::FaceCellWave(), lduMatrix::faceH(), edgeExtractor::findPatchesNearSurfaceFace(), mapDistributeBase::flipAndCombine(), meshRefinement::gAverage(), oldCyclicPolyPatch::getAnchorPoints(), coupledPolyPatch::getAnchorPoints(), Foam::Im(), Foam::ImComplexField(), regionModel::initialise(), fvMeshDistribute::inplaceRenumberWithFlip(), Foam::inplaceSubset(), cyclicACMIGAMGInterface::internalFieldTransfer(), cyclicAMIGAMGInterface::internalFieldTransfer(), regionCoupledFvPatch::internalFieldTransfer(), regionCoupledWallFvPatch::internalFieldTransfer(), surfaceInterpolationScheme< scalar >::interpolate(), AMIInterpolation< SourcePatch, TargetPatch >::interpolateToSource(), AMIInterpolation< SourcePatch, TargetPatch >::interpolateToTarget(), lduPrimitiveMesh::lduPrimitiveMesh(), MGridGenGAMGAgglomeration::makeCompactCellFaceAddressingAndFaceWeights(), immersedBoundaryFvPatch::makeIbCells(), Field< Foam::Vector2D >::map(), Foam::matchPoints(), mergeSurfacePatches(), MeshedSurface< Foam::face >::MeshedSurface(), edgeExtractor::moveVerticesTowardsDiscontinuities(), LduMatrix< Type, DType, LUType >::negSumDiag(), lduMatrix::negSumDiag(), BiIndirectList< T >::operator=(), PackedBoolList::operator=(), partTriMesh::partTriMesh(), directFieldMapper::patchFieldSubset(), Polynomial< 8 >::Polynomial(), meshSurfaceMapper::preMapVertices(), ptscotchDecomp::prepend(), printInfo(), GAMGSolver::procAgglomerateMatrix(), Foam::Re(), Foam::ReComplexField(), Foam::ReImSum(), ensightPart::renumber(), UPtrList< Foam::Field< Type > >::reorder(), PtrList< injectionModel >::reorder(), Foam::reverse(), separateList(), CompactListList::setSize(), UnsortedMeshedSurface< Face >::setZones(), directFieldMapper::size(), directFvPatchFieldMapper::size(), directPointPatchFieldMapper::size(), distributedUnallocatedDirectFieldMapper::size(), distributedUnallocatedDirectFvPatchFieldMapper::size(), PCGgpu::solve(), PBiCGgpu::solve(), Foam::sortedOrder(), Foam::subset(), fvMatrix< Type >::subtractFromInternalField(), Foam::sumCmptProd(), LduMatrix< Type, DType, LUType >::sumDiag(), lduMatrix::sumDiag(), LduMatrix< Type, DType, LUType >::sumMagOffDiag(), lduMatrix::sumMagOffDiag(), Foam::sumProd(), syncTools::swapBoundaryCellList(), syncTools::swapBoundaryCellPositions(), syncTools::syncBoundaryFaceList(), meshRefinement::testSyncBoundaryFaceList(), Foam::transformList(), UnsortedMeshedSurface< Face >::UnsortedMeshedSurface(), meshSurfaceEngineModifier::updateGeometry(), edgeExtractor::updateMeshPatches(), lduPrimitiveMesh::upperTriOrder(), ensightPartCells::writeConnectivity(), ensightPartFaces::writeConnectivity(), VTKedgeFormat::writeEdges(), writeEdgesToVTK(), writeFacetsToVTK(), ensightPart::writeField(), WRLsurfaceFormatCore::writeHeader(), OFSsurfaceFormatCore::writeHeader(), AC3DsurfaceFormatCore::writeHeader(), VTKsurfaceFormat< Face >::writeHeaderPolygons(), coupledPolyPatch::writeOBJ(), Foam::meshTools::writeOBJ(), writePointsToVTK(), ensightPart::writeScalarField(), VTKsurfaceFormatCore::writeTail(), and ensightPart::writeVectorField().
|
inline |
|
inline |
Return true if the UList is empty (ie, size() is zero).
Definition at line 313 of file UListI.H.
Referenced by boundBox::boundBox(), boundBox::contains(), boundBox::containsAny(), and treeBoundBox::treeBoundBox().
Referenced by UList< Foam::wordRe >::operator>().
const typedef T& const_reference |
Type that can be used for storing into.
constant UList::value_type objects
const typedef T* const_iterator |
const typedef T* const_reverse_iterator |
|
private |
Number of elements in UList.
Definition at line 75 of file UList.H.
Referenced by UList< Foam::wordRe >::assign(), UList< Foam::wordRe >::operator<(), UList< Foam::wordRe >::operator==(), and UList< Foam::wordRe >::swap().
|
private |
Vector of values of type T.
Definition at line 78 of file UList.H.
Referenced by UList< Foam::wordRe >::assign(), and UList< Foam::wordRe >::swap().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.