Open
Graph Drawing
Framework

 v. 2022.02 (Dogwood)
 

ogdf::energybased::fmmm::QuadTreeNM Class Reference

Helping data structure that stores the information needed to represent the modified quadtree in the New Multipole Method (NMM) More...

#include <ogdf/energybased/fmmm/new_multipole_method/QuadTreeNM.h>

Public Member Functions

 QuadTreeNM ()
 Constructor. More...
 
void cout_preorder (QuadTreeNodeNM *node_ptr)
 Pre_order traversal of the tree rooted at node_ptr (with or without output of the M,L-lists from 0 to precision). More...
 
void cout_preorder (QuadTreeNodeNM *node_ptr, int precision)
 
void create_new_lb_child ()
 
void create_new_lb_child (List< ParticleInfo > *L_x_ptr, List< ParticleInfo > *L_y_ptr)
 Creates a new left_bottom_child of the actual node (importing L_x(y)_ptr). More...
 
void create_new_lt_child ()
 
void create_new_lt_child (List< ParticleInfo > *L_x_ptr, List< ParticleInfo > *L_y_ptr)
 Creates a new left_top_child of the actual node (importing L_x(y)_ptr). More...
 
void create_new_rb_child ()
 
void create_new_rb_child (List< ParticleInfo > *L_x_ptr, List< ParticleInfo > *L_y_ptr)
 Creates a new right_bottom_child of the actual node(importing L_x(y)_ptr). More...
 
void create_new_rt_child ()
 
void create_new_rt_child (List< ParticleInfo > *L_x_ptr, List< ParticleInfo > *L_y_ptr)
 Creates a new right_top_child of the actual node (importing L_x(y)_ptr). More...
 
void delete_tree (QuadTreeNodeNM *node_ptr)
 Deletes the tree starting at node_ptr. More...
 
void delete_tree_and_count_nodes (QuadTreeNodeNM *node_ptr, int &nodecounter)
 Deletes the tree starting at node_ptr and counts the nodes of the subtree. More...
 
QuadTreeNodeNMget_act_ptr () const
 Returns the actual/root node pointer of the tree. More...
 
QuadTreeNodeNMget_root_ptr () const
 
void go_to_father ()
 Sets act_ptr to the father_ptr. More...
 
void go_to_lb_child ()
 Sets act_ptr to the left_bottom_child_ptr. More...
 
void go_to_lt_child ()
 Sets act_ptr to the left_top_child_ptr. More...
 
void go_to_rb_child ()
 Sets act_ptr to the right_bottom_child_ptr. More...
 
void go_to_rt_child ()
 Sets act_ptr to the right_top_child_ptr. More...
 
void init_tree ()
 Creates the root node and lets act_ptr and root_ptr point to the root node. More...
 
void set_act_ptr (QuadTreeNodeNM *a_ptr)
 Sets act_ptr to a_ptr. More...
 
void set_root_node (QuadTreeNodeNM &r)
 Sets the content of *root_ptr to r. More...
 
void set_root_ptr (QuadTreeNodeNM *r_ptr)
 Sets root_ptr to r_ptr. More...
 
void start_at_root ()
 Sets act_ptr to the root_ptr. More...
 

Private Attributes

QuadTreeNodeNMact_ptr
 points to the actual node More...
 
QuadTreeNodeNMroot_ptr
 points to the root node More...
 

Detailed Description

Helping data structure that stores the information needed to represent the modified quadtree in the New Multipole Method (NMM)

Definition at line 42 of file QuadTreeNM.h.

Constructor & Destructor Documentation

◆ QuadTreeNM()

ogdf::energybased::fmmm::QuadTreeNM::QuadTreeNM ( )

Constructor.

Member Function Documentation

◆ cout_preorder() [1/2]

void ogdf::energybased::fmmm::QuadTreeNM::cout_preorder ( QuadTreeNodeNM node_ptr)

Pre_order traversal of the tree rooted at node_ptr (with or without output of the M,L-lists from 0 to precision).

◆ cout_preorder() [2/2]

void ogdf::energybased::fmmm::QuadTreeNM::cout_preorder ( QuadTreeNodeNM node_ptr,
int  precision 
)

◆ create_new_lb_child() [1/2]

void ogdf::energybased::fmmm::QuadTreeNM::create_new_lb_child ( )

◆ create_new_lb_child() [2/2]

void ogdf::energybased::fmmm::QuadTreeNM::create_new_lb_child ( List< ParticleInfo > *  L_x_ptr,
List< ParticleInfo > *  L_y_ptr 
)

Creates a new left_bottom_child of the actual node (importing L_x(y)_ptr).

◆ create_new_lt_child() [1/2]

void ogdf::energybased::fmmm::QuadTreeNM::create_new_lt_child ( )

◆ create_new_lt_child() [2/2]

