#include <blob.h>
Public Member Functions | |
virtual size_t | getAvailableSize ()=0 |
size_t | getAvailableBufferSize () |
virtual void * | mapBuffer ()=0 |
virtual void | unmapBuffer (size_t proceeded) |
virtual void | close () |
dbBlobIterator (dbDatabase &db, oid_t oid) | |
virtual | ~dbBlobIterator () |
Protected Attributes | |
size_t | size |
offs_t | pos |
dbDatabase & | db |
oid_t | oid |
oid_t | next |
void * | buf |
bool | closed |
Large binary object iterator. BLOB consist of several linked BLOB segments. BLOB iterator performs traversal through all thoses segments.
dbBlobIterator::dbBlobIterator | ( | dbDatabase & | db, | |
oid_t | oid | |||
) |
BLOB iterator constructor
db | reference to the database | |
oid | object identifier of BLOB |
virtual dbBlobIterator::~dbBlobIterator | ( | ) | [virtual] |
BLOB destructor
virtual void dbBlobIterator::close | ( | ) | [virtual] |
Close BLOB iterator
Reimplemented in dbBlobReadIterator.
size_t dbBlobIterator::getAvailableBufferSize | ( | ) | [inline] |
Get size of available BLOB buffer. This method should be invoked after mapBuffer()
.
virtual size_t dbBlobIterator::getAvailableSize | ( | ) | [pure virtual] |
Get size of sequential BLOB segment
Implemented in dbBlobReadIterator.
virtual void* dbBlobIterator::mapBuffer | ( | ) | [pure virtual] |
Map current BLOB buffer to the memory, allowing direct access (read or write) to the buffer
Implemented in dbBlobReadIterator.
virtual void dbBlobIterator::unmapBuffer | ( | size_t | proceeded | ) | [virtual] |
Release BLOB buffer
proceeded | number of proceeded (read or write) bytes |