Program Listing for File rs_option.h
↰ Return to documentation for file (include/librealsense2/h/rs_option.h
)
/* License: Apache 2.0. See LICENSE file in root directory.
Copyright(c) 2017 Intel Corporation. All Rights Reserved. */
#ifndef LIBREALSENSE_RS2_OPTION_H
#define LIBREALSENSE_RS2_OPTION_H
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
#include "rs_types.h"
typedef enum rs2_option
{
RS2_OPTION_BACKLIGHT_COMPENSATION,
RS2_OPTION_BRIGHTNESS,
RS2_OPTION_CONTRAST,
RS2_OPTION_EXPOSURE,
RS2_OPTION_GAIN,
RS2_OPTION_GAMMA,
RS2_OPTION_HUE,
RS2_OPTION_SATURATION,
RS2_OPTION_SHARPNESS,
RS2_OPTION_WHITE_BALANCE,
RS2_OPTION_ENABLE_AUTO_EXPOSURE,
RS2_OPTION_ENABLE_AUTO_WHITE_BALANCE,
RS2_OPTION_VISUAL_PRESET,
RS2_OPTION_LASER_POWER,
RS2_OPTION_ACCURACY,
RS2_OPTION_MOTION_RANGE,
RS2_OPTION_FILTER_OPTION,
RS2_OPTION_CONFIDENCE_THRESHOLD,
RS2_OPTION_EMITTER_ENABLED,
RS2_OPTION_FRAMES_QUEUE_SIZE,
RS2_OPTION_TOTAL_FRAME_DROPS,
RS2_OPTION_AUTO_EXPOSURE_MODE,
RS2_OPTION_POWER_LINE_FREQUENCY,
RS2_OPTION_ASIC_TEMPERATURE,
RS2_OPTION_ERROR_POLLING_ENABLED,
RS2_OPTION_PROJECTOR_TEMPERATURE,
RS2_OPTION_OUTPUT_TRIGGER_ENABLED,
RS2_OPTION_MOTION_MODULE_TEMPERATURE,
RS2_OPTION_DEPTH_UNITS,
RS2_OPTION_ENABLE_MOTION_CORRECTION,
RS2_OPTION_AUTO_EXPOSURE_PRIORITY,
RS2_OPTION_COLOR_SCHEME,
RS2_OPTION_HISTOGRAM_EQUALIZATION_ENABLED,
RS2_OPTION_MIN_DISTANCE,
RS2_OPTION_MAX_DISTANCE,
RS2_OPTION_TEXTURE_SOURCE,
RS2_OPTION_FILTER_MAGNITUDE,
RS2_OPTION_FILTER_SMOOTH_ALPHA,
RS2_OPTION_FILTER_SMOOTH_DELTA,
RS2_OPTION_HOLES_FILL,
RS2_OPTION_STEREO_BASELINE,
RS2_OPTION_AUTO_EXPOSURE_CONVERGE_STEP,
RS2_OPTION_INTER_CAM_SYNC_MODE,
RS2_OPTION_STREAM_FILTER,
RS2_OPTION_STREAM_FORMAT_FILTER,
RS2_OPTION_STREAM_INDEX_FILTER,
RS2_OPTION_EMITTER_ON_OFF,
RS2_OPTION_ZERO_ORDER_POINT_X,
RS2_OPTION_ZERO_ORDER_POINT_Y,
RS2_OPTION_LLD_TEMPERATURE,
RS2_OPTION_MC_TEMPERATURE,
RS2_OPTION_MA_TEMPERATURE,
RS2_OPTION_HARDWARE_PRESET,
RS2_OPTION_GLOBAL_TIME_ENABLED,
RS2_OPTION_APD_TEMPERATURE,
RS2_OPTION_ENABLE_MAPPING,
RS2_OPTION_ENABLE_RELOCALIZATION,
RS2_OPTION_ENABLE_POSE_JUMPING,
RS2_OPTION_ENABLE_DYNAMIC_CALIBRATION,
RS2_OPTION_DEPTH_OFFSET,
RS2_OPTION_LED_POWER,
RS2_OPTION_ZERO_ORDER_ENABLED,
RS2_OPTION_ENABLE_MAP_PRESERVATION,
RS2_OPTION_FREEFALL_DETECTION_ENABLED,
RS2_OPTION_AVALANCHE_PHOTO_DIODE,
RS2_OPTION_POST_PROCESSING_SHARPENING,
RS2_OPTION_PRE_PROCESSING_SHARPENING,
RS2_OPTION_NOISE_FILTERING,
RS2_OPTION_INVALIDATION_BYPASS,
RS2_OPTION_AMBIENT_LIGHT,
RS2_OPTION_DIGITAL_GAIN = RS2_OPTION_AMBIENT_LIGHT,
RS2_OPTION_SENSOR_MODE,
RS2_OPTION_EMITTER_ALWAYS_ON,
RS2_OPTION_THERMAL_COMPENSATION,
RS2_OPTION_TRIGGER_CAMERA_ACCURACY_HEALTH,
RS2_OPTION_RESET_CAMERA_ACCURACY_HEALTH,
RS2_OPTION_HOST_PERFORMANCE,
RS2_OPTION_HDR_ENABLED,
RS2_OPTION_SEQUENCE_NAME,
RS2_OPTION_SEQUENCE_SIZE,
RS2_OPTION_SEQUENCE_ID,
RS2_OPTION_HUMIDITY_TEMPERATURE,
RS2_OPTION_ENABLE_MAX_USABLE_RANGE,
RS2_OPTION_ALTERNATE_IR,
RS2_OPTION_NOISE_ESTIMATION,
RS2_OPTION_ENABLE_IR_REFLECTIVITY,
RS2_OPTION_AUTO_EXPOSURE_LIMIT,
RS2_OPTION_AUTO_GAIN_LIMIT,
RS2_OPTION_AUTO_RX_SENSITIVITY,
RS2_OPTION_TRANSMITTER_FREQUENCY,
RS2_OPTION_VERTICAL_BINNING,
RS2_OPTION_RECEIVER_SENSITIVITY,
RS2_OPTION_AUTO_EXPOSURE_LIMIT_TOGGLE,
RS2_OPTION_AUTO_GAIN_LIMIT_TOGGLE,
RS2_OPTION_EMITTER_FREQUENCY,
RS2_OPTION_DEPTH_AUTO_EXPOSURE_MODE,
RS2_OPTION_OHM_TEMPERATURE,
RS2_OPTION_SOC_PVT_TEMPERATURE,
RS2_OPTION_GYRO_SENSITIVITY,
RS2_OPTION_COUNT
} rs2_option;
const char* rs2_option_to_string(rs2_option option);
rs2_option rs2_option_from_string( const char * option_name );
typedef enum rs2_option_type
{
RS2_OPTION_TYPE_INTEGER,
RS2_OPTION_TYPE_FLOAT,
RS2_OPTION_TYPE_STRING,
RS2_OPTION_TYPE_BOOLEAN,
RS2_OPTION_TYPE_COUNT
} rs2_option_type;
const char * rs2_option_type_to_string( rs2_option_type type );
typedef struct rs2_option_value
{
rs2_option id;
int is_valid;
rs2_option_type type;
union {
char const * as_string;
float as_float;
int64_t as_integer;
};
} rs2_option_value;
typedef enum rs2_sr300_visual_preset
{
RS2_SR300_VISUAL_PRESET_SHORT_RANGE,
RS2_SR300_VISUAL_PRESET_LONG_RANGE,
RS2_SR300_VISUAL_PRESET_BACKGROUND_SEGMENTATION,
RS2_SR300_VISUAL_PRESET_GESTURE_RECOGNITION,
RS2_SR300_VISUAL_PRESET_OBJECT_SCANNING,
RS2_SR300_VISUAL_PRESET_FACE_ANALYTICS,
RS2_SR300_VISUAL_PRESET_FACE_LOGIN,
RS2_SR300_VISUAL_PRESET_GR_CURSOR,
RS2_SR300_VISUAL_PRESET_DEFAULT,
RS2_SR300_VISUAL_PRESET_MID_RANGE,
RS2_SR300_VISUAL_PRESET_IR_ONLY,
RS2_SR300_VISUAL_PRESET_COUNT
} rs2_sr300_visual_preset;
const char* rs2_sr300_visual_preset_to_string(rs2_sr300_visual_preset preset);
typedef enum rs2_rs400_visual_preset
{
RS2_RS400_VISUAL_PRESET_CUSTOM,
RS2_RS400_VISUAL_PRESET_DEFAULT,
RS2_RS400_VISUAL_PRESET_HAND,
RS2_RS400_VISUAL_PRESET_HIGH_ACCURACY,
RS2_RS400_VISUAL_PRESET_HIGH_DENSITY,
RS2_RS400_VISUAL_PRESET_MEDIUM_DENSITY,
RS2_RS400_VISUAL_PRESET_REMOVE_IR_PATTERN,
RS2_RS400_VISUAL_PRESET_COUNT
} rs2_rs400_visual_preset;
const char* rs2_rs400_visual_preset_to_string(rs2_rs400_visual_preset preset);
typedef enum rs2_l500_visual_preset
{
RS2_L500_VISUAL_PRESET_CUSTOM,
RS2_L500_VISUAL_PRESET_DEFAULT,
RS2_L500_VISUAL_PRESET_NO_AMBIENT,
RS2_L500_VISUAL_PRESET_LOW_AMBIENT,
RS2_L500_VISUAL_PRESET_MAX_RANGE,
RS2_L500_VISUAL_PRESET_SHORT_RANGE,
RS2_L500_VISUAL_PRESET_AUTOMATIC,
RS2_L500_VISUAL_PRESET_COUNT
} rs2_l500_visual_preset;
const char* rs2_l500_visual_preset_to_string(rs2_l500_visual_preset preset);
typedef enum rs2_sensor_mode
{
RS2_SENSOR_MODE_VGA,
RS2_SENSOR_MODE_XGA,
RS2_SENSOR_MODE_QVGA,
RS2_SENSOR_MODE_COUNT
} rs2_sensor_mode;
const char* rs2_sensor_mode_to_string(rs2_sensor_mode preset);
typedef enum rs2_ambient_light
{
RS2_AMBIENT_LIGHT_NO_AMBIENT = 1,
RS2_AMBIENT_LIGHT_LOW_AMBIENT = 2,
} rs2_ambient_light;
const char* rs2_ambient_light_to_string(rs2_ambient_light preset);
typedef enum rs2_digital_gain
{
RS2_DIGITAL_GAIN_AUTO = 0,
RS2_DIGITAL_GAIN_HIGH = 1,
RS2_DIGITAL_GAIN_LOW = 2,
} rs2_digital_gain;
const char* rs2_digital_gain_to_string(rs2_digital_gain preset);
typedef enum rs2_host_perf_mode
{
RS2_HOST_PERF_DEFAULT = 0,
RS2_HOST_PERF_LOW = 1,
RS2_HOST_PERF_HIGH = 2,
RS2_HOST_PERF_COUNT
} rs2_host_perf_mode;
const char* rs2_host_perf_mode_to_string( rs2_host_perf_mode perf );
typedef enum rs2_emitter_frequency_mode
{
RS2_EMITTER_FREQUENCY_57_KHZ = 0,
RS2_EMITTER_FREQUENCY_91_KHZ = 1,
RS2_EMITTER_FREQUENCY_COUNT
} rs2_emitter_frequency_mode;
const char* rs2_emitter_frequency_mode_to_string( rs2_emitter_frequency_mode mode );
typedef enum rs2_depth_auto_exposure_mode
{
RS2_DEPTH_AUTO_EXPOSURE_REGULAR = 0,
RS2_DEPTH_AUTO_EXPOSURE_ACCELERATED = 1,
RS2_DEPTH_AUTO_EXPOSURE_COUNT
} rs2_depth_auto_exposure_mode;
const char* rs2_depth_auto_exposure_mode_to_string( rs2_depth_auto_exposure_mode mode );
typedef enum rs2_gyro_sensitivity
{
RS2_GYRO_SENSITIVITY_61_0_MILLI_DEG_SEC = 0,
RS2_GYRO_SENSITIVITY_30_5_MILLI_DEG_SEC = 1,
RS2_GYRO_SENSITIVITY_15_3_MILLI_DEG_SEC = 2,
RS2_GYRO_SENSITIVITY_7_6_MILLI_DEG_SEC = 3,
RS2_GYRO_SENSITIVITY_3_8_MILLI_DEG_SEC = 4,
RS2_GYRO_SENSITIVITY_COUNT
} rs2_gyro_sensitivity;
const char * rs2_gyro_sensitivity_to_string( rs2_gyro_sensitivity mode );
int rs2_is_option_read_only(const rs2_options* options, rs2_option option, rs2_error** error);
float rs2_get_option(const rs2_options* options, rs2_option option, rs2_error** error);
rs2_option_value const * rs2_get_option_value( const rs2_options * options, rs2_option option_id, rs2_error ** error );
void rs2_set_option(const rs2_options* options, rs2_option option, float value, rs2_error** error);
void rs2_set_option_value( rs2_options const * options, rs2_option_value const * option_value, rs2_error ** error );
rs2_options_list* rs2_get_options_list(const rs2_options* options, rs2_error** error);
int rs2_get_options_list_size(const rs2_options_list* options, rs2_error** error);
const char* rs2_get_option_name(const rs2_options* options, rs2_option option, rs2_error** error);
rs2_option rs2_get_option_from_list(const rs2_options_list* options, int i, rs2_error** error);
rs2_option_value const * rs2_get_option_value_from_list( const rs2_options_list * options, int i, rs2_error ** error );
void rs2_delete_option_value( rs2_option_value const * handle );
void rs2_delete_options_list(rs2_options_list* list);
int rs2_supports_option(const rs2_options* options, rs2_option option, rs2_error** error);
void rs2_get_option_range(const rs2_options* sensor, rs2_option option, float* min, float* max, float* step, float* def, rs2_error** error);
const char* rs2_get_option_description(const rs2_options* options, rs2_option option, rs2_error ** error);
const char* rs2_get_option_value_description(const rs2_options* options, rs2_option option, float value, rs2_error ** error);
void rs2_set_options_changed_callback( rs2_options * options,
rs2_options_changed_callback_ptr callback,
rs2_error ** error );
void rs2_set_options_changed_callback_cpp( rs2_options * options,
rs2_options_changed_callback * callback,
rs2_error ** error );
#ifdef __cplusplus
}
#endif
#endif