licornea_tools
fetch_internal_parameters.cc
Go to the documentation of this file.
1 #include "../lib/args.h"
2 #include "../lib/json.h"
3 #include "lib/freenect2.h"
5 #include <cstdlib>
6 #include <iostream>
7 #include <fstream>
8 #include <stdexcept>
9 
10 using namespace tlz;
11 
13  using namespace libfreenect2;
14 
15  Freenect2 context;
16  int count = context.enumerateDevices();
17  std::cout << count << " Kinect devices found.\n";
18  if(count == 0) throw std::runtime_error("Kinect not found");
19 
20  Freenect2Device* device = context.openDevice(0);
21  if(device == nullptr) throw std::runtime_error("could not open device");
22 
23  device->start();
24 
25  std::cout << "device serial number: " << device->getSerialNumber() << "\n";
26  std::cout << "device firmware version: " << device->getFirmwareVersion() << "\n";
27  Freenect2Device::ColorCameraParams color = device->getColorCameraParams();
28  Freenect2Device::IrCameraParams ir = device->getIrCameraParams();
29  device->close();
30  delete device;
31 
32  return from_freenect2(color, ir);
33 }
34 
35 
36 int main(int argc, const char* argv[]) {
37  get_args(argc, argv, "out_internal_parameters.json");
38  std::string out_internal_parameters_filename = out_filename_arg();
39 
40  std::cout << "fetching from Kinect" << std::endl;
42 
43  std::cout << "saving to file" << std::endl;
44  export_json_file(encode_kinect_internal_parameters(param), out_internal_parameters_filename);
45 }
kinect_internal_parameters from_freenect2(const freenect2_color_params &, const freenect2_ir_params &)
kinect_internal_parameters fetch_internal_parameters()
void export_json_file(const json &j, const std::string &filename, bool compact)
Definition: json.cc:9
int main(int argc, const char *argv[])
std::string out_filename_arg()
Definition: args.cc:104
json encode_kinect_internal_parameters(const kinect_internal_parameters &param)
void get_args(int argc, const char *argv[], const std::string &usage)
Definition: args.cc:49