Gromacs  2021.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Typedefs | Enumerations | Functions
checkpointdata.h File Reference
#include <optional>
#include "gromacs/math/vectypes.h"
#include "gromacs/utility/arrayref.h"
#include "gromacs/utility/exceptions.h"
#include "gromacs/utility/keyvaluetreebuilder.h"
#include "gromacs/utility/stringutil.h"
+ Include dependency graph for checkpointdata.h:
+ This graph shows which files directly or indirectly include this file:


Provides the checkpoint data structure for the modular simulator.

Pascal Merz


struct  gmx::IsSerializableType< T >
 Struct allowing to check if data is serializable through the KeyValueTree serializer. More...
struct  gmx::IsSerializableEnum< T, bool >
 Struct allowing to check if enum has a serializable underlying type. More...
class  gmx::CheckpointData< operation >
 } More...
class  gmx::ReadCheckpointDataHolder
 Holder for read checkpoint data. More...
class  gmx::WriteCheckpointDataHolder
 Holder for write checkpoint data. More...


using gmx::ReadCheckpointData = CheckpointData< CheckpointDataOperation::Read >
 Convenience shortcut for reading checkpoint data.
using gmx::WriteCheckpointData = CheckpointData< CheckpointDataOperation::Write >
 Convenience shortcut for writing checkpoint data.


enum  gmx::CheckpointDataOperation { Read, Write, Count }
 The operations on CheckpointData. More...


template<CheckpointDataOperation operation, typename T >
ArrayRef< std::conditional_t
< operation==CheckpointDataOperation::Write||std::is_const
< T >::value, const typename
T::value_type, typename
T::value_type > > 
gmx::makeCheckpointArrayRef (T &container)
 Get an ArrayRef whose const-ness is defined by the checkpointing operation. More...
template<typename VersionEnum >
VersionEnum gmx::checkpointVersion (const ReadCheckpointData *checkpointData, const std::string &key, const VersionEnum programVersion)
 Read a checkpoint version enum variable. More...
template<typename VersionEnum >
VersionEnum gmx::checkpointVersion (WriteCheckpointData *checkpointData, const std::string &key, const VersionEnum programVersion)
 Write the current code checkpoint version enum variable. More...