00366         this->[wrench_body_jobs](classGazeboROSNode.html#ade2831b1970d2ceed871e82a9140c2bb).erase(iter);
    00367       }
    00368       this->[lock_](classGazeboROSNode.html#a3895043c9355e3e2a23f84efe0060736 "A mutex to lock access to fields that are used in ROS message callbacks.").unlock();
    00369     }
    00370 
    [00372](classGazeboROSNode.html#ab7cc0342705dfac7b7aac77001ad3603)     void [gazeboQueueThread](classGazeboROSNode.html#ab7cc0342705dfac7b7aac77001ad3603 "ros queue thread for this node")()
    00373     {
    00374       [ROS_DEBUG_STREAM](../../../api/rosconsole/html/macros__generated_8h.html#abe3fd4f1f711e3046f7c3a8e3f5757b0)("Callback thread id=" << boost::this_thread::get_id());
    00375       static const double timeout = 0.001;
    00376       static const double status_timeout = 1.0;
    00377 
    00378       [ros::WallTime](../../../api/rostime/html/classros_1_1WallTime.html) last_status_time;
    00379       std_msgs::Bool stat;
    00380       while (this->[rosnode_](classGazeboROSNode.html#ae9011736edb2ec542d7176cdddeb546d).[ok](../../../api/roscpp/html/classros_1_1NodeHandle.html#ab4ee3d7b4d7fe52696fcfb84cc388331)())
    00381       {
    00382         this->[gazebo_queue_](classGazeboROSNode.html#aaad18c9d54a8736ea6337821de03889a).[callAvailable](../../../api/roscpp/html/classros_1_1CallbackQueue.html#a82c2abb2c11a7bf90e7ee46625e24eeb)([ros::WallDuration](../../../api/rostime/html/classros_1_1WallDuration.html)(timeout));
    00383 
    00384         if (([ros::WallTime::now](../../../api/rostime/html/classros_1_1WallTime.html#a416639362578694d47f989e4fb7f1ae0)() - last_status_time).toSec() > status_timeout)
    00385         {
    00386                 stat.data = gazebo::Simulator::Instance()->IsPaused();
    00387                 [pub_gazebo_paused_](classGazeboROSNode.html#a5d3fe16d1240033b9bb04ef67bc24c9a).[publish](../../../api/roscpp/html/classros_1_1Publisher.html#af4e0009d55b5a7729fd71c3ffdf502cd)(stat);
    00388                 last_status_time = [ros::WallTime::now](../../../api/rostime/html/classros_1_1WallTime.html#a416639362578694d47f989e4fb7f1ae0)();
    00389         }
    00390       }
    00391     }
    00392 
    [00394](classGazeboROSNode.html#a373bfa381a9d1631537af92ecfa11499)     void [AdvertiseServices](classGazeboROSNode.html#a373bfa381a9d1631537af92ecfa11499 "advertise services")()
    00395     {
    00396       // Advertise spawn services on the custom queue
    00397       std::string spawn_urdf_model_service_name("spawn_urdf_model");
    00398       [ros::AdvertiseServiceOptions](../../../api/roscpp/html/structros_1_1AdvertiseServiceOptions.html) spawn_urdf_model_aso = ros::AdvertiseServiceOptions::create<gazebo_msgs::SpawnModel>(
    00399           spawn_urdf_model_service_name,boost::bind(&[GazeboROSNode::spawnURDFModel](classGazeboROSNode.html#ae64f3ffa32532763364a4b1c0fa0578e),this,_1,_2),
    00400           ros::VoidPtr(), &this->[gazebo_queue_](classGazeboROSNode.html#aaad18c9d54a8736ea6337821de03889a));
    00401       [spawn_urdf_model_service_](classGazeboROSNode.html#a6ac26108e1ff9418cffdee5dbf0d2fe3) = this->[rosnode_](classGazeboROSNode.html#ae9011736edb2ec542d7176cdddeb546d).[advertiseService](../../../api/roscpp/html/classros_1_1NodeHandle.html#ae659319707eb40e8ef302763f7d632da)(spawn_urdf_model_aso);
    00402 
    00403       // Advertise spawn services on the custom queue
    00404       std::string spawn_gazebo_model_service_name("spawn_gazebo_model");
    00405       [ros::AdvertiseServiceOptions](../../../api/roscpp/html/structros_1_1AdvertiseServiceOptions.html) spawn_gazebo_model_aso = ros::AdvertiseServiceOptions::create<gazebo_msgs::SpawnModel>(
    00406           spawn_gazebo_model_service_name,boost::bind(&[GazeboROSNode::spawnGazeboModel](classGazeboROSNode.html#a7eb487a51a9a6ecb286f63f537d541f6),this,_1,_2),
    00407           ros::VoidPtr(), &this->[gazebo_queue_](classGazeboROSNode.html#aaad18c9d54a8736ea6337821de03889a));