S3FC project page | S3FC home page |
#include <s3_streamable.h>
Inheritance diagram for s3_streamable:
Public Methods | |
virtual const char * | get_magic_string () const=0 |
Return the magic string. More... | |
virtual void | pack (s3_pack_buffer &v) const=0 |
Pack this instance into the supplied vector. More... | |
virtual void | unpack (const s3_pack_buffer &v)=0 |
Initialise this instance from the packed data in the supplied vector. More... | |
Static Public Methods | |
template<typename T> void | pack (T const &t, s3_pack_buffer &b) |
Pack the supplied POD type into the supplied s3_pack_buffer . More... | |
template<typename T> void | unpack (T const &t, const s3_pack_buffer &b) |
Unpack the supplied POD type from the supplied s3_pack_buffer into the supplied argument. More... | |
template<typename T> void | pack_array (T *const &t, s3_pack_buffer &b, size_t n) |
Pack an array of the supplied POD type into the supplied s3_pack_buffer . More... | |
template<typename T> void | unpack_array (T *const &t, const s3_pack_buffer &b, bool inplace) |
Unpack an array of the supplied POD type from the supplied s3_pack_buffer . More... | |
template<typename T> void | pack_array (const T *const &t, s3_pack_buffer &b, size_t n) |
const T version of pack_array. More... | |
template<typename T> void | unpack_array (const T *const &t, const s3_pack_buffer &b, bool inplace) |
const T version of unpack_array. More... | |
Static Private Methods | |
template<typename T> void | pack (const T *t, s3_pack_buffer &b, size_t n) |
template<typename T> void | unpack (const T *&t, const s3_pack_buffer &b) |
template<typename T> void | unpack (T *&t, const s3_pack_buffer &b) |
template<typename T> void | unpack (T *const &t, const s3_pack_buffer &b) |
template<typename T> void | unpack (const T *const &t, const s3_pack_buffer &b) |
|
Return the magic string.
|
|
|
|
Pack the supplied POD type into the supplied
Definition at line 163 of file s3_streamable.tcc. References s3_streamable_dispatcher::pack. |
|
Pack this instance into the supplied vector. The vector is resized if it is unable to contain the packed data. Implemented in s3_message. Referenced by s3_txport_tcp_tx_task::main_loop, s3_streamable_helper_stl::pack, s3_message::pack, and s3_streamable_helper_other< std::string >::pack. |
|
Definition at line 193 of file s3_streamable.tcc. References s3_streamable_dispatcher::pack_array. |
|
Pack an array of the supplied POD type into the supplied
Definition at line 177 of file s3_streamable.tcc. References s3_streamable_dispatcher::pack_array. |
|
|
|
|
|
|
|
|
|
Unpack the supplied POD type from the supplied
Definition at line 170 of file s3_streamable.tcc. References s3_streamable_dispatcher::unpack. |
|
Initialise this instance from the packed data in the supplied vector.
Implemented in s3_message. Referenced by s3_txport_tcp_rx_task::main_loop, s3_streamable_helper_other< std::string >::unpack, s3_streamable_helper_stl::unpack, and s3_message::unpack. |
|
Definition at line 200 of file s3_streamable.tcc. References s3_streamable_dispatcher::unpack_array. |
|
Unpack an array of the supplied POD type from the supplied
This call either operates inplace, on an existing (allocated) buffer, or allocates the required storage, using In the case of inplace operation , caller should ensure that the supplied pointer points to a buffer of sufficient size to contain the unpacked data. The pointer argument remains untouched. During non-inplace operation, the supplied pointer is set to point to the newly allocated block of memory and the value that the pointer held upon entry is discarded.
Definition at line 184 of file s3_streamable.tcc. References s3_streamable_dispatcher::unpack_array. |
Send comments to: s3fc@stonethree.com |
|