PhoenixGraph
01.2.3
Set of tools to simplify graph manipulation
Toggle main menu visibility
Loading...
Searching...
No Matches
PNTreeLight.h
Go to the documentation of this file.
1
/***************************************
2
Auteur : Pierre Aubert
3
Mail : pierre.aubert@lapp.in2p3.fr
4
Licence : CeCILL-C
5
****************************************/
6
7
#ifndef __PNTREELIGHT_H__
8
#define __PNTREELIGHT_H__
9
10
#include "
PNTreeLightNode.h
"
11
13
template
<
typename
T,
typename
U,
unsigned
char
N>
14
class
PNTreeLight
{
15
public
:
16
PNTreeLight
();
17
PNTreeLight
(T pos[N], T size[N], T sizeLimit = 1e-5);
18
virtual
~PNTreeLight
();
19
PNTreeLight
&
operator =
(
const
PNTreeLight<T,U,N>
& other);
20
21
bool
saveGnuplotData
(
const
std::string & fileName);
22
bool
saveGnuplotData
(std::ofstream & fs, T height);
23
24
void
setPosition
(T pos[N]);
25
void
setSize
(T size[N]);
26
void
setLimitSize
(T limitSize);
27
28
bool
addElement
(T * posData, U * data);
29
const
U *
getLastData
(T * posData)
const
;
30
const
U *
getCloserData
(T * posData)
const
;
31
const
U *
getCloserDataDist
(T & distFromCloserData, T * posData)
const
;
32
33
protected
:
34
void
copyPNTreeLight
(
const
PNTreeLight<T,U,N>
& other);
35
36
private
:
37
PNTreeLight
(
const
PNTreeLight<T,U,N>
& other);
38
void
initialisationPNTreeLight
(T pos[N], T size[N], T sizeLimit);
39
41
T
p_pos
[N];
43
T
p_size
[N];
45
T
p_sizeLimit
;
47
PNTreeLightNode<T,U,N>
p_node
;
48
};
49
50
#include "
PNTreeLight_impl.h
"
51
52
53
#endif
54
PNTreeLightNode.h
PNTreeLight_impl.h
PNTreeLightNode
Describe a Quad tree.
Definition
PNTreeLightNode.h:22
PNTreeLight::setPosition
void setPosition(T pos[N])
Set the position of the PNTreeLight.
Definition
PNTreeLight_impl.h:67
PNTreeLight::~PNTreeLight
virtual ~PNTreeLight()
Destructeur of PNTreeLight.
Definition
PNTreeLight_impl.h:40
PNTreeLight::operator=
PNTreeLight & operator=(const PNTreeLight< T, U, N > &other)
Definition of equal operator of PNTreeLight.
Definition
PNTreeLight_impl.h:148
PNTreeLight::PNTreeLight
PNTreeLight()
Default constructeur of PNTreeLight.
Definition
PNTreeLight_impl.h:16
PNTreeLight::saveGnuplotData
bool saveGnuplotData(const std::string &fileName)
Saves the PNTreeLight into a txt file for gnuplot.
Definition
PNTreeLight_impl.h:49
PNTreeLight::p_pos
T p_pos[N]
Position of the hyper cube.
Definition
PNTreeLight.h:41
PNTreeLight::p_sizeLimit
T p_sizeLimit
Size limit of the cells.
Definition
PNTreeLight.h:45
PNTreeLight::getLastData
const U * getLastData(T *posData) const
Get the data of the last node in the N tree.
Definition
PNTreeLight_impl.h:102
PNTreeLight::copyPNTreeLight
void copyPNTreeLight(const PNTreeLight< T, U, N > &other)
Copy function of PNTreeLight.
Definition
PNTreeLight_impl.h:157
PNTreeLight::p_size
T p_size[N]
Size of the hyper cube.
Definition
PNTreeLight.h:43
PNTreeLight::p_node
PNTreeLightNode< T, U, N > p_node
Table of the children of the current node.
Definition
PNTreeLight.h:47
PNTreeLight::getCloserData
const U * getCloserData(T *posData) const
Get the closer data from the given position.
Definition
PNTreeLight_impl.h:111
PNTreeLight::setSize
void setSize(T size[N])
Set the size of the PNTreeLight.
Definition
PNTreeLight_impl.h:75
PNTreeLight::getCloserDataDist
const U * getCloserDataDist(T &distFromCloserData, T *posData) const
Get the closer data from the given position.
Definition
PNTreeLight_impl.h:130
PNTreeLight::addElement
bool addElement(T *posData, U *data)
Add an element in the PNTreeLightNode.
Definition
PNTreeLight_impl.h:93
PNTreeLight::setLimitSize
void setLimitSize(T limitSize)
Set the limit size of the PNTreeLight cells.
Definition
PNTreeLight_impl.h:83
PNTreeLight::initialisationPNTreeLight
void initialisationPNTreeLight(T pos[N], T size[N], T sizeLimit)
Initialisation function of the class PNTreeLight.
Definition
PNTreeLight_impl.h:167
src
Tree
PNTreeLight.h
Generated by
1.17.0