23 #ifndef _PHYSICSFACTORY_HH_ 24 #define _PHYSICSFACTORY_HH_ 48 public:
static void RegisterAll();
54 public:
static void RegisterPhysicsEngine(std::string _className,
61 const std::string &_className,
WorldPtr _world);
66 public:
static bool IsRegistered(
const std::string &_name);
69 private:
static std::map<std::string, PhysicsFactoryFn> engines;
77 #define GZ_REGISTER_PHYSICS_ENGINE(name, classname) \ 78 PhysicsEnginePtr New##classname(WorldPtr _world) \ 80 return PhysicsEnginePtr(new gazebo::physics::classname(_world)); \ 82 void Register##classname() \ 84 PhysicsFactory::RegisterPhysicsEngine(name, New##classname);\ boost::shared_ptr< World > WorldPtr
Definition: PhysicsTypes.hh:89
Forward declarations for the common classes.
Definition: Animation.hh:26
The physics factory instantiates different physics engines.
Definition: PhysicsFactory.hh:45
default namespace for gazebo
boost::shared_ptr< PhysicsEngine > PhysicsEnginePtr
Definition: PhysicsTypes.hh:125
PhysicsEnginePtr(* PhysicsFactoryFn)(WorldPtr world)
Definition: PhysicsFactory.hh:41