47 #ifndef FLATLAND_PLUGIN_MANAGER_H 48 #define FLATLAND_PLUGIN_MANAGER_H 50 #include <Box2D/Box2D.h> 51 #include <flatland_server/model.h> 52 #include <flatland_server/model_plugin.h> 53 #include <flatland_server/timekeeper.h> 54 #include <flatland_server/world_plugin.h> 55 #include <flatland_server/yaml_reader.h> 56 #include <pluginlib/class_loader.h> 57 #include <yaml-cpp/yaml.h> 66 std::vector<boost::shared_ptr<ModelPlugin>> model_plugins_;
67 pluginlib::ClassLoader<flatland_server::ModelPlugin> *model_plugin_loader_;
69 std::vector<boost::shared_ptr<WorldPlugin>> world_plugins_;
70 pluginlib::ClassLoader<flatland_server::WorldPlugin> *world_plugin_loader_;
133 void PreSolve(b2Contact *contact,
const b2Manifold *oldManifold);
140 void PostSolve(b2Contact *contact,
const b2ContactImpulse *impulse);
143 #endif // FLATLAND_PLUGIN_MANAGER_H void PreSolve(b2Contact *contact, const b2Manifold *oldManifold)
Method called for Box2D presolve.
Definition: plugin_manager.cpp:232
void DeleteModelPlugin(Model *model)
This method removes all model plugins associated with a given mode.
Definition: plugin_manager.cpp:96
void EndContact(b2Contact *contact)
Method called for a box2D end contact.
Definition: plugin_manager.cpp:226
PluginManager()
Plugin manager constructor.
Definition: plugin_manager.cpp:57
~PluginManager()
Plugin manager destructor.
Definition: plugin_manager.cpp:66
void BeginContact(b2Contact *contact)
Method called for a box2D begin contact.
Definition: plugin_manager.cpp:220
void AfterPhysicsStep(const Timekeeper &timekeeper)
This method is called after the Box2D physics step.
Definition: plugin_manager.cpp:87
Definition: plugin_manager.h:64
Definition: timekeeper.h:55
void LoadModelPlugin(Model *model, YamlReader &plugin_reader)
Load model plugins.
Definition: plugin_manager.cpp:105
void BeforePhysicsStep(const Timekeeper &timekeeper)
This method is called before the Box2D physics step.
Definition: plugin_manager.cpp:78
Definition: yaml_reader.h:76
void PostSolve(b2Contact *contact, const b2ContactImpulse *impulse)
Method called for Box2D Postsolve.
Definition: plugin_manager.cpp:239