Modular Pedestrian Simulation Framework for Research and Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Attributes | List of all members
Menge::PluginEngine Class Reference

The class responsible for finding, managing, and deleting plugins. More...

#include <PluginEngine.h>

Public Member Functions

MENGE_API PluginEngine (SimulatorDB *simDB)
 Default constructor. More...
MENGE_API ~PluginEngine ()
MENGE_API size_t loadPlugins (const std::string &pluginFldr)
 Initialize plug-ins from the given directory. More...
MENGE_API void registerModelDBEntry (SimulatorDBEntry *dbEntry)
 Register a simulator database entry. More...
MENGE_API void registerActionFactory (BFSM::ActionFactory *factory)
 Register an ActionFactory. More...
MENGE_API void registerConditionFactory (BFSM::ConditionFactory *factory)
 Register a ConditionFactory. More...
MENGE_API void registerTargetFactory (BFSM::TargetFactory *factory)
 Register a TargetFactory. More...
MENGE_API void registerVelCompFactory (BFSM::VelCompFactory *factory)
 Register a VelCompFactory. More...
MENGE_API void registerVelModFactory (BFSM::VelModFactory *factory)
 Register a VelModFactory. More...
MENGE_API void registerTaskFactory (BFSM::TaskFactory *factory)
 Register a TaskFactory. More...
MENGE_API void registerGoalFactory (BFSM::GoalFactory *factory)
 Register a GoalFactory. More...
MENGE_API void registerGoalSelectorFactory (BFSM::GoalSelectorFactory *factory)
 Register a GoalSelectorFactory. More...
MENGE_API void registerElevationFactory (Agents::ElevationFactory *factory)
 Register an ElevationFactory. More...
MENGE_API void registerSpatialQueryFactory (Agents::SpatialQueryFactory *factory)
 Register an SpatialQueryFactory. More...
MENGE_API void registerAgentGeneratorFactory (Agents::AgentGeneratorFactory *factory)
 Register an AgentGeneratorFactory. More...
MENGE_API void registerObstacleSetFactory (Agents::ObstacleSetFactory *factory)
 Register an ObstacleSetFactory. More...
MENGE_API void registerProfileSelectorFactory (Agents::ProfileSelectorFactory *factory)
 Register an ProfileSelectorFactory. More...
MENGE_API void registerStateSelectorFactory (Agents::StateSelectorFactory *factory)
 Register an StateSelectorFactory. More...
MENGE_API void registerEventEffectFactory (EventEffectFactory *factory)
 Register an EventEffectFactory. More...
MENGE_API void registerEventTriggerFactory (EventTriggerFactory *factory)
 Register an EventTriggerFactory. More...
MENGE_API void registerEventTargetFactory (EventTargetFactory *factory)
 Register an EventTargetFactory. More...

Protected Attributes

PluginMap _plugins
 The loaded plugins.
 The simulator database for registration.

Detailed Description

The class responsible for finding, managing, and deleting plugins.

Constructor & Destructor Documentation

Menge::PluginEngine::PluginEngine ( SimulatorDB simDB)

Default constructor.

simDBA simulator database for pedestrian model registration

Member Function Documentation

size_t Menge::PluginEngine::loadPlugins ( const std::string &  pluginFldr)

Initialize plug-ins from the given directory.

pluginFldrThe folder to search for plugins.
The number of plugins successfully loaded.
void Menge::PluginEngine::registerActionFactory ( BFSM::ActionFactory factory)

Register an ActionFactory.

factoryAn instance of the ActionFactory to register
void Menge::PluginEngine::registerAgentGeneratorFactory ( Agents::AgentGeneratorFactory factory)

Register an AgentGeneratorFactory.

factoryAn instance of the AgentGeneratorFactory to register
void Menge::PluginEngine::registerConditionFactory ( BFSM::ConditionFactory factory)

Register a ConditionFactory.

factoryAn instance of the ConditionFactory to register
void Menge::PluginEngine::registerElevationFactory ( Agents::ElevationFactory factory)

Register an ElevationFactory.

factoryAn instance of the ElevationFactory to register
void Menge::PluginEngine::registerEventEffectFactory ( EventEffectFactory factory)

Register an EventEffectFactory.

factoryAn instance of the EventEffectFactory to register
void Menge::PluginEngine::registerEventTargetFactory ( EventTargetFactory factory)

Register an EventTargetFactory.

factoryAn instance of the EventTargetFactory to register
void Menge::PluginEngine::registerEventTriggerFactory ( EventTriggerFactory factory)

Register an EventTriggerFactory.

factoryAn instance of the EventTriggerFactory to register
void Menge::PluginEngine::registerGoalFactory ( BFSM::GoalFactory factory)

Register a GoalFactory.

factoryAn instance of the GoalFactory to register
void Menge::PluginEngine::registerGoalSelectorFactory ( BFSM::GoalSelectorFactory factory)

Register a GoalSelectorFactory.

factoryAn instance of the GoalSelectorFactory to register
void Menge::PluginEngine::registerModelDBEntry ( SimulatorDBEntry dbEntry)

Register a simulator database entry.

dbEntryAn instance of a model database entry to register.
void Menge::PluginEngine::registerObstacleSetFactory ( Agents::ObstacleSetFactory factory)

Register an ObstacleSetFactory.

factoryAn instance of the ObstacleSetFactory to register
void Menge::PluginEngine::registerProfileSelectorFactory ( Agents::ProfileSelectorFactory factory)

Register an ProfileSelectorFactory.

factoryAn instance of the ProfileSelectorFactory to register
void Menge::PluginEngine::registerSpatialQueryFactory ( Agents::SpatialQueryFactory factory)

Register an SpatialQueryFactory.

factoryAn instance of the SpatialQueryFactory to register
void Menge::PluginEngine::registerStateSelectorFactory ( Agents::StateSelectorFactory factory)

Register an StateSelectorFactory.

factoryAn instance of the StateSelectorFactory to register
void Menge::PluginEngine::registerTargetFactory ( BFSM::TargetFactory factory)

Register a TargetFactory.

factoryAn instance of the TargetFactory to register
void Menge::PluginEngine::registerTaskFactory ( BFSM::TaskFactory factory)

Register a TaskFactory.

factoryAn instance of the TaskFactory to register
void Menge::PluginEngine::registerVelCompFactory ( BFSM::VelCompFactory factory)

Register a VelCompFactory.

factoryAn instance of the VelCompFactory to register
void Menge::PluginEngine::registerVelModFactory ( BFSM::VelModFactory factory)

Register a VelModFactory.

factoryAn instance of the VelModifier to register

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