当前位置: 首页>>代码示例>>C++>>正文


C++ Filter::add方法代码示例

本文整理汇总了C++中Filter::add方法的典型用法代码示例。如果您正苦于以下问题:C++ Filter::add方法的具体用法?C++ Filter::add怎么用?C++ Filter::add使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Filter的用法示例。


在下文中一共展示了Filter::add方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: main

int main(int argc, char **argv)
{
  //ROS declaration
  ros::init(argc, argv, "motorGo");
  ros::NodeHandle my_node;
  ros::Rate loop_rate(10);

  ros::NodeHandle priv_node("~");

  Robot platform(priv_node);
  Scribe scribe(my_node, "cmd_vel", platform);
  Poete poete(my_node, "odom");
  //Lifter lift(my_node, priv_node);
  Filter filt;
  
  tf::TransformBroadcaster odom_broadcaster;
  nav_msgs::Odometry nav;
  
  int flag=0;
  //Creation de Platform et test de verbose option
  if ( argc > 1 ) {// argc should be 2 for correct execution
    for(int i =0;i<argc;i++&&flag==0){
      if (strcmp(argv[i],"--verbose")&&flag==0){
	std::cout<<"VERBOSE MODE ON"<<std::endl;
	scribe.setVerbose();
	poete.setVerbose();
	platform.setVerbose();
	flag=1;
      }
    }	
  }
  
  while(ros::ok()){
    platform.odometry();
    //if we read correctly
    if(platform.getControl().getReadState()){
      nav=platform.getOdom();
      if(platform.getControl().getReadState()==true){
	filt.add(nav);
	nav=filt.filtering();
	poete.publish(nav);
	publishTransform(nav, odom_broadcaster);
      }
    }
    ros::spinOnce();
    loop_rate.sleep();
  
  }
  ros::spin();
}
开发者ID:Waywrong,项目名称:motorControl,代码行数:50,代码来源:mgo_main.cpp

示例2:

TEST(SimpleFilter, callbackTypes)
{
  Helper h;
  Filter f;
  f.registerCallback(boost::bind(&Helper::cb0, &h, _1));
  f.registerCallback<const Msg&>(boost::bind(&Helper::cb1, &h, _1));
  f.registerCallback<MsgConstPtr>(boost::bind(&Helper::cb2, &h, _1));
  f.registerCallback<const ros::MessageEvent<Msg const>&>(boost::bind(&Helper::cb3, &h, _1));
  f.registerCallback<Msg>(boost::bind(&Helper::cb4, &h, _1));
  f.registerCallback<const MsgPtr&>(boost::bind(&Helper::cb5, &h, _1));
  f.registerCallback<MsgPtr>(boost::bind(&Helper::cb6, &h, _1));
  f.registerCallback<const ros::MessageEvent<Msg>&>(boost::bind(&Helper::cb7, &h, _1));

  f.add(Filter::EventType(boost::make_shared<Msg>()));
  EXPECT_EQ(h.counts_[0], 1);
  EXPECT_EQ(h.counts_[1], 1);
  EXPECT_EQ(h.counts_[2], 1);
  EXPECT_EQ(h.counts_[3], 1);
  EXPECT_EQ(h.counts_[4], 1);
  EXPECT_EQ(h.counts_[5], 1);
  EXPECT_EQ(h.counts_[6], 1);
  EXPECT_EQ(h.counts_[7], 1);
}
开发者ID:Mygao,项目名称:ros_comm,代码行数:23,代码来源:test_simple.cpp


注:本文中的Filter::add方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。