- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- File List

# src/TaskBasedFlockSim/Logic.h

    00001
    00002
    00003
    00004
    00005
    00006
    00007
    00008
    00009
    00010
    00011
    00012
    00013
    00014
    00015
    00016
    00017
    00018
    00019
    00020 #ifndef _LOGIC_H_
    00021 #define _LOGIC_H_
    00022
    00023 #include "IThreadCallable.h"
    00024 #include "ILogicCallable.h"
    00025 #include "UserEventQueue.h"
    00026 #include "IRenderCallable.h"
    00027
    00028 #include <boost\shared_ptr.hpp>
    00029
    00030 #include "Scene.h"
    00031
    00032 namespace TestFrameWork
    00033 {
    00034
    00035 class Logic :
    00036         public IThreadCallable
    00037 {
    00038 public:
    00039         Logic(ILogicCallablePtr logic, ScenePtr scene, ScenePtr sceneBuffer);
    00040
    00041         ~Logic();
    00042
    00043         void Initialize(void);
    00044
    00045         UserEventQueue& GetEventQueue(void);
    00046
    00047         void Run(float elapsedTime);
    00048
    00049 private:
    00050         ILogicCallablePtr m_logic;
    00051
    00052         TestFrameWork::ScenePtr m_scene;
    00053         TestFrameWork::ScenePtr m_sceneBuffer;
    00054
    00055         UserEventQueue m_events;
    00056
    00057         void ProcessUserQueue(float elapsedTime);
    00058 };
    00059
    00060 typedef boost::shared_ptr<Logic> LogicPtr;
    00061 }
    00062
    00063 #endif