Public Member Functions | Private Member Functions | Private Attributes | List of all members
librealsense::filtering_processing_block Class Reference
Inheritance diagram for librealsense::filtering_processing_block:
Inheritance graph
[legend]

Public Member Functions

 filtering_processing_block (rs2_stream stream_to_pass)
 
 filtering_processing_block (std::initializer_list< rs2_stream > const &streams)
 
rs2::frame process_frame (const rs2::frame_source &source, const rs2::frame &f) override
 
- Public Member Functions inherited from librealsense::generic_processing_block
 generic_processing_block (const char *name)
 
virtual ~generic_processing_block ()
 
- Public Member Functions inherited from librealsense::processing_block
synthetic_source_interfaceget_source () override
 
void invoke (frame_holder frames) override
 
 processing_block (const char *name)
 
void set_output_callback (frame_callback_ptr callback) override
 
void set_processing_callback (frame_processor_callback_ptr callback) override
 
virtual ~processing_block ()
 
- Public Member Functions inherited from librealsense::processing_block_interface
virtual ~processing_block_interface ()=default
 
- Public Member Functions inherited from librealsense::options_interface
virtual ~options_interface ()=default
 
- Public Member Functions inherited from librealsense::recordable< options_interface >
virtual ~recordable ()=default
 
- Public Member Functions inherited from librealsense::info_interface
virtual ~info_interface ()=default
 
- Public Member Functions inherited from librealsense::recordable< info_interface >
virtual ~recordable ()=default
 
- Public Member Functions inherited from librealsense::options_container
void create_snapshot (std::shared_ptr< options_interface > &snapshot) const override
 
void enable_recording (std::function< void(const options_interface &)> record_action) override
 
optionget_option (rs2_option id) override
 
const optionget_option (rs2_option id) const override
 
std::shared_ptr< optionget_option_handler (rs2_option id)
 
std::shared_ptr< optionget_option_handler (rs2_option id) const
 
virtual const char * get_option_name (rs2_option option) const override
 
std::vector< rs2_optionget_supported_options () const override
 
void register_option (rs2_option id, std::shared_ptr< option > option)
 
bool supports_option (rs2_option id) const override
 
void unregister_option (rs2_option id)
 
void update (std::shared_ptr< extension_snapshot > ext) override
 
- Public Member Functions inherited from librealsense::extension_snapshot
virtual ~extension_snapshot ()=default
 
- Public Member Functions inherited from librealsense::info_container
void create_snapshot (std::shared_ptr< info_interface > &snapshot) const override
 
void enable_recording (std::function< void(const info_interface &)> record_action) override
 
const std::stringget_info (rs2_camera_info info) const override
 
void register_info (rs2_camera_info info, const std::string &val)
 
bool supports_info (rs2_camera_info info) const override
 
void update (std::shared_ptr< extension_snapshot > ext) override
 
void update_info (rs2_camera_info info, const std::string &val)
 

Private Member Functions

rs2::frame prepare_output (const rs2::frame_source &source, rs2::frame input, std::vector< rs2::frame > results) override
 
bool should_process (const rs2::frame &f) override
 

Private Attributes

std::vector< rs2_stream_streams
 

Additional Inherited Members

- Protected Attributes inherited from librealsense::processing_block
frame_processor_callback_ptr _callback
 
std::mutex _mutex
 
frame_source _source
 
synthetic_source _source_wrapper
 
- Protected Attributes inherited from librealsense::options_container
std::map< rs2_option, std::shared_ptr< option > > _options
 
std::function< void(const options_interface &)> _recording_function = [](const options_interface&) {}
 

Detailed Description

This processing block removes all frames that are not of the given stream types

This is only a workaround!!! It seems that, when definining a processing block outputs, if any other frames exist there then an issue can be exhibited where duplicate frames are produced. This solved the issue.

Definition at line 193 of file l500-device.cpp.

Constructor & Destructor Documentation

librealsense::filtering_processing_block::filtering_processing_block ( rs2_stream  stream_to_pass)
inline

Definition at line 197 of file l500-device.cpp.

librealsense::filtering_processing_block::filtering_processing_block ( std::initializer_list< rs2_stream > const &  streams)
inline

Definition at line 199 of file l500-device.cpp.

Member Function Documentation

rs2::frame librealsense::filtering_processing_block::prepare_output ( const rs2::frame_source source,
rs2::frame  input,
std::vector< rs2::frame results 
)
inlineoverrideprivatevirtual

Reimplemented from librealsense::generic_processing_block.

Definition at line 215 of file l500-device.cpp.

rs2::frame librealsense::filtering_processing_block::process_frame ( const rs2::frame_source source,
const rs2::frame f 
)
inlineoverridevirtual

Implements librealsense::generic_processing_block.

Definition at line 202 of file l500-device.cpp.

bool librealsense::filtering_processing_block::should_process ( const rs2::frame f)
inlineoverrideprivatevirtual

Implements librealsense::generic_processing_block.

Definition at line 208 of file l500-device.cpp.

Member Data Documentation

std::vector< rs2_stream > librealsense::filtering_processing_block::_streams
private

Definition at line 194 of file l500-device.cpp.


The documentation for this class was generated from the following file:


librealsense2
Author(s): Sergey Dorodnicov , Doron Hirshberg , Mark Horn , Reagan Lopez , Itay Carpis
autogenerated on Mon May 3 2021 02:50:37