Gromacs  2021.3
 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:

Description

Provides the checkpoint data structure for the modular simulator.

Author
Pascal Merz pasca.nosp@m.l.me.nosp@m.rz@me.nosp@m..com

Classes

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...
 

Typedefs

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

Enumerations

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

Functions

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...