To read variables in certain order. More...
#include <part.h>
Public Member Functions | |
virtual long | open (const ibis::part *t=0) |
The function valut::open different from barrel::open in that it opens the .srt file for the first variable. More... | |
virtual long | read () |
!< Open all data files. More... | |
virtual long | seek (uint32_t pos) |
!< Read the values at the current position. More... | |
long | seek (double val) |
!< Move the logical position. More... | |
uint32_t | tellReal () const |
Tell the physical record number. More... | |
vault (const ibis::roster &r) | |
Public Member Functions inherited from ibis::part::barrel | |
barrel (const ibis::part *t=0) | |
virtual long | close () |
!< Open all data files. | |
const ibis::column * | getColumn (uint32_t i) const |
void | getNullMask (ibis::bitvector &mask) const |
Collect the null masks together. | |
uint32_t | tell () const |
virtual | ~barrel () |
Destructor. Member variables clean themselves. | |
Public Member Functions inherited from ibis::math::barrel | |
barrel () | |
Constructor. | |
barrel (const term *const t) | |
Constructor. | |
bool | equivalent (const barrel &rhs) const |
Is the given barrel of variables equivalent to this one? More... | |
const char * | name (uint32_t i) const |
void | recordVariable (const qExpr *const t) |
Record the variable names appear in the query expression. More... | |
void | recordVariable (const term *const t) |
Record the variable names appear in the term . More... | |
uint32_t | recordVariable (const char *name) |
Record the specified name. More... | |
uint32_t | size () const |
const double & | value (uint32_t i) const |
double & | value (uint32_t i) |
Additional Inherited Members | |
Protected Types inherited from ibis::math::barrel | |
typedef std::map< const char *, uint32_t, ibis::lessi > | termMap |
Protected Member Functions inherited from ibis::math::barrel | |
double | getValue (uint32_t i) const |
double | getValue (const char *nm) const |
Return the value of the named variable. | |
Protected Attributes inherited from ibis::part::barrel | |
const ibis::part * | _tbl |
std::vector< const ibis::column * > | cols |
std::vector< int > | fdes |
uint32_t | position |
std::vector< ibis::fileManager::storage * > | stores |
Protected Attributes inherited from ibis::math::barrel | |
std::vector< const char * > | namelist |
List of variable names. | |
termMap | varmap |
Associate a variable name with a position in varvalues and namelist . More... | |
std::vector< double > | varvalues |
Cast values to double. | |
To read variables in certain order.
A version of barrel that keys on an index array (i.e., a roster).
|
virtual |
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::BLOB, ibis::CATEGORY, ibis::part::currentDataDir(), ibis::part::getColumn(), ibis::fileManager::instance(), ibis::part::name(), ibis::column::name(), ibis::TEXT, ibis::column::type(), ibis::TYPESTRING, and UnixOpen.
|
virtual |
!< Open all data files.
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.
|
virtual |
!< Read the values at the current position.
Change the logical position of the files.
Reimplemented from ibis::part::barrel.
long ibis::part::vault::seek | ( | double | val | ) |
!< Move the logical position.
Move to the first position that value(var) >= val.
References ibis::CATEGORY, ibis::DOUBLE, ibis::array_t< T >::find(), ibis::FLOAT, ibis::INT, ibis::part::name(), ibis::OID, ibis::TEXT, ibis::TYPESTRING, and ibis::UINT.
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.