GAMS  1.4.0
UniformRandomEdgeCoverage.h
Go to the documentation of this file.
1 
55 #ifndef _GAMS_ALGORITHMS_AREA_COVERAGE_UNIFORM_RANDOM_EDGE_COVERAGE_H_
56 #define _GAMS_ALGORITHMS_AREA_COVERAGE_UNIFORM_RANDOM_EDGE_COVERAGE_H_
57 
60 
61 #include "gams/variables/Sensor.h"
64 #include "gams/variables/Self.h"
66 #include "gams/pose/Region.h"
67 
68 namespace gams
69 {
70  namespace algorithms
71  {
72  namespace area_coverage
73  {
79  {
80  public:
92  const std::string& prefix,
93  double e_time,
94  madara::knowledge::KnowledgeBase * knowledge = 0,
95  platforms::BasePlatform * platform = 0,
96  variables::Sensors * sensors = 0,
97  variables::Self * self = 0,
98  variables::Agents * agents = 0);
99 
104 
110 
111  protected:
115  virtual void generate_new_position(void);
116 
119  }; // class UniformRandomEdgeCoverage
120 
126  : public AlgorithmFactory
127  {
128  public:
129 
145  const madara::knowledge::KnowledgeMap & args,
146  madara::knowledge::KnowledgeBase * knowledge,
147  platforms::BasePlatform * platform,
148  variables::Sensors * sensors,
149  variables::Self * self,
150  variables::Agents * agents);
151  };
152  } // namespace area_coverage
153  } // namespace algorithms
154 } // namespace gams
155 
156 #endif // _GAMS_ALGORITHMS_AREA_COVERAGE_UNIFORM_RANDOM_EDGE_COVERAGE_H_
Copyright(c) 2014 Carnegie Mellon University.
Copyright(c) 2014 Carnegie Mellon University.
Copyright(c) 2014 Carnegie Mellon University.
Copyright (c) 2014 Carnegie Mellon University.
#define GAMS_EXPORT
Definition: GamsExport.h:20
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.
Definition: BaseAlgorithm.h:95
A factory class for creating uniform random edge coverage 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 uniform random edge coverage algorithm.
Area coverage that selects region edge locations in a uniform distribution.
UniformRandomEdgeCoverage(const std::string &prefix, double e_time, madara::knowledge::KnowledgeBase *knowledge=0, platforms::BasePlatform *platform=0, variables::Sensors *sensors=0, variables::Self *self=0, variables::Agents *agents=0)
Constructor.
virtual void generate_new_position(void)
Generate new next position.
void operator=(const UniformRandomEdgeCoverage &rhs)
Assignment operator.
The base platform for all platforms to use.
Definition: BasePlatform.h:113
A helper class for region information.
Definition: Region.h:79
A container for self referencing information.
Definition: Self.h:70
std::map< std::string, Sensor * > Sensors
a map of sensor names to the sensor information
Definition: Sensor.h:238
std::vector< Agent > Agents
An array of agent knowledge.
Definition: Agent.h:246
Contains all GAMS-related tools, classes and code.
Copyright(c) 2014 Carnegie Mellon University.