00001 // -*- C++ -*- 00002 /*************************************************************************** 00003 * 00004 * The IPPL Framework 00005 * 00006 * 00007 * Visit http://www.acl.lanl.gov/POOMS for more details 00008 * 00009 ***************************************************************************/ 00010 00011 #ifndef DOMAIN_LAYOUT_REPRESENTATION_H 00012 #define DOMAIN_LAYOUT_REPRESENTATION_H 00013 00015 // 00016 // Definition of a DLRepresentation. 00017 // 00018 // Convert from a IPPL FieldLayout to the PAWS data object 00019 // representation. 00020 // 00022 00023 #include "Paws/PawsDomainRepresentation.h" 00024 #include "FieldLayout/FieldLayout.h" 00025 #include "Index/NDIndex.h" 00026 00027 00029 // 00030 // The definition of the class itself. This is templated on the 00031 // type of domain. 00032 // 00034 template<class D, unsigned Dim> 00035 class DLRepresentation : public PawsDomainRepresentation 00036 { 00037 public: 00038 // default constructor: needed by PawsRemoteData and others 00039 DLRepresentation(); 00040 00041 // constructor: the user must provide a FieldLayout; the information 00042 // from this is extracted and used to initialize the PawsDomainRepresentation 00043 // base class. 00044 DLRepresentation(FieldLayout<Dim> &); 00045 00046 // Update the representation to a new layout 00047 void update(FieldLayout<Dim> &); 00048 00049 private: 00050 // make all other constructors, etc. private. 00051 DLRepresentation(const DLRepresentation<D,Dim> &); 00052 DLRepresentation<D,Dim> &operator=(const DLRepresentation<D,Dim> &); 00053 }; 00054 00055 00056 #include "IpplPaws/DLRepresentation.cpp" 00057 00058 #endif // DOMAIN_LAYOUT_REPRESENTATION_H 00059 00060 /*************************************************************************** 00061 * $RCSfile: DLRepresentation.h,v $ $Author: adelmann $ 00062 * $Revision: 1.1.1.1 $ $Date: 2003/01/23 07:40:32 $ 00063 * IPPL_VERSION_ID: $Id: DLRepresentation.h,v 1.1.1.1 2003/01/23 07:40:32 adelmann Exp $ 00064 ***************************************************************************/ 00065