Public Member Functions
ibis::colStrings Class Reference

A class to store string values. More...

#include <colValues.h>

Inheritance diagram for ibis::colStrings:
ibis::colValues

List of all members.

Public Member Functions

virtual void bottomk (uint32_t k, array_t< uint32_t > &ind) const
 Find positions of the k smallest strings.
 colStrings (const ibis::column *c, const ibis::bitvector &hits)
 colStrings (size_t n, const std::string &v)
 colStrings (const ibis::column *c)
 Construct ibis::colStrings from an existing list of strings.
virtual uint32_t elementSize () const
virtual bool empty () const
virtual void erase (uint32_t i, uint32_t j)
virtual void * getArray () const
 Return the pointer to the pointer to underlying array_t<T> object.
virtual double getDouble (uint32_t) const
 Return the ith value as double. NOT implemented.
virtual float getFloat (uint32_t) const
 Return the ith value as float. NOT implemented.
virtual int32_t getInt (uint32_t) const
 Return the ith value as int. NOT implemented.
virtual int64_t getLong (uint32_t) const
 Return the ith value as long. NOT implemented.
virtual double getMax () const
 Compute the maximum. NOT implemented.
virtual double getMin () const
 Compute the minimum. NOT implemented.
virtual double getSum () const
 Compute the sum. NOT implemented.
virtual ibis::TYPE_T getType () const
 Return the type of the data stored.
virtual uint32_t getUInt (uint32_t) const
 Return the ith value as unsigned int. NOT implemented.
virtual uint64_t getULong (uint32_t) const
 Return the ith value as unsigned long. NOT implemented.
virtual void nosharing ()
 Make sure the content of the underlying storage is not shared.
virtual void reduce (const array_t< uint32_t > &starts)
 remove the duplicate elements according to the array starts
virtual void reduce (const array_t< uint32_t > &starts, ibis::selectClause::AGREGADO func)
virtual void reorder (const array_t< uint32_t > &ind)
 Reorder the values according to the specified indices.
virtual array_t< uint32_t > * segment (const array_t< uint32_t > *old=0) const
 Produce an array of the starting positions of values that are the same.
virtual uint32_t size () const
virtual void sort (uint32_t i, uint32_t j, array_t< uint32_t > &neworder) const
 Sort rows in the range [i, j).
virtual void sort (uint32_t i, uint32_t j, bundle *bdl)
 Sort rows in the range [i, j).
virtual void sort (uint32_t i, uint32_t j, bundle *bdl, colList::iterator head, colList::iterator tail)
 Sort rows in the range [i, j).
void swap (colStrings &rhs)
virtual void swap (uint32_t i, uint32_t j)
virtual void topk (uint32_t k, array_t< uint32_t > &ind) const
 Fill the array ind with positions of the k largest elements.
virtual long truncate (uint32_t keep, uint32_t start)
 Truncate the number element to no more than keep.
virtual long truncate (uint32_t keep)
 Truncate the number element to no more than keep.
virtual void write (std::ostream &out, uint32_t i) const
 Write ith element as text.
virtual uint32_t write (FILE *fptr) const
 Write out whole array as binary.

Detailed Description

A class to store string values.


Member Function Documentation

void ibis::colStrings::reorder ( const array_t< uint32_t > &  ind) [virtual]

Reorder the values according to the specified indices.

New[i] = Old[ind[i]].

Implements ibis::colValues.

References ibis::array_t< T >::size().

ibis::array_t< uint32_t > * ibis::colStrings::segment ( const array_t< uint32_t > *  old = 0) const [virtual]

Produce an array of the starting positions of values that are the same.

Implements ibis::colValues.

References ibis::array_t< T >::push_back(), and ibis::array_t< T >::size().

void ibis::colStrings::sort ( uint32_t  i,
uint32_t  j,
array_t< uint32_t > &  neworder 
) const [virtual]

Sort rows in the range [i, j).

Output the new order in array neworder.

Implements ibis::colValues.

References ibis::array_t< T >::clear(), ibis::array_t< T >::push_back(), and ibis::array_t< T >::reserve().

virtual void ibis::colStrings::sort ( uint32_t  i,
uint32_t  j,
bundle bdl,
colList::iterator  head,
colList::iterator  tail 
) [virtual]

Sort rows in the range [i, j).

Also sort the columns between [head, tail).

Implements ibis::colValues.

void ibis::colStrings::topk ( uint32_t  k,
array_t< uint32_t > &  ind 
) const [virtual]

Fill the array ind with positions of the k largest elements.

The array may contain more than k elements, if the kth largest element is not unique. The array may contain less than k elements if this object contains less than k elements. The array ind contains the largest element in ascending order with the index to the largest string at the end.

Implements ibis::colValues.

References ibis::array_t< T >::clear(), and ibis::array_t< T >::resize().


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