5#ifndef LIBREALSENSE_IV_PRIVATE_H
6#define LIBREALSENSE_IV_PRIVATE_H
14 const uvc::extension_unit depth_xu{ 1, 6, 1, { 0xA55751A1, 0xF3C5, 0x4A5E, { 0x8D, 0x5A, 0x68, 0x54, 0xB8, 0xFA, 0x27, 0x16 } } };
135 size_t prepare_usb_command(uint8_t * request,
size_t & requestSize, uint32_t op, uint32_t p1 = 0, uint32_t p2 = 0, uint32_t p3 = 0, uint32_t p4 = 0, uint8_t * data = 0,
size_t dataLength = 0);
136 void get_gvd(uvc::device & device, std::timed_mutex & mutex,
size_t sz,
char * gvd,
int gvd_cmd = (
int)
fw_cmd::GVD);
142 void enable_timestamp(uvc::device & device, std::timed_mutex & mutex,
bool colorEnable,
bool depthEnable);
143 void set_auto_range(uvc::device & device, std::timed_mutex & mutex,
int enableMvR, int16_t minMvR, int16_t maxMvR, int16_t startMvR,
int enableLaser, int16_t minLaser, int16_t maxLaser, int16_t startLaser, int16_t ARUpperTH, int16_t ARLowerTH);
196 std::tuple<ivcam::camera_calib_params, f200::cam_temperature_data, thermal_loop_params>
read_f200_calibration(uvc::device & device, std::timed_mutex & mutex);
void update_asic_coefficients(uvc::device &device, std::timed_mutex &mutex, const ivcam::camera_calib_params &compensated_params)
void get_dynamic_fps(const uvc::device &device, uint8_t &dynamic_fps)
int read_ir_temp(uvc::device &device, std::timed_mutex &mutex)
std::tuple< ivcam::camera_calib_params, f200::cam_temperature_data, thermal_loop_params > read_f200_calibration(uvc::device &device, std::timed_mutex &mutex)
void set_dynamic_fps(uvc::device &device, uint8_t dynamic_fps)
float read_mems_temp(uvc::device &device, std::timed_mutex &mutex)
void set_auto_range(uvc::device &device, std::timed_mutex &mutex, int enableMvR, int16_t minMvR, int16_t maxMvR, int16_t startMvR, int enableLaser, int16_t minLaser, int16_t maxLaser, int16_t startLaser, int16_t ARUpperTH, int16_t ARLowerTH)
void set_motion_range(uvc::device &device, uint8_t motion_range)
void get_accuracy(const uvc::device &device, uint8_t &accuracy)
void enable_timestamp(uvc::device &device, std::timed_mutex &mutex, bool colorEnable, bool depthEnable)
size_t prepare_usb_command(uint8_t *request, size_t &requestSize, uint32_t op, uint32_t p1=0, uint32_t p2=0, uint32_t p3=0, uint32_t p4=0, uint8_t *data=0, size_t dataLength=0)
void set_filter_option(uvc::device &device, uint8_t filter_option)
void get_filter_option(const uvc::device &device, uint8_t &filter_option)
void set_accuracy(uvc::device &device, uint8_t accuracy)
void set_laser_power(uvc::device &device, uint8_t laser_power)
fw_cmd
Definition ivcam-private.h:60
@ AutoRangeSetParamsforDebug
const uvc::extension_unit depth_xu
Definition ivcam-private.h:14
void get_gvd(uvc::device &device, std::timed_mutex &mutex, size_t sz, char *gvd, int gvd_cmd=(int) fw_cmd::GVD)
void get_confidence_threshold(const uvc::device &device, uint8_t &conf_thresh)
void claim_ivcam_interface(uvc::device &device)
void force_hardware_reset(uvc::device &device, std::timed_mutex &mutex)
void get_firmware_version_string(uvc::device &device, std::timed_mutex &mutex, std::string &version, int gvd_cmd=(int) fw_cmd::GVD, int offset=0)
FirmwareError
Definition ivcam-private.h:86
@ FW_PJ_EYESAFETY_CHKRHARD
@ FW_USB_TCAM_THROTTLED_ERR
@ FW_Flash_RGB_CALIBRATION
@ FW_USB_PCAM_THROTTLED_ERR
@ FW_MIPI_PCAM_FRAME_SIZE_ERR
@ FW_MIPI_TCAM_FRAME_RESPONSE_ERR
@ FW_FORZA_CONTINUES_HUNG
@ FW_Flash_IR_CALIBRATION
@ FW_MIPI_TCAM_FRAME_SIZE_ERR
@ FW_LIGURIA_TEMPERATURE_ERR
@ FW_MIPI_PCAM_FRAME_RESPONSE_ERR
@ FW_Flash_CALIBRATION_RW
@ FW_Flash_THERMAL_LOOP_CONFIGURATION
void get_module_serial_string(uvc::device &device, std::timed_mutex &mutex, std::string &serial, int offset)
void get_motion_range(const uvc::device &device, uint8_t &motion_range)
void set_confidence_threshold(uvc::device &device, uint8_t conf_thresh)
void get_laser_power(const uvc::device &device, uint8_t &laser_power)
ivcam::camera_calib_params read_sr300_calibration(uvc::device &device, std::timed_mutex &mutex)
Definition ivcam-private.h:162
float AmbientTemp
Definition ivcam-private.h:165
float LiguriaTemp
Definition ivcam-private.h:163
float IRTemp
Definition ivcam-private.h:164
Definition ivcam-private.h:169
float Param4
Definition ivcam-private.h:191
float IRThermalLoopEnable
Definition ivcam-private.h:170
float Param1
Definition ivcam-private.h:188
float UxSlopeB
Definition ivcam-private.h:182
float TimeOutC
Definition ivcam-private.h:173
float TempThreshold
Definition ivcam-private.h:175
float TransitionTemp
Definition ivcam-private.h:174
float TimeOutB
Definition ivcam-private.h:172
float LiguriaTempWeight
Definition ivcam-private.h:185
float Param3
Definition ivcam-private.h:190
float IrTempWeight
Definition ivcam-private.h:186
float UxSlopeA
Definition ivcam-private.h:181
float HFOVsensitivity
Definition ivcam-private.h:176
float FcxSlopeA
Definition ivcam-private.h:177
float UxSlopeC
Definition ivcam-private.h:183
float TimeOutA
Definition ivcam-private.h:171
float Param5
Definition ivcam-private.h:192
float Param2
Definition ivcam-private.h:189
float FcxSlopeC
Definition ivcam-private.h:179
float FcxSlopeB
Definition ivcam-private.h:178
float FcxOffset
Definition ivcam-private.h:180
float AmbientTempWeight
Definition ivcam-private.h:187
float UxOffset
Definition ivcam-private.h:184
Definition ivcam-private.h:46
uint16_t ARUpperTh
Definition ivcam-private.h:55
int16_t minLaser
Definition ivcam-private.h:52
int16_t startMvR
Definition ivcam-private.h:51
int16_t maxMvR
Definition ivcam-private.h:50
uint16_t ARLowerTh
Definition ivcam-private.h:56
int16_t startLaser
Definition ivcam-private.h:54
int16_t maxLaser
Definition ivcam-private.h:53
int enableLaser
Definition ivcam-private.h:48
int enableMvR
Definition ivcam-private.h:47
int16_t minMvR
Definition ivcam-private.h:49
Definition ivcam-private.h:38
int uniqueNumber
Definition ivcam-private.h:39
int16_t TableValidation
Definition ivcam-private.h:40
ivcam::camera_calib_params CalibrationParameters
Definition ivcam-private.h:42
int16_t TableVersion
Definition ivcam-private.h:41
Definition ivcam-private.h:17
float Distt[5]
Definition ivcam-private.h:32
float Tp[3]
Definition ivcam-private.h:25
float Rt[3][3]
Definition ivcam-private.h:30
float Pt[3][4]
Definition ivcam-private.h:28
float Pp[3][4]
Definition ivcam-private.h:22
float Distp[5]
Definition ivcam-private.h:26
float Invdistc[5]
Definition ivcam-private.h:21
float Invdistp[5]
Definition ivcam-private.h:27
float Kp[3][3]
Definition ivcam-private.h:23
float Kt[3][3]
Definition ivcam-private.h:29
float Rmax
Definition ivcam-private.h:18
float Tt[3]
Definition ivcam-private.h:31
float Rp[3][3]
Definition ivcam-private.h:24
float Invdistt[5]
Definition ivcam-private.h:33
float Distc[5]
Definition ivcam-private.h:20
float Kc[3][3]
Definition ivcam-private.h:19
float QV[6]
Definition ivcam-private.h:34