void ogdf::energybased::fmmm::QuadTreeNM::create_new_lt_child ( List< ParticleInfo > *  L_x_ptr,
List< ParticleInfo > *  L_y_ptr 
)

Creates a new left_top_child of the actual node (importing L_x(y)_ptr).

◆ create_new_rb_child() [1/2]

void ogdf::energybased::fmmm::QuadTreeNM::create_new_rb_child ( )

◆ create_new_rb_child() [2/2]

void ogdf::energybased::fmmm::QuadTreeNM::create_new_rb_child ( List< ParticleInfo > *  L_x_ptr,
List< ParticleInfo > *  L_y_ptr 
)

Creates a new right_bottom_child of the actual node(importing L_x(y)_ptr).

◆ create_new_rt_child() [1/2]

void ogdf::energybased::fmmm::QuadTreeNM::create_new_rt_child ( )

◆ create_new_rt_child() [2/2]

void ogdf::energybased::fmmm::QuadTreeNM::create_new_rt_child ( List< ParticleInfo > *  L_x_ptr,
List< ParticleInfo > *  L_y_ptr 
)

Creates a new right_top_child of the actual node (importing L_x(y)_ptr).

◆ delete_tree()

void ogdf::energybased::fmmm::QuadTreeNM::delete_tree ( QuadTreeNodeNM node_ptr)

Deletes the tree starting at node_ptr.

◆ delete_tree_and_count_nodes()

void ogdf::energybased::fmmm::QuadTreeNM::delete_tree_and_count_nodes ( QuadTreeNodeNM node_ptr,
int &  nodecounter 
)

Deletes the tree starting at node_ptr and counts the nodes of the subtree.

◆ get_act_ptr()

QuadTreeNodeNM* ogdf::energybased::fmmm::QuadTreeNM::get_act_ptr ( ) const
inline

Returns the actual/root node pointer of the tree.

Definition at line 122 of file QuadTreeNM.h.

◆ get_root_ptr()

QuadTreeNodeNM* ogdf::energybased::fmmm::QuadTreeNM::get_root_ptr ( ) const
inline

Definition at line 123 of file QuadTreeNM.h.

◆ go_to_father()

void ogdf::energybased::fmmm::QuadTreeNM::go_to_father ( )
inline

Sets act_ptr to the father_ptr.

Definition at line 73 of file QuadTreeNM.h.

◆ go_to_lb_child()

void ogdf::energybased::fmmm::QuadTreeNM::go_to_lb_child ( )
inline

Sets act_ptr to the left_bottom_child_ptr.

Definition at line 94 of file QuadTreeNM.h.

◆ go_to_lt_child()

void ogdf::energybased::fmmm::QuadTreeNM::go_to_lt_child ( )
inline

Sets act_ptr to the left_top_child_ptr.

Definition at line 82 of file QuadTreeNM.h.

◆ go_to_rb_child()

void ogdf::energybased::fmmm::QuadTreeNM::go_to_rb_child ( )
inline

Sets act_ptr to the right_bottom_child_ptr.

Definition at line 100 of file QuadTreeNM.h.

◆ go_to_rt_child()

void ogdf::energybased::fmmm::QuadTreeNM::go_to_rt_child ( )
inline

Sets act_ptr to the right_top_child_ptr.

Definition at line 88 of file QuadTreeNM.h.

◆ init_tree()

void ogdf::energybased::fmmm::QuadTreeNM::init_tree ( )
inline

Creates the root node and lets act_ptr and root_ptr point to the root node.

Definition at line 61 of file QuadTreeNM.h.

◆ set_act_ptr()

void ogdf::energybased::fmmm::QuadTreeNM::set_act_ptr ( QuadTreeNodeNM a_ptr)
inline

Sets act_ptr to a_ptr.

Definition at line 129 of file QuadTreeNM.h.

◆ set_root_node()

void ogdf::energybased::fmmm::QuadTreeNM::set_root_node ( QuadTreeNodeNM r)
inline

Sets the content of *root_ptr to r.

Definition at line 132 of file QuadTreeNM.h.

◆ set_root_ptr()

void ogdf::energybased::fmmm::QuadTreeNM::set_root_ptr ( QuadTreeNodeNM r_ptr)
inline

Sets root_ptr to r_ptr.

Definition at line 126 of file QuadTreeNM.h.

◆ start_at_root()

void ogdf::energybased::fmmm::QuadTreeNM::start_at_root ( )
inline

Sets act_ptr to the root_ptr.

Definition at line 67 of file QuadTreeNM.h.

Member Data Documentation

◆ act_ptr

QuadTreeNodeNM* ogdf::energybased::fmmm::QuadTreeNM::act_ptr
private

points to the actual node

Definition at line 136 of file QuadTreeNM.h.

◆ root_ptr

QuadTreeNodeNM* ogdf::energybased::fmmm::QuadTreeNM::root_ptr
private

points to the root node

Definition at line 135 of file QuadTreeNM.h.


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