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
00018 class Node
00019 {
00020 public:
00021 Node();
00022 Node(PrimitiveP primitive);
00023 Node(NodeP node);
00024 ~Node(void);
00025 void setPrimitive(PrimitiveP primitive);
00026
00027 unsigned int size_;
00028 unsigned int depth_;
00029 PrimitiveP primitive_;
00030 };
00031 typedef boost::shared_ptr<Node> NodeP;
00032 }
00033
00034 #endif