Module pipeline

Source
Expand description

Module containing pipeline types used in getting frames from the device.

Pipelines are the core data type used to poll or wait for frames from librealsense2. The pipeline is constructed from a Context, and streaming is started by feeding the pipeline a configuration (see: Config).

In the librealsense2 C-API, there is no distinction between active (streaming / started) pipelines and inactive (not streaming / stopped) pipelines. The type is instead merely represented as a * rs2_pipeline for both scenarios. This leads to some of the APIs returning an error if they are called on a pipeline that is not started or a pipeline that is stopped.

To reduce this error surface, we have produced two separate types, ActivePipeline and InactivePipeline, which represent the two possible (valid) states of a pipeline. Interfaces that are only valid with an inactive (stopped) pipeline are only provided alongside the InactivePipeline type, while interfaces that are only valid with an active (started) pipeline are only provided alongside the ActivePipeline type.

Structs§

ActivePipeline
Type representing an “active” pipeline which is configured and can acquire frames.
InactivePipeline
A type describing an “inactive” pipeline which is unconfigured and cannot acquire frames.
PipelineProfile
Type representing the device and streams associated with a pipeline.

Enums§

FrameWaitError
Enumeration over possible errors that can occur when waiting for a frame.
PipelineActivationError
Enumeration of possible errors that can occur when trying to start the pipeline.
PipelineConstructionError
Enumeration of possible errors that can occur during pipeline construction.
PipelineProfileConstructionError
Type representing possible errors that can occur during pipeline profile construction.