#include "rs_types.h"
#include "rs_sensor.h"
Go to the source code of this file.
|
rs2_processing_block * | rs2_create_colorizer (rs2_error **error) |
|
rs2_processing_block * | rs2_create_sync_processing_block (rs2_error **error) |
|
rs2_processing_block * | rs2_create_pointcloud (rs2_error **error) |
|
rs2_processing_block * | rs2_create_processing_block (rs2_frame_processor_callback *proc, rs2_error **error) |
|
rs2_processing_block * | rs2_create_processing_block_fptr (rs2_frame_processor_callback_ptr proc, void *context, rs2_error **error) |
|
void | rs2_start_processing (rs2_processing_block *block, rs2_frame_callback *on_frame, rs2_error **error) |
|
void | rs2_start_processing_fptr (rs2_processing_block *block, rs2_frame_callback_ptr on_frame, void *user, rs2_error **error) |
|
void | rs2_start_processing_queue (rs2_processing_block *block, rs2_frame_queue *queue, rs2_error **error) |
|
void | rs2_process_frame (rs2_processing_block *block, rs2_frame *frame, rs2_error **error) |
|
void | rs2_delete_processing_block (rs2_processing_block *block) |
|
rs2_frame_queue * | rs2_create_frame_queue (int capacity, rs2_error **error) |
|
void | rs2_delete_frame_queue (rs2_frame_queue *queue) |
|
rs2_frame * | rs2_wait_for_frame (rs2_frame_queue *queue, unsigned int timeout_ms, rs2_error **error) |
|
int | rs2_poll_for_frame (rs2_frame_queue *queue, rs2_frame **output_frame, rs2_error **error) |
|
void | rs2_enqueue_frame (rs2_frame *frame, void *queue) |
|
rs2_processing_block * | rs2_create_align (rs2_stream align_to, rs2_error **error) |
|
rs2_processing_block * | rs2_create_decimation_filter_block (rs2_error **error) |
|
rs2_processing_block * | rs2_create_temporal_filter_block (rs2_error **error) |
|
rs2_processing_block * | rs2_create_spatial_filter_block (rs2_error **error) |
|
rs2_processing_block * | rs2_create_disparity_transform_block (unsigned char transform_to_disparity, rs2_error **error) |
|
rs2_processing_block * | rs2_create_hole_filling_filter_block (rs2_error **error) |
|
§ rs2_create_align()
Creates Align processing block.
- Parameters
-
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_create_colorizer()
Creates Depth-Colorizer processing block that can be used to quickly visualize the depth data This block will accept depth frames as input and replace them by depth frames with format RGB8 Non-depth frames are passed through Further customization will be added soon (format, color-map, histogram equalization control)
- Parameters
-
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_create_decimation_filter_block()
Creates Depth post-processing filter block. This block accepts depth frames, applies decimation filter and plots modified prames Note that due to the modifiedframe size, the decimated frame repaces the original one
- Parameters
-
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_create_disparity_transform_block()
Creates a post processing block that provides for depth<->disparity domain transformation for stereo-based depth modules
- Parameters
-
[in] | transform_to_disparity | flag select the transform direction: true = depth->disparity, and vice versa |
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_create_frame_queue()
create frame queue. frame queues are the simplest x-platform synchronization primitive provided by librealsense to help developers who are not using async APIs
- Parameters
-
[in] | capacity | max number of frames to allow to be stored in the queue before older frames will start to get dropped |
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
- Returns
- handle to the frame queue, must be released using rs2_delete_frame_queue
§ rs2_create_hole_filling_filter_block()
Creates Depth post-processing hole filling block. The filter replaces empty pixels with data from adjacent pixels based on the method selected
- Parameters
-
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_create_pointcloud()
Creates Point-Cloud processing block. This block accepts depth frames and outputs Points frames In addition, given non-depth frame, the block will align texture coordinate to the non-depth stream
- Parameters
-
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_create_processing_block()
This method creates new custom processing block. This lets the users pass frames between module boundaries for processing This is an infrastructure function aimed at middleware developers, and also used by provided blocks such as sync, colorizer, etc..
- Parameters
-
| proc | Processing function to be applied to every frame entering the block |
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
- Returns
- new processing block, to be released by rs2_delete_processing_block
§ rs2_create_processing_block_fptr()
This method creates new custom processing block from function pointer. This lets the users pass frames between module boundaries for processing This is an infrastructure function aimed at middleware developers, and also used by provided blocks such as sync, colorizer, etc..
- Parameters
-
| proc | Processing function pointer to be applied to every frame entering the block |
| context | User context (can be anything or null) to be passed later as ctx param of the callback |
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
- Returns
- new processing block, to be released by rs2_delete_processing_block
§ rs2_create_spatial_filter_block()
Creates Depth post-processing spatial filter block. This block accepts depth frames, applies spatial filters and plots modified prames
- Parameters
-
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_create_sync_processing_block()
Creates Sync processing block. This block accepts arbitrary frames and output composite frames of best matches Some frames may be released within the syncer if they are waiting for match for too long Syncronization is done (mostly) based on timestamps so good hardware timestamps are a pre-condition
- Parameters
-
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_create_temporal_filter_block()
Creates Depth post-processing filter block. This block accepts depth frames, applies temporal filter
- Parameters
-
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_delete_frame_queue()
deletes frame queue and releases all frames inside it
- Parameters
-
§ rs2_delete_processing_block()
Deletes the processing block
- Parameters
-
[in] | block | Processing block |
§ rs2_enqueue_frame()
void rs2_enqueue_frame |
( |
rs2_frame * |
frame, |
|
|
void * |
queue |
|
) |
| |
enqueue new frame into a queue
- Parameters
-
[in] | frame | frame handle to enqueue (this operation passed ownership to the queue) |
[in] | queue | the frame queue data structure |
§ rs2_poll_for_frame()
poll if a new frame is available and dequeue if it is
- Parameters
-
[in] | queue | the frame queue data structure |
[out] | output_frame | frame handle to be released using rs2_release_frame |
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
- Returns
- true if new frame was stored to output_frame
§ rs2_process_frame()
This method is used to pass frame into a processing block
- Parameters
-
[in] | block | Processing block |
[in] | frame | Frame to process, ownership is moved to the block object |
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_start_processing()
This method is used to direct the output from the processing block to some callback or sink object
- Parameters
-
[in] | block | Processing block |
[in] | on_frame | Callback to be invoked every time the processing block calls frame_ready |
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_start_processing_fptr()
This method is used to direct the output from the processing block to some callback or sink object
- Parameters
-
[in] | block | Processing block |
[in] | on_frame | Callback function to be invoked every time the processing block calls frame_ready |
[in] | user | User context for the callback (can be anything or null) |
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_start_processing_queue()
This method is used to direct the output from the processing block to a dedicated queue object
- Parameters
-
[in] | block | Processing block |
[in] | on_frame | Queue to place the processed frames to |
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
§ rs2_wait_for_frame()
wait until new frame becomes available in the queue and dequeue it
- Parameters
-
[in] | queue | the frame queue data structure |
[out] | error | if non-null, receives any error that occurs during this call, otherwise, errors are ignored |
- Returns
- frame handle to be released using rs2_release_frame