MeshKit  1.0
ParallelMesher Class Reference

#include <ParallelMesher.hpp>

Inheritance diagram for ParallelMesher:

List of all members.

Public Member Functions

 ParallelMesher (MKCore *mkcore, const MEntVector &me_vec)
virtual ~ParallelMesher ()
virtual const moab::EntityType * mesh_types_arr () const
 Return the mesh entity types operated on by this scheme.
virtual void setup_this ()
 Setup is a no-op, but must be provided since it's pure virtual.
virtual void execute_this ()
void set_mesh_size (double size, int interval)
 set mesh size
void print_mesh ()
void print_geom_info (ModelEnt *me, const int dim, const bool local)

Static Public Member Functions

static const char * name ()
 Get class name.
static bool can_mesh (iBase_EntityType dim)
 Function returning whether this scheme can mesh entities of t the specified dimension.
static bool can_mesh (ModelEnt *me)
 Function returning whether this scheme can mesh the specified entity.
static const moab::EntityType * output_types ()
 Get list of mesh entity types that can be generated.

Private Member Functions

MeshOpget_mesher (PARALLEL_OP_TYPE type)
 Construct a MeshOp that can generate input type elements.
void add_parallel_mesh_op (PARALLEL_OP_TYPE type, bool after=false)
 insert mesh operation for parallel meshing
void check_partition (TDParallel *td_par, ModelEnt *me, int dim)

Private Attributes

ParallelComm * m_mpcomm
unsigned int m_rank
iBase_TagHandle m_mPuniqueIDTag
std::vector< MEntSetm_sEntity

Detailed Description

Definition at line 35 of file ParallelMesher.hpp.


Constructor & Destructor Documentation

ParallelMesher ( MKCore mkcore,
const MEntVector me_vec 
)

Definition at line 27 of file ParallelMesher.cpp.

~ParallelMesher ( ) [virtual]

Definition at line 44 of file ParallelMesher.cpp.


Member Function Documentation

void add_parallel_mesh_op ( PARALLEL_OP_TYPE  type,
bool  after = false 
) [private]

insert mesh operation for parallel meshing

Parameters:
typetype of parallel operation
afterif insert after this mesh operation
Returns:
A MeshOp that can generate input type elements

Definition at line 216 of file ParallelMesher.cpp.

static bool can_mesh ( iBase_EntityType  dim) [inline, static]

Function returning whether this scheme can mesh entities of t the specified dimension.

Parameters:
dimentity dimension

Definition at line 51 of file ParallelMesher.hpp.

static bool can_mesh ( ModelEnt me) [inline, static]

Function returning whether this scheme can mesh the specified entity.

Used by MeshOpFactory to find scheme for an entity.

Parameters:
meModelEnt being queried
Returns:
If true, this scheme can mesh the specified ModelEnt

Definition at line 60 of file ParallelMesher.hpp.

void check_partition ( TDParallel *  td_par,
ModelEnt me,
int  dim 
) [private]

Definition at line 150 of file ParallelMesher.cpp.

void execute_this ( ) [virtual]

\ The only setup/execute function we need, since meshing vertices is trivial

Implements GraphNode.

Definition at line 252 of file ParallelMesher.cpp.

MeshOp * get_mesher ( PARALLEL_OP_TYPE  type) [private]

Construct a MeshOp that can generate input type elements.

Parameters:
typetype of parallel operation
Returns:
A MeshOp that can generate input type elements

Definition at line 49 of file ParallelMesher.cpp.

virtual const moab::EntityType* mesh_types_arr ( ) const [inline, virtual]

Return the mesh entity types operated on by this scheme.

Returns:
array terminated with moab::MBMAXTYPE

Implements MeshOp.

Definition at line 71 of file ParallelMesher.hpp.

static const char* name ( ) [inline, static]

Get class name.

Definition at line 44 of file ParallelMesher.hpp.

const moab::EntityType * output_types ( ) [static]

Get list of mesh entity types that can be generated.

Returns:
array terminated with moab::MBMAXTYPE

Definition at line 24 of file ParallelMesher.cpp.

void print_geom_info ( ModelEnt me,
const int  dim,
const bool  local 
)

Definition at line 200 of file ParallelMesher.cpp.

void print_mesh ( )

Definition at line 286 of file ParallelMesher.cpp.

void set_mesh_size ( double  size,
int  interval 
)

set mesh size

Parameters:
sizemesh size
interval# of interval
void setup_this ( ) [virtual]

Setup is a no-op, but must be provided since it's pure virtual.

Implements GraphNode.

Definition at line 83 of file ParallelMesher.cpp.


Member Data Documentation

ParallelComm* m_mpcomm [private]

Definition at line 112 of file ParallelMesher.hpp.

iBase_TagHandle m_mPuniqueIDTag [private]

Definition at line 116 of file ParallelMesher.hpp.

unsigned int m_rank [private]

Definition at line 114 of file ParallelMesher.hpp.

std::vector< MEntSet > m_sEntity [private]

Definition at line 118 of file ParallelMesher.hpp.


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