I’m researching how to use NITROS topic and now is working on creating a ROS 2 node using NitrosNode::NitrosNode() like some sample code on the isaac-ros git, such as isaac_ros_compression, isaac_ros_argus_camera, etc.
I’ve look the source code in isaac_ros_nitros/isaac_ros_nitros/src/nitros_node.cpp. Like the picture above, NitrosNode() need some parameters. Is anyone know the “app_yaml_filename” & “extension_spec_preset_names”'s definition ( how to setup for them ) ? It looks like “app_yaml_filename” need to input an .yaml file contain lot of NITROS topic, buffer, data type & gxf’s parameters setting in it. And for the “extension_spec_preset_names”, I got no idea what it is use for. I stay empty for it & got the error in the picture below (also, same as putting the package name in it) .
The extension_spec_preset_names and these other config details are for an optimizer that generates an optimized GXF graph for runtime. These are abstracted away for you in CUDA with NITROS.
At the beginning I was using Managed NITROS Publisher & Managed NITROS Subscriber in an usual ROS 2 node class ( rclcpp::Node). But as the info provide in the “CUDA with NITROS — isaac_ros_docs documentation”. Only isaac_ros_nitros_tensor_list_type and isaac_ros_nitros_image_type supported by Managed NITROS Publisher & Managed NITROS Subscriber. That’s why I try to make an ROS 2 node using NitrosNode::NitrosNode() class to make a subscriber/publisher compatible with all kinds of NITROS Data Type.
After doing some research for the code for Isaac ROS. I found out Managed NITROS Publisher & Managed NITROS Subscriber is actually based on the basic NITROS Publisher & NITROS Subscriber class, but they did some job to provide more flexible API for developer. To compatible with Managed NITROS Publisher & Managed NITROS Subscriber, the NITROS Data Type also need to do some adjust, which is in _view.hpp & _build.hpp under the NITROS Data Type’s folder.
Will the Isaac ROS update all NITROS Data Type to compatible with Managed NITROS Publisher & Managed NITROS Subscriber ?