Libargus API Libargus Camera API

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions
Argus::ICaptureMetadata Class Reference
CaptureMetadata

Interface to the core capture metadata. More...

`#include <CaptureMetadata.h>`

Inheritance diagram for Argus::ICaptureMetadata:

List of all members.

## Public Member Functions

virtual uint32_t | getCaptureId () const =0
| Returns the capture id (the value returned from ICaptureSession::capture()) of the capture that generated this metadata.
virtual uint32_t | getSourceIndex () const =0
| Returns the sensor source index for this capture.
virtual uint32_t | getClientData () const =0
| Returns the `clientData` value for the Request used in the capture that generated this metadata.
virtual InterfaceProvider * | getStreamMetadata (const OutputStream *stream) const =0
| Returns the per-stream metadata provider for `stream`.
virtual const InterfaceProvider * | getBayerHistogram () const =0
| Returns the Bayer histogram for this capture.
virtual const InterfaceProvider * | getRGBHistogram () const =0
| Returns the RGB histogram for this capture.
virtual bool | getAeLocked () const =0
| Returns true if and only if AE was locked for this capture.
virtual Status | getAeRegions (std::vector< AcRegion > *regions) const =0
| Gets the AE regions of interest used for this capture.
virtual Rectangle< uint32_t > | getBayerHistogramRegion () const =0
| Returns the rectangle of the bayer histogram region of interest.
virtual AeState | getAeState () const =0
| Returns the state of AE when it ran for this capture.
virtual AeFlickerState | getFlickerState () const =0
| Returns the flicker state of this capture.
virtual int32_t | getAperturePosition () const =0
| Returns the aperture position.
virtual int32_t | getFocuserPosition () const =0
| Returns the focuser position used for this capture (in focuser steps).
virtual uint32_t | getAwbCct () const =0
| Returns the CCT calculated by AWB for this capture.
virtual BayerTuple< float > | getAwbGains () const =0
| Returns the AWB gains used for this capture as per AwbMode.
virtual AwbMode | getAwbMode () const =0
| Returns the AWB mode used for this capture.
virtual Status | getAwbRegions (std::vector< AcRegion > *regions) const =0
| Gets the AWB regions of interest used for this capture.
virtual Status | getAfRegions (std::vector< AcRegion > *regions) const =0
| Gets the AF regions of interest used for this capture.
virtual Status | getSharpnessScore (std::vector< float > *values) const =0
| Gets the sharpness score values calculated for corresponding AF regions.
virtual AwbState | getAwbState () const =0
virtual Status | getAwbWbEstimate (std::vector< float > *estimate) const =0
| Gets the current AWB WB estimate as a vector of NUM_AWB_WB_ESTIMATE_ELEMENTS values.
virtual bool | getColorCorrectionMatrixEnable () const =0
| Returns the enable state for the client-supplied Color Correction Matrix.
virtual Status | getColorCorrectionMatrix (std::vector< float > *ccMatrix) const =0
| Gets the 3x3 client-supplied Color Correction Matrix as a flattened (row-major) vector of 9 values.
virtual float | getColorSaturation () const =0
| Returns the color saturation value used for this capture (including biasing).
virtual uint64_t | getFrameDuration () const =0
| Returns the time it took to integrate this capture (in nanoseconds).
virtual float | getIspDigitalGain () const =0
| Returns the digital gain used for this capture.
virtual uint64_t | getFrameReadoutTime () const =0
| Returns the frame readout time for this capture (in nanoseconds) from the beginning of the first line to the beginning of the last line.
virtual float | getSceneLux () const =0
| Returns the estimated scene brightness for this capture (in lux).
virtual float | getSensorAnalogGain () const =0
| Returns the sensor analog gain used for this capture.
virtual uint64_t | getSensorExposureTime () const =0
| Returns the sensor exposure time for this capture (in nanoseconds).
virtual uint32_t | getSensorSensitivity () const =0
| Returns the ISO value used for this capture.
virtual uint64_t | getSensorTimestamp () const =0
| Returns the start timestamp for the sensor (in nanoseconds).
virtual bool | getToneMapCurveEnabled () const =0
| Returns true if and only if a user-specified tone map curve was used for this capture.
virtual Status | getToneMapCurve (RGBChannel channel, std::vector< float > *curve) const =0
| Returns the specified color channel for the tone mapping table (as a vector of NUM_TONE_MAP_ELEMENTS values).

## Static Public Member Functions

static const InterfaceID & | id ()

## Static Public Attributes

