Moogli
 All Classes
Voxel.hpp
1 #ifndef _VOXEL_HPP_
2 #define _VOXEL_HPP_
3 #include "utility/libraries.hpp"
4 #include "utility/constants.hpp"
5 
6 class Compartment; // forward declaration to avoid cyclic dependency issues
7 
8 class Voxel
9 {
10 public:
11  string id;
12  Compartment * compartment;
13  osg::ref_ptr<osg::Geometry> node;
14 
15  Voxel(const char * id);
16 
17  ~Voxel();
18 
19  const char *
20  get_id();
21 
22  void
23  set_compartment(Compartment * compartment);
24 
25  Compartment *
26  get_compartment();
27 
28  void
29  hide();
30 
31  void
32  show();
33 
34  bool
35  is_visible();
36 
37  void
38  set_geometry( PyObject * distal
39  , PyObject * proximal = Py_None
40  , PyObject * parent = Py_None
41  );
42 
43  void
44  set_color(PyObject * color);
45 };
46 
47 #endif /* _VOXEL_HPP_ */