ug4
ug::Vertex Class Reference

Base-class for all vertex-types. More...

#include <grid_base_objects.h>

+ Inheritance diagram for ug::Vertex:

Public Types

typedef Vertex grid_base_object
 
typedef Edge higher_dim_base_object
 
typedef void lower_dim_base_object
 
typedef Vertex side
 
typedef Edge sideof
 

Public Member Functions

virtual int base_object_id () const
 
virtual int container_section () const
 
uint32 get_hash_value () const
 returns a value that can be used for hashing. More...
 
uint num_sides () const
 
virtual ReferenceObjectID reference_object_id () const
 
virtual ~Vertex ()
 
- Public Member Functions inherited from ug::GridObject
virtual GridObjectcreate_empty_instance () const
 create an instance of the derived type More...
 
uint grid_data_index () const
 Returns the grid attachment data index of a geometric object. More...
 
virtual bool is_constrained () const
 returns true if the object is constrained by other objects. More...
 
virtual bool is_constraining () const
 returns the id of the reference-object. More...
 
virtual ~GridObject ()
 
virtual void remove_constraint_link (const Vertex *vrt)
 removes a constraint link to the grid object. More...
 
virtual void remove_constraint_link (const Edge *e)
 removes a constraint link to the grid object. More...
 
virtual void remove_constraint_link (const Face *f)
 removes a constraint link to the grid object. More...
 

Static Public Member Functions

static bool type_match (GridObject *pObj)
 

Static Public Attributes

static const int BASE_OBJECT_ID = VERTEX
 
static const bool CAN_BE_SIDE = true
 
static const int dim = 0
 reference dimension More...
 
static const bool HAS_SIDES = false
 
static const size_t NUM_VERTICES = 1
 

Protected Attributes

uint32 m_hashValue
 
- Protected Attributes inherited from ug::GridObject
uint m_gridDataIndex
 

Friends

class Grid
 

Additional Inherited Members

- Protected Member Functions inherited from ug::GridObject
void set_grid_data_index (uint index)
 ATTENTION: Use this method with extreme care! More...
 

Detailed Description

Base-class for all vertex-types.

Vertices are required in any grid. They are the geometric objects of lowest dimension. All other geometric objects of higher dimension reference vertices.

Member Typedef Documentation

◆ grid_base_object

◆ higher_dim_base_object

◆ lower_dim_base_object

◆ side

The side type is obviously wrong. It should be void. However, void would cause problems with template instantiations.

◆ sideof

Constructor & Destructor Documentation

◆ ~Vertex()

virtual ug::Vertex::~Vertex ( )
inlinevirtual

Member Function Documentation

◆ base_object_id()

virtual int ug::Vertex::base_object_id ( ) const
inlinevirtual

Implements ug::GridObject.

References ug::VERTEX.

◆ container_section()

◆ get_hash_value()

uint32 ug::Vertex::get_hash_value ( ) const
inline

returns a value that can be used for hashing.

this value is unique per grid. It is only set correctly if the vertex has been created by the grid or has been properly registered at it.

Referenced by ug::CreateEdge(), ug::hash_key(), and ug::HashKey().

◆ num_sides()

uint ug::Vertex::num_sides ( ) const
inline

◆ reference_object_id()

virtual ReferenceObjectID ug::Vertex::reference_object_id ( ) const
inlinevirtual

A reference object represents a class of geometric objects. Tetrahedrons, Triangles etc are such classes. Reference ids should be defined in the file in which concrete geometric objects are defined.

Implements ug::GridObject.

Reimplemented in ug::ConstrainedVertex, and ug::RegularVertex.

References ug::ROID_UNKNOWN.

◆ type_match()

static bool ug::Vertex::type_match ( GridObject pObj)
inlinestatic

Friends And Related Function Documentation

◆ Grid

friend class Grid
friend

Member Data Documentation

◆ BASE_OBJECT_ID

const int ug::Vertex::BASE_OBJECT_ID = VERTEX
static

◆ CAN_BE_SIDE

const bool ug::Vertex::CAN_BE_SIDE = true
static

◆ dim

const int ug::Vertex::dim = 0
static

reference dimension

◆ HAS_SIDES

const bool ug::Vertex::HAS_SIDES = false
static

◆ m_hashValue

uint32 ug::Vertex::m_hashValue
protected

◆ NUM_VERTICES

const size_t ug::Vertex::NUM_VERTICES = 1
static

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