GAMS  1.4.0
gams::algorithms::AlgorithmFactory Class Referenceabstract

Base class for algorithm factories that classes derived from. More...

#include <AlgorithmFactory.h>

Inheritance diagram for gams::algorithms::AlgorithmFactory:
gams::algorithms::DebugAlgorithmFactory gams::algorithms::ExecutorFactory gams::algorithms::FollowFactory gams::algorithms::FormationCoverageFactory gams::algorithms::FormationFlyingFactory gams::algorithms::FormationSyncFactory gams::algorithms::GreetFactory gams::algorithms::GroupBarrierFactory gams::algorithms::HoldFactory gams::algorithms::HomeFactory gams::algorithms::JavaAlgorithmFactory gams::algorithms::KarlEvaluatorFactory gams::algorithms::LandFactory gams::algorithms::MessageProfilingFactory gams::algorithms::MoveFactory gams::algorithms::NullAlgorithmFactory gams::algorithms::PerformanceProfilingFactory gams::algorithms::PerimeterPatrolFactory gams::algorithms::SpellFactory gams::algorithms::TakeoffFactory gams::algorithms::WaitFactory gams::algorithms::ZoneCoverageFactory gams::algorithms::area_coverage::LocalPheremoneAreaCoverageFactory gams::algorithms::area_coverage::MinTimeAreaCoverageFactory gams::algorithms::area_coverage::PerimeterPatrolCoverageFactory gams::algorithms::area_coverage::PrioritizedMinTimeAreaCoverageFactory gams::algorithms::area_coverage::PriorityWeightedRandomAreaCoverageFactory gams::algorithms::area_coverage::SnakeAreaCoverageFactory gams::algorithms::area_coverage::UniformRandomAreaCoverageFactory gams::algorithms::area_coverage::UniformRandomEdgeCoverageFactory gams::algorithms::area_coverage::WaypointsCoverageFactory

Public Member Functions

 AlgorithmFactory ()
 Constructor. More...
 
virtual ~AlgorithmFactory ()
 Destructor. More...
 
virtual BaseAlgorithmcreate (const madara::knowledge::KnowledgeMap &args, madara::knowledge::KnowledgeBase *knowledge, platforms::BasePlatform *platform, variables::Sensors *sensors, variables::Self *self, variables::Agents *agents)=0
 Creates an algorithm. More...
 
void set_agents (variables::Agents *agents)
 Sets list of agents participating in swarm. More...
 
void set_knowledge (madara::knowledge::KnowledgeBase *knowledge)
 Sets the knowledge base. More...
 
void set_platform (platforms::BasePlatform *platform)
 Sets the map of platform names to platform information. More...
 
void set_self (variables::Self *self)
 Sets self-referencing variables. More...
 
void set_sensors (variables::Sensors *sensors)
 Sets the map of sensor names to sensor information. More...
 

Protected Attributes

variables::Agentsagents_
 list of agents participating in the swarm More...
 
madara::knowledge::KnowledgeBase * knowledge_
 knowledge base containing variables More...
 
platforms::BasePlatformplatform_
 platform variables More...
 
variables::Selfself_
 self-referencing variables More...
 
variables::Sensorssensors_
 sensor variables More...
 

Detailed Description

Base class for algorithm factories that classes derived from.

See also
BaseAlgorithm

Definition at line 72 of file AlgorithmFactory.h.

Constructor & Destructor Documentation

◆ AlgorithmFactory()

gams::algorithms::AlgorithmFactory::AlgorithmFactory ( )

Constructor.

◆ ~AlgorithmFactory()

virtual gams::algorithms::AlgorithmFactory::~AlgorithmFactory ( )
virtual

Destructor.

Member Function Documentation

◆ create()

virtual BaseAlgorithm* gams::algorithms::AlgorithmFactory::create ( const madara::knowledge::KnowledgeMap &  args,
madara::knowledge::KnowledgeBase *  knowledge,
platforms::BasePlatform platform,
variables::Sensors sensors,
variables::Self self,
variables::Agents agents 
)
pure virtual

