3 #ifndef DUNE_GEOGRID_BACKUPRESTORE_HH 4 #define DUNE_GEOGRID_BACKUPRESTORE_HH 21 template<
class Gr
id,
bool hasBackupRestoreFacilities = Capabilities::hasBackupRestoreFacilities< Gr
id > ::v >
25 template<
class Gr
id >
36 This &operator= (
const This & );
39 template< GrapeIOFileFormatType type >
40 bool writeGrid (
const std::string &filename,
double time )
const 42 return asImp().hostGrid().template writeGrid< type >( filename, time );
45 template< GrapeIOFileFormatType type >
46 bool readGrid (
const std::string &filename,
double &time )
49 = asImp().hostGrid().template readGrid< type >( filename, time );
57 return static_cast< const Grid &
>( *this );
62 return static_cast< Grid &
>( *this );
73 template<
class HostGr
id,
class CoordFunction,
class Allocator >
79 static void backup (
const Grid &grid,
const std::string &path,
const std::string &fileprefix )
82 HostBackupRestoreFacility::backup( grid.
hostGrid(), path, fileprefix );
85 static void backup (
const Grid &grid,
const std::ostream &stream )
88 HostBackupRestoreFacility::backup( grid.
hostGrid(), stream );
91 static Grid *
restore (
const std::string &path,
const std::string &fileprefix )
94 HostGrid *hostGrid = HostBackupRestoreFacility::restore( path, fileprefix );
95 CoordFunction *coordFunction =
new CoordFunction();
96 return new Grid( hostGrid, coordFunction );
99 static Grid *
restore (
const std::istream &stream )
102 HostGrid *hostGrid = HostBackupRestoreFacility::restore( stream );
103 CoordFunction *coordFunction =
new CoordFunction();
104 return new Grid( hostGrid, coordFunction );
110 #endif // #ifndef DUNE_GEOGRID_BACKUPRESTORE_HH BackupRestoreFacilities()
Definition: geometrygrid/backuprestore.hh:31
GeometryGrid< HostGrid, CoordFunction, Allocator > Grid
Definition: geometrygrid/backuprestore.hh:76
const HostGrid & hostGrid() const
Definition: geometrygrid/grid.hh:629
const Grid & asImp() const
Definition: geometrygrid/backuprestore.hh:55
Definition: geometrygrid/backuprestore.hh:26
bool writeGrid(const std::string &filename, double time) const
Definition: geometrygrid/backuprestore.hh:40
BackupRestoreFacility< HostGrid > HostBackupRestoreFacility
Definition: geometrygrid/backuprestore.hh:77
Definition: geometrygrid/backuprestore.hh:22
grid wrapper replacing the geometriesGeometryGrid wraps another DUNE grid and replaces its geometry b...
Definition: geometrygrid/declaration.hh:10
static Grid * restore(const std::string &path, const std::string &fileprefix)
Definition: geometrygrid/backuprestore.hh:91
static void backup(const Grid &grid, const std::string &path, const std::string &fileprefix)
Definition: geometrygrid/backuprestore.hh:79
Grid abstract base classThis class is the base class for all grid implementations. Although no virtual functions are used we call it abstract since its methods do not contain an implementation but forward to the methods of the derived class via the Barton-Nackman trick.
Definition: common/grid.hh:388
Include standard header files.
Definition: agrid.hh:59
bool readGrid(const std::string &filename, double &time)
Definition: geometrygrid/backuprestore.hh:46
static Grid * restore(const std::istream &stream)
Definition: geometrygrid/backuprestore.hh:99
facility for writing and reading grids
Definition: common/backuprestore.hh:40
Grid & asImp()
Definition: geometrygrid/backuprestore.hh:60
static void backup(const Grid &grid, const std::ostream &stream)
Definition: geometrygrid/backuprestore.hh:85