GAMS  1.4.0
PlatformCollection.h
Go to the documentation of this file.
1 
54 #ifndef _GAMS_PLATFORM_COLLECTION_H_
55 #define _GAMS_PLATFORM_COLLECTION_H_
56 
58 #include "gams/variables/Self.h"
59 #include "gams/variables/Sensor.h"
64 #include "madara/knowledge/KnowledgeBase.h"
65 
66 namespace gams
67 {
68  namespace platforms
69  {
74  {
75  public:
84  madara::knowledge::KnowledgeBase * knowledge,
85  variables::Sensors * sensors,
86  variables::Platforms * platforms,
87  variables::Self * self);
88 
93 
98  void operator=(const PlatformCollection & rhs);
99 
104  virtual int analyze(void);
105 
110  virtual double get_accuracy() const;
111 
115  virtual std::string get_id() const;
116 
120  virtual double get_move_speed() const;
121 
125  virtual std::string get_name() const;
126 
131  virtual int home(void);
132 
137  virtual int land(void);
138 
145  virtual int move(const pose::Position & target,
146  const pose::PositionBounds &bounds);
147 
148  using BasePlatform::move;
149 
154  virtual int sense(void);
155 
160  virtual void set_move_speed(const double& speed);
161 
166  virtual int takeoff(void);
167 
168  protected:
169  };
170 
175  {
176  public:
177 
190  virtual BasePlatform * create(
191  const madara::knowledge::KnowledgeMap & args,
192  madara::knowledge::KnowledgeBase * knowledge,
193  variables::Sensors * sensors,
194  variables::Platforms * platforms,
195  variables::Self * self);
196  };
197  }
198 }
199 
200 #endif // _GAMS_PLATFORM_COLLECTION_H_
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.
Copyright(c) 2014 Carnegie Mellon University.
Copyright(c) 2014 Carnegie Mellon University.
The base platform for all platforms to use.
Definition: BasePlatform.h:113
virtual int move(const pose::Position &target)
Moves the platform to a location.
Definition: BasePlatform.h:230
A factory class for creating null(no-op) platforms.
virtual BasePlatform * create(const madara::knowledge::KnowledgeMap &args, madara::knowledge::KnowledgeBase *knowledge, variables::Sensors *sensors, variables::Platforms *platforms, variables::Self *self)
Creates a platform collection.
virtual std::string get_id() const
Gets the unique identifier of the platform.
virtual double get_move_speed() const
Get move speed.
virtual int takeoff(void)
Instructs the platform to take off.
virtual double get_accuracy() const
Get the location aproximation value of what is considered close enough.
virtual void set_move_speed(const double &speed)
Set move speed.
virtual std::string get_name() const
Gets the name of the platform.
virtual int analyze(void)
Analyzes platform information.
virtual int land(void)
Instructs the platform to land.
void operator=(const PlatformCollection &rhs)
Assignment operator.
PlatformCollection(madara::knowledge::KnowledgeBase *knowledge, variables::Sensors *sensors, variables::Platforms *platforms, variables::Self *self)
Constructor.
virtual int home(void)
Instructs the agent to return home.
virtual int move(const pose::Position &target, const pose::PositionBounds &bounds)
Moves the platform to a position.
virtual int sense(void)
Polls the sensor environment for useful information.
Base class for platform factories to create BasePlatforms.
Interface for defining a bounds checker for Positions.
Definition: Epsilon.h:68
A container for self referencing information.
Definition: Self.h:70
std::map< std::string, PlatformStatus > Platforms
a map of sensor names to the sensor information
std::map< std::string, Sensor * > Sensors
a map of sensor names to the sensor information
Definition: Sensor.h:238
Contains all GAMS-related tools, classes and code.
Copyright (c) 2015 Carnegie Mellon University.