19 #ifndef DDS_ROS_BRIDGE_ROS_DATA_TO_DISK_H_
20 #define DDS_ROS_BRIDGE_ROS_DATA_TO_DISK_H_
25 #include "dds_ros_bridge/ros_sub_rapid_pub.h"
26 #include "dds_ros_bridge/util.h"
28 #include "ff_msgs/DataToDiskState.h"
29 #include "ff_msgs/DataTopicsList.h"
30 #include "ff_msgs/SaveSettings.h"
32 #include "knDds/DdsTypedSupplier.h"
34 #include "rapidUtil/RapidHelper.h"
36 #include "dds_msgs/AstrobeeConstants.h"
37 #include "dds_msgs/DataToDiskStateSupport.h"
38 #include "dds_msgs/DataTopicsListSupport.h"
45 const std::string& topics_subscribe_topic,
46 const std::string& pub_topic,
47 const ros::NodeHandle& nh,
48 const unsigned int queue_size = 10);
51 void TopicsCallback(ff_msgs::DataTopicsListConstPtr
const& topics);
55 kn::DdsTypedSupplier<rapid::ext::astrobee::DataToDiskState>;
56 using StateSupplierPtr = std::unique_ptr<StateSupplier>;
58 StateSupplierPtr state_supplier_;
60 using TopicsSupplier =
61 kn::DdsTypedSupplier<rapid::ext::astrobee::DataTopicsList>;
62 using TopicsSupplierPtr = std::unique_ptr<TopicsSupplier>;
64 TopicsSupplierPtr topics_supplier_;
66 ros::Subscriber topics_sub_;
68 std::string state_subscribe_topic_, topics_subscribe_topic_;
73 #endif // DDS_ROS_BRIDGE_ROS_DATA_TO_DISK_H_