54 #ifndef _GAMS_ALGORITHMS_MOVE_H_
55 #define _GAMS_ALGORITHMS_MOVE_H_
67 #include "madara/utility/EpochEnforcer.h"
93 const std::vector <pose::Pose> & locations,
96 madara::knowledge::KnowledgeBase * knowledge = 0,
158 madara::utility::EpochEnforcer<std::chrono::steady_clock>
enforcer_;
185 const madara::knowledge::KnowledgeMap & args,
186 madara::knowledge::KnowledgeBase * knowledge,
Copyright(c) 2014 Carnegie Mellon University.
Copyright(c) 2014 Carnegie Mellon University.
Copyright(c) 2014 Carnegie Mellon University.
Copyright(c) 2014 Carnegie Mellon University.
Base class for algorithm factories that classes derived from.
The base class that algorithms in GAMS use.
A factory class for creating Move algorithms.
virtual BaseAlgorithm * create(const madara::knowledge::KnowledgeMap &args, madara::knowledge::KnowledgeBase *knowledge, platforms::BasePlatform *platform, variables::Sensors *sensors, variables::Self *self, variables::Agents *agents)
Creates a Move Algorithm.
An algorithm for moving to a location.
bool waiting_
if true, is in a waiting state on wait_time_
bool finished_moving_
if true, all movements are completed
std::vector< pose::Pose > poses_
the locations to visit
int repeat_
number of times to repeat
double wait_time_
global wait time for each waypoint
size_t move_index_
current location to move to
std::string frame_
reference frame for coordinates
Move(const std::vector< pose::Pose > &locations, int repeat, double wait_time, madara::knowledge::KnowledgeBase *knowledge=0, platforms::BasePlatform *platform=0, variables::Sensors *sensors=0, variables::Self *self=0, variables::Agents *agents=0)
Constructor.
int cycles_
tracks the number of cycles completed through locations
madara::utility::EpochEnforcer< std::chrono::steady_clock > enforcer_
the timing enforcer
virtual int analyze(void)
Analyzes environment, platform, or other information.
void operator=(const Move &rhs)
Assignment operator.
virtual int plan(void)
Plans the next execution of the algorithm.
virtual int execute(void)
Plans the next execution of the algorithm.
A container for self referencing information.
std::map< std::string, Sensor * > Sensors
a map of sensor names to the sensor information
std::vector< Agent > Agents
An array of agent knowledge.
Contains all GAMS-related tools, classes and code.
Copyright (c) 2015-2018 Carnegie Mellon University.