00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _FLOCK_TASK_H_
00021 #define _FLOCK_TASK_H_
00022
00023 #include "ITask.h"
00024 #include "Flock.h"
00025
00026 namespace TaskBasedFlockSim
00027 {
00028
00029 class FlockTask :
00030 public ITask
00031 {
00032 public:
00033 FlockTask(const Flock& flock, Flock& flockBuffer,
00034 size_t begin, size_t end, float elapsedTime);
00035
00036 ~FlockTask(void);
00037
00038 void DoWork(void);
00039
00040 private:
00041 const Flock& m_flock;
00042 Flock& m_flockBuffer;
00043
00044 const size_t m_begin;
00045 const size_t m_end;
00046
00047 const float m_elapsedTime;
00048 };
00049
00050 typedef boost::shared_ptr<FlockTask> FlockTaskPtr;
00051
00052 }
00053
00054 #endif