Strategy interface for the indirect serializing and deserializing objects of a given type handled using reference semantics.
More...
#include <Teuchos_Serializer.hpp>
|
virtual | ~Serializer () |
|
virtual Ordinal | getBufferSize (const Ordinal count) const =0 |
| Return an estimate for the maximum storage for count objects to be serialized. More...
|
|
virtual void | serialize (const Ordinal count, const T *const objs[], const Ordinal bytes, char charBuffer[]) const =0 |
| Serialize an object to a char[] buffer. More...
|
|
virtual RCP< T > | createObj () const =0 |
| Create an object of type T to be serialized into. More...
|
|
virtual void | deserialize (const Ordinal bytes, const char charBuffer[], const Ordinal count, T *const objs[]) const =0 |
| Deserialize an object from a char[] buffer. More...
|
|
template<typename Ordinal, typename T>
class Teuchos::Serializer< Ordinal, T >
Strategy interface for the indirect serializing and deserializing objects of a given type handled using reference semantics.
This interface serializes and deserializes objects of type T
to and from independent char[]
buffer arrays. Direct serialization (i.e. just using reinterpret casts) is not possible using this interface.
Definition at line 57 of file Teuchos_Serializer.hpp.
template<typename Ordinal, typename T>
template<typename Ordinal, typename T>
Return an estimate for the maximum storage for count
objects to be serialized.
template<typename Ordinal, typename T>
virtual void Teuchos::Serializer< Ordinal, T >::serialize |
( |
const Ordinal |
count, |
|
|
const T *const |
objs[], |
|
|
const Ordinal |
bytes, |
|
|
char |
charBuffer[] |
|
) |
| const |
|
pure virtual |
Serialize an object to a char[]
buffer.
- Parameters
-
count | [in] Number of objects to be serialized. |
objs | [in] Array (length count ) for the objects to be serialized. |
bytes | [in] Length of the buffer charBuffer[] |
charBuffer | [out] Array (length bytes ) that contains the serialized objects. |
Preconditions:
-
count > 0
-
objs != NULL
-
charBuffer != NULL
bytes == getBufferSize(count)
template<typename Ordinal, typename T>
Create an object of type T
to be serialized into.
template<typename Ordinal, typename T>
virtual void Teuchos::Serializer< Ordinal, T >::deserialize |
( |
const Ordinal |
bytes, |
|
|
const char |
charBuffer[], |
|
|
const Ordinal |
count, |
|
|
T *const |
objs[] |
|
) |
| const |
|
pure virtual |
Deserialize an object from a char[]
buffer.
- Parameters
-
bytes | [in] Length of the buffer charBuffer[] |
charBuffer | [in] Array (length bytes ) that contains the serialized objects. |
count | [in] Number of objects to be deserialized. |
objs | [out] Array (length count ) for the deserialized objects. |
Preconditions:
-
bytes > 0
-
objs != NULL
-
charBuffer != NULL
bytes == getBufferSize(count)
The documentation for this class was generated from the following file: