Loading...
Searching...
No Matches
pTraits< edge > Class Reference

Template specialization for pTraits<edge> so we can use syncTools. More...

Inheritance diagram for pTraits< edge >:
Collaboration diagram for pTraits< edge >:

Public Types

typedef edge cmptType
 Component type.
Public Types inherited from FixedList< T, N >
typedef T value_type
 The value type the FixedList contains.
typedef Tpointer
 The pointer type for non-const access to value_type items.
typedef const Tconst_pointer
 The pointer type for const access to value_type items.
typedef Treference
 The type used for storing into value_type objects.
typedef const Tconst_reference
 The type used for reading from constant value_type objects.
typedef Titerator
 Random access iterator for traversing FixedList.
typedef const Tconst_iterator
 Random access iterator for traversing FixedList.
typedef label size_type
 The type to represent the size of a FixedList.
typedef label difference_type
 The difference between iterator objects.
typedef std::reverse_iterator< iteratorreverse_iterator
 Reverse iterator (non-const access).
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 Reverse iterator (const access).

Public Member Functions

 pTraits (const edge &obj)
 Copy construct from base class.
Public Member Functions inherited from edge
 edge ()
 Default construct, with invalid vertex labels (-1).
 edge (label from, label to)
 Construct from two vertex labels.
 edge (const labelPair &pair)
 Construct from two vertex labels.
 edge (const FixedList< label, 2 > &pair)
 Construct from two vertex labels.
 edge (const UList< label > &list, const FixedList< label, 2 > &indices)
 Copy construct from a subset of vertex labels.
 edge (Istream &is)
 Construct from Istream.
label a () const noexcept
 The first vertex.
label & a () noexcept
 The first vertex.
label b () const noexcept
 The second vertex.
label & b () noexcept
 The second vertex.
label start () const noexcept
 The start (first) vertex label.
label & start () noexcept
 The start (first) vertex label.
label & end () noexcept
 The end (second/last) vertex label.
label end () const noexcept
 The end (last/second) vertex label.
edge reverseEdge () const
 Return reverse edge as copy.
label min () const noexcept
 Return the smallest vertex label used by the edge.
label max () const noexcept
 Return the largest vertex label used by the edge.
bool good () const noexcept
 True if the vertices are unique and non-negative.
bool contains (const label vertex) const noexcept
 Return true if the vertex label is contained in the edge.
label which (const label vertex) const
 Return local index (0,1) of vertex label in edge -1 on failure.
bool connected (const edge &other) const
 True if the edge has at least one vertex in common with other.
label commonVertex (const edge &other) const
 Return vertex common with other edge or -1 on failure.
label otherVertex (const label vertex) const
 Given one vertex label, return the other one.
bool connects (const edge &other) const
 Do the edges share a common vertex index?
label collapse ()
 'Collapse' edge by marking duplicate vertex labels as '-1', the lower vertex is retained.
label count () const
 Return the number of unique, valid (non -1) vertex labels.
bool empty () const noexcept
 Return true if edge has no valid vertex labels.
void clear ()
 'Clears' edge by setting both ends to invalid vertex labels.
bool insert (const label vertex)
 Fill any open slot with the vertex label (if not previously contained in the edge).
template<class InputIterator>
label insert (InputIterator begIter, InputIterator endIter)
 Insert values, using begin/end iterators.
label insert (std::initializer_list< label > list)
 Fill open slots with the indices if they did not previously exist.
template<unsigned N>
label insert (const FixedList< label, N > &list)
 Fill open slots with the indices if they did not previously exist.
label insert (const labelUList &list)
 Fill open slots with the indices if they did not previously exist.
label erase (const label vertex)
 Remove an existing vertex from the edge and set its location to '-1'. A negative vertex label never removes.
template<class InputIterator>
label erase (InputIterator begIter, InputIterator endIter)
 Remove values, using begin/end iterators.
label erase (std::initializer_list< label > list)
 Remove existing indices from the edge and set locations to '-1'.
template<unsigned N>
label erase (const FixedList< label, N > &list)
 Remove existing indices from the edge and set locations to '-1'.