Creates an algorithm.

Parameters
argsa vector of Knowledge Record arguments
knowledgethe knowledge base of variables and values
platformthe underlying platform the algorithm will use
sensorsmap of sensor names to sensor information
selfself-referencing variables for this agent
agentslist of agents in the swarm
Returns
the new algorithm

Implemented in gams::algorithms::ZoneCoverageFactory, gams::algorithms::WaitFactory, gams::algorithms::TakeoffFactory, gams::algorithms::SpellFactory, gams::algorithms::PerimeterPatrolFactory, gams::algorithms::PerformanceProfilingFactory, gams::algorithms::NullAlgorithmFactory, gams::algorithms::MoveFactory, gams::algorithms::MessageProfilingFactory, gams::algorithms::LandFactory, gams::algorithms::KarlEvaluatorFactory, gams::algorithms::JavaAlgorithmFactory, gams::algorithms::HomeFactory, gams::algorithms::HoldFactory, gams::algorithms::GroupBarrierFactory, gams::algorithms::GreetFactory, gams::algorithms::FormationSyncFactory, gams::algorithms::FormationFlyingFactory, gams::algorithms::FormationCoverageFactory, gams::algorithms::FollowFactory, gams::algorithms::ExecutorFactory, gams::algorithms::DebugAlgorithmFactory, gams::algorithms::area_coverage::WaypointsCoverageFactory, gams::algorithms::area_coverage::UniformRandomEdgeCoverageFactory, gams::algorithms::area_coverage::UniformRandomAreaCoverageFactory, gams::algorithms::area_coverage::SnakeAreaCoverageFactory, gams::algorithms::area_coverage::PriorityWeightedRandomAreaCoverageFactory, gams::algorithms::area_coverage::PrioritizedMinTimeAreaCoverageFactory, gams::algorithms::area_coverage::PerimeterPatrolCoverageFactory, gams::algorithms::area_coverage::MinTimeAreaCoverageFactory, and gams::algorithms::area_coverage::LocalPheremoneAreaCoverageFactory.

◆ set_agents()

void gams::algorithms::AlgorithmFactory::set_agents ( variables::Agents agents)

Sets list of agents participating in swarm.

Parameters
agentsagents in the swarm

◆ set_knowledge()

void gams::algorithms::AlgorithmFactory::set_knowledge ( madara::knowledge::KnowledgeBase *  knowledge)

Sets the knowledge base.

Parameters
knowledgethe knowledge base to use

◆ set_platform()

void gams::algorithms::AlgorithmFactory::set_platform ( platforms::BasePlatform platform)

Sets the map of platform names to platform information.

Parameters
platformthe platform to use

◆ set_self()

void gams::algorithms::AlgorithmFactory::set_self ( variables::Self self)

Sets self-referencing variables.

Parameters
selfself-referencing variables

◆ set_sensors()

void gams::algorithms::AlgorithmFactory::set_sensors ( variables::Sensors sensors)

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::AlgorithmFactory::agents_
protected

list of agents participating in the swarm

Definition at line 139 of file AlgorithmFactory.h.

◆ knowledge_

madara::knowledge::KnowledgeBase* gams::algorithms::AlgorithmFactory::knowledge_
protected

knowledge base containing variables

Definition at line 136 of file AlgorithmFactory.h.

◆ platform_

platforms::BasePlatform* gams::algorithms::AlgorithmFactory::platform_
protected

platform variables

Definition at line 142 of file AlgorithmFactory.h.

◆ self_

variables::Self* gams::algorithms::AlgorithmFactory::self_
protected

self-referencing variables

Definition at line 145 of file AlgorithmFactory.h.

◆ sensors_

variables::Sensors* gams::algorithms::AlgorithmFactory::sensors_
protected

sensor variables

Definition at line 148 of file AlgorithmFactory.h.


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