MeshKit  1.0
MeshOp Class Reference

An operation that operates on mesh data. More...

#include <meshkit/MeshOp.hpp>

Inheritance diagram for MeshOp:

List of all members.

Public Member Functions

 MeshOp (const MeshOp &mesh_op)
 Copy constructor.
 MeshOp (MKCore *mkcore, const MEntVector &me_vec=MEntVector())
 Bare constructor.
virtual ~MeshOp ()
 Destructor.
virtual bool add_modelent (ModelEnt *model_ent)
 Add a ModelEnt to this operation's MEntSelection The MEntSelection is a map, and can only have a given entity once.
virtual bool remove_modelent (ModelEnt *model_ent)
 Removes a ModelEnt from this operation's MEntSelection.
virtual MEntSelectionme_selection ()
 Return a reference to the MEntSelection list.
virtual const MEntSelectionme_selection () const
 Return a const reference to the MEntSelection list.
MKCoremk_core () const
 Get the associated MKCore object; this applies a dynamic_cast to the parent's MKGraph member.
virtual const moab::EntityType * mesh_types_arr () const =0
 Return the mesh entity types operated on by this scheme.
void mesh_types (std::vector< moab::EntityType > &mesh_types)
 Return what types of mesh entities this algorithm generates; pure virtual so every scheme must define them.
void setup_boundary ()
 Check that bounding entities have an assigned MeshOp, and create them for ones that don't.
void ensure_facet_dependencies (bool recurse_to_facets=true)
 Ensure that this MeshOp depends on any MeshOp assigned to a facet of this MeshOp's selected entities.
void create_model_ents_from_previous_ops ()
int get_debug_verbosity ()
void set_debug_verbosity (int debug)

Static Public Member Functions

static bool canmesh_vertex (ModelEnt *model_ent)
 Helper function for meshop registration, returns true if specified ModelEnt is a vertex.
static bool canmesh_edge (ModelEnt *model_ent)
 Helper function for meshop registration, returns true if specified ModelEnt is an edge.
static bool canmesh_face (ModelEnt *model_ent)
 Helper function for meshop registration, returns true if specified ModelEnt is a face.
static bool canmesh_region (ModelEnt *model_ent)
 Helper function for meshop registration, returns true if specified ModelEnt is a region.

Protected Attributes

MEntSelection mentSelection
 MEntSelection that stores what this operation generated or otherwise worked on.
int debugLevel

Detailed Description

An operation that operates on mesh data.

The class encapsulating setup/execute mesh operations on collections of entities. MeshOp objects derive from GraphNode, which encapsulates all graph-related operations on a MeshOp.

Examples:
example_graph.cpp.

Definition at line 21 of file MeshOp.hpp.


Constructor & Destructor Documentation

MeshOp ( const MeshOp mesh_op)

Copy constructor.

Definition at line 14 of file MeshOp.cpp.

MeshOp ( MKCore mkcore,
const MEntVector me_vec = MEntVector() 
)

Bare constructor.

Definition at line 20 of file MeshOp.cpp.

~MeshOp ( ) [virtual]

Destructor.

Definition at line 191 of file MeshOp.cpp.


Member Function Documentation

bool add_modelent ( ModelEnt model_ent) [virtual]

Add a ModelEnt to this operation's MEntSelection The MEntSelection is a map, and can only have a given entity once.

Parameters:
model_entModelEnt being added
Returns:
Returns true if model_ent was actually added, false otherwise

Reimplemented in EBMesher, CoreGen, PostBL, AssyGen, MergeMesh, AssyMesher, ExtrudeMesh, CopyMesh, CopyGeom, MeshOpTemplate, and VertexMesher.

Definition at line 168 of file MeshOp.cpp.

bool canmesh_edge ( ModelEnt model_ent) [static]

Helper function for meshop registration, returns true if specified ModelEnt is an edge.

Parameters:
model_entModel entity being evaluated
Returns:
True if model_ent has dimension() == 1

Definition at line 153 of file MeshOp.cpp.

bool canmesh_face ( ModelEnt model_ent) [static]

Helper function for meshop registration, returns true if specified ModelEnt is a face.

Parameters:
model_entModel entity being evaluated
Returns:
True if model_ent has dimension() == 2

Definition at line 158 of file MeshOp.cpp.

bool canmesh_region ( ModelEnt model_ent) [static]

Helper function for meshop registration, returns true if specified ModelEnt is a region.

Parameters:
model_entModel entity being evaluated
Returns:
True if model_ent has dimension() == 3

Definition at line 163 of file MeshOp.cpp.

bool canmesh_vertex ( ModelEnt model_ent) [static]

Helper function for meshop registration, returns true if specified ModelEnt is a vertex.

Parameters:
model_entModel entity being evaluated
Returns:
True if model_ent has dimension() == 0

Definition at line 148 of file MeshOp.cpp.

brief mesh-based geometry model ents based on previous ops it will be used for Camal advancing front meshers

void ensure_facet_dependencies ( bool  recurse_to_facets = true)

Ensure that this MeshOp depends on any MeshOp assigned to a facet of this MeshOp's selected entities.

For each entity selected for this MeshOp, checks that this MeshOp has a dependence on any MeshOp assigned to a facet of the entity. If no such dependence can be found, inserts a direct dependency arc from this MeshOp to the MeshOp on the facet.

Parameters:
recurse_to_facetsif true (default value), this method is called on each MeshOp that is assigned to one or more facets of entities that this MeshOp is assigned to

Definition at line 73 of file MeshOp.cpp.

int get_debug_verbosity ( ) [inline]

brief get debugging level

Definition at line 117 of file MeshOp.hpp.

MEntSelection & me_selection ( ) [inline, virtual]

Return a reference to the MEntSelection list.

Examples:
example_mbvolop.cpp, and example_setpnt2quad.cpp.

Definition at line 136 of file MeshOp.hpp.

const MEntSelection & me_selection ( ) const [inline, virtual]

Return a const reference to the MEntSelection list.

Definition at line 131 of file MeshOp.hpp.

void mesh_types ( std::vector< moab::EntityType > &  mesh_types)

Return what types of mesh entities this algorithm generates; pure virtual so every scheme must define them.

Parameters:
mesh_typesTypes handled by this meshop

Reimplemented in MyScheme, MyScheme, and ProjectShell.

Definition at line 195 of file MeshOp.cpp.

MKCore * mk_core ( ) const [inline]

Get the associated MKCore object; this applies a dynamic_cast to the parent's MKGraph member.

Definition at line 141 of file MeshOp.hpp.

bool remove_modelent ( ModelEnt model_ent) [virtual]

Removes a ModelEnt from this operation's MEntSelection.

Parameters:
model_entModelEnt being removed
Returns:
Returns true if model_ent was in the map and was actually removed, false if model_ent wasn't in the map

Definition at line 181 of file MeshOp.cpp.

void set_debug_verbosity ( int  debug) [inline]

brief set debugging level; usually during / before setup phase, so execute will have it

Definition at line 121 of file MeshOp.hpp.

void setup_boundary ( )

Check that bounding entities have an assigned MeshOp, and create them for ones that don't.

Uses default MeshOp for a given dimension from MeshOpFactory. If there isn't a registered MeshOp for the dimension requested, this function throws an exception with mode MK_MESHOP_NOT_FOUND.

Definition at line 30 of file MeshOp.cpp.


Member Data Documentation

int debugLevel [protected]

Definition at line 126 of file MeshOp.hpp.

MEntSelection that stores what this operation generated or otherwise worked on.

Definition at line 121 of file MeshOp.hpp.


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