KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
Public Member Functions | List of all members
Kratos::MpiSerializer Class Reference

#include <mpi_serializer.h>

Inheritance diagram for Kratos::MpiSerializer:
Collaboration diagram for Kratos::MpiSerializer:

Public Member Functions

 KRATOS_CLASS_POINTER_DEFINITION (MpiSerializer)
 
 MpiSerializer (TraceType const &rTrace=SERIALIZER_NO_TRACE)
 
 MpiSerializer (const std::string &data, TraceType const &rTrace=SERIALIZER_NO_TRACE)
 
virtual ~MpiSerializer ()
 
- Public Member Functions inherited from Kratos::StreamSerializer
 KRATOS_CLASS_POINTER_DEFINITION (StreamSerializer)
 
 StreamSerializer (TraceType const &rTrace=SERIALIZER_NO_TRACE)
 
 StreamSerializer (const std::string &data, TraceType const &rTrace=SERIALIZER_NO_TRACE)
 
std::string GetStringRepresentation ()
 
virtual ~StreamSerializer ()
 
- Public Member Functions inherited from Kratos::Serializer
 Serializer (BufferType *pBuffer, TraceType const &rTrace=SERIALIZER_NO_TRACE)
 Default constructor. More...
 
virtual ~Serializer ()
 Destructor. More...
 
void SetLoadState ()
 
bool Is (Flags const &rOtherFlag) const
 
virtual std::string Info () const
 Turn back information as a string. More...
 
virtual void PrintInfo (std::ostream &rOStream) const
 Print information about this object. More...
 
virtual void PrintData (std::ostream &rOStream) const
 Print object's data. More...
 
 KRATOS_CLASS_POINTER_DEFINITION (Serializer)
 Pointer definition of Serializer. More...
 
 KRATOS_DEFINE_LOCAL_FLAG (MPI)
 
 KRATOS_DEFINE_LOCAL_FLAG (SHALLOW_GLOBAL_POINTERS_SERIALIZATION)
 
TraceType GetTraceType () const
 
void SetBuffer (BufferType *pBuffer)
 
template<class TDataType >
void load (std::string const &rTag, TDataType &rObject)
 
template<class TDataType >
void load (std::string const &rTag, Kratos::shared_ptr< TDataType > &pValue)
 
template<class TDataType >
void load (std::string const &rTag, Kratos::intrusive_ptr< TDataType > &pValue)
 
template<class TDataType >
void load (std::string const &rTag, Kratos::unique_ptr< TDataType > &pValue)
 
template<class TDataType >
void load (std::string const &rTag, TDataType *&pValue)
 
void load (std::string const &rTag, ModelPart *&pValue)
 
void load (std::string const &rTag, Kratos::unique_ptr< ModelPart > &pValue)
 
void load (std::string const &rTag, Kratos::shared_ptr< ModelPart > &pValue)
 
template<class TDataType >
void load (std::string const &rTag, Kratos::weak_ptr< TDataType > &pValue)
 
template<class TDataType >
void load (std::string const &rTag, WeakPointerVector< TDataType > &pValue)
 
template<class TDataType >
void load (std::string const &rTag, const Variable< TDataType > *)
 
template<class TDataType , std::size_t TDataSize>
void load (std::string const &rTag, std::array< TDataType, TDataSize > &rObject)
 
template<class TDataType >
void load (std::string const &rTag, std::vector< TDataType > &rObject)
 
template<class TDataType >
void load (std::string const &rTag, DenseVector< TDataType > &rObject)
 
template<class TKeyType , class TDataType >
void load (std::string const &rTag, std::map< TKeyType, TDataType > &rObject)
 
template<class TKeyType , class TDataType >
void load (std::string const &rTag, std::unordered_map< TKeyType, TDataType > &rObject)
 
template<class TDataType >
void load (std::string const &rTag, std::set< TDataType > &rObject)
 
template<class TDataType >
void load (std::string const &rTag, std::unordered_set< TDataType > &rObject)
 
template<class TDataType , std::size_t TDimension>
void load (std::string const &rTag, array_1d< TDataType, TDimension > &rObject)
 
template<class TFirstType , class TSecondType >
void load (std::string const &rTag, std::pair< TFirstType, TSecondType > &rObject)
 
template<class TDataType , std::size_t TDimension>
void load (std::string const &rTag, BoundedVector< TDataType, TDimension > &rObject)
 
template<class TDataType , std::size_t TDimension1, std::size_t TDimension2>
void load (std::string const &rTag, BoundedMatrix< TDataType, TDimension1, TDimension2 > &rObject)
 
template<class TDataType , std::size_t TDataSize>
void save (std::string const &rTag, std::array< TDataType, TDataSize > const &rObject)
 
template<class TDataType >
void save (std::string const &rTag, std::vector< TDataType > const &rObject)
 
template<class TDataType >
void save (std::string const &rTag, DenseVector< TDataType > const &rObject)
 
template<class TDataType , std::size_t TDimension>
void save (std::string const &rTag, array_1d< TDataType, TDimension > const &rObject)
 
template<class TKeyType , class TDataType >
void save (std::string const &rTag, std::map< TKeyType, TDataType > const &rObject)
 
template<class TKeyType , class TDataType >
void save (std::string const &rTag, std::unordered_map< TKeyType, TDataType > const &rObject)
 