label erase (const labelUList &list)
 Remove existing indices from the edge and set locations to '-1'.
point centre (const UList< point > &pts) const
 Return centre point (centroid) of the edge.
vector vec (const UList< point > &pts) const
 Return the vector (from first to second).
vector unitVec (const UList< point > &pts) const
 Return the unit vector (from first to second).
scalar mag (const UList< point > &pts) const
 The length (L2-norm) of the edge vector.
scalar magSqr (const UList< point > &pts) const
 The length (L2-norm) squared of the edge vector.
Pair< pointbox (const UList< point > &pts) const
 The enclosing (bounding) box for the edge.
linePointRef line (const UList< point > &pts) const
 Return edge line.
label & operator[] (const label i)
 Return edge element. Index should be limited to 0/1.
const label & operator[] (const label i) const
 Return constant edge element. Index should be limited to 0/1.
unsigned hash_code (unsigned seed=0) const
 The (commutative) hash value for edge, hashes lower value first.
 edge (label from, label to, bool doSort)
 Construct from two vertex labels, sorted with first less-than second.
 edge (const FixedList< label, 2 > &pair, bool doSort)
 Construct from list, sorted with first less-than second.
bool found (label vertex) const
 Same as contains().
bool valid () const noexcept
 Same as good().
label minVert () const noexcept
 Same as min().
label maxVert () const noexcept
 Same as max().
template<class InputIterator>
Foam::label insert (InputIterator begIter, InputIterator endIter)
template<unsigned N>
Foam::label insert (const FixedList< label, N > &list)
template<class InputIterator>
Foam::label erase (InputIterator begIter, InputIterator endIter)
template<unsigned N>
Foam::label erase (const FixedList< label, N > &list)
Public Member Functions inherited from Pair< label >
 Pair ()=default
 Default construct.
void front ()=delete
 The front() accessor (from FixedList) has no purpose.
void back ()=delete
 The back() accessor (from FixedList) has no purpose.
 Pair (const label &f, const label &s)
 Copy construct from components.
 Pair (label &&f, label &&s)
 Move construct from components.
 Pair (const std::pair< label, label > &vals)
 Copy construct from std::pair.
 Pair (std::pair< label, label > &&vals)
 Move construct from std::pair.
 Pair (const FixedList< label, 2 > &list)
 Copy construct FixedList of two items.
 Pair (const label &f, const label &s, const bool doSort)
 Copy construct, optionally sorted with first less-than second.
 Pair (const FixedList< label, 2 > &list, const bool doSort)
 Copy construct, optionally sorted with first less-than second.
 Pair (Istream &is)
 Construct from Istream.
const label & first () const noexcept
 Access the first element.
label & first () noexcept
 Access the first element.
const label & second () const noexcept
 Access the second element.
label & second () noexcept
 Access the second element.
const label & other (const label &a) const
 Return other element.
bool is_sorted () const
 True if first() is less-than-equal second().
void flip ()
 Flip the Pair in-place.
void sort ()
 Sort so that first() is less-than second().
Public Member Functions inherited from FixedList< T, N >
 FixedList ()=default
 Default construct.
 FixedList (const T &val)
 Construct and initialize all entries to given value.
 FixedList (Foam::zero)
 Construct and initialize all entries to zero.
 FixedList (const FixedList< T, N > &list)
 Copy construct.
 FixedList (FixedList< T, N > &&list)
 Move construct by using move assignment for the individual list elements.
 FixedList (std::initializer_list< T > list)
 Construct from an initializer list. Runtime size check.
 FixedList (const UList< T > &list)
 Construct from UList. Runtime size check.
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.
 FixedList (const UList< T > &list, const FixedList< label, N > &indices)
 Copy construct from a subset of the input. No size check.
 FixedList (Istream &is)
 Construct from Istream.
autoPtr< FixedList< T, N > > clone () const
 Clone.
const Tcdata () const noexcept
 Return pointer to the underlying array serving as data storage.
Tdata () noexcept
 Return pointer to the underlying array serving as data storage.
const char * cdata_bytes () const noexcept
 Return pointer to the underlying array serving as data storage,.
