Main Page
Namespaces
Classes
Files
File List
config
plugin
robotiq_gazebo
src
disable_link_plugin.cpp
Go to the documentation of this file.
1
/*********************************************************************
2
* Software License Agreement (BSD License)
3
* Copyright (c) 2014, Konstantinos Chatzilygeroudis
4
* Copyright (c) 2016, CRI Lab at Nanyang Technological University
5
* All rights reserved.
6
*
7
* Redistribution and use in source and binary forms, with or without
8
* modification, are permitted provided that the following conditions
9
* are met:
10
*
11
* * Redistributions of source code must retain the above copyright
12
* notice, this list of conditions and the following disclaimer.
13
* * Redistributions in binary form must reproduce the above
14
* copyright notice, this list of conditions and the following
15
* disclaimer in the documentation and/or other materials provided
16
* with the distribution.
17
* * Neither the name of the Univ of CO, Boulder nor the names of its
18
* contributors may be used to endorse or promote products derived
19
* from this software without specific prior written permission.
20
*
21
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
24
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
26
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
27
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
28
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
31
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32
* POSSIBILITY OF SUCH DAMAGE.
33
*********************************************************************/
34
35
#include <
robotiq_gazebo/disable_link_plugin.h
>
36
37
namespace
gazebo
38
{
39
40
DisableLinkPlugin::DisableLinkPlugin
()
41
{
42
kill_sim
=
false
;
43
link_
.reset();
44
}
45
46
DisableLinkPlugin::~DisableLinkPlugin
()
47
{
48
kill_sim
=
true
;
49
}
50
51
void
DisableLinkPlugin::Load
(physics::ModelPtr _parent, sdf::ElementPtr _sdf )
52
{
53
model_
= _parent;
54
world_
=
model_
->GetWorld();
55
56
// Check for link element
57
if
(!_sdf->HasElement(
"link"
))
58
{
59
ROS_ERROR(
"No link element present. DisableLinkPlugin could not be loaded."
);
60
return
;
61
}
62
63
link_name_
= _sdf->GetElement(
"link"
)->Get<std::string>();
64
65
// Get pointers to joints
66
link_
=
model_
->GetLink(
link_name_
);
67
if
(link_)
68
link_->SetEnabled(
false
);
69
else
70
ROS_WARN(
"Link %s not found!"
,
link_name_
.c_str());
71
}
72
73
GZ_REGISTER_MODEL_PLUGIN
(
DisableLinkPlugin
);
74
75
}
gazebo::DisableLinkPlugin
Definition:
disable_link_plugin.h:52
gazebo::DisableLinkPlugin::link_
physics::LinkPtr link_
Definition:
disable_link_plugin.h:68
gazebo::DisableLinkPlugin::link_name_
std::string link_name_
Definition:
disable_link_plugin.h:63
gazebo
Definition:
disable_link_plugin.h:50
gazebo::DisableLinkPlugin::model_
physics::ModelPtr model_
Definition:
disable_link_plugin.h:71
gazebo::DisableLinkPlugin::kill_sim
bool kill_sim
Definition:
disable_link_plugin.h:65
gazebo::DisableLinkPlugin::world_
physics::WorldPtr world_
Definition:
disable_link_plugin.h:74
gazebo::DisableLinkPlugin::~DisableLinkPlugin
~DisableLinkPlugin()
Definition:
disable_link_plugin.cpp:46
disable_link_plugin.h
gazebo::DisableLinkPlugin::Load
void Load(physics::ModelPtr _parent, sdf::ElementPtr _sdf)
Definition:
disable_link_plugin.cpp:51
gazebo::DisableLinkPlugin::DisableLinkPlugin
DisableLinkPlugin()
Definition:
disable_link_plugin.cpp:40
gazebo::GZ_REGISTER_MODEL_PLUGIN
GZ_REGISTER_MODEL_PLUGIN(DisableLinkPlugin)
dsr_description
Author(s): Kab Kyoum Kim
, Jin Hyuk Gong
, Jeongwoo Lee
autogenerated on Sat May 18 2019 02:32:47