Intel® RealSense™ Cross Platform API
Intel Realsense Cross-platform API
Classes | Namespaces | Macros | Functions | Variables
hw-monitor.h File Reference
#include "uvc.h"
#include <cstring>

Go to the source code of this file.

Classes

struct  rsimpl::hw_monitor::hwmon_cmd
 
struct  rsimpl::hw_monitor::hwmon_cmd_details
 

Namespaces

 rsimpl
 
 rsimpl::hw_monitor
 

Macros

#define HW_MONITOR_PROTOCOL_H
 

Functions

void rsimpl::hw_monitor::fill_usb_buffer (int opCodeNumber, int p1, int p2, int p3, int p4, uint8_t *data, int dataLength, uint8_t *bufferToSend, int &length)
 
void rsimpl::hw_monitor::execute_usb_command (uvc::device &device, std::timed_mutex &mutex, uint8_t *out, size_t outSize, uint32_t &op, uint8_t *in, size_t &inSize)
 
void rsimpl::hw_monitor::send_hw_monitor_command (uvc::device &device, std::timed_mutex &mutex, hwmon_cmd_details &details)
 
void rsimpl::hw_monitor::perform_and_send_monitor_command (uvc::device &device, std::timed_mutex &mutex, hwmon_cmd &newCommand)
 
void rsimpl::hw_monitor::i2c_write_reg (int command, uvc::device &device, uint16_t slave_address, uint16_t reg, uint32_t value)
 
void rsimpl::hw_monitor::i2c_read_reg (int command, uvc::device &device, uint16_t slave_address, uint16_t reg, uint32_t size, byte *data)
 
void rsimpl::hw_monitor::read_from_eeprom (int IRB_opcode, int IWB_opcode, uvc::device &device, unsigned int offset, int size, byte *data)
 
void rsimpl::hw_monitor::get_raw_data (uint8_t opcode, uvc::device &device, std::timed_mutex &mutex, uint8_t *data, size_t &bytesReturned)
 

Variables

const uint8_t IV_COMMAND_FIRMWARE_UPDATE_MODE = 0x01
 
const uint8_t IV_COMMAND_GET_CALIBRATION_DATA = 0x02
 
const uint8_t IV_COMMAND_LASER_POWER = 0x03
 
const uint8_t IV_COMMAND_DEPTH_ACCURACY = 0x04
 
const uint8_t IV_COMMAND_ZUNIT = 0x05
 
const uint8_t IV_COMMAND_LOW_CONFIDENCE_LEVEL = 0x06
 
const uint8_t IV_COMMAND_INTENSITY_IMAGE_TYPE = 0x07
 
const uint8_t IV_COMMAND_MOTION_VS_RANGE_TRADE = 0x08
 
const uint8_t IV_COMMAND_POWER_GEAR = 0x09
 
const uint8_t IV_COMMAND_FILTER_OPTION = 0x0A
 
const uint8_t IV_COMMAND_VERSION = 0x0B
 
const uint8_t IV_COMMAND_CONFIDENCE_THRESHHOLD = 0x0C
 
const uint8_t IVCAM_MONITOR_INTERFACE = 0x4
 
const uint8_t IVCAM_MONITOR_ENDPOINT_OUT = 0x1
 
const uint8_t IVCAM_MONITOR_ENDPOINT_IN = 0x81
 
const uint8_t IVCAM_MIN_SUPPORTED_VERSION = 13
 
const uint8_t IVCAM_MONITOR_HEADER_SIZE = (sizeof(uint32_t) * 6)
 
const uint8_t NUM_OF_CALIBRATION_PARAMS = 100
 
const uint8_t PARAMETERS_BUFFER_SIZE = 50
 
const uint8_t SIZE_OF_CALIB_HEADER_BYTES = 4
 
const uint8_t NUM_OF_CALIBRATION_COEFFS = 64
 
const uint16_t MAX_SIZE_OF_CALIB_PARAM_BYTES = 800
 
const uint16_t SIZE_OF_CALIB_PARAM_BYTES = 512
 
const uint16_t IVCAM_MONITOR_MAGIC_NUMBER = 0xcdab
 
const uint16_t IVCAM_MONITOR_MAX_BUFFER_SIZE = 1024
 
const uint16_t IVCAM_MONITOR_MUTEX_TIMEOUT = 3000
 
