Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/trunk/src/lib/collision_detection/bv_tree_node.h @ 5279

Last change on this file since 5279 was 5279, checked in by bensch, 19 years ago

orxonox/trunk: almost mac compatibility

File size: 924 bytes
Line 
1/*!
2 * @file bv_tree.h
3  *  Definition of a bounding volume tree
4
5*/
6
7#ifndef _BV_TREE_NODE_H
8#define _BV_TREE_NODE_H
9
10#include "base_object.h"
11#include "abstract_model.h"
12
13// FORWARD DEFINITION
14class BoundingVolume;
15class BVTree;
16class PNode;
17class WorldEntity;
18template<class T> class tList;
19
20//! A class that represents a bounding volume tree
21class BVTreeNode : public BaseObject {
22
23 public:
24  BVTreeNode();
25  virtual ~BVTreeNode();
26
27  virtual void spawnBVTree(const int depth, sVec3D *verticesList, const int length ) = 0;
28
29  virtual BoundingVolume* getBV(int index) const = 0;
30  inline const int getIndex() { return this->treeIndex; }
31
32  virtual void collideWith(BVTreeNode* treeNode, WorldEntity* nodeA, WorldEntity* nodeB) = 0;
33
34  virtual void drawBV(int depth, int drawMode) = 0;
35
36
37 private:
38  unsigned int        treeIndex;                  //!< Index number of the BV in the tree
39
40};
41
42#endif /* _BV_TREE_NODE_H */
Note: See TracBrowser for help on using the repository browser.