Main Page | Class Hierarchy | Class List | File List | Class Members

dbBlobReadIterator Class Reference

#include <blob.h>

Inheritance diagram for dbBlobReadIterator:

dbBlobIterator List of all members.

Public Member Functions

size_t read (void *buf, size_t bufSize)
 dbBlobReadIterator (dbDatabase &db, oid_t oid)
 ~dbBlobReadIterator ()
virtual void * mapBuffer ()
virtual size_t getAvailableSize ()
virtual void close ()
size_t getAvailableBufferSize ()
virtual void unmapBuffer (size_t proceeded)

Protected Attributes

size_t size
offs_t pos
dbDatabasedb
oid_t oid
oid_t next
void * buf
bool closed

Detailed Description

Read BLOB iterator


Constructor & Destructor Documentation

dbBlobReadIterator::dbBlobReadIterator dbDatabase db,
oid_t  oid
[inline]
 

Read BLOB iterator constructor

Parameters:
db reference to the database
oid object identifier of BLOB

dbBlobReadIterator::~dbBlobReadIterator  ) 
 

Read BLOB iterator destructor


Member Function Documentation

virtual void dbBlobReadIterator::close  )  [virtual]
 

Close BLOB iterator

Reimplemented from dbBlobIterator.

size_t dbBlobIterator::getAvailableBufferSize  )  [inline, inherited]
 

Get size of available BLOB buffer. This method should be invoked after mapBuffer().

Returns:
number of bytes which can be directly written to the BLOB.

virtual size_t dbBlobReadIterator::getAvailableSize  )  [virtual]
 

Get size of sequential BLOB segment

Returns:
number of bytes which is available to read in current BLOB segment. If this method return 0, it means that end of BLOB is reached.

Implements dbBlobIterator.

virtual void* dbBlobReadIterator::mapBuffer  )  [virtual]
 

Map current BLOB buffer to the memory, allowing direct read access to the buffer

Returns:
pointer to the buffer

Implements dbBlobIterator.

size_t dbBlobReadIterator::read void *  buf,
size_t  bufSize
 

Read specified number of bytes from the BLOB

Parameters:
buf buffer to receive data
bufSize size of the buffer
Returns:
number of the bytes actually read (it can be smaller than requested)

virtual void dbBlobIterator::unmapBuffer size_t  proceeded  )  [virtual, inherited]
 

Release BLOB buffer

Parameters:
proceeded number of proceeded (read or write) bytes


The documentation for this class was generated from the following file:
Generated on Thu Nov 24 23:14:30 2005 for GigaBASE by doxygen 1.3.5