Skip to content

Commit a90cbd1

Browse files
authored
Merge pull request #2 from mrmara/main
Added full constructor support
2 parents 7a94bf3 + 348abd0 commit a90cbd1

File tree

3 files changed

+28
-3
lines changed

3 files changed

+28
-3
lines changed

simple_node/include/simple_node/node.hpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@
2727
#include "simple_node/actions/action_client.hpp"
2828
#include "simple_node/actions/action_server.hpp"
2929

30+
#include "rclcpp/node_options.hpp"
31+
3032
namespace simple_node {
3133

3234
class Node : public rclcpp::Node {
@@ -36,6 +38,7 @@ class Node : public rclcpp::Node {
3638
Node(std::string name, rclcpp::Executor *executor);
3739
Node(std::string name, std::string _namespace);
3840
Node(std::string name, std::string _namespace, rclcpp::Executor *executor);
41+
Node(std::string name, std::string _namespace, const rclcpp::NodeOptions &options = rclcpp::NodeOptions());
3942
~Node();
4043

4144
void join_spin();

simple_node/simple_node/node.py

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,29 @@
3434
class Node(Node2):
3535
""" Node Class """
3636

37-
def __init__(self, node_name: str, namespace: str = "", executor: Executor = None) -> None:
38-
39-
super().__init__(node_name, namespace=namespace)
37+
def __init__(self, node_name: str,
38+
context = None,
39+
cli_args = None,
40+
namespace = "",
41+
use_global_arguments = True,
42+
enable_rosout = True,
43+
start_parameter_services = True,
44+
parameter_overrides = None,
45+
allow_undeclared_parameters = False,
46+
automatically_declare_parameters_from_overrides = False,
47+
executor = None):
48+
49+
super().__init__(node_name,
50+
context = context,
51+
cli_args = cli_args,
52+
namespace = namespace,
53+
use_global_arguments = use_global_arguments,
54+
enable_rosout=enable_rosout,
55+
start_parameter_services=start_parameter_services,
56+
parameter_overrides=parameter_overrides,
57+
allow_undeclared_parameters=allow_undeclared_parameters,
58+
automatically_declare_parameters_from_overrides=automatically_declare_parameters_from_overrides
59+
)
4060

4161
if not executor:
4262
self._executor = MultiThreadedExecutor()

simple_node/src/simple_node/node.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ Node::Node(std::string name, std::string _namespace, rclcpp::Executor *executor)
3535
this->executor = executor;
3636
this->spin_thread = new std::thread(&Node::run_executor, this);
3737
}
38+
Node::Node(std::string name, std::string _namespace, const rclcpp::NodeOptions &options):
39+
rclcpp::Node(name, _namespace, options) {}
3840

3941
Node::~Node() {
4042
delete this->executor;

0 commit comments

Comments
 (0)