@@ -32,9 +32,25 @@ BT::NodeStatus SetBoolService::onFailure(BT::ServiceNodeErrorCode error)
32
32
// ------------------------------------------------------
33
33
// ------------------------------------------------------
34
34
35
+ NamespacedSetBool::NamespacedSetBool (const std::string& name, const BT::NodeConfig& conf,
36
+ const BT::RosNodeParams& params)
37
+ : BT::ActionNodeBase(name, conf)
38
+ , local_bb_(BT::Blackboard::create(conf.blackboard))
39
+ , service_name_(params.default_port_value)
40
+ {
41
+ BT::NodeConfig impl_config;
42
+ impl_config.blackboard = local_bb_;
43
+ impl_config.input_ports [" service_name" ] = " {=}" ;
44
+ impl_config.input_ports [" value" ] = " {=}" ;
45
+
46
+ BT::RosNodeParams impl_params = params;
47
+ impl_params.default_port_value = {}; // postpone this
48
+ set_bool_service_ = std::make_unique<SetBoolService>(name, impl_config, impl_params);
49
+ }
50
+
35
51
NamespacedSetBool::NamespacedSetBool (const std::string& name, const BT::NodeConfig& conf,
36
52
const std::string& service_name,
37
- std::weak_ptr< rclcpp::Node> node)
53
+ rclcpp::Node::SharedPtr node)
38
54
: BT::ActionNodeBase(name, conf)
39
55
, local_bb_(BT::Blackboard::create(conf.blackboard))
40
56
, service_name_(service_name)
@@ -43,6 +59,7 @@ NamespacedSetBool::NamespacedSetBool(const std::string& name, const BT::NodeConf
43
59
impl_config.blackboard = local_bb_;
44
60
impl_config.input_ports [" service_name" ] = " {=}" ;
45
61
impl_config.input_ports [" value" ] = " {=}" ;
62
+
46
63
BT::RosNodeParams impl_params;
47
64
impl_params.nh = node;
48
65
set_bool_service_ = std::make_unique<SetBoolService>(name, impl_config, impl_params);
0 commit comments