const uint16_t HW_MONITOR_COMMAND_SIZE = 1000
 
const uint16_t HW_MONITOR_BUFFER_SIZE = 1000
 
const uint8_t IVCAM_DEPTH_LASER_POWER = 1
 
const uint8_t IVCAM_DEPTH_ACCURACY = 2
 
const uint8_t IVCAM_DEPTH_MOTION_RANGE = 3
 
const uint8_t IVCAM_DEPTH_ERROR = 4
 
const uint8_t IVCAM_DEPTH_FILTER_OPTION = 5
 
const uint8_t IVCAM_DEPTH_CONFIDENCE_THRESH = 6
 
const uint8_t IVCAM_DEPTH_DYNAMIC_FPS = 7
 
const uint8_t IVCAM_COLOR_EXPOSURE_PRIORITY = 1
 
const uint8_t IVCAM_COLOR_AUTO_FLICKER = 2
 
const uint8_t IVCAM_COLOR_ERROR = 3
 
const uint8_t IVCAM_COLOR_EXPOSURE_GRANULAR = 4
 

Macro Definition Documentation

#define HW_MONITOR_PROTOCOL_H

Variable Documentation

const uint16_t HW_MONITOR_BUFFER_SIZE = 1000
const uint16_t HW_MONITOR_COMMAND_SIZE = 1000
const uint8_t IV_COMMAND_CONFIDENCE_THRESHHOLD = 0x0C
const uint8_t IV_COMMAND_DEPTH_ACCURACY = 0x04
const uint8_t IV_COMMAND_FILTER_OPTION = 0x0A
const uint8_t IV_COMMAND_FIRMWARE_UPDATE_MODE = 0x01
const uint8_t IV_COMMAND_GET_CALIBRATION_DATA = 0x02
const uint8_t IV_COMMAND_INTENSITY_IMAGE_TYPE = 0x07
const uint8_t IV_COMMAND_LASER_POWER = 0x03
const uint8_t IV_COMMAND_LOW_CONFIDENCE_LEVEL = 0x06
const uint8_t IV_COMMAND_MOTION_VS_RANGE_TRADE = 0x08
const uint8_t IV_COMMAND_POWER_GEAR = 0x09
const uint8_t IV_COMMAND_VERSION = 0x0B
const uint8_t IV_COMMAND_ZUNIT = 0x05
const uint8_t IVCAM_COLOR_AUTO_FLICKER = 2
const uint8_t IVCAM_COLOR_ERROR = 3
const uint8_t IVCAM_COLOR_EXPOSURE_GRANULAR = 4
const uint8_t IVCAM_COLOR_EXPOSURE_PRIORITY = 1
const uint8_t IVCAM_DEPTH_ACCURACY = 2
const uint8_t IVCAM_DEPTH_CONFIDENCE_THRESH = 6
const uint8_t IVCAM_DEPTH_DYNAMIC_FPS = 7
const uint8_t IVCAM_DEPTH_ERROR = 4
const uint8_t IVCAM_DEPTH_FILTER_OPTION = 5
const uint8_t IVCAM_DEPTH_LASER_POWER = 1
const uint8_t IVCAM_DEPTH_MOTION_RANGE = 3
const uint8_t IVCAM_MIN_SUPPORTED_VERSION = 13
const uint8_t IVCAM_MONITOR_ENDPOINT_IN = 0x81
const uint8_t IVCAM_MONITOR_ENDPOINT_OUT = 0x1
const uint8_t IVCAM_MONITOR_HEADER_SIZE = (sizeof(uint32_t) * 6)
const uint8_t IVCAM_MONITOR_INTERFACE = 0x4
const uint16_t IVCAM_MONITOR_MAGIC_NUMBER = 0xcdab
const uint16_t IVCAM_MONITOR_MAX_BUFFER_SIZE = 1024
const uint16_t IVCAM_MONITOR_MUTEX_TIMEOUT = 3000
const uint16_t MAX_SIZE_OF_CALIB_PARAM_BYTES = 800
const uint8_t NUM_OF_CALIBRATION_COEFFS = 64
const uint8_t NUM_OF_CALIBRATION_PARAMS = 100
const uint8_t PARAMETERS_BUFFER_SIZE = 50
const uint8_t SIZE_OF_CALIB_HEADER_BYTES = 4
const uint16_t SIZE_OF_CALIB_PARAM_BYTES = 512