SCIRun  5.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
Mesh Class Referenceabstract

#include <Mesh.h>

Inheritance diagram for Mesh:
Datatype MeshTraits< VMesh > Persistent HasId< IdType, IdGenerator > CurveMesh< Basis > HexVolMesh< Basis > ImageMesh< Basis > LatVolMesh< Basis > PointCloudMesh< Basis > PrismVolMesh< Basis > QuadSurfMesh< Basis > ScanlineMesh< Basis > TetVolMesh< Basis > TriSurfMesh< MESH > TriSurfMesh< Basis >

Public Types

enum  {
  UNKNOWN = 0, STRUCTURED = 1 << 1, UNSTRUCTURED = 1 << 2, REGULAR = 1 << 3,
  IRREGULAR = 1 << 4
}
 These will become obsolete at some point. More...
 
enum  {
  NONE_E = 0, NODES_E = 1 << 0, EDGES_E = 1 << 1, FACES_E = 1 << 2,
  CELLS_E = 1 << 3, ELEMS_E = 1 << 4, DELEMS_E = 1 << 5, ENODES_E = 1 << 6,
  ALL_ELEMENTS_E = NODES_E | EDGES_E | FACES_E | CELLS_E | ENODES_E | ELEMS_E | DELEMS_E, NORMALS_E = 1 << 7, NODE_NEIGHBORS_E = 1 << 8, ELEM_NEIGHBORS_E = 1 << 9,
  NEIGHBORS_E = NODE_NEIGHBORS_E | ELEM_NEIGHBORS_E, NODE_LOCATE_E = 1 << 10, ELEM_LOCATE_E = 1 << 11, LOCATE_E = NODE_LOCATE_E | ELEM_LOCATE_E,
  EPSILON_E = 1 << 12, BOUNDING_BOX_E = 1 << 12, FIND_CLOSEST_NODE_E = 1 << 13, FIND_CLOSEST_ELEM_E = 1 << 14,
  FIND_CLOSEST_E = FIND_CLOSEST_NODE_E | FIND_CLOSEST_ELEM_E
}
 Synchronize system. More...
 
- Public Types inherited from Datatype
typedef HasIntegerId::id_type id_type
 
- Public Types inherited from HasId< IdType, IdGenerator >
typedef IdType id_type
 
- Public Types inherited from MeshTraits< VMesh >
typedef SCIRun::mask_type mask_type
 
typedef SCIRun::index_type under_type
 
typedef SCIRun::index_type index_type
 
typedef SCIRun::index_type size_type
 
typedef std::vector< index_typearray_type
 
typedef std::vector< size_typedimension_type
 
typedef boost::shared_ptr
< MeshFacade< VMesh > > 
MeshFacadeHandle
 

Public Member Functions

 Mesh ()
 
 Mesh (const Mesh &copy)
 
virtual ~Mesh ()
 
virtual Meshclone () const =0
 
virtual MeshFacadeHandle getFacade () const =0
 
virtual bool synchronize (mask_type)
 
virtual bool unsynchronize (mask_type)
 
virtual int basis_order ()
 
void io (Piostream &stream)
 Persistent I/O. More...
 
virtual const TypeDescriptionget_type_description () const =0
 
virtual VMeshvmesh ()
 
- Public Member Functions inherited from Datatype
 Datatype ()
 
virtual ~Datatype ()
 
 Datatype (const Datatype &other)
 
Datatypeoperator= (const Datatype &rhs)
 
template<typename T >
const T * as () const
 
- Public Member Functions inherited from Persistent
virtual ~Persistent ()
 
- Public Member Functions inherited from HasId< IdType, IdGenerator >
 HasId ()
 
IdType id () const
 

Static Public Member Functions

static const std::string type_name (int n=-1)
 
- Static Public Member Functions inherited from Persistent
static PersistentTypeIDPtr find_derived (const std::string &classname, const std::string &basename)
 
static bool is_base_of (const std::string &parent, const std::string &type)
 
static void add_class (const std::string &type, const std::string &parent, Persistent *(*maker)(), Persistent *(*bc_maker1)()=0, Persistent *(*bc_maker2)()=0)
 
static void add_mesh_class (const std::string &type, Persistent *(*maker)(), Persistent *(*bc_maker1)()=0, Persistent *(*bc_maker2)()=0)
 
static void add_field_class (const std::string &type, Persistent *(*maker)(), Persistent *(*bc_maker1)()=0, Persistent *(*bc_maker2)()=0)
 

Static Public Attributes

static PersistentTypeID type_id
 

Member Enumeration Documentation

anonymous enum

These will become obsolete at some point.

Enumerator
UNKNOWN 
STRUCTURED 
UNSTRUCTURED 
REGULAR 
IRREGULAR 
anonymous enum

Synchronize system.

Enumerator
NONE_E 
NODES_E 
EDGES_E 
FACES_E 
CELLS_E 
ELEMS_E 
DELEMS_E 
ENODES_E 
ALL_ELEMENTS_E 
NORMALS_E 
NODE_NEIGHBORS_E 
ELEM_NEIGHBORS_E 
NEIGHBORS_E 
NODE_LOCATE_E 
ELEM_LOCATE_E 
LOCATE_E 
EPSILON_E 
BOUNDING_BOX_E 
FIND_CLOSEST_NODE_E 
FIND_CLOSEST_ELEM_E 
FIND_CLOSEST_E 

Constructor & Destructor Documentation

Mesh ( )
Mesh ( const Mesh copy)
~Mesh ( )
virtual

Member Function Documentation

int basis_order ( )
virtual
virtual Mesh* clone ( ) const
pure virtual
virtual const TypeDescription* get_type_description ( ) const
pure virtual
virtual MeshFacadeHandle getFacade ( ) const
pure virtual
void io ( Piostream stream)
virtual
virtual bool synchronize ( mask_type  )
inlinevirtual
const std::string type_name ( int  n = -1)
static
virtual bool unsynchronize ( mask_type  )
inlinevirtual
VMesh * vmesh ( )
virtual

Virtual interface functions: Get the virtual mesh interface, this returns the pointer to an internal object that has all the virtual functions. This object will be destroyed when the mesh is destroyed. The user does not need to destroy the VMesh.

This function should be overloaded with the actual function that retrieves the virtual interface. This function is thread safe, but is not const as it deals with handles which will alter ref counts.

Reimplemented in LatVolMesh< Basis >, ImageMesh< Basis >, HexVolMesh< Basis >, TetVolMesh< Basis >, PrismVolMesh< Basis >, QuadSurfMesh< Basis >, TriSurfMesh< MESH >, TriSurfMesh< Basis >, ScanlineMesh< Basis >, CurveMesh< Basis >, and PointCloudMesh< Basis >.

Member Data Documentation

PersistentTypeID type_id
static

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