parQHV
Compute HyperVolumes using threads
 All Data Structures Files Functions Variables Macros
splitter.h File Reference

A splitter for storing classified points. The splitter is an array that grows dinamically, when all points are inserted they are separeted into classes by sorting. Preferably count sort or hased count sort. More...

#include "division.h"
#include "tdata.h"
Include dependency graph for splitter.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void initSplitter (struct spData *sd)
 
void destroySplitter (struct spData *sd)
 
void push (int idx, int tp, struct spData *sd)
 
division newDivision (point *PS, point *o, point *p, struct spData *sd)
 

Detailed Description

A splitter for storing classified points. The splitter is an array that grows dinamically, when all points are inserted they are separeted into classes by sorting. Preferably count sort or hased count sort.

Author
Luis Russo <lsr-ThinkPad-X201>
Date
Sat Nov 26 09:44:56 2011

Definition in file splitter.h.

Function Documentation

void destroySplitter ( struct spData *  sd)

Frees the global variables

< Terminate union filter

Definition at line 95 of file splitter.c.

void initSplitter ( struct spData *  sd)

Initial routines of the splitter object

< Change to binomials

Definition at line 78 of file splitter.c.

division newDivision ( point PS,
point o,
point p,
struct spData *  sd 
)
Returns
A division object from the current splitter state. The splitter is reset to empty.

< Alloced point index space

< Total counter

  1. Do Count Sort 1.1 Pass hypocts to division & accumulate counters

< First time hypoct is seen

1.2 Group Elements together

  1. Do union filter
  2. Add projections to the level bellow

< left part of oct

< Right part of oct

< Bit, dimension project

Computes the number of dominant points j and reorders the array so that they appear at the beginning

Last position was there because of the previous procedure Update

Doing cleanUp Stuff

Preparing the struct for output

Definition at line 129 of file splitter.c.

void push ( int  idx,
int  tp,
struct spData *  sd 
)

Push a new elements into the splitter

Parameters
SThe splitter
idxThe point index
tpThe type/oct

< Put type

< Put point

< Add another one of this type

Definition at line 114 of file splitter.c.