14 #ifndef MYNTEYE_CAMERA_H_ 15 #define MYNTEYE_CAMERA_H_ 25 #include "mynteyed/device/device_info.h" 26 #include "mynteyed/device/image.h" 27 #include "mynteyed/device/open_params.h" 28 #include "mynteyed/device/stream_info.h" 29 #include "mynteyed/types.h" 31 MYNTEYE_BEGIN_NAMESPACE
37 using img_info_callback_t =
38 std::function<void(const std::shared_ptr<ImgInfo>& info)>;
39 using stream_callback_t = std::function<void(const StreamData& data)>;
40 using motion_callback_t = std::function<void(const MotionData& data)>;
46 std::vector<DeviceInfo> GetDeviceInfos()
const;
48 void GetDeviceInfos(std::vector<DeviceInfo>* dev_infos)
const;
51 void GetStreamInfos(
const std::int32_t& dev_index,
52 std::vector<StreamInfo>* color_infos,
53 std::vector<StreamInfo>* depth_infos)
const;
61 bool IsOpened()
const;
64 std::shared_ptr<device::Descriptors> GetDescriptors()
const;
66 std::string GetDescriptor(
const Descriptor &desc)
const;
71 return GetStreamIntrinsics(stream_mode, &ok);
79 return GetStreamExtrinsics(stream_mode, &ok);
86 bool WriteCameraCalibrationBinFile(
const std::string& filename);
91 return GetMotionIntrinsics(&ok);
98 return GetMotionExtrinsics(&ok);
104 bool IsWriteDeviceSupported()
const;
106 bool WriteDeviceFlash(
109 Version *spec_version =
nullptr);
112 void EnableProcessMode(
const ProcessMode& mode);
114 void EnableProcessMode(
const std::int32_t& mode);
117 bool IsImageInfoSupported()
const;
124 void EnableImageInfo(
bool sync);
126 void DisableImageInfo();
128 bool IsImageInfoEnabled()
const;
130 bool IsImageInfoSynced()
const;
133 bool IsStreamDataEnabled(
const ImageType& type)
const;
135 bool HasStreamDataEnabled()
const;
138 StreamData GetStreamData(
const ImageType& type);
140 std::vector<StreamData> GetStreamDatas(
const ImageType& type);
143 bool IsMotionDatasSupported()
const;
152 void EnableMotionDatas(
153 std::size_t max_size = std::numeric_limits<std::size_t>::max());
155 void DisableMotionDatas();
157 bool IsMotionDatasEnabled()
const;
160 std::vector<MotionData> GetMotionDatas();
163 void SetImgInfoCallback(img_info_callback_t callback,
bool async =
true);
166 void SetStreamCallback(
const ImageType& type, stream_callback_t callback,
170 void SetMotionCallback(motion_callback_t callback,
bool async =
true);
176 bool HidFirmwareUpdate(
const char* filepath);
181 void SetExposureTime(
const float &value);
185 void GetExposureTime(
float &value);
190 void SetGlobalGain(
const float &value);
194 void GetGlobalGain(
float &value);
197 void SetIRIntensity(
const std::uint16_t &value);
200 bool AutoExposureControl(
bool enable);
203 bool AutoWhiteBalanceControl(
bool enable);
205 #ifdef MYNTEYE_DEPRECATED_COMPAT 207 void EnableStreamData(
const ImageType& type);
209 void DisableStreamData(
const ImageType& type);
213 std::unique_ptr<CameraPrivate> p_;
216 MYNTEYE_END_NAMESPACE
218 #endif // MYNTEYE_CAMERA_H_ Version.
Definition: types_data.h:153
MotionExtrinsics GetMotionExtrinsics() const
Get the extrinsics from left to motion.
Definition: camera.h:96
Extrinsics, represent how the different datas are connected.
Definition: types_calib.h:119
MotionIntrinsics GetMotionIntrinsics() const
Get the intrinsics of motion.
Definition: camera.h:89
Device descriptors.
Definition: types_data.h:242
Stream data.
Definition: types_data.h:110
Device imu paramters.
Definition: types_data.h:258
Device open parameters.
Definition: open_params.h:28
Motion intrinsics, including accelerometer and gyroscope.
Definition: types_calib.h:107
StreamIntrinsics GetStreamIntrinsics(const StreamMode &stream_mode) const
Get the intrinsics of camera.
Definition: camera.h:69
StreamExtrinsics GetStreamExtrinsics(const StreamMode &stream_mode) const
Get the extrinsics of camera.
Definition: camera.h:77
Camera intrinsics: size, coeffs and camera matrix.
Definition: types_calib.h:57