50 static bool available();
53 CameraMyntEye(
const std::string & device =
"",
bool apiRectification =
false,
bool apiDepth =
false,
float imageRate = 0,
const Transform & localTransform = Transform::getIdentity());
56 virtual bool init(
const std::string & calibrationFolder =
".",
const std::string & cameraName =
"");
57 virtual bool isCalibrated()
const;
61 void publishInterIMU(
bool enabled);
62 void setAutoExposure();
63 void setManualExposure(
int gain=24,
int brightness=120,
int constrast=116);
64 void setIrControl(
int value);
74 double hardTimeToSoftTime(std::uint64_t hardTime);
75 void getPoseAndIMU(
const double & stamp,
IMU & imu,
int maxWaitTimeMs = 35)
const;
76 double checkUpTimeStamp(std::uint64_t _hard_time, std::uint8_t stream);
78 std::shared_ptr<mynteye::Device> device_;
79 std::shared_ptr<mynteye::API> api_;
81 std::string deviceName_;
82 bool apiRectification_;
91 cv::Mat leftFrameBuffer_;
92 cv::Mat rightFrameBuffer_;
93 std::pair<cv::Mat, cv::Mat> lastFrames_;
94 double lastFramesStamp_;
96 bool publishInterIMU_;
98 std::map<double, std::pair<cv::Vec3f, cv::Vec3f> > imuBuffer_;
101 double softTimeBegin_;
102 std::uint64_t hardTimeBegin_;
103 std::uint64_t unitHardTime_;
104 std::vector<std::uint64_t> lastHardTimes_;
105 std::vector<std::uint64_t> acc_;