56 #ifndef _GAMS_ALGORITHMS_PERIMETER_PATROL_H_ 57 #define _GAMS_ALGORITHMS_PERIMETER_PATROL_H_ 67 #include "madara/utility/EpochEnforcer.h" 93 const std::string & area,
96 madara::knowledge::KnowledgeBase * knowledge = 0,
117 virtual int analyze (
void);
123 virtual int execute (
void);
129 virtual int plan (
void);
136 void generate_locations (
void);
157 madara::utility::EpochEnforcer<std::chrono::steady_clock>
enforcer_;
184 const madara::knowledge::KnowledgeMap & args,
185 madara::knowledge::KnowledgeBase * knowledge,
194 #endif // _GAMS_ALGORITHMS_PERIMETER_PATROL_H_ double max_time_
the amount of time to spend patrolling in seconds
Base class for algorithm factories that classes derived from.
A factory class for creating PerimeterPatrol algorithms.
bool counter_
patrol counter clockwise
Copyright (c) 2014 Carnegie Mellon University.
std::map< std::string, Sensor * > Sensors
a map of sensor names to the sensor information
Copyright (c) 2014 Carnegie Mellon University.
std::vector< Agent > Agents
An array of agent knowledge.
bool initialized_
indicates whether or not generate_locations has been succeeded
std::string area_
the region/area to patrol
Copyright (c) 2014 Carnegie Mellon University.
size_t move_index_
current location to move to
madara::utility::EpochEnforcer< std::chrono::steady_clock > enforcer_
max run time enforcer
Contains all GAMS-related tools, classes and code.
A container for self referencing information.
The base class that algorithms in GAMS use.
Copyright (c) 2014 Carnegie Mellon University.
An algorithm for patrolling a region.
std::vector< pose::Position > locations_
the locations to visit