char * data_bytes () noexcept
 Return pointer to the underlying array serving as data storage,.
template<unsigned Index>
Tget () noexcept
 Element access using compile-time indexing.
template<unsigned Index>
const Tget () const noexcept
 Element access using compile-time indexing.
Tfront () noexcept
 Access first element of the list, position [0].
const Tfront () const noexcept
 Access first element of the list, position [0].
Tback () noexcept
 Access last element of the list, position [N-1].
const Tback () const noexcept
 Access last element of the list, position [N-1].
label fcIndex (const label i) const noexcept
 Return the forward circular index, i.e. next index which returns to the first at the end of the list.
const TfcValue (const label i) const
 Return forward circular value (ie, next value in the list).
TfcValue (const label i)
 Return forward circular value (ie, next value in the list).
label rcIndex (const label i) const noexcept
 Return the reverse circular index, i.e. previous index which returns to the last at the beginning of the list.
const TrcValue (const label i) const
 Return reverse circular value (ie, previous value in the list).
TrcValue (const label i)
 Return reverse circular value (ie, previous value in the list).
void checkStart (const label start) const
 Check start is within valid range [0,size).
void checkSize (const label size) const
 Check size is identical to template parameter N.
void checkIndex (const label i) const
 Check index is within valid range [0,N).
bool uniform () const
 True if all entries have identical values, and list is non-empty.
bool contains (const T &val) const
 True if the value is contained in the list.
bool contains (const T &val, label pos, label len=-1) const
 Is the value contained in the list?
label find (const T &val) const
 Find index of the first occurrence of the value.
label find (const T &val, label pos, label len=-1) const
 Find index of the first occurrence of the value.
label rfind (const T &val, label pos=-1) const
 Find index of the last occurrence of the value.
void resize (const label n)
 Dummy function, to make FixedList consistent with List Any resizing is ignored (Fatal with bad sizing in full debug).
void resize_fill (const label n, const T &val)
 Set val for all elements. Any resizing is ignored (Fatal with bad sizing in full debug).
void resize_nocopy (const label n)
 Dummy function, to make FixedList consistent with List Any resizing is ignored (Fatal with bad sizing in full debug).
void setSize (const label n)
 Dummy function, to make FixedList consistent with List.
void fill (const T &val)
 Assign all entries to the given value.
void fill (Foam::zero)
 Assign all entries to zero.
void moveFirst (const label i)
 Move element to the first position.
void moveLast (const label i)
 Move element to the last position.
void swapFirst (const label i)
 Swap element with the first element.
void swapLast (const label i)
 Swap element with the last element.
void transfer (FixedList< T, N > &list)
 Transfer by swapping using a move assignment for the content of the individual list elements.
Toperator[] (const label i)
 Return element of FixedList.
const Toperator[] (const label i) const
 Return element of constant FixedList.
void operator= (const UList< T > &list)
 Assignment to UList operator. Takes linear time.
void operator= (std::initializer_list< T > list)
 Assignment to an initializer list. Takes linear time.
void operator= (const T &val)
 Assign all entries to the given value. fill().
void operator= (Foam::zero)
 Assign all entries to zero. fill().
void operator= (const FixedList< T, N > &list)
 Copy assignment.
void operator= (FixedList< T, N > &&list)
 Move assignment.
iterator begin () noexcept
 Return an iterator to begin traversing the FixedList.
iterator end () noexcept
 Return an iterator to end traversing the FixedList.
iterator begin (const int i) noexcept
 Return iterator at offset i from begin, clamped to [0,N] range.
const_iterator cbegin () const noexcept
 Return const_iterator to begin traversing the constant FixedList.
const_iterator cend () const noexcept
 Return const_iterator to end traversing the constant FixedList.
const_iterator begin () const noexcept
 Return const_iterator to begin traversing the constant FixedList.
const_iterator end () const noexcept
 Return const_iterator to end traversing the constant FixedList.
const_iterator cbegin (const int i) const noexcept
 Return const_iterator at offset i from begin, clamped to [0,N] range.
const_iterator begin (const int i) const noexcept
 Return const_iterator at offset i from begin, clamped to [0,N] range.
