Skip to content

Commit 81ed555

Browse files
authored
PR #13624 from SamerKhshiboun: get/set/list/describe parameters (controls)
2 parents e18af41 + 165ec91 commit 81ed555

File tree

67 files changed

+13237
-2
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+13237
-2
lines changed

third-party/realdds/include/realdds/dds-device-server.h

+1
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ class dds_device_server
6565
dds_guid const & guid() const;
6666
std::shared_ptr< dds_participant > participant() const;
6767
std::shared_ptr< dds_subscriber > subscriber() const { return _subscriber; }
68+
std::shared_ptr< dds_publisher > publisher() const { return _publisher; }
6869
std::string const & topic_root() const { return _topic_root; }
6970
rsutils::string::slice debug_name() const;
7071

third-party/realdds/include/realdds/dds-stream-sensor-bridge.h

+3
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,9 @@ class dds_stream_sensor_bridge
101101
// Return true if the stream for the given server is currently streaming
102102
bool is_streaming( std::shared_ptr< dds_stream_server > const & ) const;
103103

104+
// Return the profile a server is set to, even if not yet streaming
105+
std::shared_ptr< dds_stream_profile > get_profile( std::shared_ptr< dds_stream_server > const & ) const;
106+
104107
// Notifications
105108
public:
106109
void on_readers_changed( readers_changed_callback callback ) { _on_readers_changed = std::move( callback ); }

third-party/realdds/include/realdds/topics/dds-topic-names.h

+13
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,11 @@ constexpr char SEPARATOR = '/';
1616
constexpr char const * ROOT = "realsense/";
1717
constexpr size_t ROOT_LEN = 10;
1818
// NOTE: actual streams will be ROS-compatible, meaning rt/ROOT
19+
constexpr char const * ROS2_ROOT = "rt/";
20+
constexpr char const * ROS2_SERVICE_REQUEST_ROOT = "rq/";
21+
constexpr char const * ROS2_SERVICE_RESPONSE_ROOT = "rr/";
22+
23+
constexpr size_t ROS2_ROOT_LEN = 3;
1924

2025
constexpr char const * DEVICE_INFO_TOPIC_NAME = "realsense/device-info";
2126

@@ -25,6 +30,14 @@ constexpr char const * CONTROL_TOPIC_NAME = "/control";
2530
constexpr char const * METADATA_TOPIC_NAME = "/metadata";
2631
constexpr char const * DFU_TOPIC_NAME = "/dfu";
2732

33+
constexpr char const * GET_PARAMETERS_NAME = "/get_parameters";
34+
constexpr char const * SET_PARAMETERS_NAME = "/set_parameters";
35+
constexpr char const * LIST_PARAMETERS_NAME = "/list_parameters";
36+
constexpr char const * DESCRIBE_PARAMETERS_NAME = "/describe_parameters";
37+
38+
constexpr char const * REQUEST_SUFFIX = "Request";
39+
constexpr char const * RESPONSE_SUFFIX = "Reply";
40+
2841

2942
namespace notification {
3043
namespace key {

third-party/realdds/include/realdds/topics/readme.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ The various topics are arranged hierarchically:
1616

1717
The code for each message type in this directory is generated from IDL files if the message format is defined by RealDDS.
1818

19-
For [ROS](#ros2), the IDLs are not available.
19+
For [ROS](#ros2), the IDLs are available in the `/opt/ros/<distro>/share/` installation folder.
2020

2121
# Generation
2222

0 commit comments

Comments
 (0)