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 | Protected Attributes | List of all members
GenericField< Mesh, Basis, FData > Class Template Reference

#include <GenericField.h>

Inheritance diagram for GenericField< Mesh, Basis, FData >:
Field Datatype HasPropertyManager Persistent HasId< IdType, IdGenerator >

Public Types

typedef GenericField< Mesh,
Basis, FData > 
field_type
 Typedefs to support the Field concept. More...
 
typedef FData::value_type value_type
 
typedef Mesh mesh_type
 
typedef boost::shared_ptr
< mesh_type
mesh_handle_type
 
typedef Basis basis_type
 
typedef FData fdata_type
 
typedef boost::shared_ptr
< GenericField< Mesh, Basis,
FData > > 
handle_type
 
typedef SCIRun::index_type index_type
 
typedef SCIRun::size_type size_type
 
- Public Types inherited from Field
enum  td_info_e {
  FULL_TD_E, FIELD_NAME_ONLY_E, MESH_TD_E, BASIS_TD_E,
  FDATA_TD_E
}
 Type Description to retrieve information on the actual type of the field. More...
 
- Public Types inherited from Datatype
typedef HasIntegerId::id_type id_type
 
- Public Types inherited from HasId< IdType, IdGenerator >
typedef IdType id_type
 

Public Member Functions

 GenericField ()
 only Pio should use this constructor More...
 
 GenericField (mesh_handle_type mesh)
 Use this constructor to actually have a field with a mesh. More...
 
 GenericField (const GenericField &copy)
 
virtual ~GenericField ()
 
virtual GenericField< Mesh,
Basis, FData > * 
clone () const
 
virtual GenericField< Mesh,
Basis, FData > * 
deep_clone () const
 Clone everything, field data and mesh. More...
 
virtual MeshHandle mesh () const
 Obtain a Handle to the Mesh. More...
 
virtual VMeshvmesh () const
 
virtual VFieldvfield () const
 
virtual int basis_order () const
 
Basis & get_basis ()
 
virtual void io (Piostream &stream)
 Get the mesh describing how the elements fit together. More...
 
virtual std::string dynamic_type_name () const
 
virtual const TypeDescriptionget_type_description (td_info_e td=FULL_TD_E) const
 
- Public Member Functions inherited from Field
 Field ()
 
 Field (const Field &copy)
 
virtual ~Field ()
 
virtual std::string type_name () const
 
- 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
 
- Public Member Functions inherited from HasPropertyManager
PropertyManagerproperties ()
 
const PropertyManagerproperties () const
 

Static Public Member Functions

static const std::string type_name (int n=-1)
 Function to retrieve the name of this field class. More...
 
static Persistentmaker ()
 Static functions to instantiate the field from Pio or using CreateField() More...
 
static FieldHandle field_maker ()
 
static FieldHandle field_maker_mesh (MeshHandle mesh)
 
- 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
 Tag the constructor of this class and put it in the Pio DataBase. More...
 
static FieldTypeID field_id
 Tag the constructor of this class and put it in the Field DataBase. More...
 
- Static Public Attributes inherited from Field
static PersistentTypeID type_id
 Persistent I/O. More...
 

Protected Attributes

mesh_handle_type mesh_
 A (generic) mesh. More...
 
fdata_type fdata_
 Data container. More...
 
Basis basis_
 
VFieldvfield_
 
int basis_order_
 
int mesh_dimensionality_
 

Member Typedef Documentation

typedef Basis basis_type
typedef FData fdata_type
typedef GenericField<Mesh, Basis, FData> field_type

Typedefs to support the Field concept.

typedef boost::shared_ptr<GenericField<Mesh, Basis, FData> > handle_type
typedef boost::shared_ptr<mesh_type> mesh_handle_type
typedef Mesh mesh_type
typedef FData::value_type value_type

Constructor & Destructor Documentation

only Pio should use this constructor

Use this constructor to actually have a field with a mesh.

GenericField ( const GenericField< Mesh, Basis, FData > &  copy)
~GenericField ( )
virtual

Member Function Documentation

virtual int basis_order ( ) const
inlinevirtual

Get the order of the field data -1 = no data 0 = constant data per element 1 = linear data per element >1 = non linear data per element

Implements Field.

GenericField< Mesh, Basis, FData > * clone ( ) const
virtual

Clone the field data, but not the mesh. Use mesh_detach() first to clone the complete field

Implements Field.

GenericField< Mesh, Basis, FData > * deep_clone ( ) const
virtual

Clone everything, field data and mesh.

Implements Field.

virtual std::string dynamic_type_name ( ) const
inlinevirtual
FieldHandle field_maker ( )
static
FieldHandle field_maker_mesh ( MeshHandle  mesh)
static
Basis& get_basis ( )
inline

Get the classes on which this function relies: Get the basis describing interpolation within an element

const TypeDescription * get_type_description ( td_info_e  td = FULL_TD_E) const
virtual

A different way of tagging a class. Currently two systems are used next to each other: type_name and get_type_description. Neither is perfect

Implements Field.

void io ( Piostream stream)
virtual

Get the mesh describing how the elements fit together.

Persistent I/O.

Reimplemented from Field.

Persistent * maker ( )
static

Static functions to instantiate the field from Pio or using CreateField()

MeshHandle mesh ( ) const
virtual

Obtain a Handle to the Mesh.

Implements Field.

const std::string type_name ( int  n = -1)
static

Function to retrieve the name of this field class.

VField * vfield ( ) const
virtual

Implements Field.

VMesh * vmesh ( ) const
virtual

Implements Field.

Member Data Documentation

Basis basis_
protected
int basis_order_
protected
fdata_type fdata_
protected

Data container.

FieldTypeID field_id
static

Tag the constructor of this class and put it in the Field DataBase.

mesh_handle_type mesh_
protected

A (generic) mesh.

int mesh_dimensionality_
protected
PersistentTypeID type_id
static

Tag the constructor of this class and put it in the Pio DataBase.

VField* vfield_
protected

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