PHX::DataLayout Class Reference

A pure virtual class to distinguish a unique data layout in a cell. More...

#include <Phalanx_DataLayout.hpp>

Inheritance diagram for PHX::DataLayout:

Inheritance graph
List of all members.

Public Types

typedef unsigned size_type

Public Member Functions

virtual size_type rank () const =0
virtual void dimensions (std::vector< size_type > &dim) const =0
virtual size_type size () const =0
virtual bool operator== (const DataLayout &left) const =0
virtual bool operator!= (const DataLayout &left) const
virtual std::string identifier () const =0
 Unique name identifier that can be used for strict weak ordering in stl std::map keys.
virtual void print (std::ostream &os, int indent=0) const =0

Detailed Description

A pure virtual class to distinguish a unique data layout in a cell.

The DataLayout class is used to (1) specify the array size of a an algebraic type in a single cell, and (2) to differentiate FieldTags that have the same name, but have different DataLayouts in the FieldManager. For example suppose we want to store density at both the nodes and the quadrature points in a cell. If we use the same string name for the FieldTag, the DataLayout will differentiate the objects. We could probably just use an enumerated type here, but the DataLayout class allows users to derive and pass in auxiliary data via the tag.

The documentation for this class was generated from the following file:
Generated on Wed May 12 21:46:23 2010 for Phalanx by  doxygen 1.4.7