00001 #ifndef Node_h
00002 #define Node_h
00003 #include <vector>
00004 #include "Primitive.h"
00005
00006
00007 namespace Tree
00008 {
00009
00010 class Node;
00011 typedef boost::shared_ptr<Node> NodeP;
00012
00019 class Node
00020 {
00021 public:
00022 Node();
00023 Node(PrimitiveP primitive);
00024 Node(NodeP node);
00025 ~Node(void);
00026 void setPrimitive(PrimitiveP primitive);
00027
00028 unsigned int size_;
00029 unsigned int depth_;
00030 PrimitiveP primitive_;
00031 };
00032 typedef boost::shared_ptr<Node> NodeP;
00033 }
00034
00035 #endif