GAMS  1.4.0
gams::algorithms::area_coverage::BaseAreaCoverage Class Referenceabstract

Base class for all area coverages. More...

#include <BaseAreaCoverage.h>

Inheritance diagram for gams::algorithms::area_coverage::BaseAreaCoverage:
gams::algorithms::BaseAlgorithm gams::algorithms::area_coverage::LocalPheremoneAreaCoverage gams::algorithms::area_coverage::MinTimeAreaCoverage gams::algorithms::area_coverage::PerimeterPatrolCoverage gams::algorithms::area_coverage::PriorityWeightedRandomAreaCoverage gams::algorithms::area_coverage::SnakeAreaCoverage gams::algorithms::area_coverage::UniformRandomAreaCoverage gams::algorithms::area_coverage::UniformRandomEdgeCoverage gams::algorithms::area_coverage::WaypointsCoverage

Public Member Functions

 BaseAreaCoverage (madara::knowledge::KnowledgeBase *knowledge=0, platforms::BasePlatform *platform=0, variables::Sensors *sensors=0, variables::Self *self=0, variables::Agents *agents=0, double e_time=-1.0)
 Constructor. More...
 
virtual ~BaseAreaCoverage ()
 Destructor. More...
 
virtual int analyze (void)
 Analyzes environment, platform, or other information. More...
 
virtual int execute (void)
 Plans the next execution of the algorithm. More...
 
variables::Agentsget_agents (void)
 Gets the list of agents. More...
 
variables::AlgorithmStatusget_algorithm_status (void)
 Gets algorithm status variables. More...
 
madara::knowledge::KnowledgeBase * get_knowledge_base (void)
 Gets the knowledge base. More...
 
utility::GPSPosition get_next_position (void) const
 Get next position. More...
 
platforms::BasePlatformget_platform (void)
 Gets the platform. More...
 
variables::Selfget_self (void)
 Gets self-defined variables. More...
 
variables::Sensorsget_sensors (void)
 Gets the available sensor information. More...
 
void operator= (const BaseAreaCoverage &rhs)
 Assignment operator. More...
 
virtual int plan (void)
 Plans the next execution of the algorithm. More...
 
virtual void set_agents (variables::Agents *agents)
 Sets the list of agents in the swarm. More...
 
virtual void set_platform (platforms::BasePlatform *platform)
 Sets the platform. More...
 
virtual void set_self (variables::Self *self)
 Sets the map of sensor names to sensor information. More...
 
virtual void set_sensors (variables::Sensors *sensors)
 Sets the map of sensor names to sensor information. More...
 

Protected Member Functions

int check_if_finished (int ret_val) const
 Check if finished based on time. More...
 
virtual void generate_new_position (void)=0
 Generate new next position. More...
 

Protected Attributes

variables::Agentsagents_
 the list of agents potentially participating in the algorithm More...
 
madara::utility::EpochEnforcer< std::chrono::steady_clock > enforcer_
 enforcer for maximum time More...
 
unsigned int executions_
 number of executions More...
 
bool initialized_
 indicates whether the algorithm is initialized More...
 
madara::knowledge::KnowledgeBase * knowledge_
 provides access to the knowledge base More...
 
double max_time_
 for keeping track of the time set for maximum coverage time More...
 
utility::GPSPosition next_position_
 next position More...
 
platforms::BasePlatformplatform_
 provides access to the platform More...
 
variables::Selfself_
 the algorithm's concept of self More...
 
variables::Sensorssensors_
 provides access to sensor information More...
 
variables::AlgorithmStatus status_
 provides access to status information for this platform More...
 

Detailed Description

Base class for all area coverages.

Definition at line 73 of file BaseAreaCoverage.h.

Constructor & Destructor Documentation

◆ BaseAreaCoverage()

gams::algorithms::area_coverage::BaseAreaCoverage::BaseAreaCoverage ( madara::knowledge::KnowledgeBase *  knowledge = 0,
platforms::BasePlatform platform = 0,
variables::Sensors sensors = 0,
variables::Self self = 0,
variables::Agents agents = 0,
double  e_time = -1.0 
)

Constructor.

Parameters
knowledgethe knowledge base of variables and values
platformthe underlying platform the algorithm will use
sensorsmap of sensor names to sensor information
selfself-referencing variables of this agent
agentslist of agents in the swarm
e_timeexecution time

◆ ~BaseAreaCoverage()

virtual gams::algorithms::area_coverage::BaseAreaCoverage::~BaseAreaCoverage ( )
virtual

Destructor.

Member Function Documentation

◆ analyze()

virtual int gams::algorithms::area_coverage::BaseAreaCoverage::analyze ( void  )
virtual

Analyzes environment, platform, or other information.

Returns
bitmask status of the platform.
See also
Status.

Implements gams::algorithms::BaseAlgorithm.

Reimplemented in gams::algorithms::area_coverage::WaypointsCoverage, and gams::algorithms::area_coverage::MinTimeAreaCoverage.

◆ check_if_finished()

int gams::algorithms::area_coverage::BaseAreaCoverage::check_if_finished ( int  ret_val) const
protected

Check if finished based on time.

