6 #include "../include/librealsense2/h/rs_option.h" 23 virtual void set(
float value) = 0;
24 virtual float query()
const = 0;
30 virtual void create_snapshot(std::shared_ptr<option>& snapshot)
const override;
53 auto it = _options.find(
id);
54 if (it == _options.end())
return false;
55 return it->second->is_enabled();
65 auto it = _options.find(
id);
66 if (it == _options.end())
69 <<
"Device does not support option " 78 _recording_function(*
this);
88 snapshot = std::make_shared<options_container>(*this);
93 _recording_function = record_action;
96 void update(std::shared_ptr<extension_snapshot> ext)
override 98 auto ctr = As<options_container>(ext);
100 for(
auto&& opt : ctr->_options)
102 _options[opt.first] = opt.second;
107 std::map<rs2_option, std::shared_ptr<option>> _options;
108 std::function<void(const options_interface&)> _recording_function = [](
const options_interface&) {};
virtual const char * get_description() const =0
virtual ~option()=default
rs2_option
Defines general configuration controls. These can generally be mapped to camera UVC controls...
Definition: rs_option.h:22
float def
Definition: options.h:17
void enable_recording(std::function< void(const options_interface &)> record_action) override
Definition: options.h:91
const char * rs2_option_to_string(rs2_option option)
bool supports_option(rs2_option id) const override
Definition: options.h:51
float max
Definition: options.h:15
virtual option_range get_range() const =0
virtual void create_snapshot(std::shared_ptr< option > &snapshot) const override
option & get_option(rs2_option id) override
Definition: options.h:58
virtual float query() const =0
void unregister_option(rs2_option id)
Definition: options.h:81
void register_option(rs2_option id, std::shared_ptr< option > option)
Definition: options.h:75
virtual bool is_read_only() const
Definition: options.h:27
virtual ~options_interface()=default
virtual const char * get_value_description(float) const
Definition: options.h:29
virtual bool is_enabled() const =0
Definition: rs_types.h:99
virtual option & get_option(rs2_option id)=0
void update(std::shared_ptr< extension_snapshot > ext) override
Definition: options.h:96
void create_snapshot(std::shared_ptr< options_interface > &snapshot) const override
Definition: options.h:86
const option & get_option(rs2_option id) const override
Definition: options.h:63
virtual bool supports_option(rs2_option id) const =0
Definition: extension.h:46
float min
Definition: options.h:14
Definition: extension.h:33
float step
Definition: options.h:16
MAP_EXTENSION(RS2_EXTENSION_POINTS, librealsense::points)