IBAMR  IBAMR version 0.19.
Public Member Functions | List of all members
SAMRAI::tbox::Serializable Class Referenceabstract

#include <tbox/Serializable.h>

Inheritance diagram for SAMRAI::tbox::Serializable:
Inheritance graph
[legend]

Public Member Functions

 Serializable ()
 
virtual ~Serializable ()
 
virtual void putToDatabase (Pointer< Database > db)=0
 

Detailed Description

Class Serializable is an abstract base class for those objects that can serialize their data to a database. This class provides one function that must be implemented in a derived subclass, putToDatabase(Pointer<Database> db), which should put its data members into the specified database object.

Note that the derivation from DescribedClass is virtual. The reason for this is to avoid dynamic casting problems for smart pointers.
For some objects in SAMRAI, inheritance from Serializable introduces an additional class hierarchy apart from some other that may be used to implement the subclass object. Pointers to base objects may need to be dynamically cast to derived objects in either hierarchy.

Constructor & Destructor Documentation

◆ Serializable()

SAMRAI::tbox::Serializable::Serializable ( )

The constructor for the serializable base class does nothing interesting.

◆ ~Serializable()

virtual SAMRAI::tbox::Serializable::~Serializable ( )
virtual

The virtual destructor for the serializable base class does nothing interesting.

Member Function Documentation

◆ putToDatabase()

virtual void SAMRAI::tbox::Serializable::putToDatabase ( Pointer< Database db)
pure virtual

This method serializes the object by writing data to the specified database.

NOTE: The asymetry (not having a "getFromDatabase") is from the historical method for doing SAMRAI restart. The constructor for a Serializable class should get the database to restore state from by making a getRootDatabase call to the RestartManager.

Implemented in SAMRAI::mesh::BaseGriddingAlgorithm< DIM >, SAMRAI::algs::HyperbolicLevelIntegrator< DIM >, SAMRAI::algs::HyperbolicLevelIntegrator< NDIM >, SAMRAI::mesh::GriddingAlgorithm< DIM >, SAMRAI::mesh::GriddingAlgorithm< NDIM >, SAMRAI::mesh::MultiblockGriddingAlgorithm< DIM >, SAMRAI::appu::EmbeddedBoundaryGeometry< DIM >, SAMRAI::algs::TimeRefinementIntegrator< DIM >, SAMRAI::algs::MethodOfLinesIntegrator< DIM >, SAMRAI::geom::CartesianGridGeometry< DIM >, SAMRAI::geom::CartesianGridGeometry< NDIM >, SAMRAI::algs::ImplicitIntegrator< DIM >, SAMRAI::geom::SkeletonGridGeometry< DIM >, SAMRAI::geom::BlockGridGeometry< DIM >, SAMRAI::hier::BasePatchHierarchy< DIM >, SAMRAI::hier::BasePatchHierarchy< NDIM >, SAMRAI::hier::MultiblockPatchHierarchy< DIM >, SAMRAI::hier::PatchHierarchy< DIM >, SAMRAI::hier::PatchHierarchy< NDIM >, IBTK::FEDataManager, IBTK::LDataManager, IBAMR::IBFEMethod, IBTK::HierarchyIntegrator, IBAMR::IIMethod, IBAMR::IBStrategy, IBAMR::FEMechanicsBase, IBAMR::IBFESurfaceMethod, IBAMR::IBMethod, IBAMR::IBInterpolantMethod, IBAMR::AdvectorPredictorCorrectorHyperbolicPatchOps, IBAMR::IBLevelSetMethod, IBAMR::IBStrategySet, IBAMR::CIBMethod, IBAMR::AdvectorExplicitPredictorPatchOps, IBAMR::IMPMethod, IBAMR::IBHydrodynamicForceEvaluator, IBTK::LData, IBTK::HierarchyAveragedDataManager, IBAMR::ConstraintIBKinematics, IBAMR::IBFEDirectForcingKinematics, IBAMR::LevelSetUtilities::LevelSetMassLossFixer, IBAMR::GeneralizedIBMethod, IBAMR::IBStandardSourceGen, IBTK::LSiloDataWriter, IBTK::FEData, IBAMR::ConstraintIBMethod, IBAMR::FEMechanicsExplicitIntegrator, IBAMR::PenaltyIBMethod, IBTK::MarkerPatchHierarchy, IBTK::SnapshotCache, IBAMR::LSInitStrategy, IBAMR::CarmanKozenyDragForce, IBAMR::BrinkmanPenalizationStrategy, and SAMRAI::tbox::StatisticRestartDatabase.


The documentation for this class was generated from the following file: