Thyra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
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 
16 namespace Thyra {
17 
25 template<class Scalar>
27 public:
28 
30  STANDARD_MEMBER_COMPOSITION_MEMBERS( bool, binaryMode );
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
void deserialize(std::istream &in, MultiVectorBase< Scalar > *mv) const
Read from a stream.
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.
Interface for a collection of column vectors called a multi-vector.
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.