Beispiel #1
0
int
main (void)
{
  ensenso_grabber.reset (new pcl::EnsensoGrabber ());

  if (ensenso_grabber == 0)
    return (-1);

  ensenso_grabber->enumDevices ();
  ensenso_grabber->openTcpPort (); // default port = 24000
  ensenso_grabber->openDevice ();
  ensenso_grabber->configureCapture ();
  ensenso_grabber->setExtrinsicCalibration (); // Temporary reset calibration if it has be written in EEPROM

  boost::function<void (const PointCloudT::ConstPtr&)> f = boost::bind (&grabberCallback, _1);
  ensenso_grabber->registerCallback (f);

  viewer.reset (new CloudViewer ("3D Viewer"));
  ensenso_grabber->start ();
  std::cout << std::endl;

  while (!viewer->wasStopped ()) {
    boost::this_thread::sleep (boost::posix_time::milliseconds (1000));
    std::cout << "FPS: " << ensenso_grabber->getFramesPerSecond () << std::endl;
  }

  ensenso_grabber->stop ();
  ensenso_grabber->closeDevice ();
  return (0);
}