GAMS  1.4.0
FormationCoverage.h
Go to the documentation of this file.
1 
56 #ifndef _GAMS_ALGORITHMS_FORMATION_COVERAGE_H_
57 #define _GAMS_ALGORITHMS_FORMATION_COVERAGE_H_
58 
59 #include "gams/variables/Sensor.h"
63 #include "gams/variables/Self.h"
68 
69 namespace gams
70 {
71  namespace algorithms
72  {
77  {
78  public:
94  const std::string & head_id,
95  const std::vector<double> & offset,
96  const std::vector<double> & destination,
97  const std::string & group_name,
98  const std::string & modifier,
99  const std::string & coverage,
100  const madara::knowledge::KnowledgeMap & cover_args,
101  madara::knowledge::KnowledgeBase * knowledge = 0,
102  platforms::BasePlatform * platform = 0,
103  variables::Sensors * sensors = 0,
104  variables::Self * self = 0);
105 
110 
115  void operator=(const FormationCoverage & rhs);
116 
121  virtual int analyze(void);
122 
127  virtual int execute(void);
128 
133  virtual int plan(void);
134 
135  protected:
138 
141 
144 
146  madara::knowledge::containers::NativeDoubleArray head_destination_;
147  };
148 
153  {
154  public:
155 
176  const madara::knowledge::KnowledgeMap & args,
177  madara::knowledge::KnowledgeBase * knowledge,
178  platforms::BasePlatform * platform,
179  variables::Sensors * sensors,
180  variables::Self * self,
181  variables::Agents * agents);
182  };
183  }
184 }
185 
186 #endif // _GAMS_ALGORITHMS_FORMATION_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.
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 Formation 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 Formation Coverage Algorithm.
An algorithm for covering an area in formation.
void operator=(const FormationCoverage &rhs)
Assignment operator.
virtual int analyze(void)
Analyzes environment, platform, or other information.
FormationCoverage(const std::string &head_id, const std::vector< double > &offset, const std::vector< double > &destination, const std::string &group_name, const std::string &modifier, const std::string &coverage, const madara::knowledge::KnowledgeMap &cover_args, madara::knowledge::KnowledgeBase *knowledge=0, platforms::BasePlatform *platform=0, variables::Sensors *sensors=0, variables::Self *self=0)
Constructor.
virtual int plan(void)
Plans the next execution of the algorithm.
madara::knowledge::containers::NativeDoubleArray head_destination_
head destination
area_coverage::BaseAreaCoverage * head_algo_
algorithm for area coverage by head
bool is_covering_
performing area coverage
virtual int execute(void)
Plans the next execution of the algorithm.
FormationFlying * my_formation_
algorithms for followers
An algorithm for moving in formation.
The base platform for all platforms to use.
Definition: BasePlatform.h:113
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.