3 #ifndef DUNE_GEOGRID_BACKUPRESTORE_HH 4 #define DUNE_GEOGRID_BACKUPRESTORE_HH 20 template<
class Gr
id,
bool hasBackupRestoreFacilities = Capabilities::hasBackupRestoreFacilities< Gr
id > ::v >
24 template<
class Gr
id >
35 This &operator= (
const This & );
40 return static_cast< const Grid &
>( *this );
45 return static_cast< Grid &
>( *this );
56 template<
class HostGr
id,
class CoordFunction,
class Allocator >
62 static void backup (
const Grid &grid,
const std::string &path,
const std::string &fileprefix )
65 HostBackupRestoreFacility::backup( grid.
hostGrid(), path, fileprefix );
68 static void backup (
const Grid &grid,
const std::ostream &stream )
71 HostBackupRestoreFacility::backup( grid.
hostGrid(), stream );
74 static Grid *
restore (
const std::string &path,
const std::string &fileprefix )
77 HostGrid *hostGrid = HostBackupRestoreFacility::restore( path, fileprefix );
78 CoordFunction *coordFunction =
new CoordFunction();
79 return new Grid( hostGrid, coordFunction );
82 static Grid *
restore (
const std::istream &stream )
85 HostGrid *hostGrid = HostBackupRestoreFacility::restore( stream );
86 CoordFunction *coordFunction =
new CoordFunction();
87 return new Grid( hostGrid, coordFunction );
93 #endif // #ifndef DUNE_GEOGRID_BACKUPRESTORE_HH Include standard header files.
Definition: agrid.hh:58
BackupRestoreFacility< HostGrid > HostBackupRestoreFacility
Definition: geometrygrid/backuprestore.hh:60
GeometryGrid< HostGrid, CoordFunction, Allocator > Grid
Definition: geometrygrid/backuprestore.hh:59
static void backup(const Grid &grid, const std::ostream &stream)
Definition: geometrygrid/backuprestore.hh:68
Grid & asImp()
Definition: geometrygrid/backuprestore.hh:43
const HostGrid & hostGrid() const
obtain constant reference to the host grid
Definition: geometrygrid/grid.hh:548
Definition: geometrygrid/backuprestore.hh:21
grid wrapper replacing the geometriesGeometryGrid wraps another DUNE grid and replaces its geometry b...
Definition: declaration.hh:10
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:373
Definition: geometrygrid/backuprestore.hh:25
const Grid & asImp() const
Definition: geometrygrid/backuprestore.hh:38
facility for writing and reading grids
Definition: common/backuprestore.hh:40
static Grid * restore(const std::istream &stream)
Definition: geometrygrid/backuprestore.hh:82
static Grid * restore(const std::string &path, const std::string &fileprefix)
Definition: geometrygrid/backuprestore.hh:74
BackupRestoreFacilities()
Definition: geometrygrid/backuprestore.hh:30
static void backup(const Grid &grid, const std::string &path, const std::string &fileprefix)
Definition: geometrygrid/backuprestore.hh:62