42 #ifndef __MEMORY_BLOCK_H__
43 #define __MEMORY_BLOCK_H__
45 #include "services/daal_defines.h"
46 #include "data_management/data/data_serialize.h"
47 #include "data_management/data/data_archive.h"
48 #include "services/daal_shared_ptr.h"
52 namespace data_management
62 class DAAL_EXPORT MemoryBlock :
public SerializationIface
65 DECLARE_SERIALIZABLE_TAG();
67 DAAL_CAST_OPERATOR(MemoryBlock);
70 MemoryBlock() : _size(0), _value(NULL)
77 MemoryBlock(
size_t n);
79 virtual ~MemoryBlock();
86 void reserve(
size_t n);
101 const byte*
get()
const
121 virtual services::Status serializeImpl(interface1::InputDataArchive *arch) DAAL_C11_OVERRIDE
125 arch->set(_value, _size);
127 return services::Status();
130 virtual services::Status deserializeImpl(
const interface1::OutputDataArchive *arch) DAAL_C11_OVERRIDE
136 arch->set(_value, sz);
138 return services::Status();
145 typedef services::SharedPtr<MemoryBlock> MemoryBlockPtr;
148 using interface1::MemoryBlock;
149 using interface1::MemoryBlockPtr;
daal
Definition: algorithm_base_common.h:57
daal::data_management::interface1::MemoryBlock
Serializable memory block, owner of the memory.
Definition: memory_block.h:62
daal::data_management::interface1::MemoryBlock::size
size_t size() const
Definition: memory_block.h:110
daal::data_management::interface1::OutputDataArchive
Provides methods to restore an object from its serialized counterpart and access the restored object...
Definition: data_archive.h:967
daal::data_management::interface1::MemoryBlock::MemoryBlock
MemoryBlock()
Definition: memory_block.h:70
daal::data_management::interface1::MemoryBlock::serializeImpl
virtual services::Status serializeImpl(interface1::InputDataArchive *arch) DAAL_C11_OVERRIDE
Definition: memory_block.h:121
daal::data_management::interface1::SerializationIface
Abstract interface class that defines the interface for serialization and deserialization.
Definition: data_serialize.h:76
daal::data_management::interface1::MemoryBlock::deserializeImpl
virtual services::Status deserializeImpl(const interface1::OutputDataArchive *arch) DAAL_C11_OVERRIDE
Definition: memory_block.h:130