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 25 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: