Program Listing for File openvslam_api.hpp

Return to documentation for file (lib_openvslam/openvslam_api.hpp)

#ifdef RUN_SLAM

#ifndef OPENVSLAM_API_HPP
#define OPENVSLAM_API_HPP

#include <memory>
#include <mutex>

#include <opencv2/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>

class OpenVSLAM_API{
public:

  OpenVSLAM_API(bool& run,
  const std::string config_file_path,
  const std::string vocab_file_path,
  const std::string load_map_db_path,
  const std::string save_map_db_path,
  const std::string mask_img_path,
  bool load_map,
  bool continue_mapping,
  float scale);

  ~OpenVSLAM_API();

  void addFrameToQueue(cv::Mat new_frame);

  void startMonoThread();

  std::mutex& getMutex();

private:

  class impl;
  std::unique_ptr<impl> openvslam_impl;

};

#endif

#endif