00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _TEST_SCENE_H_
00021 #define _TEST_SCENE_H_
00022
00023 #include "Scene.h"
00024 #include "Geometry.h"
00025 #include "Flock.h"
00026
00027 namespace TaskBasedFlockSim
00028 {
00029
00030 class TestScene :
00031 public TestFrameWork::Scene
00032 {
00033 public:
00034 TestScene(void);
00035
00036 ~TestScene(void);
00037
00038 void SetTasksCount(size_t tasksCount);
00039
00040 size_t GetTasksCount(void) const;
00041
00042 Flock& GetFlock(void);
00043
00044 const TestFrameWork::Geometry& GetTeapot(void) const;
00045
00046 const std::wstring& GetVertexShaderFile(void) const;
00047
00048 const std::wstring& GetPixelShaderFile(void) const;
00049
00050 const TestFrameWork::Matrix4x4& GetTeapotTransformation(void) const;
00051
00052 void SetLogicElapsedTime(float elpasedTime);
00053
00054 float GetLogicElapsedTime(void) const;
00055
00056 protected:
00057 Flock m_flock;
00058
00059 TestFrameWork::Geometry m_teapot;
00060
00061 TestFrameWork::Matrix4x4 m_transformation;
00062
00063 const std::wstring m_vertexShaderFile;
00064 const std::wstring m_pixelShaderFile;
00065
00066 size_t m_tasksCount;
00067
00068 float m_logicElapsedTime;
00069
00070 void Clone(TestFrameWork::ScenePtr scene);
00071 };
00072
00073 typedef boost::shared_ptr<TestScene> TestScenePtr;
00074 }
00075
00076 #endif