Public Member Functions
ibis::bundles Class Reference

The bundle with multiple components. More...

#include <bundle.h>

Inheritance diagram for ibis::bundles:
ibis::bundle

List of all members.

Public Member Functions

 bundles (const ibis::query &, int=0)
 Constructor.
 bundles (const ibis::query &, const ibis::bitvector &, int=0)
 Constructor.
 bundles (const ibis::part &, const ibis::selectClause &, int=0)
 Constructor. It creates a bundle from all rows of tbl.
virtual void * columnArray (uint32_t j) const
 Return the pointer to the underlying array used to store the jth column of the bundle.
virtual const ibis::columncolumnPointer (uint32_t j) const
 Column pointer.
virtual ibis::TYPE_T columnType (uint32_t j) const
 Return the type used to store the values of the jth column of the bundle.
virtual double getDouble (uint32_t, uint32_t) const
 Retrieve the value of i-th row j-th column as a 64-bit floating-point number.
virtual float getFloat (uint32_t, uint32_t) const
 Retrieve the value of i-th row j-th column as a 32-bit floating-point number.
virtual int32_t getInt (uint32_t, uint32_t) const
 Retrieve the value of i-th row j-th column as a 32-bit integer.
virtual int64_t getLong (uint32_t, uint32_t) const
 Retrieve the value of i-th row j-th column as a 64-bit integer.
virtual std::string getString (uint32_t, uint32_t) const
 Retrieve the value of i-th row j-th column as a string.
virtual uint32_t getUInt (uint32_t, uint32_t) const
 Retrieve the value of i-th row j-th column as a 32-bit unsigned integer.
virtual uint64_t getULong (uint32_t, uint32_t) const
 Retrieve the value of i-th row j-th column as a 64-bit unsigned integer.
virtual void print (std::ostream &out) const
 Print out the bundles without RIDs.
virtual void printAll (std::ostream &out) const
 Print out the bundles with RIDs.
virtual void printColumnNames (std::ostream &out) const
 Print column names.
virtual void reorder (const char *)
 Reorder the bundles according to the keys (names) given.
virtual uint32_t size () const
 Return the number of bundles.
virtual long truncate (uint32_t keep)
 This single-arugment version of the function truncate keeps the first few rows.
virtual long truncate (uint32_t keep, uint32_t start)
 This two-argument version of the function keeps a few rows after a specified starting point.
virtual long truncate (const char *names, uint32_t keep)
 Reorder the bundles according to the keys (names) given.
virtual uint32_t width () const
 Return the width of the bundles.
virtual void write (const ibis::query &) const
 Write the bundle to the directory for the query q.

Detailed Description

The bundle with multiple components.


Constructor & Destructor Documentation

ibis::bundles::bundles ( const ibis::query q,
int  dir = 0 
) [explicit]
ibis::bundles::bundles ( const ibis::query q,
const ibis::bitvector hits,
int  dir = 0 
)

Member Function Documentation

virtual void* ibis::bundles::columnArray ( uint32_t  ) const [inline, virtual]

Return the pointer to the underlying array used to store the jth column of the bundle.

Reimplemented from ibis::bundle.

virtual ibis::TYPE_T ibis::bundles::columnType ( uint32_t  ) const [inline, virtual]

Return the type used to store the values of the jth column of the bundle.

Reimplemented from ibis::bundle.

References ibis::UNKNOWN_TYPE.

double ibis::bundles::getDouble ( uint32_t  i,
uint32_t  j 
) const [virtual]

Retrieve the value of i-th row j-th column as a 64-bit floating-point number.

Return the maximal value defined in the class numeric_limits if indices i and j are out of bounds.

Reimplemented from ibis::bundle.

float ibis::bundles::getFloat ( uint32_t  i,
uint32_t  j 
) const [virtual]

Retrieve the value of i-th row j-th column as a 32-bit floating-point number.

Return the maximal value defined in the class numeric_limits if indices i and j are out of bounds.

Reimplemented from ibis::bundle.

int32_t ibis::bundles::getInt ( uint32_t  i,
uint32_t  j 
) const [virtual]

Retrieve the value of i-th row j-th column as a 32-bit integer.

Return the maximal value defined in the class numeric_limits if indices i and j are out of bounds.

Reimplemented from ibis::bundle.

int64_t ibis::bundles::getLong ( uint32_t  i,
uint32_t  j 
) const [virtual]

Retrieve the value of i-th row j-th column as a 64-bit integer.

Return the maximal value defined in the class numeric_limits if indices i and j are out of bounds.

Reimplemented from ibis::bundle.

std::string ibis::bundles::getString ( uint32_t  i,
uint32_t  j 
) const [virtual]

Retrieve the value of i-th row j-th column as a string.

Convert the value to its string representation through std::ostringstream.

Reimplemented from ibis::bundle.

uint32_t ibis::bundles::getUInt ( uint32_t  i,
uint32_t  j 
) const [virtual]

Retrieve the value of i-th row j-th column as a 32-bit unsigned integer.

Return the maximal value defined in the class numeric_limits if indices i and j are out of bounds.

Reimplemented from ibis::bundle.

uint64_t ibis::bundles::getULong ( uint32_t  i,
uint32_t  j 
) const [virtual]

Retrieve the value of i-th row j-th column as a 64-bit unsigned integer.

Return the maximal value defined in the class numeric_limits if indices i and j are out of bounds.

Reimplemented from ibis::bundle.

void ibis::bundles::reorder ( const char *  names) [virtual]

Reorder the bundles according to the keys (names) given.

If the argument direction is a negative number, the rows are reversed after sorting. Even if no sorting is done, the reversal of rows is still performed.

turn counts back into starting positions (starts)

Implements ibis::bundle.

References ibis::array_t< T >::find(), ibis::array_t< T >::push_back(), ibis::util::reorder(), ibis::array_t< T >::reserve(), ibis::nameList::select(), ibis::array_t< T >::size(), ibis::array_t< T >::sort(), and ibis::array_t< T >::swap().

long ibis::bundles::truncate ( uint32_t  keep) [virtual]

This single-arugment version of the function truncate keeps the first few rows.

Implements ibis::bundle.

long ibis::bundles::truncate ( uint32_t  keep,
uint32_t  start 
) [virtual]

This two-argument version of the function keeps a few rows after a specified starting point.

Implements ibis::bundle.

long ibis::bundles::truncate ( const char *  names,
uint32_t  keep 
) [virtual]

Reorder the bundles according to the keys (names) given.

Keep only the first keep elements. If direction < 0, keep the largest ones, otherwise keep the smallest ones.

turn counts back into starting positions (starts)

Implements ibis::bundle.

References ibis::array_t< T >::bottomk(), ibis::array_t< T >::find(), ibis::array_t< T >::push_back(), ibis::util::reorder(), ibis::array_t< T >::reserve(), ibis::nameList::select(), ibis::array_t< T >::size(), ibis::array_t< T >::sort(), and ibis::array_t< T >::swap().


The documentation for this class was generated from the following files:

Make It A Bit Faster
Contact us
Disclaimers
FastBit source code
FastBit mailing list archive