sfof
Classes | Public Member Functions | Public Attributes | Private Attributes | List of all members
Kdtree Class Reference

Class for constructing a kd-tree. More...

#include <kdtree_class.hpp>

Classes

class  Kdtree_node
 Class structure for kd-tree properties. More...
 

Public Member Functions

class Kdtree_nodebuild_kdtree (std::vector< Galaxy * >::iterator begin, std::vector< Galaxy * >::iterator end, class Point[2], int)
 
void set_Kdtree (std::vector< Galaxy > &, double)
 
void write_Kdtree (const std::string &)
 
void WalkTree (class Kdtree_node *, int)
 
void WalkTree (class Kdtree_node *, std::ofstream &)
 
int range_search (Point &, int, double, std::deque< Galaxy * > &) const
 
int range_search (Galaxy &, double, std::deque< Galaxy * > &) const
 
int range_search_loop (Kdtree_node *, class Point &, int, double, node_to_galaxy, std::deque< Galaxy * > &) const
 

Public Attributes

class Kdtree_nodeNodes
 
class Kdtree_noderoot
 
std::vector< GalaxyAllG
 
std::vector< Galaxy * > GalPtrs
 
Point MIN
 
Point MAX
 
int NNodes
 
int NMaxNodes
 
int NLeaves
 
double max_axis_inequality
 
double sample_area
 

Private Attributes

Astro astro
 

Detailed Description

Class for constructing a kd-tree.

This class constructs a kd-tree.

Member Function Documentation

◆ build_kdtree()

Kdtree::Kdtree_node * Kdtree::build_kdtree ( std::vector< Galaxy * >::iterator  begin,
std::vector< Galaxy * >::iterator  end,
class Point  box[2],
int  depth 
)

◆ range_search() [1/2]

int Kdtree::range_search ( Galaxy G,
double  link_r,
std::deque< Galaxy * > &  GalList 
) const

◆ range_search() [2/2]

int Kdtree::range_search ( Point origin,
int  num,
double  link_r,
std::deque< Galaxy * > &  GalList 
) const

◆ range_search_loop()

int Kdtree::range_search_loop ( Kdtree_node start,
class Point origin,
int  num,
double  radius,
node_to_galaxy  status,
std::deque< Galaxy * > &  GalList 
) const

◆ set_Kdtree()

void Kdtree::set_Kdtree ( std::vector< Galaxy > &  Gals,
double  max_inq = 0.3 
)

◆ WalkTree() [1/2]

void Kdtree::WalkTree ( class Kdtree_node start,
int  mode 
)

◆ WalkTree() [2/2]

void Kdtree::WalkTree ( class Kdtree_node ,
std::ofstream &   
)

◆ write_Kdtree()

void Kdtree::write_Kdtree ( const std::string &  output_file)

Member Data Documentation

◆ AllG

std::vector<Galaxy> Kdtree::AllG

◆ astro

Astro Kdtree::astro
private

◆ GalPtrs

std::vector<Galaxy*> Kdtree::GalPtrs

◆ MAX

Point Kdtree::MAX

◆ max_axis_inequality

double Kdtree::max_axis_inequality

◆ MIN

Point Kdtree::MIN

◆ NLeaves

int Kdtree::NLeaves

◆ NMaxNodes

int Kdtree::NMaxNodes

◆ NNodes

int Kdtree::NNodes

◆ Nodes

class Kdtree_node* Kdtree::Nodes

◆ root

class Kdtree_node * Kdtree::root

◆ sample_area

double Kdtree::sample_area

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