To read variables in certain order. More...
#include <part.h>
Public Member Functions | |
virtual long | open (const ibis::part *t=0) |
Open all data files. | |
virtual long | read () |
Read the values at the current position. | |
virtual long | seek (uint32_t pos) |
Move the logical position. | |
long | seek (double val) |
Move to the first position that value(var) >= val. | |
uint32_t | tellReal () const |
Tell the physical record number. | |
vault (const ibis::roster &r) |
To read variables in certain order.
A version of barrel that keys on an index array (i.e., a roster).
long ibis::part::vault::open | ( | const ibis::part * | t = 0 | ) | [virtual] |
Open all data files.
The function valut::open
different from barrel::open in that it opens the .srt file for the first variable.
Reimplemented from ibis::part::barrel.
References ibis::part::currentDataDir(), FASTBIT_DIRSEP, ibis::part::getColumn(), ibis::gVerbose, ibis::fileManager::instance(), ibis::part::name(), ibis::column::name(), and UnixOpen.
long ibis::part::vault::read | ( | ) | [virtual] |
Read the values at the current position.
Read the records indicated by position
.
Treat position
as the logical position, the physical position is _roster
[position].
Reimplemented from ibis::part::barrel.
References ibis::CATEGORY, ibis::DOUBLE, ibis::FLOAT, ibis::INT, ibis::part::name(), ibis::OID, ibis::TEXT, ibis::TYPESTRING, and ibis::UINT.
long ibis::part::vault::seek | ( | uint32_t | pos | ) | [virtual] |
Move the logical position.
Change the logical position of the files.
Reimplemented from ibis::part::barrel.
uint32_t ibis::part::vault::tellReal | ( | ) | const |
Tell the physical record number.
User may called _roster[tell()] to avoid the overhead of calling this function.
![]() |