Thyra Version of the Day
Loading...
Searching...
No Matches
Thyra_SpmdMultiVectorSerializer_decl.hpp
1// @HEADER
2// *****************************************************************************
3// Thyra: Interfaces and Support for Abstract Numerical Algorithms
4//
5// Copyright 2004 NTESS and the Thyra contributors.
6// SPDX-License-Identifier: BSD-3-Clause
7// *****************************************************************************
8// @HEADER
9
10#ifndef THYRA_SPMD_MULTI_VECTOR_SERIALIZER_DECL_HPP
11#define THYRA_SPMD_MULTI_VECTOR_SERIALIZER_DECL_HPP
12
13#include "Thyra_OperatorVectorTypes.hpp"
14#include "Teuchos_StandardMemberCompositionMacros.hpp"
15
16namespace Thyra {
17
25template<class Scalar>
27public:
28
31
34 const bool binaryMode = false
35 );
36
38 bool isCompatible( const MultiVectorBase<Scalar> &mv ) const;
39
44 void serialize( const MultiVectorBase<Scalar>& mv, std::ostream& out ) const;
45
50 void deserialize( std::istream& in, MultiVectorBase<Scalar>* mv ) const;
51
52}; // end class SpmdMultiVectorSerializer
53
54} // end namespace Thyra
55
56#endif // THYRA_SPMD_MULTI_VECTOR_SERIALIZER_DECL_HPP
Interface for a collection of column vectors called a multi-vector.
Concrete utility class for reading and writing SPMD-based MultiVectorBase objects to and from standar...
bool isCompatible(const MultiVectorBase< Scalar > &mv) const
Determine if the multi-vector is compatible or not.
STANDARD_MEMBER_COMPOSITION_MEMBERS(bool, binaryMode)
Set to true if to use binary IO and to false if using ASCII.
void serialize(const MultiVectorBase< Scalar > &mv, std::ostream &out) const
Write to a stream.
void deserialize(std::istream &in, MultiVectorBase< Scalar > *mv) const
Read from a stream.