GClasses
GClasses::GRelationalRow< T > Class Template Reference

#include <GTree.h>

Public Member Functions

 GRelationalRow (const T &k, size_t columnCount)
 
 ~GRelationalRow ()
 
template<typename Comp >
GRelationalRow< T > * approximate (T r, size_t start, size_t *outIndex, size_t c, Comp &comp)
 This should typically only be called through one of the methods in GRelationalTable. Returns a row that matches in the specified column, or an adjacent row if there is no exact match. More...
 
GRelationalRow< T > * balance (size_t c)
 
template<typename Comp >
GRelationalRow< T > * find (T r, size_t start, size_t *outIndex, size_t c, Comp &comp)
 This should typically only be called through one of the methods in GRelationalTable. Returns a row that matches in the specified column, or NULL if there is no match. More...
 
GRelationalRow< T > * get (size_t index, size_t c)
 
template<typename Comp >
GRelationalRow< T > * insert (GRelationalRow< T > *newNode, size_t c, Comp &comp)
 
void isolate (size_t cols)
 
GRelationalRow< T > * next (size_t c)
 
GRelationalRow< T > * prev (size_t c)
 
template<typename Comp >
void print (const Comp &comp, std::ostream &stream, size_t col, size_t columnCount, size_t depth)
 
void recount (size_t c)
 
template<typename Comp >
GRelationalRow< T > * remove (size_t c, Comp &comp)
 This should typically only be called through GRelationalTable::remove. More...
 
GRelationalRow< T > * rotateLeft (size_t c)
 
GRelationalRow< T > * rotateRight (size_t c)
 

Public Attributes

GRelationalElement< T > * el
 
row
 

Constructor & Destructor Documentation

template<typename T >
GClasses::GRelationalRow< T >::GRelationalRow ( const T &  k,
size_t  columnCount 
)
inline
template<typename T >
GClasses::GRelationalRow< T >::~GRelationalRow ( )
inline

Member Function Documentation

template<typename T >
template<typename Comp >
GRelationalRow<T>* GClasses::GRelationalRow< T >::approximate ( r,
size_t  start,
size_t *  outIndex,
size_t  c,
Comp &  comp 
)
inline

This should typically only be called through one of the methods in GRelationalTable. Returns a row that matches in the specified column, or an adjacent row if there is no exact match.

template<typename T >
GRelationalRow<T>* GClasses::GRelationalRow< T >::balance ( size_t  c)
inline
template<typename T >
template<typename Comp >
GRelationalRow<T>* GClasses::GRelationalRow< T >::find ( r,
size_t  start,
size_t *  outIndex,
size_t  c,
Comp &  comp 
)
inline

This should typically only be called through one of the methods in GRelationalTable. Returns a row that matches in the specified column, or NULL if there is no match.

template<typename T >
GRelationalRow<T>* GClasses::GRelationalRow< T >::get ( size_t  index,
size_t  c 
)
inline
template<typename T >
template<typename Comp >
GRelationalRow<T>* GClasses::GRelationalRow< T >::insert ( GRelationalRow< T > *  newNode,
size_t  c,
Comp &  comp 
)
inline
template<typename T >
void GClasses::GRelationalRow< T >::isolate ( size_t  cols)
inline
template<typename T >
GRelationalRow<T>* GClasses::GRelationalRow< T >::next ( size_t  c)
inline
template<typename T >
GRelationalRow<T>* GClasses::GRelationalRow< T >::prev ( size_t  c)
inline
template<typename T >
template<typename Comp >
void GClasses::GRelationalRow< T >::print ( const Comp &  comp,
std::ostream &  stream,
size_t  col,
size_t  columnCount,
size_t  depth 
)
inline
template<typename T >
void GClasses::GRelationalRow< T >::recount ( size_t  c)
inline
template<typename T >
template<typename Comp >
GRelationalRow<T>* GClasses::GRelationalRow< T >::remove ( size_t  c,
Comp &  comp 
)
inline

This should typically only be called through GRelationalTable::remove.

template<typename T >
GRelationalRow<T>* GClasses::GRelationalRow< T >::rotateLeft ( size_t  c)
inline
template<typename T >
GRelationalRow<T>* GClasses::GRelationalRow< T >::rotateRight ( size_t  c)
inline

Member Data Documentation

template<typename T >
GRelationalElement<T>* GClasses::GRelationalRow< T >::el
template<typename T >
T GClasses::GRelationalRow< T >::row