reverse_iterator rbegin ()
 Return reverse_iterator to begin reverse traversing the FixedList.
reverse_iterator rend ()
 Return reverse_iterator to end reverse traversing the FixedList.
const_reverse_iterator crbegin () const
 Return const_reverse_iterator to begin reverse traversing FixedList.
const_reverse_iterator crend () const
 Return const_reverse_iterator to end reverse traversing FixedList.
const_reverse_iterator rbegin () const
 Return const_reverse_iterator to begin reverse traversing FixedList.
const_reverse_iterator rend () const
 Return const_reverse_iterator to end reverse traversing FixedList.
void swap (FixedList< T, N > &other)
 Swap lists by swapping the content of the individual list elements.
bool operator== (const FixedList< T, N > &list) const
 Equality operation on FixedLists of the same type.
bool operator!= (const FixedList< T, N > &list) const
 The opposite of the equality operation. Takes linear time.
bool operator< (const FixedList< T, N > &list) const
 Compare two FixedLists lexicographically. Takes linear time.
bool operator> (const FixedList< T, N > &list) const
 Compare two FixedLists lexicographically. Takes linear time.
bool operator<= (const FixedList< T, N > &list) const
 Return true if !(a > b). Takes linear time.
bool operator>= (const FixedList< T, N > &list) const
 Return true if !(a < b). Takes linear time.
IstreamreadList (Istream &is)
 Read from Istream, discarding contents of existing List.
void writeEntry (const word &keyword, Ostream &os) const
 Write the list as a dictionary entry with keyword.
OstreamwriteList (Ostream &os, const label shortLen=0) const
 Write List, with line-breaks in ASCII when length exceeds shortLen.
Tfirst () noexcept
 Access first element of the list, position [0] - front().
const Tfirst () const noexcept
 Access first element of the list, position [0] - front().
Tlast () noexcept
 Access last element of the list, position [N-1] - back().
const Tlast () const noexcept
 Access last element of the list, position [N-1] - back().
bool found (const T &val, label pos=0) const
 Same as contains().
 FixedList (const T list[N])
 Deprecated: copy construct from C-array.
void operator= (const T list[N])
 Deprecated: assignment from C-array.

Additional Inherited Members

Static Public Member Functions inherited from edge
static edge sorted (label from, label to)
 Create (in ascending order) from two vertex labels.
static edge sorted (const labelPair &pair)
 Create (in ascending order) from two vertex labels.
static edge sorted (const FixedList< label, 2 > &pair)
 Create (in ascending order) from two vertex labels.
static int compare (const edge &a, const edge &b)
 Compare edges.
Static Public Member Functions inherited from Pair< label >
static int compare (const Pair< label > &a, const Pair< label > &b)
 Compare Pairs.
Static Public Member Functions inherited from FixedList< T, N >
static const FixedList< T, N > & null () noexcept
 Return a null FixedList (reference to a nullObject). Read/write access is questionable.
static std::streamsize size_bytes () noexcept
 Number of contiguous bytes for the list data,.
static std::streamsize byteSize ()
 Number of contiguous bytes for the list data, runtime FatalError if type is not contiguous.
static constexpr bool empty () noexcept
 Always false since zero-sized FixedList is compile-time disabled.
static constexpr label size () noexcept
 Return the number of elements in the FixedList.
static constexpr unsigned max_size () noexcept
 The dimensioned size (template parameter N) of the FixedList.
Static Public Attributes inherited from edge
static const char *const typeName = "edge"
 The typeName ("edge").
Protected Member Functions inherited from FixedList< T, N >
void writeEntry (Ostream &os) const
 Write the FixedList with its compound type.

Detailed Description

Template specialization for pTraits<edge> so we can use syncTools.

functionality

Definition at line 47 of file cellCuts.C.

Member Typedef Documentation

◆ cmptType

typedef edge cmptType

Component type.

Definition at line 54 of file cellCuts.C.

Constructor & Destructor Documentation

◆ pTraits()

pTraits ( const edge & obj)
inlineexplicit

Copy construct from base class.

Definition at line 72 of file pTraits.H.


The documentation for this class was generated from the following files: