00001
00002 #ifndef _VRSODE_SCENE_NODE_LOCK_H_
00003 #define _VRSODE_SCENE_NODE_LOCK_H_
00004
00005 #include <vrs/sg/scenething.h>
00006
00007 #include "random_utils/ThreadSafeObject.h"
00008
00009 namespace vrsode
00010 {
00011
00012 #ifdef _DEBUG
00013 class SceneNodeShouter : public VRS::SceneThing
00014 {
00015 public:
00016 SceneNodeShouter(VRS::SO<VRS::SceneThing> p_parent = 0){}
00017 virtual ~SceneNodeShouter(){}
00018 void evaluate(VRS::Engine* p_engine)
00019 { std::cout << "evaluated SceneNodeShouter" << std::endl; }
00020 };
00021 #endif
00022
00027 class SceneNodeLock : public VRS::SceneThing,
00028 public random_utils::ThreadSafeObject
00029 {
00030 public:
00031 SceneNodeLock(VRS::SO<VRS::SceneThing> p_parent = 0);
00032 virtual ~SceneNodeLock();
00033
00034 void preEvaluate(VRS::Engine* p_engine);
00035 void postEvaluate(VRS::Engine* p_engine);
00036 };
00037
00038 }
00039
00040 #endif