28 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
38 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
52 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
63 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
74 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
85 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
99 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
107 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
116 if (nextFree > capacity_)
119 nextFree = capacity_;
128 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
135 if (nElem > capacity_)
153 label(SizeInc + capacity_ * SizeMult / SizeDiv)
165 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
172 if (nElem > capacity_)
190 label(SizeInc + capacity_ * SizeMult / SizeDiv)
202 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
213 while (nextFree < nElem)
220 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
230 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
241 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
248 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
256 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
261 if (capacity_ > nextFree)
267 capacity_ = nextFree;
275 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
279 capacity_ = lst.
size();
284 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
292 capacity_ = lst.capacity_;
299 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
303 return xferMoveTo< List<T> >(*this);
307 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
322 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
333 "DynamicList<T, SizeInc, SizeMult, SizeDiv>::append" 349 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
367 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
376 "Foam::DynamicList<T, SizeInc, SizeMult, SizeDiv>::remove()" 390 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
405 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
406 inline void Foam::DynamicList<T, SizeInc, SizeMult, SizeDiv>::operator=
415 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
416 inline void Foam::DynamicList<T, SizeInc, SizeMult, SizeDiv>::operator=
425 "DynamicList<T, SizeInc, SizeMult, SizeDiv>::operator=" 426 "(const DynamicList<T, SizeInc, SizeMult, SizeDiv>&)" 430 if (capacity_ >= lst.
size())
447 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
448 inline void Foam::DynamicList<T, SizeInc, SizeMult, SizeDiv>::operator=
453 if (capacity_ >= lst.
size())
470 template<
class T,
unsigned SizeInc,
unsigned SizeMult,
unsigned SizeDiv>
471 inline void Foam::DynamicList<T, SizeInc, SizeMult, SizeDiv>::operator=
476 if (capacity_ >= lst.
size())
void transfer(List< T > &)
Transfer contents of the argument List into this.
friend Ostream & operator(Ostream &, const DynamicList< T, SizeInc, SizeMult, SizeDiv > &)
void setCapacity(const label)
Alter the size of the underlying storage.
void transfer(List< T > &)
Transfer the contents of the argument List into this list.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
A simple container for copying or transferring objects of type <T>.
void clear()
Clear the addressed list, i.e. set the size to zero.
label capacity() const
Size of the underlying storage.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
void size(const label)
Override size to be inconsistent with allocated storage.
DynamicList< T, SizeInc, SizeMult, SizeDiv > & append(const T &)
Append an element at the end of the list.
T remove()
Remove and return the top element.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
T & operator[](const label)
Return element of UList.
void clear()
Clear the list, i.e. set size to zero.
void setSize(const label)
Reset size of List.
A List with indirect addressing.
Xfer< List< T > > xfer()
Transfer contents to the Xfer container as a plain List.
label size() const
Return the number of elements in the list.
dimensioned< Type > max(const dimensioned< Type > &, const dimensioned< Type > &)
DynamicList< T, SizeInc, SizeMult, SizeDiv > & shrink()
Shrink the allocated space to the number of elements used.
void resize(const label)
Alter the addressed list size.
void setSize(const label)
Alter the addressed list size.
label size() const
Return the number of elements in the UList.
DynamicList()
Construct null.
errorManip< error > abort(error &err)
#define FatalErrorIn(functionName)
Report an error message using Foam::FatalError.
void operator=(const T &)
Assignment of all entries to the given value.
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects...
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
label size() const
Return the number of elements in the UList.
void clearStorage()
Clear the list and delete storage.
void reserve(const label)
Reserve allocation space for at least this size.
void operator=(const UList< T > &)
Assignment from UList operator. Takes linear time.