static const uint32_t | NUM_COLOR_CORRECTION_ELEMENTS = 9
static const uint32_t | NUM_AWB_WB_ESTIMATE_ELEMENTS = 4

## Protected Member Functions

| ~ICaptureMetadata ()
Protected Member Functions inherited from Argus::Interface
| Interface ()
| ~Interface ()

## Detailed Description

Interface to the core capture metadata.

Definition at line 182 of file CaptureMetadata.h.

## Constructor & Destructor Documentation

Argus::ICaptureMetadata::~ICaptureMetadata | ( |  | ) |

inline protected

Definition at line 407 of file CaptureMetadata.h.

## Member Function Documentation

virtual bool Argus::ICaptureMetadata::getAeLocked | ( |  | ) | const

pure virtual

Returns true if and only if AE was locked for this capture.

virtual Status Argus::ICaptureMetadata::getAeRegions | ( | std::vector< AcRegion > * | regions | ) | const

pure virtual

Gets the AE regions of interest used for this capture.

Parameters:

  [in] | regions | A vector that will be populated with the AE regions used in capture.

Returns:
  success/status of the call.

virtual AeState Argus::ICaptureMetadata::getAeState | ( |  | ) | const

pure virtual

Returns the state of AE when it ran for this capture.

virtual Status Argus::ICaptureMetadata::getAfRegions | ( | std::vector< AcRegion > * | regions | ) | const

pure virtual

Gets the AF regions of interest used for this capture.

Parameters:

  [in] | regions | A vector that will be populated with the AF regions used in capture.

Returns:
  success/status of the call.

virtual int32_t Argus::ICaptureMetadata::getAperturePosition | ( |  | ) | const

pure virtual

Returns the aperture position.

virtual uint32_t Argus::ICaptureMetadata::getAwbCct | ( |  | ) | const

pure virtual

Returns the CCT calculated by AWB for this capture.

virtual BayerTuple<float> Argus::ICaptureMetadata::getAwbGains | ( |  | ) | const

pure virtual

Returns the AWB gains used for this capture as per AwbMode.

virtual AwbMode Argus::ICaptureMetadata::getAwbMode | ( |  | ) | const

pure virtual

Returns the AWB mode used for this capture.

virtual Status Argus::ICaptureMetadata::getAwbRegions | ( | std::vector< AcRegion > * | regions | ) | const

pure virtual

Gets the AWB regions of interest used for this capture.

Parameters:

  [in] | regions | A vector that will be populated with the AWB regions used in capture.

Returns:
  success/status of the call.

virtual AwbState Argus::ICaptureMetadata::getAwbState | ( |  | ) | const

pure virtual

Returns:
  the state of AWB when it ran for this capture.

virtual Status Argus::ICaptureMetadata::getAwbWbEstimate | ( | std::vector< float > * | estimate | ) | const

pure virtual

Gets the current AWB WB estimate as a vector of NUM_AWB_WB_ESTIMATE_ELEMENTS values.

Todo:
  Document the meaning of an AWB WB estimate.

Parameters:

  [in] | estimate | A vector that will be populated with the AWB WB estimates.

Returns:
  success/status of the call.

virtual const InterfaceProvider* Argus::ICaptureMetadata::getBayerHistogram | ( |  | ) | const

pure virtual

Returns the Bayer histogram for this capture.

This object will provide the IBayerHistogram interface.

virtual Rectangle<uint32_t> Argus::ICaptureMetadata::getBayerHistogramRegion | ( |  | ) | const

pure virtual

Returns the rectangle of the bayer histogram region of interest.

virtual uint32_t Argus::ICaptureMetadata::getCaptureId | ( |  | ) | const

pure virtual

Returns the capture id (the value returned from ICaptureSession::capture()) of the capture that generated this metadata.

virtual uint32_t Argus::ICaptureMetadata::getClientData | ( |  | ) | const

pure virtual

Returns the `clientData` value for the Request used in the capture that generated this metadata.

See also:
  ICaptureSession::createRequest()

virtual Status Argus::ICaptureMetadata::getColorCorrectionMatrix | ( | std::vector< float > * | ccMatrix | ) | const

pure virtual

Gets the 3x3 client-supplied Color Correction Matrix as a flattened (row-major) vector of 9 values.

This matrix is irrelevant if `getColorCorrectionMatrixEnable() == false`.

Parameters:

  [in] | ccMatrix | A vector that will be populated with the color correction matrix.

Returns:
  success/status of the call.

