libcamera::CameraData Class Reference

Base class for platform-specific data associated with a camera. More...

## Public Member Functions

| CameraData (PipelineHandler *pipe)
| Construct a CameraData instance for the given pipeline handler. More...

## Public Attributes

Camera * | camera_
| The camera related to this CameraData instance. More...
PipelineHandler * | pipe_
| The pipeline handler related to this CameraData instance. More...
std::list< Request * > | queuedRequests_
| The list of queued and not yet completed request. More...
ControlInfoMap | controlInfo_
| The set of controls supported by the camera. More...
ControlList | properties_
| The list of properties supported by the camera. More...
std::unique_ptr< IPAProxy > | ipa_
| The IPA module used by the camera. More...

## Detailed Description

Base class for platform-specific data associated with a camera.

The CameraData base abstract class represents platform specific-data a pipeline handler might want to associate with a Camera to access them at a later time.

Pipeline handlers are expected to extend this base class with platform specific implementation, associate instances of the derived classes using the registerCamera() method, and access them at a later time with cameraData().

## Constructor & Destructor Documentation

## CameraData()

libcamera::CameraData::CameraData | ( | PipelineHandler * | pipe | ) |

inline explicit

Construct a CameraData instance for the given pipeline handler.

Parameters

  [in] | pipe | The pipeline handler

The reference to the pipeline handler is stored internally, the caller shall guarantee that the pointer remains valid as long as the CameraData instance exists.

## Member Data Documentation

## camera_

libcamera::CameraData::camera_

The camera related to this CameraData instance.

The camera_ pointer provides access to the Camera object that this instance is related to. It is set when the Camera is registered with PipelineHandler::registerCamera() and remains valid until the CameraData instance is destroyed.

## controlInfo_

libcamera::CameraData::controlInfo_

The set of controls supported by the camera.

The control information shall be initialised by the pipeline handler when creating the camera, and shall not be modified afterwards.

## ipa_

libcamera::CameraData::ipa_

The IPA module used by the camera.

Reference to the Image Processing Algorithms (IPA) operating on the camera's stream(s). If no IPA exists for the camera, this field is set to nullptr.

## pipe_

libcamera::CameraData::pipe_

The pipeline handler related to this CameraData instance.

The pipe_ pointer provides access to the PipelineHandler object that this instance is related to. It is set when the CameraData instance is created and remains valid until the instance is destroyed.

## properties_

libcamera::CameraData::properties_

The list of properties supported by the camera.

The list of camera properties shall be initialised by the pipeline handler when creating the camera, and shall not be modified afterwards.

## queuedRequests_

libcamera::CameraData::queuedRequests_

The list of queued and not yet completed request.

The list of queued request is used to track requests queued in order to ensure completion of all requests when the pipeline handler is stopped.

See also
  PipelineHandler::queueRequest(), PipelineHandler::stop(), PipelineHandler::completeRequest()

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

- include/libcamera/internal/pipeline_handler.h
- src/libcamera/pipeline_handler.cpp