rclnodejs 0.23.3 → 0.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/client.js CHANGED
@@ -128,7 +128,7 @@ class Client extends Entity {
128
128
  * @type {string}
129
129
  */
130
130
  get serviceName() {
131
- return this._serviceName;
131
+ return rclnodejs.getClientServiceName(this._handle);
132
132
  }
133
133
 
134
134
  /**
package/lib/publisher.js CHANGED
@@ -32,8 +32,7 @@ class Publisher extends Entity {
32
32
  * @type {string}
33
33
  */
34
34
  get topic() {
35
- const fullTopic = rclnodejs.getTopic(this._handle); // returns /my_node/mytopic
36
- return fullTopic.split('/').pop();
35
+ return rclnodejs.getPublisherTopic(this._handle);
37
36
  }
38
37
 
39
38
  /**
package/lib/service.js CHANGED
@@ -112,8 +112,7 @@ class Service extends Entity {
112
112
  * @type {string}
113
113
  */
114
114
  get serviceName() {
115
- const fullServiceName = rclnodejs.getServiceName(this._handle); // returns /my_node/myservice
116
- return fullServiceName.split('/').pop();
115
+ return rclnodejs.getServiceServiceName(this._handle);
117
116
  }
118
117
 
119
118
  /**
@@ -70,7 +70,7 @@ class Subscription extends Entity {
70
70
  * @type {string}
71
71
  */
72
72
  get topic() {
73
- return this._topic;
73
+ return rclnodejs.getSubscriptionTopic(this._handle);
74
74
  }
75
75
 
76
76
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rclnodejs",
3
- "version": "0.23.3",
3
+ "version": "0.25.0",
4
4
  "description": "ROS2.0 JavaScript client with Node.js",
5
5
  "main": "index.js",
6
6
  "types": "types/index.d.ts",
@@ -942,7 +942,7 @@ NAN_METHOD(Publish) {
942
942
  info.GetReturnValue().Set(Nan::Undefined());
943
943
  }
944
944
 
945
- NAN_METHOD(GetTopic) {
945
+ NAN_METHOD(GetPublisherTopic) {
946
946
  rcl_publisher_t* publisher = reinterpret_cast<rcl_publisher_t*>(
947
947
  RclHandle::Unwrap<RclHandle>(
948
948
  Nan::To<v8::Object>(info[0]).ToLocalChecked())
@@ -952,6 +952,16 @@ NAN_METHOD(GetTopic) {
952
952
  info.GetReturnValue().Set(Nan::New(topic).ToLocalChecked());
953
953
  }
954
954
 
955
+ NAN_METHOD(GetSubscriptionTopic) {
956
+ rcl_subscription_t* subscription = reinterpret_cast<rcl_subscription_t*>(
957
+ RclHandle::Unwrap<RclHandle>(
958
+ Nan::To<v8::Object>(info[0]).ToLocalChecked())
959
+ ->ptr());
960
+
961
+ const char* topic = rcl_subscription_get_topic_name(subscription);
962
+ info.GetReturnValue().Set(Nan::New(topic).ToLocalChecked());
963
+ }
964
+
955
965
  NAN_METHOD(CreateClient) {
956
966
  v8::Local<v8::Context> currentContent = Nan::GetCurrentContext();
957
967
  RclHandle* node_handle = RclHandle::Unwrap<RclHandle>(
@@ -1097,16 +1107,6 @@ NAN_METHOD(RclTakeRequest) {
1097
1107
  info.GetReturnValue().Set(Nan::Undefined());
1098
1108
  }
1099
1109
 
1100
- NAN_METHOD(GetServiceName) {
1101
- rcl_service_t* service = reinterpret_cast<rcl_service_t*>(
1102
- RclHandle::Unwrap<RclHandle>(
1103
- Nan::To<v8::Object>(info[0]).ToLocalChecked())
1104
- ->ptr());
1105
-
1106
- const char* name = rcl_service_get_service_name(service);
1107
- info.GetReturnValue().Set(Nan::New(name).ToLocalChecked());
1108
- }
1109
-
1110
1110
  NAN_METHOD(SendResponse) {
1111
1111
  rcl_service_t* service = reinterpret_cast<rcl_service_t*>(
1112
1112
  RclHandle::Unwrap<RclHandle>(
@@ -2007,6 +2007,26 @@ NAN_METHOD(RclTakeRaw) {
2007
2007
  "Failed to deallocate message buffer");
2008
2008
  }
2009
2009
 
2010
+ NAN_METHOD(GetClientServiceName) {
2011
+ rcl_client_t* client = reinterpret_cast<rcl_client_t*>(
2012
+ RclHandle::Unwrap<RclHandle>(
2013
+ Nan::To<v8::Object>(info[0]).ToLocalChecked())
2014
+ ->ptr());
2015
+
2016
+ const char* service_name = rcl_client_get_service_name(client);
2017
+ info.GetReturnValue().Set(Nan::New(service_name).ToLocalChecked());
2018
+ }
2019
+
2020
+ NAN_METHOD(GetServiceServiceName) {
2021
+ rcl_service_t* service = reinterpret_cast<rcl_service_t*>(
2022
+ RclHandle::Unwrap<RclHandle>(
2023
+ Nan::To<v8::Object>(info[0]).ToLocalChecked())
2024
+ ->ptr());
2025
+
2026
+ const char* service_name = rcl_service_get_service_name(service);
2027
+ info.GetReturnValue().Set(Nan::New(service_name).ToLocalChecked());
2028
+ }
2029
+
2010
2030
  std::vector<BindingMethod> binding_methods = {
2011
2031
  {"init", Init},
2012
2032
  {"createNode", CreateNode},
@@ -2039,12 +2059,12 @@ std::vector<BindingMethod> binding_methods = {
2039
2059
  {"clearContentFilter", ClearContentFilter},
2040
2060
  {"createPublisher", CreatePublisher},
2041
2061
  {"publish", Publish},
2042
- {"getTopic", GetTopic},
2062
+ {"getPublisherTopic", GetPublisherTopic},
2063
+ {"getSubscriptionTopic", GetSubscriptionTopic},
2043
2064
  {"createClient", CreateClient},
2044
2065
  {"rclTakeResponse", RclTakeResponse},
2045
2066
  {"sendRequest", SendRequest},
2046
2067
  {"createService", CreateService},
2047
- {"getServiceName", GetServiceName},
2048
2068
  {"rclTakeRequest", RclTakeRequest},
2049
2069
  {"sendResponse", SendResponse},
2050
2070
  {"shutdown", Shutdown},
@@ -2077,6 +2097,8 @@ std::vector<BindingMethod> binding_methods = {
2077
2097
  {"serviceServerIsAvailable", ServiceServerIsAvailable},
2078
2098
  {"publishRawMessage", PublishRawMessage},
2079
2099
  {"rclTakeRaw", RclTakeRaw},
2100
+ {"getClientServiceName", GetClientServiceName},
2101
+ {"getServiceServiceName", GetServiceServiceName},
2080
2102
  {"", nullptr}
2081
2103
  #if ROS_VERSION > 2205 // 2205 == Humble
2082
2104
  ,