virtual bool Argus::ICaptureMetadata::getColorCorrectionMatrixEnable | ( |  | ) | const

pure virtual

Returns the enable state for the client-supplied Color Correction Matrix.

virtual float Argus::ICaptureMetadata::getColorSaturation | ( |  | ) | const

pure virtual

Returns the color saturation value used for this capture (including biasing).

virtual AeFlickerState Argus::ICaptureMetadata::getFlickerState | ( |  | ) | const

pure virtual

Returns the flicker state of this capture.

virtual int32_t Argus::ICaptureMetadata::getFocuserPosition | ( |  | ) | const

pure virtual

Returns the focuser position used for this capture (in focuser steps).

virtual uint64_t Argus::ICaptureMetadata::getFrameDuration | ( |  | ) | const

pure virtual

Returns the time it took to integrate this capture (in nanoseconds).

Todo:
  Provide a more precise description of frame duration.

virtual uint64_t Argus::ICaptureMetadata::getFrameReadoutTime | ( |  | ) | const

pure virtual

Returns the frame readout time for this capture (in nanoseconds) from the beginning of the first line to the beginning of the last line.

virtual float Argus::ICaptureMetadata::getIspDigitalGain | ( |  | ) | const

pure virtual

Returns the digital gain used for this capture.

virtual const InterfaceProvider* Argus::ICaptureMetadata::getRGBHistogram | ( |  | ) | const

pure virtual

Returns the RGB histogram for this capture.

This object will provide the IRGBHistogram interface.

virtual float Argus::ICaptureMetadata::getSceneLux | ( |  | ) | const

pure virtual

Returns the estimated scene brightness for this capture (in lux).

virtual float Argus::ICaptureMetadata::getSensorAnalogGain | ( |  | ) | const

pure virtual

Returns the sensor analog gain used for this capture.

virtual uint64_t Argus::ICaptureMetadata::getSensorExposureTime | ( |  | ) | const

pure virtual

Returns the sensor exposure time for this capture (in nanoseconds).

virtual uint32_t Argus::ICaptureMetadata::getSensorSensitivity | ( |  | ) | const

pure virtual

Returns the ISO value used for this capture.

virtual uint64_t Argus::ICaptureMetadata::getSensorTimestamp | ( |  | ) | const

pure virtual

Returns the start timestamp for the sensor (in nanoseconds).

This is the time that the first data from this capture arrives from the sensor.

virtual Status Argus::ICaptureMetadata::getSharpnessScore | ( | std::vector< float > * | values | ) | const

pure virtual

Gets the sharpness score values calculated for corresponding AF regions.

Parameters:

  [in] | values | A vector that will be populated with the sharpness scores used in capture.

Returns:
  success/status of the call.

virtual uint32_t Argus::ICaptureMetadata::getSourceIndex | ( |  | ) | const

pure virtual

Returns the sensor source index for this capture.

This is useful to know which sensor captured frame and metadata belongs to, in case of sync sensor usecase.

virtual InterfaceProvider* Argus::ICaptureMetadata::getStreamMetadata | ( | const OutputStream * | stream | ) | const

pure virtual

Returns the per-stream metadata provider for `stream`.

This object will provide the IStreamCaptureMetadata interface.

virtual Status Argus::ICaptureMetadata::getToneMapCurve | ( | RGBChannel | channel,
|  | std::vector< float > * | curve
| ) |  | const

pure virtual

Returns the specified color channel for the tone mapping table (as a vector of NUM_TONE_MAP_ELEMENTS values).

These values are irrelevant if `getToneMapCurveEnabled() == false`.

Parameters:

  [in] | channel | Specified the color channel for which the curve will be returned.
  [in] | curve | A vector that will be populated with the color curve used in capture.

Returns:
  success/status of the call.

virtual bool Argus::ICaptureMetadata::getToneMapCurveEnabled | ( |  | ) | const

pure virtual

Returns true if and only if a user-specified tone map curve was used for this capture.

static const InterfaceID& Argus::ICaptureMetadata::id | ( |  | ) |

inline static

Definition at line 186 of file CaptureMetadata.h.

## Member Data Documentation

const uint32_t Argus::ICaptureMetadata::NUM_AWB_WB_ESTIMATE_ELEMENTS = 4

static

Definition at line 189 of file CaptureMetadata.h.

const uint32_t Argus::ICaptureMetadata::NUM_COLOR_CORRECTION_ELEMENTS = 9

static

Definition at line 188 of file CaptureMetadata.h.

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

- include/Argus/CaptureMetadata.h