Voxellancer  0.3
A game about voxels in space
 All Classes Functions Pages
worldtreegeode.h
1 #pragma once
2 
3 #include <list>
4 
5 #include "geometry/aabb.h"
6 
7 
8 class WorldTreeNode;
9 class WorldObject;
10 
12 {
13 public:
14  WorldTreeGeode(WorldObject* worldObject);
15  virtual ~WorldTreeGeode();
16 
17  WorldObject* worldObject();
18  const WorldObject* worldObject() const;
19  void setWorldObject(WorldObject* worldObject);
20 
21  WorldTreeNode* containingNode();
22  const WorldTreeNode* containingNode() const;
23  void setContainingNode(WorldTreeNode* node);
24 
25  const IAABB& aabb() const;
26  void setAABB(const IAABB& aabb);
27 
28  std::list<WorldTreeNode*>& intersectingLeafs();
29  void addIntersectingLeaf(WorldTreeNode* leaf);
30  void removeIntersectingLeaf(WorldTreeNode* leaf);
31 
32  bool isPassive();
33 
34 protected:
35  WorldObject* m_worldObject;
36  WorldTreeNode* m_containingNode;
37  IAABB m_aabb;
38  bool m_passive;
39  std::list<WorldTreeNode*> m_intersectingLeafs;
40 };
41 
Definition: worldobject.h:43
Definition: worldtreegeode.h:11
Definition: worldtreenode.h:13