PhysicsIface.hh
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2012 Open Source Robotics Foundation
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16 */
17 #ifndef _PHYSICSIFACE_HH_
18 #define _PHYSICSIFACE_HH_
19 
20 #include <string>
21 #include <sdf/sdf.hh>
22 
24 #include "gazebo/util/system.hh"
25 
26 namespace gazebo
27 {
30  namespace physics
31  {
34 
36  GZ_PHYSICS_VISIBLE
37  bool load();
38 
40  GZ_PHYSICS_VISIBLE
41  bool fini();
42 
46  GZ_PHYSICS_VISIBLE
47  WorldPtr create_world(const std::string &_name ="");
48 
52  GZ_PHYSICS_VISIBLE
53  WorldPtr get_world(const std::string &_name = "");
54 
58  GZ_PHYSICS_VISIBLE
59  void load_world(WorldPtr _world, sdf::ElementPtr _sdf);
60 
63  GZ_PHYSICS_VISIBLE
64  void init_world(WorldPtr _world);
65 
70  GZ_PHYSICS_VISIBLE
71  void run_world(WorldPtr _world, unsigned int _iterations = 0);
72 
75  GZ_PHYSICS_VISIBLE
76  void stop_world(WorldPtr _world);
77 
81  GZ_PHYSICS_VISIBLE
82  void pause_world(WorldPtr _world, bool _pause);
83 
86  GZ_PHYSICS_VISIBLE
87  void load_worlds(sdf::ElementPtr _sdf);
88 
91  GZ_PHYSICS_VISIBLE
92  void init_worlds();
93 
98  GZ_PHYSICS_VISIBLE
99  void run_worlds(unsigned int _iterations = 0);
100 
103  GZ_PHYSICS_VISIBLE
104  void stop_worlds();
105 
109  GZ_PHYSICS_VISIBLE
110  void pause_worlds(bool pause);
111 
114  GZ_PHYSICS_VISIBLE
115  void remove_worlds();
116 
119  GZ_PHYSICS_VISIBLE
120  bool worlds_running();
121 
124  GZ_PHYSICS_VISIBLE
125  uint32_t getUniqueId();
127  }
128 }
129 #endif
boost::shared_ptr< World > WorldPtr
Definition: PhysicsTypes.hh:89
WorldPtr create_world(const std::string &_name="")
Create a world given a name.
bool load()
Setup gazebo::SystemPlugin's and call gazebo::transport::init.
void run_world(WorldPtr _world, unsigned int _iterations=0)
Run world by calling World::Run() given a pointer to it.
void stop_world(WorldPtr _world)
Stop world by calling World::Stop() given a pointer to it.
void init_worlds()
initialize multiple worlds stored in static variable gazebo::g_worlds
void init_world(WorldPtr _world)
Init world given a pointer to it.
default namespace for gazebo
void pause_world(WorldPtr _world, bool _pause)
Pause world by calling World::SetPaused.
void pause_worlds(bool pause)
pause multiple worlds stored in static variable gazebo::g_worlds
uint32_t getUniqueId()
Get a unique ID.
bool worlds_running()
Return true if any world is running.
void run_worlds(unsigned int _iterations=0)
Run multiple worlds stored in static variable gazebo::g_worlds.
void load_worlds(sdf::ElementPtr _sdf)
load multiple worlds from single sdf::Element pointer
void stop_worlds()
stop multiple worlds stored in static variable gazebo::g_worlds
WorldPtr get_world(const std::string &_name="")
Returns a pointer to a world by name.
bool fini()
Finalize transport by calling gazebo::transport::fini.
void load_world(WorldPtr _world, sdf::ElementPtr _sdf)
Load world from sdf::Element pointer.
void remove_worlds()
remove multiple worlds stored in static variable gazebo::g_worlds