Visual Computing Library  devel
Loading...
Searching...
No Matches
vcl::EdgeConcept Concept Reference

A concept that checks whether a class has (inherits from) an Edge class. More...

#include <vclib/mesh/elements/edge.h>

Concept definition

template<typename T>
concept vcl::EdgeConcept =
IsDerivedFromSpecializationOfV<T, Edge> &&
RemoveRef<T>::ELEMENT_ID == ElemId::EDGE && edge::HasBitFlags<T> &&
edge::HasVertexReferences<T> && RemoveRef<T>::VERTEX_NUMBER == 2
A concept that checks whether a class has (inherits from) an Edge class.
Definition edge.h:111
Definition edge_components.h:71
Definition edge_components.h:91

Detailed Description

A concept that checks whether a class has (inherits from) an Edge class.

The concept is satisfied when T is a class that instantiates or derives from a Edge class having any ParentMesh type and any Component types. The concept checks also that the Edge has a BitFlags component, VertexPointers or VertexIndices components, and that the number of vertices is 2.

Template Parameters
TThe type to be tested for conformity to the EdgeConcept.