#include <generic_components.h>
Class to represent an undirected edge by specifying two vertices. The vertices are sorted, so upon query it is guaranteed that vertexA <= vertexB. Can also store an invalid state if one of the vertices is set to INITVALUE.
Public Member Functions | |
| MAXON_IMPLICIT | EdgePairTeamplate (T vA=INITVALUE, T vB=INITVALUE) |
| HashInt | GetHashCode () const |
| UniqueHash | GetUniqueHashCode () const |
| String | ToString (const FormatStatement *formatStatement=nullptr) const |
| Bool | operator== (const EdgePairTeamplate &b) const |
| Bool | operator< (const EdgePairTeamplate &b) const |
| Bool | IsValid () const |
| Bool | IsCollapsed () const |
| MAXON_OPERATOR_COMPARISON (EdgePairTeamplate) | |
Static Public Member Functions | |
| static constexpr Bool | TriviallyHashable () |
Public Attributes | |
| union { | |
| T _vA | |
| T _vertexA | |
| }; | |
| union { | |
| T _vB | |
| T _vertexB | |
| }; | |
| MAXON_IMPLICIT EdgePairTeamplate | ( | T | vA = INITVALUE, |
| T | vB = INITVALUE |
||
| ) |
| HashInt GetHashCode | ( | ) | const |
|
staticconstexpr |
| UniqueHash GetUniqueHashCode | ( | ) | const |
| String ToString | ( | const FormatStatement * | formatStatement = nullptr | ) | const |
| Bool operator== | ( | const EdgePairTeamplate< T, INITVALUE > & | b | ) | const |
| Bool operator< | ( | const EdgePairTeamplate< T, INITVALUE > & | b | ) | const |
| Bool IsValid | ( | ) | const |
Returns true if both vertices have a value != NOTOK.
| Bool IsCollapsed | ( | ) | const |
Returns true if the edge is actually a vertex (_vA == _vB).
| MAXON_OPERATOR_COMPARISON | ( | EdgePairTeamplate< T, INITVALUE > | ) |
| T _vA |
| T _vertexA |
| union { ... } |
First edge vertex, always <= _vB.
| T _vB |
| T _vertexB |
| union { ... } |
Second edge vertex.