summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--ftnoir_tracker_pt/camera.cpp10
-rw-r--r--ftnoir_tracker_pt/camera.h4
2 files changed, 12 insertions, 2 deletions
diff --git a/ftnoir_tracker_pt/camera.cpp b/ftnoir_tracker_pt/camera.cpp
index 9168a3e4..2e745f2a 100644
--- a/ftnoir_tracker_pt/camera.cpp
+++ b/ftnoir_tracker_pt/camera.cpp
@@ -61,6 +61,16 @@ void Camera::set_res(int x_res, int y_res)
}
}
+CamInfo Camera::get_info()
+{
+ if (cam_info.res_x == 0 || cam_info.res_y == 0)
+ {
+ cv::Mat tmp;
+ _get_frame(&tmp);
+ }
+ return cam_info;
+}
+
bool Camera::get_frame(float dt, cv::Mat* frame)
{
bool new_frame = _get_frame(frame);
diff --git a/ftnoir_tracker_pt/camera.h b/ftnoir_tracker_pt/camera.h
index 63614ded..2c42652a 100644
--- a/ftnoir_tracker_pt/camera.h
+++ b/ftnoir_tracker_pt/camera.h
@@ -54,8 +54,8 @@ public:
bool get_frame(float dt, cv::Mat* frame);
// WARNING: returned references are valid as long as object
- const CamInfo& get_info() const { return cam_info; }
- const CamInfo& get_desired() const { return cam_desired; }
+ CamInfo get_info();
+ CamInfo get_desired() const { return cam_desired; }
protected:
// get a frame from the camera