Helios++
Helios software for LiDAR simulations
PythonDVec3.h
1
#pragma once
2
3
#ifdef PYTHON_BINDING
4
5
#include <glm/glm.hpp>
6
#include <memory>
7
8
namespace
pyhelios{
9
16
class
PythonDVec3
{
17
// *** ATTRIBUTES *** //
18
// ******************** //
19
private
:
20
bool
release = 1;
21
22
public
:
23
glm::dvec3 * v =
nullptr
;
24
25
// *** CONSTRUCTION *** //
26
// ********************** //
27
PythonDVec3
(glm::dvec3
const
v) {
28
this->v =
new
glm::dvec3(v);
29
release =
true
;
30
}
31
PythonDVec3
(glm::dvec3 *v){
32
this->v = v;
33
release =
false
;
34
}
35
virtual
~
PythonDVec3
(){
36
if
(release && v!=
nullptr
)
delete
v;
37
}
38
39
// *** GETTERS and SETTERS *** //
40
// ***************************** //
41
double
getX() {
return
v->x;}
42
void
setX(
double
x) {v->x = x;}
43
double
getY() {
return
v->y;}
44
void
setY(
double
y) {v->y = y;}
45
double
getZ() {
return
v->z;}
46
void
setZ(
double
z) {v->z = z;}
47
48
};
49
50
}
51
52
#endif
pyhelios::PythonDVec3
Wrapper to communicate glm::dvec3 with python.
Definition:
PythonDVec3.h:16
src
pybinds
PythonDVec3.h
Generated by
1.9.1