19 #include <luabind/luabind.hpp>
29 typedef std::list<DtLocation3D>
Points;
38 virtual luabind::object
getObject(lua_State* L,
int& index, std::string& message) = 0;
41 virtual luabind::object
getDebugObject(lua_State* L) {
return luabind::newtable(L); };
44 virtual void cancel(lua_State* L) {};
71 Points boundingArea = Points());
77 virtual void taskComplete() = 0;
95 static boost::shared_ptr<DtLuaNavRandomPointJob> Make(
99 double minDistanceFromStart,
100 double maxDistanceFromStart,
103 int numberOfPoints = 1,
104 double minDistanceBetweenPoints = 0.0,
106 bool isStrict =
true,
107 bool tightlyPack =
false,
108 bool needLos =
false,
109 bool groundClamp =
false,
120 virtual luabind::object
getObject(lua_State* L,
int& index, std::string& message);
127 virtual void cancel(lua_State* L);
139 virtual void start();
157 double minDistanceFromStart,
158 double maxDistanceFromStart,
160 Points boundingArea =
Points(),
161 int numberOfPoints = 1,
162 double minDistanceBetweenPoints = 0.0,
164 bool isStrict =
true,
165 bool tightlyPack =
false,
166 bool needLos =
false,
167 bool groundClamp =
false,
168 Points leftOfLine =
Points(),
190 static boost::shared_ptr<DtLuaNavPointOfInterestJob> Make(
204 virtual luabind::object
getObject(lua_State* L,
int& index, std::string& message);
216 virtual void start();
244 static boost::shared_ptr<DtLuaNavCoverPointJob> Make(
250 double distanceFromThreat,
252 unsigned numberOfPoints);
261 virtual luabind::object
getObject(lua_State* L,
int& index, std::string& message);
273 virtual void start();
293 double distanceFromThreat,
295 unsigned numberOfPoints);
311 static boost::shared_ptr<DtLuaNavFindPathJob> Make(
DtSimManager* mgr,
315 bool useAbstractGraphs,
316 const DtLocation3D& avoidLocation,
double avoidanceRadius);
325 virtual luabind::object
getObject(lua_State* L,
int& index, std::string& message);
337 virtual void start();
355 bool useAbstractGraphs,
356 const DtLocation3D& avoidLocation,
double avoidanceRadius);
371 virtual void addJob(boost::shared_ptr<DtLuaNavJob> job);
373 std::list<boost::shared_ptr<DtLuaNavJob> >
myJobs;