00001
00005 #ifndef ROAD_PLAYER_H
00006 #define ROAD_PLAYER_H
00007
00008 #include <vector>
00009 #include <utils/Player.h>
00010 #include <TimeSource/TimeSource.h>
00011 #include <RoadDest/RoadStructs.h>
00012
00013 namespace utils {
00014 class ConfigFile;
00015 class Vec3d;
00016 class SymbolTable;
00017 };
00018
00025 class RoadPlayer {
00026 public:
00033 bool open(utils::ConfigFile& params, utils::SymbolTable* globals);
00034
00038 bool advance();
00039
00045 bool getPoints(utils::Time& time, std::vector< utils::Vec3d > & points);
00046
00055 bool nextPoints(utils::Time& time, std::vector< utils::Vec3d > & points,
00056 bool blocking=true);
00057
00059 TimeSource::PlayerManager* getManager() { return &_mgr; }
00060
00061 private:
00062 TimeSource::PlayerManager _mgr;
00063 utils::Player* _player;
00064 utils::PlayElem* _play_elem;
00065
00066 RoadDataStruct _input_area;
00067 utils::Time _play_time;
00068 };
00069
00070 #endif
00071