Intel® RealSense™ Cross Platform API
Intel Realsense Cross-platform API
Loading...
Searching...
No Matches
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

namespace  rsimpl
 
namespace  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

◆ HW_MONITOR_PROTOCOL_H

#define HW_MONITOR_PROTOCOL_H

Variable Documentation

◆ HW_MONITOR_BUFFER_SIZE

const uint16_t HW_MONITOR_BUFFER_SIZE = 1000

◆ HW_MONITOR_COMMAND_SIZE

const uint16_t HW_MONITOR_COMMAND_SIZE = 1000

◆ IV_COMMAND_CONFIDENCE_THRESHHOLD

const uint8_t IV_COMMAND_CONFIDENCE_THRESHHOLD = 0x0C

◆ IV_COMMAND_DEPTH_ACCURACY

const uint8_t IV_COMMAND_DEPTH_ACCURACY = 0x04

◆ IV_COMMAND_FILTER_OPTION

const uint8_t IV_COMMAND_FILTER_OPTION = 0x0A

◆ IV_COMMAND_FIRMWARE_UPDATE_MODE

const uint8_t IV_COMMAND_FIRMWARE_UPDATE_MODE = 0x01

◆ IV_COMMAND_GET_CALIBRATION_DATA

const uint8_t IV_COMMAND_GET_CALIBRATION_DATA = 0x02

◆ IV_COMMAND_INTENSITY_IMAGE_TYPE

const uint8_t IV_COMMAND_INTENSITY_IMAGE_TYPE = 0x07

◆ IV_COMMAND_LASER_POWER

const uint8_t IV_COMMAND_LASER_POWER = 0x03

◆ IV_COMMAND_LOW_CONFIDENCE_LEVEL

const uint8_t IV_COMMAND_LOW_CONFIDENCE_LEVEL = 0x06

◆ IV_COMMAND_MOTION_VS_RANGE_TRADE

const uint8_t IV_COMMAND_MOTION_VS_RANGE_TRADE = 0x08

◆ IV_COMMAND_POWER_GEAR

const uint8_t IV_COMMAND_POWER_GEAR = 0x09

◆ IV_COMMAND_VERSION

const uint8_t IV_COMMAND_VERSION = 0x0B

◆ IV_COMMAND_ZUNIT

const uint8_t IV_COMMAND_ZUNIT = 0x05

◆ IVCAM_COLOR_AUTO_FLICKER

const uint8_t IVCAM_COLOR_AUTO_FLICKER = 2

◆ IVCAM_COLOR_ERROR

const uint8_t IVCAM_COLOR_ERROR = 3

◆ IVCAM_COLOR_EXPOSURE_GRANULAR

const uint8_t IVCAM_COLOR_EXPOSURE_GRANULAR = 4

◆ IVCAM_COLOR_EXPOSURE_PRIORITY

const uint8_t IVCAM_COLOR_EXPOSURE_PRIORITY = 1

◆ IVCAM_DEPTH_ACCURACY

const uint8_t IVCAM_DEPTH_ACCURACY = 2

◆ IVCAM_DEPTH_CONFIDENCE_THRESH

const uint8_t IVCAM_DEPTH_CONFIDENCE_THRESH = 6

◆ IVCAM_DEPTH_DYNAMIC_FPS

const uint8_t IVCAM_DEPTH_DYNAMIC_FPS = 7

◆ IVCAM_DEPTH_ERROR

const uint8_t IVCAM_DEPTH_ERROR = 4

◆ IVCAM_DEPTH_FILTER_OPTION

const uint8_t IVCAM_DEPTH_FILTER_OPTION = 5

◆ IVCAM_DEPTH_LASER_POWER

const uint8_t IVCAM_DEPTH_LASER_POWER = 1

◆ IVCAM_DEPTH_MOTION_RANGE

const uint8_t IVCAM_DEPTH_MOTION_RANGE = 3

◆ IVCAM_MIN_SUPPORTED_VERSION

const uint8_t IVCAM_MIN_SUPPORTED_VERSION = 13

◆ IVCAM_MONITOR_ENDPOINT_IN

const uint8_t IVCAM_MONITOR_ENDPOINT_IN = 0x81

◆ IVCAM_MONITOR_ENDPOINT_OUT

const uint8_t IVCAM_MONITOR_ENDPOINT_OUT = 0x1

◆ IVCAM_MONITOR_HEADER_SIZE

const uint8_t IVCAM_MONITOR_HEADER_SIZE = (sizeof(uint32_t) * 6)

◆ IVCAM_MONITOR_INTERFACE

const uint8_t IVCAM_MONITOR_INTERFACE = 0x4

◆ IVCAM_MONITOR_MAGIC_NUMBER

const uint16_t IVCAM_MONITOR_MAGIC_NUMBER = 0xcdab

◆ IVCAM_MONITOR_MAX_BUFFER_SIZE

const uint16_t IVCAM_MONITOR_MAX_BUFFER_SIZE = 1024

◆ IVCAM_MONITOR_MUTEX_TIMEOUT

const uint16_t IVCAM_MONITOR_MUTEX_TIMEOUT = 3000

◆ MAX_SIZE_OF_CALIB_PARAM_BYTES

const uint16_t MAX_SIZE_OF_CALIB_PARAM_BYTES = 800

◆ NUM_OF_CALIBRATION_COEFFS

const uint8_t NUM_OF_CALIBRATION_COEFFS = 64

◆ NUM_OF_CALIBRATION_PARAMS

const uint8_t NUM_OF_CALIBRATION_PARAMS = 100

◆ PARAMETERS_BUFFER_SIZE

const uint8_t PARAMETERS_BUFFER_SIZE = 50

◆ SIZE_OF_CALIB_HEADER_BYTES

const uint8_t SIZE_OF_CALIB_HEADER_BYTES = 4

◆ SIZE_OF_CALIB_PARAM_BYTES

const uint16_t SIZE_OF_CALIB_PARAM_BYTES = 512