#include <Blob.h>
Inheritance diagram for qpid::framing::Blob< Size, BaseType >:
Public Member Functions | |
Blob () | |
Construct an empty blob. | |
Blob (const Blob &b) | |
Copy a blob. | |
template<class InPlace> | |
Blob (const InPlace &expr, typename EnableInPlace< InPlace >::type *=0) | |
Construct from in_place constructor. | |
template<class T> | |
Blob (const T &t, typename DisableInPlace< T >::type *=0) | |
Construct by copying an objecct constructor. | |
Blob & | operator= (const Blob &b) |
Assign from another blob. | |
template<class InPlace> | |
EnableInPlace< InPlace, Blob & >::type | operator= (const InPlace &expr) |
Assign from an in_place constructor expression. | |
template<class T> | |
DisableInPlace< T, Blob & >::type | operator= (const T &x) |
Assign from an object of type T. | |
BaseType * | get () |
Get pointer to blob contents, returns 0 if empty. | |
const BaseType * | get () const |
Get pointer to blob contents, returns 0 if empty. | |
void | clear () |
Destroy the object in the blob making it empty. | |
bool | empty () const |
Static Public Member Functions | |
static size_t | size () |
Blob ensures proper construction and destruction of its contents, and proper copying between Blobs, but nothing else.
In particular the user must ensure the blob is big enough for its contents and must know the type of object in the blob to cast get().
If BaseType is specified then only object that can be safely static_cast to BaseType may be stored in the Blob.