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
static Grid * restore(const std::istream &stream)
Definition: geometrygrid/backuprestore.hh:99
static void backup(const Grid &grid, const std::string &path, const std::string &fileprefix)
Definition: geometrygrid/backuprestore.hh:79
static void backup(const Grid &grid, const std::ostream &stream)
Definition: geometrygrid/backuprestore.hh:85
bool readGrid(const std::string &filename, double &time)
Definition: geometrygrid/backuprestore.hh:46
Include standard header files.
Definition: agrid.hh:59
static Grid * restore(const std::string &path, const std::string &fileprefix)
Definition: geometrygrid/backuprestore.hh:91
facility for writing and reading grids
Definition: common/backuprestore.hh:40
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
GeometryGrid< HostGrid, CoordFunction, Allocator > Grid
Definition: geometrygrid/backuprestore.hh:76
const Grid & asImp() const
Definition: geometrygrid/backuprestore.hh:55
Definition: geometrygrid/backuprestore.hh:26
BackupRestoreFacilities()
Definition: geometrygrid/backuprestore.hh:31
BackupRestoreFacility< HostGrid > HostBackupRestoreFacility
Definition: geometrygrid/backuprestore.hh:77
Grid & asImp()
Definition: geometrygrid/backuprestore.hh:60
bool writeGrid(const std::string &filename, double time) const
Definition: geometrygrid/backuprestore.hh:40
Definition: geometrygrid/backuprestore.hh:22
const HostGrid & hostGrid() const
Definition: geometrygrid/grid.hh:629
grid wrapper replacing the geometriesGeometryGrid wraps another DUNE grid and replaces its geometry b...
Definition: geometrygrid/declaration.hh:10