1 #ifndef DATASTREAM_ROS_TOPIC_H 2 #define DATASTREAM_ROS_TOPIC_H 11 #include <rosgraph_msgs/Clock.h> 12 #include "../dialog_select_ros_topics.h" 13 #include "../RosMsgParsers/ros_parser.h" 18 Q_PLUGIN_METADATA(IID
"com.icarustechnology.PlotJuggler.DataStreamer" "../datastreamer.json")
25 virtual bool start(QStringList* selected_datasources)
override;
33 virtual const char*
name()
const override {
return "ROS Topic Streamer"; }
35 virtual bool xmlSaveState(QDomDocument &doc, QDomElement &parent_element)
const override;
37 virtual bool xmlLoadState(
const QDomElement &parent_element )
override;
53 void clockCallback(
const rosgraph_msgs::Clock::ConstPtr& msg);
100 #endif // DATALOAD_CSV_H void topicCallback(const topic_tools::ShapeShifter::ConstPtr &msg, const std::string &topic_name)
RosIntrospection::SubstitutionRuleMap _rules
void extractInitialSamples()
virtual void addActionsToParentMenu(QMenu *menu) override
void saveDefaultSettings()
void loadDefaultSettings()
virtual void shutdown() override
std::map< ROSType, std::vector< SubstitutionRule > > SubstitutionRuleMap
PlotDataMapRef * _destination_data
virtual bool start(QStringList *selected_datasources) override
std::map< std::string, int > _msg_index
bool _roscore_disconnection_already_notified
virtual bool xmlLoadState(const QDomElement &parent_element) override
virtual const char * name() const override
virtual std::vector< QString > appendData(PlotDataMapRef &destination) override
virtual ~DataStreamROS() override
RosMessageParser _ros_parser
virtual bool xmlSaveState(QDomDocument &doc, QDomElement &parent_element) const override
DialogSelectRosTopics::Configuration _config
virtual bool isRunning() const override
The DataStreamer base class to create your own plugin.
void clockCallback(const rosgraph_msgs::Clock::ConstPtr &msg)
virtual std::vector< QString > appendData(PlotDataMapRef &destination)
std::map< std::string, ros::Subscriber > _subscribers
static void saveIntoRosbag(const PlotDataMapRef &data)
std::shared_ptr< ros::AsyncSpinner > _spinner
QAction * _action_saveIntoRosbag