36 #ifndef DLPermutation_H
37 #define DLPermutation_H
50 template<
class LabelList>
177 void raise(
const label i);
201 #define forAllConstIterReverse(Container,container,iter) \
204 Container::const_iterator iter = (container).rbegin(); \
205 iter != (container).rend(); \
A bi-directional constant iterator.
const_iterator & operator--()
Decrement.
bool operator!=(const const_iterator &iter) const
Inequality comparison.
label operator*() const
Dereference.
const_iterator & operator=(const const_iterator &iter)
Assignment.
const_iterator & operator++()
Increment.
const_iterator next() const
Return the next iterator without incrementing.
const_iterator(const DLPermutation &, const label)
Construct at an index within a permutation.
bool operator==(const const_iterator &iter) const
Equality comparison.
const_iterator previous() const
Return the previous iterator without incrementing.
A permutation stored in the same manner as a doubly-linked list in order to facilitate reordering in ...
void sink(const label i)
Sink a given index to the end of the permutation.
const_iterator rbegin() const
Return the starting reverse iterator.
const_iterator cbegin() const
Return the starting forward iterator.
const_iterator rend() const
Return the ending reverse iterator.
const_iterator crbegin() const
Return the starting reverse iterator.
const_iterator begin() const
Return the starting forward iterator.
const_iterator crend() const
Return the ending reverse iterator.
List< label > permutation(const bool reverse)
Return the permutation.
DLPermutation(const List< label > &permutation)
Construct for a given permutation.
const_iterator cend() const
Return the ending forward iterator.
const_iterator end() const
Return the ending forward iterator.
void append()
Add a new index to the end of the permutation.
void prepend()
Add a new index to the start of the permutation.
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 reverse(UList< T > &, const label n)
DLPermutation< DynamicList< label > > dynamicDLPermutation
Define the type of a permutation based on a dynamic list.
DLPermutation< List< label > > dLPermutation
Define the type of a permutation based on a list.
randomGenerator rndGen(653213)