template<class TDataType >
void save (std::string const &rTag, std::set< TDataType > const &rObject)
 
template<class TDataType >
void save (std::string const &rTag, std::unordered_set< TDataType > const &rObject)
 
template<class TDataType >
void save (std::string const &rTag, TDataType const &rObject)
 
template<class TDataType >
void save (std::string const &rTag, const Variable< TDataType > *pVariable)
 
template<class TDataType >
void save (std::string const &rTag, Kratos::shared_ptr< TDataType > pValue)
 
template<class TDataType >
void save (std::string const &rTag, Kratos::intrusive_ptr< TDataType > pValue)
 
template<class TDataType >
void save (std::string const &rTag, Kratos::unique_ptr< TDataType > const &pValue)
 
template<class TDataType >
void save (std::string const &rTag, const TDataType *pValue)
 
template<class TDataType >
bool IsDerived (TDataType *pValue)
 
template<class TDataType >
void save (std::string const &rTag, TDataType *pValue)
 
template<class TDataType >
void save (std::string const &rTag, Kratos::weak_ptr< TDataType > pValue)
 
template<class TDataType >
void save (std::string const &rTag, Kratos::WeakPointerVector< TDataType > pValue)
 
template<class TDataType >
void save (std::string const &rTag, Kratos::shared_ptr< const TDataType > pValue)
 
void save (std::string const &rTag, const char *pValue)
 
template<class TFirstType , class TSecondType >
void save (std::string const &rTag, std::pair< TFirstType, TSecondType > rObject)
 
template<class TDataType , std::size_t TDimension>
void save (std::string const &rTag, BoundedVector< TDataType, TDimension > const &rObject)
 
template<class TDataType , std::size_t TDimension1, std::size_t TDimension2>
void save (std::string const &rTag, BoundedMatrix< TDataType, TDimension1, TDimension2 > const &rObject)
 
template<class TDataType >
void load_base (std::string const &rTag, TDataType &rObject)
 
template<class TDataType >
void load_base (std::string const &rTag, std::vector< TDataType > &rObject)
 
template<class TDataType >
void load_base (std::string const &rTag, DenseVector< TDataType > &rObject)
 
template<class TDataType , std::size_t TDimension>
void load_base (std::string const &rTag, array_1d< TDataType, TDimension > &rObject)
 
template<class TDataType >
void save_base (std::string const &rTag, std::vector< TDataType > const &rObject)
 
template<class TDataType >
void save_base (std::string const &rTag, DenseVector< TDataType > const &rObject)
 
template<class TDataType , std::size_t TDimension>
void save_base (std::string const &rTag, array_1d< TDataType, TDimension > const &rObject)
 
template<class TDataType >
void save_base (std::string const &rTag, TDataType const &rObject)
 
void save_trace_point (std::string const &rTag)
 
bool load_trace_point (std::string const &rTag)
 
BufferTypepGetBuffer ()
 
template<class TDataType >
void AddToSavedPointers (const TDataType &pValue)
 
void RedirectLoadingPointer (void *pStoredPointer, void *pAllocatedPosition)
 
void Set (const Flags ThisFlag)
 

Additional Inherited Members

- Public Types inherited from Kratos::Serializer
enum  PointerType { SP_INVALID_POINTER , SP_BASE_CLASS_POINTER , SP_DERIVED_CLASS_POINTER }
 
enum  TraceType { SERIALIZER_NO_TRACE =0 , SERIALIZER_TRACE_ERROR =1 , SERIALIZER_TRACE_ALL =2 }
 
typedef std::size_t SizeType
 
typedef void *(* ObjectFactoryType) ()
 
typedef std::map< void *, void * > LoadedPointersContainerType
 
typedef std::map< std::string, ObjectFactoryTypeRegisteredObjectsContainerType
 
typedef std::map< std::string, std::string > RegisteredObjectsNameContainerType
 
typedef std::set< const void * > SavedPointersContainerType
 
typedef std::iostream BufferType
 
- Static Public Member Functions inherited from Kratos::Serializer
template<class TDataType >
static void * Create ()
 
template<class TDataType >
static void Register (std::string const &rName, TDataType const &pPrototype)
 
static RegisteredObjectsContainerTypeGetRegisteredObjects ()
 
static RegisteredObjectsNameContainerTypeGetRegisteredObjectsName ()
 

Constructor & Destructor Documentation

◆ MpiSerializer() [1/2]

Kratos::MpiSerializer::MpiSerializer ( TraceType const &  rTrace = SERIALIZER_NO_TRACE)
inlineexplicit

this constructor simply wraps the standard Serializer and defines output to basic_iostream

Parameters
rTracetype of serialization to be employed

◆ MpiSerializer() [2/2]

Kratos::MpiSerializer::MpiSerializer ( const std::string &  data,
TraceType const &  rTrace = SERIALIZER_NO_TRACE 
)
inline
Parameters
dataa string contained the data to be used in filling the buffer
rTracetype of serialization to be employed

◆ ~MpiSerializer()

virtual Kratos::MpiSerializer::~MpiSerializer ( )
inlinevirtual

Member Function Documentation

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::MpiSerializer::KRATOS_CLASS_POINTER_DEFINITION ( MpiSerializer  )

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