MOAB: Mesh Oriented datABase  (version 5.2.1)
moab::EntityRefinerOutputFunctor Class Reference

#include <EntityRefiner.hpp>

+ Inheritance diagram for moab::EntityRefinerOutputFunctor:

Public Member Functions

virtual ~EntityRefinerOutputFunctor ()
virtual EntityHandle map_vertex (EntityHandle vhash, const double *vcoords, const void *vtags)=0
EntityHandle operator() (EntityHandle h0, EntityHandle h1, const double *vcoords, const void *vtags)
 Create a new vertex along an edge.
virtual EntityHandle operator() (EntityHandle h0, EntityHandle h1, EntityHandle h2, const double *vcoords, const void *vtags)
 Create a new vertex on a triangular face.
virtual EntityHandle operator() (int nhash, EntityHandle *hash, const double *vcoords, const void *vtags)=0
 Create a new vertex along a \(k\)-facet.
virtual void operator() (EntityHandle vhash)=0
 Append an output vertex to the list of vertices defining a new entity.
virtual void operator() (EntityType etyp)=0
 Create a new entity from all previously appended output vertices.

Detailed Description

Definition at line 79 of file EntityRefiner.hpp.


Constructor & Destructor Documentation

Definition at line 82 of file EntityRefiner.hpp.

{}

Member Function Documentation

virtual EntityHandle moab::EntityRefinerOutputFunctor::map_vertex ( EntityHandle  vhash,
const double *  vcoords,
const void *  vtags 
) [pure virtual]

Map an input vertex to the output mesh. This should return the same value when given the same input across multiple calls.

Implemented in moab::MeshOutputFunctor.

Referenced by moab::SimplexTemplateRefiner::refine_entity().

EntityHandle moab::EntityRefinerOutputFunctor::operator() ( EntityHandle  h0,
EntityHandle  h1,
const double *  vcoords,
const void *  vtags 
) [inline]

Create a new vertex along an edge.

Parameters:
[in]h0An edge endpoint handle on the output mesh.
[in]h1An edge endpoint handle on the output mesh.
[in]vcoordsThe location of the midpoint in world coordinates.
[in]vtagsField values at the midpoint.
Return values:
Ahandle for the midpoint on the output mesh.

Definition at line 94 of file EntityRefiner.hpp.

References h1.

    {
        EntityHandle harr[2];
        // Cppcheck warning (false positive): variable harr is assigned a value that is never used
        harr[0] = h0;
        harr[1] = h1;
        return ( *this )( 2, harr, vcoords, vtags );
    }
virtual EntityHandle moab::EntityRefinerOutputFunctor::operator() ( EntityHandle  h0,
EntityHandle  h1,
EntityHandle  h2,
const double *  vcoords,
const void *  vtags 
) [inline, virtual]

Create a new vertex on a triangular face.

Parameters:
[in]h0A triangle corner handle on the output mesh.
[in]h1A triangle corner handle on the output mesh.
[in]h2A triangle corner handle on the output mesh.
[in]vcoordsThe location of the mid-face point in world coordinates.
[in]vtagsField values at the mid-face point.
Return values:
Ahandle for the mid-face point on the output mesh.

Definition at line 111 of file EntityRefiner.hpp.

References h1.

    {
        EntityHandle harr[3];
        // Cppcheck warning (false positive): variable harr is assigned a value that is never used
        harr[0] = h0;
        harr[1] = h1;
        harr[2] = h2;
        return ( *this )( 3, harr, vcoords, vtags );
    }
virtual EntityHandle moab::EntityRefinerOutputFunctor::operator() ( int  nhash,
EntityHandle hash,
const double *  vcoords,
const void *  vtags 
) [pure virtual]

Create a new vertex along a \(k\)-facet.

Parameters:
[in]nhashThe number of corner vertices (i.e, \(k\) ).
[in]hashAn array of corner handles on the output mesh.
[in]vcoordsThe location of the new point in world coordinates.
[in]vtagsField values at the new point.
Return values:
Ahandle for the new point on the output mesh.

Implemented in moab::MeshOutputFunctor.

virtual void moab::EntityRefinerOutputFunctor::operator() ( EntityHandle  vhash) [pure virtual]

Append an output vertex to the list of vertices defining a new entity.

Parameters:
[in]vhashA vertex of the output mesh.

Implemented in moab::MeshOutputFunctor.

virtual void moab::EntityRefinerOutputFunctor::operator() ( EntityType  etyp) [pure virtual]

Create a new entity from all previously appended output vertices.

This resets the list of appended vertices.

Parameters:
[in]etypThe type of entity to create.

Implemented in moab::MeshOutputFunctor.

List of all members.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines