43 const std::map< float, std::string > & description_per_value,
46 : super( ep, xu, id, description, description_per_value )
51 void set(
float value )
override;
65 float query()
const override;
67 void set(
float value)
override;
83 std::shared_ptr< digital_gain_option > digital_gain);
85 void set_default(
float def );
88 float query_new_fw_default(
bool &
success )
const;
89 float query_old_fw_default()
const;
94 void set_read_only(
bool read_only );
95 void set_manually(
bool set );
98 float query_default(
bool & success )
const;
120 void set(
float value)
override;
134 void set(
float value)
override;
145 void set(
float value)
override;
160 void set(
float value )
override;
161 void set_value(
float value );
164 void verify_max_usable_range_restrictions(
rs2_option opt,
float value );
174 std::vector<rs2_option> get_advanced_controls();
179 void update_defaults();
180 void move_to_custom();
184 void set_preset_controls_to_defaults();
187 void set_max_laser();
192 std::map<rs2_option, std::shared_ptr<cascade_option<l500_hw_options>>>
_hw_options;
195 std::shared_ptr< l500_preset_option >
_preset;
197 template<
typename T,
class ... Args>
202 auto signaled_opt = std::make_shared <cascade_option<T>>(std::forward<Args>(
args)...);
203 signaled_opt->add_observer([opt,
this](
float val) {on_set_option(opt, val);});
204 depth_sensor.register_option(opt, std::dynamic_pointer_cast<option>(signaled_opt));
l500_device * _l500_depth_dev
digital_gain_option(uvc_sensor &ep, platform::extension_unit xu, uint8_t id, std::string description, const std::map< float, std::string > &description_per_value, firmware_version fw_version, l500_options *owner)
max_usable_range_option(l500_device *l500_depth_dev)
uvc_xu_option< int > super
l500_device * _l500_depth_dev
rs2_option
Defines general configuration controls. These can generally be mapped to camera UVC controls...
float query() const override
std::shared_ptr< digital_gain_option > _digital_gain
GLsizei const GLchar *const * string
ir_reflectivity_option(l500_device *l500_depth_dev)
sensor_mode_option(l500_device *l500_depth_dev, option_range range, std::string description)
l500_device * _l500_depth_dev
void work_around_for_old_fw()
void set_by_preset(float value)
firmware_version _fw_version
std::shared_ptr< cascade_option< T > > register_option(rs2_option opt, Args...args)
firmware_version _fw_version
void reset_hw_controls(rs2::device &dev)
rs2_sensor_mode
For setting the camera_mode option.
std::shared_ptr< l500_hw_options > _alt_ir
std::shared_ptr< digital_gain_option > _digital_gain
bool is_read_only() const override
std::map< rs2_option, std::shared_ptr< cascade_option< l500_hw_options > > > _hw_options
const char * get_description() const override
bool _max_usable_range_forced_on
std::shared_ptr< l500_preset_option > _preset
bool is_enabled() const override
option_range get_range() const override
const char * get_description() const override
rs2_l500_visual_preset
For L500 devices: provides optimized settings (presets) for specific types of usage.
void enable_recording(std::function< void(const option &)> record_action) override