SAMRAI::pdat::NodeDataFactory< DIM, TYPE > Class Template Reference

#include <source/patchdata/node/NodeDataFactory.h>

Inheritance diagram for SAMRAI::pdat::NodeDataFactory< DIM, TYPE >:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 NodeDataFactory (int depth, const hier::IntVector< DIM > &ghosts, bool fine_boundary_represents_var)
virtual ~NodeDataFactory ()
virtual tbox::Pointer< hier::PatchDataFactory<
DIM > > 
cloneFactory (const hier::IntVector< DIM > &ghosts)
 Abstract virtual function to clone a patch data factory.
virtual tbox::Pointer< hier::PatchData<
DIM > > 
allocate (const hier::Box< DIM > &box, tbox::Pointer< tbox::Arena > pool=tbox::Pointer< tbox::Arena >((0))) const
virtual tbox::Pointer< hier::PatchData<
DIM > > 
allocate (const hier::Patch< DIM > &patch, tbox::Pointer< tbox::Arena > pool=tbox::Pointer< tbox::Arena >((0))) const
virtual tbox::Pointer< hier::BoxGeometry<
DIM > > 
getBoxGeometry (const hier::Box< DIM > &box) const
int getDefaultDepth () const
void setDefaultDepth (const int depth)
virtual size_t getSizeOfMemory (const hier::Box< DIM > &box) const
bool fineBoundaryRepresentsVariable () const
bool dataLivesOnPatchBorder () const
bool validCopyTo (const tbox::Pointer< hier::PatchDataFactory< DIM > > &dst_pdf) const
hier::MultiblockDataTranslator<
DIM > * 
getMultiblockDataTranslator ()

Detailed Description

template<int DIM, class TYPE>
class SAMRAI::pdat::NodeDataFactory< DIM, TYPE >

Class NodeDataFactory is a factory class used to allocate new instances of NodeData objects. It is a subclass of the patch data factory class and node data is a subclass of patch data. Both the factory and data classes are templated on the type of the contained object (e.g., double or int).

See also:
pdat::NodeData

pdat::PatchDataFactory


Constructor & Destructor Documentation

template<int DIM, class TYPE>
SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::NodeDataFactory ( int  depth,
const hier::IntVector< DIM > &  ghosts,
bool  fine_boundary_represents_var 
)

The constructor for the node data factory class. The ghost cell width, depth (number of components), and fine boundary representation arguments give the defaults for all edge data objects created with this factory. See the NodeVariable<DIM> class header file for more information.

template<int DIM, class TYPE>
SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::~NodeDataFactory (  )  [virtual]

Virtual destructor for the node data factory class.


Member Function Documentation

template<int DIM, class TYPE>
tbox::Pointer< hier::PatchDataFactory< DIM > > SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::cloneFactory ( const hier::IntVector< DIM > &  ghosts  )  [virtual]

Abstract virtual function to clone a patch data factory.

This will return a new instantiation of the abstract factory with the same properties. The properties of the cloned factory can then be changed without modifying the original.

Parameters:
ghosts default ghost cell width for concrete classes created from the factory.

Implements SAMRAI::hier::PatchDataFactory< DIM >.

template<int DIM, class TYPE>
tbox::Pointer< hier::PatchData< DIM > > SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::allocate ( const hier::Box< DIM > &  box,
tbox::Pointer< tbox::Arena pool = tbox::Pointertbox::Arena >((0)) 
) const [virtual]

Virtual factory function to allocate a concrete node data object. The default information about the object (e.g., ghost cell width) is taken from the factory. If no memory pool is provided, then the allocation routine assumes some default memory pool.

Implements SAMRAI::hier::PatchDataFactory< DIM >.

template<int DIM, class TYPE>
tbox::Pointer< hier::PatchData< DIM > > SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::allocate ( const hier::Patch< DIM > &  patch,
tbox::Pointer< tbox::Arena pool = tbox::Pointertbox::Arena >((0)) 
) const [virtual]

Virtual factory function to allocate a concrete cell data object. Same as above function, except passes in a patch instead of a box.

Implements SAMRAI::hier::PatchDataFactory< DIM >.

template<int DIM, class TYPE>
tbox::Pointer< hier::BoxGeometry< DIM > > SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::getBoxGeometry ( const hier::Box< DIM > &  box  )  const [virtual]

Allocate the box geometry object associated with the patch data. This information will be used in the computation of intersections and data dependencies between objects.

Implements SAMRAI::hier::PatchDataFactory< DIM >.

template<int DIM, class TYPE>
int SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::getDefaultDepth (  )  const [inline]

Get the default depth (number of components). This is the default depth that will be used in the instantiation of node data objects.

template<int DIM, class TYPE>
void SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::setDefaultDepth ( const int  depth  )  [inline]

Set the default depth (number of components). This is the default depth that will be used in the instantiation of node data objects.

template<int DIM, class TYPE>
size_t SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::getSizeOfMemory ( const hier::Box< DIM > &  box  )  const [virtual]

Calculate the amount of memory needed to store the node data object, including object data and dynamically allocated data.

Implements SAMRAI::hier::PatchDataFactory< DIM >.

template<int DIM, class TYPE>
bool SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::fineBoundaryRepresentsVariable (  )  const [inline, virtual]

Return a boolean value indicating how data for the node quantity will be treated on coarse-fine interfaces. This value is passed into the constructor. See the NodeVariable<DIM> class header file for more information.

Implements SAMRAI::hier::PatchDataFactory< DIM >.

template<int DIM, class TYPE>
bool SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::dataLivesOnPatchBorder (  )  const [inline, virtual]

Return true since the node data index space extends beyond the interior of patches. That is, node data lives on patch borders.

Implements SAMRAI::hier::PatchDataFactory< DIM >.

template<int DIM, class TYPE>
bool SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::validCopyTo ( const tbox::Pointer< hier::PatchDataFactory< DIM > > &  dst_pdf  )  const [virtual]

Return whether it is valid to copy this NodeDataFactory to the supplied destination patch data factory. It will return true if dst_pdf is NodeDataFactory or OuternodeDataFactory, false otherwise.

Implements SAMRAI::hier::PatchDataFactory< DIM >.

template<int DIM, class TYPE>
hier::MultiblockDataTranslator< DIM > * SAMRAI::pdat::NodeDataFactory< DIM, TYPE >::getMultiblockDataTranslator (  )  [inline, virtual]

Return pointer to a multiblock data translator

Reimplemented from SAMRAI::hier::PatchDataFactory< DIM >.


The documentation for this class was generated from the following files:
Generated on Thu Jun 18 11:28:47 2009 for SAMRAI by  doxygen 1.5.1