◆ execute()

virtual int gams::algorithms::area_coverage::BaseAreaCoverage::execute ( void  )
virtual

Plans the next execution of the algorithm.

Returns
bitmask status of the platform.
See also
Status.

Implements gams::algorithms::BaseAlgorithm.

◆ generate_new_position()

◆ get_agents()

variables::Agents* gams::algorithms::BaseAlgorithm::get_agents ( void  )
inherited

Gets the list of agents.

◆ get_algorithm_status()

variables::AlgorithmStatus* gams::algorithms::BaseAlgorithm::get_algorithm_status ( void  )
inherited

Gets algorithm status variables.

◆ get_knowledge_base()

madara::knowledge::KnowledgeBase* gams::algorithms::BaseAlgorithm::get_knowledge_base ( void  )
inherited

Gets the knowledge base.

◆ get_next_position()

utility::GPSPosition gams::algorithms::area_coverage::BaseAreaCoverage::get_next_position ( void  ) const

Get next position.

Returns
next_position_ member

◆ get_platform()

platforms::BasePlatform* gams::algorithms::BaseAlgorithm::get_platform ( void  )
inherited

Gets the platform.

◆ get_self()

variables::Self* gams::algorithms::BaseAlgorithm::get_self ( void  )
inherited

Gets self-defined variables.

◆ get_sensors()

variables::Sensors* gams::algorithms::BaseAlgorithm::get_sensors ( void  )
inherited

Gets the available sensor information.

◆ operator=()

void gams::algorithms::area_coverage::BaseAreaCoverage::operator= ( const BaseAreaCoverage rhs)

Assignment operator.

Parameters
rhsvalues to copy

◆ plan()

virtual int gams::algorithms::area_coverage::BaseAreaCoverage::plan ( void  )
virtual

Plans the next execution of the algorithm.

Returns
bitmask status of the platform.
See also
Status.

Implements gams::algorithms::BaseAlgorithm.

◆ set_agents()

virtual void gams::algorithms::BaseAlgorithm::set_agents ( variables::Agents agents)
virtualinherited

Sets the list of agents in the swarm.

Parameters
agentslist of agents

◆ set_platform()

virtual void gams::algorithms::BaseAlgorithm::set_platform ( platforms::BasePlatform platform)
virtualinherited

Sets the platform.

Parameters
platformthe underlying platform the algorithm will use

◆ set_self()

virtual void gams::algorithms::BaseAlgorithm::set_self ( variables::Self self)
virtualinherited

Sets the map of sensor names to sensor information.

Parameters
selfpointer to self-referencing variables container

◆ set_sensors()

virtual void gams::algorithms::BaseAlgorithm::set_sensors ( variables::Sensors sensors)
virtualinherited

Sets the map of sensor names to sensor information.

Parameters
sensorsmap of sensor names to sensor information

Member Data Documentation

◆ agents_

variables::Agents* gams::algorithms::BaseAlgorithm::agents_
protectedinherited

the list of agents potentially participating in the algorithm

Definition at line 201 of file BaseAlgorithm.h.

◆ enforcer_

madara::utility::EpochEnforcer<std::chrono::steady_clock> gams::algorithms::area_coverage::BaseAreaCoverage::enforcer_
protected

enforcer for maximum time

Definition at line 149 of file BaseAreaCoverage.h.

◆ executions_

unsigned int gams::algorithms::BaseAlgorithm::executions_
protectedinherited

number of executions

Definition at line 204 of file BaseAlgorithm.h.

◆ initialized_

bool gams::algorithms::area_coverage::BaseAreaCoverage::initialized_
protected

indicates whether the algorithm is initialized

Definition at line 143 of file BaseAreaCoverage.h.

◆ knowledge_

madara::knowledge::KnowledgeBase* gams::algorithms::BaseAlgorithm::knowledge_
protectedinherited

provides access to the knowledge base

Definition at line 207 of file BaseAlgorithm.h.

◆ max_time_

double gams::algorithms::area_coverage::BaseAreaCoverage::max_time_
protected

for keeping track of the time set for maximum coverage time

Definition at line 146 of file BaseAreaCoverage.h.

◆ next_position_

utility::GPSPosition gams::algorithms::area_coverage::BaseAreaCoverage::next_position_
protected

next position

Definition at line 140 of file BaseAreaCoverage.h.

◆ platform_

platforms::BasePlatform* gams::algorithms::BaseAlgorithm::platform_
protectedinherited

provides access to the platform

Definition at line 210 of file BaseAlgorithm.h.

◆ self_

variables::Self* gams::algorithms::BaseAlgorithm::self_
protectedinherited

the algorithm's concept of self

Definition at line 213 of file BaseAlgorithm.h.

◆ sensors_

variables::Sensors* gams::algorithms::BaseAlgorithm::sensors_
protectedinherited

provides access to sensor information

Definition at line 216 of file BaseAlgorithm.h.

◆ status_

variables::AlgorithmStatus gams::algorithms::BaseAlgorithm::status_
protectedinherited

provides access to status information for this platform

Definition at line 219 of file BaseAlgorithm.h.


The documentation for this class was generated from the following file: