Ordering< bb_type > Class Template Reference

#include <orderings.h>

List of all members.

Public Types

typedef std::vector< bb_type
* >::iterator 
curtypeIterator

Public Member Functions

virtual void split (vector< bb_type * > *input, int loc, vector< bb_type * > *set_one, vector< bb_type * > *set_two)
virtual bb_type * max (vector< bb_type * > *input) const
virtual bb_type * min (vector< bb_type * > *input) const
virtual void sort (vector< bb_type * > *input)
virtual ~Ordering ()

Protected Member Functions

virtual double getVal (const bb_type *const in) const =0

Private Member Functions

void swap (bb_type **arr, unsigned int x, unsigned int y) const
unsigned int pivotise (bb_type **arr, unsigned int left, unsigned int right, unsigned int pivot) const
void quicksort (bb_type **arr, unsigned int left, unsigned int right) const

Static Private Member Functions

static void cannotCall ()


Detailed Description

template<typename bb_type>
class Ordering< bb_type >

This class defines an ordering on a given type of bounding box.

Definition at line 28 of file orderings.h.


Member Typedef Documentation

template<typename bb_type>
typedef std::vector< bb_type* >::iterator Ordering< bb_type >::curtypeIterator

Definition at line 87 of file orderings.h.


Constructor & Destructor Documentation

template<typename bb_type>
virtual Ordering< bb_type >::~Ordering (  )  [inline, virtual]

Definition at line 164 of file orderings.h.


Member Function Documentation

template<typename bb_type>
void Ordering< bb_type >::swap ( bb_type **  arr,
unsigned int  x,
unsigned int  y 
) const [inline, private]

Definition at line 32 of file orderings.h.

Referenced by Ordering< Cubic_Bounding_Box >::pivotise().

template<typename bb_type>
unsigned int Ordering< bb_type >::pivotise ( bb_type **  arr,
unsigned int  left,
unsigned int  right,
unsigned int  pivot 
) const [inline, private]

Definition at line 39 of file orderings.h.

Referenced by Ordering< Cubic_Bounding_Box >::quicksort().

template<typename bb_type>
void Ordering< bb_type >::quicksort ( bb_type **  arr,
unsigned int  left,
unsigned int  right 
) const [inline, private]

Definition at line 58 of file orderings.h.

Referenced by Ordering< Cubic_Bounding_Box >::quicksort(), and Ordering< Cubic_Bounding_Box >::sort().

template<typename bb_type>
static void Ordering< bb_type >::cannotCall (  )  [inline, static, private]

Definition at line 77 of file orderings.h.

template<typename bb_type>
virtual double Ordering< bb_type >::getVal ( const bb_type *const   in  )  const [protected, pure virtual]

Implemented in CURRENTORDERING< cur_type >, DistOrdering< cur_type >, CubicLowCoorOrdering< dim, cur_type >, HilbertOrdering2D< cur_type >, HilbertOrdering3D< cur_type >, MinDistTreeOrdering< cur_type, cur_tree >, Hilbert_R_tree::HilbertTreeOrdering, CURRENTORDERING< Cubic_Bounding_Box_Container >, DistOrdering< Cubic_Bounding_Box_Container >, DistOrdering< Cubic_Bounding_Box >, CubicLowCoorOrdering< 1, Cubic_Bounding_Box >, CubicLowCoorOrdering< 0, Cubic_Bounding_Box >, CubicLowCoorOrdering< 2, Cubic_Bounding_Box_Container >, CubicLowCoorOrdering< 2, Cubic_Bounding_Box >, CubicLowCoorOrdering< 1, Cubic_Bounding_Box_Container >, CubicLowCoorOrdering< 0, Cubic_Bounding_Box_Container >, and HilbertOrdering3D< Cubic_Bounding_Box_Container >.

Referenced by Ordering< Cubic_Bounding_Box >::max(), Ordering< Cubic_Bounding_Box >::min(), and Ordering< Cubic_Bounding_Box >::pivotise().

template<typename bb_type>
virtual void Ordering< bb_type >::split ( vector< bb_type * > *  input,
int  loc,
vector< bb_type * > *  set_one,
vector< bb_type * > *  set_two 
) [inline, virtual]

Definition at line 89 of file orderings.h.

template<typename bb_type>
virtual bb_type* Ordering< bb_type >::max ( vector< bb_type * > *  input  )  const [inline, virtual]

Reimplemented in CURRENTORDERING< cur_type >, and CURRENTORDERING< Cubic_Bounding_Box_Container >.

Definition at line 95 of file orderings.h.

template<typename bb_type>
virtual bb_type* Ordering< bb_type >::min ( vector< bb_type * > *  input  )  const [inline, virtual]

Reimplemented in CURRENTORDERING< cur_type >, and CURRENTORDERING< Cubic_Bounding_Box_Container >.

Definition at line 123 of file orderings.h.

template<typename bb_type>
virtual void Ordering< bb_type >::sort ( vector< bb_type * > *  input  )  [inline, virtual]

Reimplemented in CURRENTORDERING< cur_type >, HilbertOrdering3D< cur_type >, CURRENTORDERING< Cubic_Bounding_Box_Container >, and HilbertOrdering3D< Cubic_Bounding_Box_Container >.

Definition at line 150 of file orderings.h.

Referenced by Hilbert_R_tree::handleOverflow(), HilbertOrdering3D< Cubic_Bounding_Box_Container >::sort(), and Ordering< Cubic_Bounding_Box >::split().


The documentation for this class was generated from the following file:
Generated on Sat Oct 13 17:34:43 2007 for R-Tree by  doxygen 1.5.2