38 #ifndef Foam_BiIndirectList_H 39 #define Foam_BiIndirectList_H const UList< T > & negList() const noexcept
The list of negative values (without addressing)
void size(const label n)
Older name for setAddressableSize.
bool empty() const noexcept
True if List is empty (ie, size() is zero)
T & operator[](const label i)
Return non-const access to an element.
const UList< T > & posList() const noexcept
The list of positive values (without addressing)
void operator=(const UList< T > &ae)
Assignment to UList of addressed elements.
static label negIndex(const label i) noexcept
List< T > operator()() const
Return the addressed elements as a List.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
Indexes into negList (negative index) or posList (zero or positive index).
List< T > list() const
Return the addressed elements as a List.
static label posIndex(const label i) noexcept
Calculate index given whether index is into posList or negList.
BiIndirectList(const UList< T > &posList, const UList< T > &negList, const labelUList &addr)
Construct given the complete lists and the addressing array.
bool empty() const noexcept
True if the list is empty (ie, size() is zero).
const labelList & addressing() const noexcept
The addressing used for the list.
label size() const noexcept
The number of elements in the list.
void resetAddressing(const labelUList &addr)
Copy reset addressing.