Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

indri::file::BulkBlock Class Reference

#include <BulkTree.hpp>

List of all members.

Public Member Functions

 BulkBlock (bool leaf=false)
 ~BulkBlock ()
int count ()
bool leaf ()
bool insert (const char *key, int keyLength, const char *data, int dataLength)
bool insertFirstKey (BulkBlock &block, UINT32 blockID)
bool getIndex (int index, char *key, int &keyActual, int keyLength, char *value, int &valueActual, int valueLength)
bool findGreater (const char *key, int keyLength, char *value, int &actualLength, int valueBufferLength)
bool find (const char *key, int keyLength, char *value, int &actualLength, int valueBufferLength)
int findIndexOf (const char *key)
void clear ()
char * data ()
void setID (UINT32 id)
UINT32 getID ()
void link (BulkBlock *previous, BulkBlock *next)
void unlink ()
BulkBlockprevious ()
BulkBlocknext ()

Static Public Member Functions

UINT64 dataSize ()

Private Member Functions

int _remainingCapacity ()
int _dataEnd ()
int _keyEnd (int index)
int _keyStart (int index)
int _valueStart (int index)
int _valueEnd (int index)
bool _canInsert (int keyLength, int dataLength)
void _storeKeyValueLength (int insertPoint, int keyLength, int valueLength)
int _compare (const char *one, int oneLength, const char *two, int twoLength)
int _find (const char *key, int keyLength, bool &exact)

Private Attributes

char * _buffer
BulkBlock_previous
BulkBlock_next
UINT32 _id


Constructor & Destructor Documentation

indri::file::BulkBlock::BulkBlock bool  leaf = false  ) 
 

indri::file::BulkBlock::~BulkBlock  ) 
 


Member Function Documentation

bool indri::file::BulkBlock::_canInsert int  keyLength,
int  dataLength
[inline, private]
 

int indri::file::BulkBlock::_compare const char *  one,
int  oneLength,
const char *  two,
int  twoLength
[inline, private]
 

int indri::file::BulkBlock::_dataEnd  )  [inline, private]
 

int indri::file::BulkBlock::_find const char *  key,
int  keyLength,
bool &  exact
[inline, private]
 

int indri::file::BulkBlock::_keyEnd int  index  )  [inline, private]
 

int indri::file::BulkBlock::_keyStart int  index  )  [inline, private]
 

int indri::file::BulkBlock::_remainingCapacity  )  [inline, private]
 

void indri::file::BulkBlock::_storeKeyValueLength int  insertPoint,
int  keyLength,
int  valueLength
[inline, private]
 

int indri::file::BulkBlock::_valueEnd int  index  )  [inline, private]
 

int indri::file::BulkBlock::_valueStart int  index  )  [inline, private]
 

void indri::file::BulkBlock::clear  )  [inline]
 

int indri::file::BulkBlock::count  )  [inline]
 

char * indri::file::BulkBlock::data  )  [inline]
 

UINT64 indri::file::BulkBlock::dataSize  )  [static]
 

bool indri::file::BulkBlock::find const char *  key,
int  keyLength,
char *  value,
int &  actualLength,
int  valueBufferLength
 

bool indri::file::BulkBlock::findGreater const char *  key,
int  keyLength,
char *  value,
int &  actualLength,
int  valueBufferLength
 

int indri::file::BulkBlock::findIndexOf const char *  key  ) 
 

returns the index of the key item (or the index before if the key does not exist)

Parameters:
key the key
Returns:
the index of the key in this block

UINT32 indri::file::BulkBlock::getID  ) 
 

bool indri::file::BulkBlock::getIndex int  index,
char *  key,
int &  keyActual,
int  keyLength,
char *  value,
int &  valueActual,
int  valueLength
 

bool indri::file::BulkBlock::insert const char *  key,
int  keyLength,
const char *  data,
int  dataLength
 

bool indri::file::BulkBlock::insertFirstKey BulkBlock block,
UINT32  blockID
 

bool indri::file::BulkBlock::leaf  )  [inline]
 

void indri::file::BulkBlock::link BulkBlock previous,
BulkBlock next
 

indri::file::BulkBlock * indri::file::BulkBlock::next  ) 
 

indri::file::BulkBlock * indri::file::BulkBlock::previous  ) 
 

void indri::file::BulkBlock::setID UINT32  id  ) 
 

void indri::file::BulkBlock::unlink  ) 
 


Member Data Documentation

char* indri::file::BulkBlock::_buffer [private]
 

UINT32 indri::file::BulkBlock::_id [private]
 

BulkBlock* indri::file::BulkBlock::_next [private]
 

BulkBlock* indri::file::BulkBlock::_previous [private]
 


The documentation for this class was generated from the following files:
Generated on Tue Jun 15 11:03:00 2010 for Lemur by doxygen 1.3.4