0

rqt プラグイン内から非常に単純な ros トピックにサブスクライブしようとしています。サブスクリプションは機能しているようですが、Callback 関数が呼び出されません。

Subscription::Subscription(QString topic)
{ 
   ROS_INFO("Subscribing to topic: [%s]", topic.toLocal8Bit().constData() );

   sub = n.subscribe(topic.toLocal8Bit().constData(), 1000, &Subscription::chatterCallback, this);
}


void Subscription::chatterCallback(const std_msgs::String::ConstPtr& msg)
{
   ROS_INFO("I heard: [%s]", msg->data.c_str() );

   emit messageReceived(msg->data.c_str() );
}

これは実際には非常に単純なはずです。私は何が欠けていますか?

4

1 に答える 1

0

問題が見つかりました。ros::NodeHandleから取得したものを使用する必要があったときに、独自の を作成していましたrqt_gui_cpp::Plugin()::getNodeHandle()

于 2013-09-23T15:17:15.397 に答える