00001 #ifndef _TRANSFORM_NODE_H_ 00002 #define _TRANSFORM_NODE_H_ 00003 00004 #include "cglib/scene_graph_node.h" 00005 #include "cglib/transform.h" 00006 #include "cglib/reference.h" 00007 00009 class TransformNode : public SceneGraphNode 00010 { 00011 public: 00013 TransformNode (); 00014 00016 virtual ~TransformNode (); 00017 00019 virtual void accept(Visitor *visitor); 00020 00022 Transform get_transform() const; 00023 00025 void set_transform(const Transform &_transform); 00026 00028 SceneGraphNode *get_child(); 00029 00031 void set_child(SceneGraphNode *_child); 00032 00033 private: 00034 Reference<SceneGraphNode> child; 00035 Transform transform; 00036 }; 00037 00038 #endif /* _TRANSFORM_NODE_H_ */