27 float query()
const override {
return static_cast<float>(
_ptr->load()); }
33 return "Max number of frames you can hold at a given time. Increasing this number will reduce frame drops but increase latency, and vice versa";
36 std::atomic<uint32_t>*
_ptr;
41 return std::make_shared<frame_queue_size>(&_max_publish_list_size,
option_range{ 0, 32, 1, 16 });
62 for (
auto type : supported)
91 return it->second->alloc_and_track(size, additional_data, requires_memory);
98 a.second->set_sensor(s);
128 catch(
const std::exception &
e )
134 LOG_ERROR(
"Exception was thrown during user callback!");
static const textual_icon lock
frame_callback_ptr _callback
std::shared_ptr< platform::time_service > _ts
void invoke_callback(frame_holder frame) const
std::map< rs2_extension, std::shared_ptr< archive_interface > > _archive
bool is_enabled() const override
void init(std::shared_ptr< metadata_parser_map > metadata_parsers)
std::shared_ptr< rs2_frame_callback > frame_callback_ptr
std::shared_ptr< archive_interface > make_archive(rs2_extension type, std::atomic< uint32_t > *in_max_frame_queue_size, std::shared_ptr< platform::time_service > ts, std::shared_ptr< metadata_parser_map > parsers)
std::atomic< uint32_t > _max_publish_list_size
GLsizei const GLchar *const * string
GLboolean GLboolean GLboolean GLboolean a
std::atomic< uint32_t > * _ptr
std::mutex _callback_mutex
frame_callback_ptr get_callback() const
std::shared_ptr< option > get_published_size_option()
const char * get_description() const override
float query() const override
virtual archive_interface * get_owner() const =0
void set_sensor(const std::shared_ptr< sensor_interface > &s)
void swap(nlohmann::json &j1, nlohmann::json &j2) noexcept(is_nothrow_move_constructible< nlohmann::json >::value andis_nothrow_move_assignable< nlohmann::json >::value)
exchanges the values of two JSON objects
frame_interface * alloc_frame(rs2_extension type, size_t size, frame_additional_data additional_data, bool requires_memory) const
static environment & get_instance()
std::function< void(const option &)> _recording_function
virtual void log_callback_start(rs2_time_t timestamp)=0
frame_queue_size(std::atomic< uint32_t > *ptr, const option_range &opt_range)
rs2_extension
Specifies advanced interfaces (capabilities) objects may implement.
frame_source(uint32_t max_publish_list_size=16)
void set_callback(frame_callback_ptr callback)
virtual callback_invocation_holder begin_callback()=0
std::shared_ptr< metadata_parser_map > _metadata_parsers
bool is_valid(float value) const
struct rs2_frame rs2_frame
callback_invocation_holder begin_callback()
std::string to_string(T value)