/////////////////////////////////////////////////////////////////////////////////////
| 666 | |
| 667 | ////////////////////////////////////////////////////////////////////////////////////////// |
| 668 | int |
| 669 | main (int argc, char ** argv) |
| 670 | { |
| 671 | print_highlight ("PCL OpenNI Image Viewer/Recorder. See %s -h for options.\n", argv[0]); |
| 672 | bool debug = false; |
| 673 | console::parse_argument (argc, argv, "-debug", debug); |
| 674 | if (debug) |
| 675 | console::setVerbosityLevel (console::L_DEBUG); |
| 676 | |
| 677 | if (parse_argument (argc, argv, "-buf", buff_size) != -1) |
| 678 | print_highlight ("Setting buffer size to %d frames.\n", buff_size); |
| 679 | else |
| 680 | print_highlight ("Using default buffer size of %d frames.\n", buff_size); |
| 681 | |
| 682 | std::string device_id; |
| 683 | OpenNIGrabber::Mode image_mode = OpenNIGrabber::OpenNI_Default_Mode; |
| 684 | OpenNIGrabber::Mode depth_mode = OpenNIGrabber::OpenNI_Default_Mode; |
| 685 | |
| 686 | if (argc >= 2) |
| 687 | { |
| 688 | device_id = argv[1]; |
| 689 | if (device_id == "--help" || device_id == "-h") |
| 690 | { |
| 691 | usage (argv); |
| 692 | return (0); |
| 693 | } |
| 694 | if (device_id == "-l") |
| 695 | { |
| 696 | if (argc >= 3) |
| 697 | { |
| 698 | OpenNIGrabber grabber (argv[2]); |
| 699 | auto device = grabber.getDevice (); |
| 700 | std::vector<std::pair<int, XnMapOutputMode> > modes; |
| 701 | |
| 702 | if (device->hasImageStream ()) |
| 703 | { |
| 704 | std::cout << std::endl << "Supported image modes for device: " << device->getVendorName () << " , " << device->getProductName () << std::endl; |
| 705 | modes = grabber.getAvailableImageModes (); |
| 706 | for (const auto& mode : modes) |
| 707 | { |
| 708 | std::cout << mode.first << " = " << mode.second.nXRes << " x " << mode.second.nYRes << " @ " << mode.second.nFPS << std::endl; |
| 709 | } |
| 710 | if (device->hasDepthStream ()) |
| 711 | { |
| 712 | std::cout << std::endl << "Supported depth modes for device: " << device->getVendorName () << " , " << device->getProductName () << std::endl; |
| 713 | modes = grabber.getAvailableDepthModes (); |
| 714 | for (const auto& mode : modes) |
| 715 | { |
| 716 | std::cout << mode.first << " = " << mode.second.nXRes << " x " << mode.second.nYRes << " @ " << mode.second.nFPS << std::endl; |
| 717 | } |
| 718 | } |
| 719 | } |
| 720 | } |
| 721 | else |
| 722 | { |
| 723 | openni_wrapper::OpenNIDriver& driver = openni_wrapper::OpenNIDriver::getInstance (); |
| 724 | if (driver.getNumberDevices () > 0) |
| 725 | { |
nothing calls this directly
no test coverage detected