4 #include "CoralBase/Blob.h"
8 #include <openssl/sha.h>
12 m_data( new coral::Blob(0) ){
16 m_object( objectPtr ){
20 m_data( new coral::Blob( size ) ){
25 m_data( new coral::Blob(data.
size()) ){
26 ::memcpy(
m_data->startingAddress(), data.startingAddress(), data.size() );
31 m_object( rhs.m_object ){
47 m_data.reset(
new coral::Blob( source.size() ) );
48 ::memcpy( m_data->startingAddress(), source.c_str(), source.size() );
53 if(!m_data.get())
throwException(
"Binary data can't be accessed.",
"Binary::data");
54 return m_data->startingAddress();
57 if(!m_data.get())
throwException(
"Binary data can't be accessed.",
"Binary::data");
58 return m_data->startingAddress();
62 if(!m_data.get())
throwException(
"Binary size can't be provided.",
"Binary::size");
63 return m_data->size();
std::shared_ptr< coral::Blob > m_data
Binary & operator=(const Binary &rhs)
void copy(const std::string &source)
const void * data() const
void throwException(std::string const &message, std::string const &methodName)
char data[epos_bytes_allocation]
const coral::Blob & get() const
boost::shared_ptr< void > m_object
static std::string const source
tuple size
Write out results.
boost::shared_ptr< void > share() const