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 | Protected Member Functions
Argus::IAutoControlSettings Class Reference
AutoControlSettings

Interface to the auto control settings (provided by IRequest::getAutoControlSettings()). More...

`#include <Settings.h>`

Inheritance diagram for Argus::IAutoControlSettings:

List of all members.

## Public Member Functions

virtual Status | setAeAntibandingMode (const AeAntibandingMode &mode)=0
| Sets the AE antibanding mode.
virtual AeAntibandingMode | getAeAntibandingMode () const =0
| Returns the AE antibanding mode.
virtual Status | setAeLock (bool lock)=0
| Sets the AE lock.
virtual bool | getAeLock () const =0
| Returns the AE lock.
virtual Status | setAeRegions (const std::vector< AcRegion > &regions)=0
| Sets the AE regions of interest.
virtual Status | getAeRegions (std::vector< AcRegion > *regions) const =0
| Returns the AE regions of interest.
virtual Status | setBayerHistogramRegion (const Rectangle< uint32_t > &region)=0
| Sets the bayer histogram region of interest.
virtual Rectangle< uint32_t > | getBayerHistogramRegion () const =0
| Returns the rectangle of the bayer histogram region of interest.
virtual Status | setAwbLock (bool lock)=0
| Sets the AWB lock.
virtual bool | getAwbLock () const =0
| Returns the AWB lock.
virtual Status | setAwbMode (const AwbMode &mode)=0
| Sets the AWB mode.
virtual AwbMode | getAwbMode () const =0
| Returns the AWB mode.
virtual Status | setAwbRegions (const std::vector< AcRegion > &regions)=0
| Sets the AWB regions of interest.
virtual Status | getAwbRegions (std::vector< AcRegion > *regions) const =0
| Returns the AWB regions of interest.
virtual Status | setAfRegions (const std::vector< AcRegion > &regions)=0
| Sets the AF regions of interest.
virtual Status | getAfRegions (std::vector< AcRegion > *regions) const =0
| Returns the AF regions of interest.
virtual Status | setWbGains (const BayerTuple< float > &gains)=0
| Sets the Manual White Balance gains.
virtual BayerTuple< float > | getWbGains () const =0
| Returns the Manual White Balance gains.
virtual Size2D< uint32_t > | getColorCorrectionMatrixSize () const =0
| Returns the size of the color correction matrix.
virtual Status | setColorCorrectionMatrix (const std::vector< float > &matrix)=0
| Sets the user-specified color correction matrix.
virtual Status | getColorCorrectionMatrix (std::vector< float > *matrix) const =0
| Returns the user-specified color correction matrix.
virtual Status | setColorCorrectionMatrixEnable (bool enable)=0
| Enables the user-specified color correction matrix.
virtual bool | getColorCorrectionMatrixEnable () const =0
| Returns the enable for the user-specified color correction matrix.
virtual Status | setColorSaturation (float saturation)=0
| Sets the user-specified absolute color saturation.
virtual float | getColorSaturation () const =0
| Returns the user-specified absolute color saturation (.
virtual Status | setColorSaturationEnable (bool enable)=0
| Enables the user-specified absolute color saturation.
virtual bool | getColorSaturationEnable () const =0
| Returns the enable for the user-specified color saturation.
virtual Status | setColorSaturationBias (float bias)=0
| Sets the color saturation bias.
virtual float | getColorSaturationBias () const =0
| Returns the color saturation bias.
virtual Status | setExposureCompensation (float ev)=0
| Sets the exposure compensation.
virtual float | getExposureCompensation () const =0
| Returns the exposure compensation.
virtual uint32_t | getToneMapCurveSize (RGBChannel channel) const =0
| Returns the number of elements required for the tone map curve.
virtual Status | setToneMapCurve (RGBChannel channel, const std::vector< float > &curve)=0
| Sets the user-specified tone map curve for a channel on the stream.
virtual Status | getToneMapCurve (RGBChannel channel, std::vector< float > *curve) const =0
| Returns the user-specified tone map curve for a channel on the stream.
virtual Status | setToneMapCurveEnable (bool enable)=0
| Enables the user-specified tone map.
virtual bool | getToneMapCurveEnable () const =0
| Returns the enable for the user-specified tone map.
virtual Status | setIspDigitalGainRange (const Range< float > &gain)=0
| Sets the user-specified Isp Digital gain range.
virtual Range< float > | getIspDigitalGainRange () const =0
| Returns the user-specified Isp Digital gain range.

## Static Public Member Functions

static const InterfaceID & | id ()

## Protected Member Functions

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

## Detailed Description

Interface to the auto control settings (provided by IRequest::getAutoControlSettings()).

Definition at line 228 of file Settings.h.

## Constructor & Destructor Documentation

Argus::IAutoControlSettings::~IAutoControlSettings | ( |  | ) |

inline protected

Definition at line 538 of file Settings.h.

## Member Function Documentation

virtual AeAntibandingMode Argus::IAutoControlSettings::getAeAntibandingMode | ( |  | ) | const

pure virtual

Returns the AE antibanding mode.

virtual bool Argus::IAutoControlSettings::getAeLock | ( |  | ) | const

pure virtual

Returns the AE lock.

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

pure virtual

Returns the AE regions of interest.

Parameters:

  [out] | regions | A vector that will be populated with the AE regions of interest.

Returns:
  success/status of the call.

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

pure virtual

Returns the AF regions of interest.

Parameters:

  [out] | regions | A vector that will be populated with the AF regions of interest.

Returns:
  success/status of the call.

virtual bool Argus::IAutoControlSettings::getAwbLock | ( |  | ) | const

pure virtual

Returns the AWB lock.

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

pure virtual

Returns the AWB mode.

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

pure virtual

Returns the AWB regions of interest.

Parameters:

  [out] | regions | A vector that will be populated with the AWB regions of interest.

Returns:
  success/status of the call.

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

pure virtual

Returns the rectangle of the bayer histogram region of interest.

virtual Status Argus::IAutoControlSettings::getColorCorrectionMatrix | ( | std::vector< float > * | matrix | ) | const

pure virtual

Returns the user-specified color correction matrix.

Parameters:

  [out] | matrix | A matrix that will be populated with the CCM.

Returns:
  success/status of the call.

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

pure virtual

Returns the enable for the user-specified color correction matrix.

virtual Size2D<uint32_t> Argus::IAutoControlSettings::getColorCorrectionMatrixSize | ( |  | ) | const

pure virtual

Returns the size of the color correction matrix.

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

pure virtual

Returns the user-specified absolute color saturation (.

See also:
  setColorSaturation).

virtual float Argus::IAutoControlSettings::getColorSaturationBias | ( |  | ) | const

pure virtual

Returns the color saturation bias.

virtual bool Argus::IAutoControlSettings::getColorSaturationEnable | ( |  | ) | const

pure virtual

Returns the enable for the user-specified color saturation.

virtual float Argus::IAutoControlSettings::getExposureCompensation | ( |  | ) | const

pure virtual

Returns the exposure compensation.

virtual Range<float> Argus::IAutoControlSettings::getIspDigitalGainRange | ( |  | ) | const

pure virtual

Returns the user-specified Isp Digital gain range.

Returns:
  Isp Digital gain

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

pure virtual

Returns the user-specified tone map curve for a channel on the stream.

Parameters:

  [in] | channel | The color the curve corresponds to.
  [out] | curve | A vector that will be populated by the tone map curve for the specified color channel.

Returns:
  success/status of the call.

virtual bool Argus::IAutoControlSettings::getToneMapCurveEnable | ( |  | ) | const

pure virtual

Returns the enable for the user-specified tone map.

virtual uint32_t Argus::IAutoControlSettings::getToneMapCurveSize | ( | RGBChannel | channel | ) | const

pure virtual

Returns the number of elements required for the tone map curve.

Parameters:

  [in] | channel | The color channel the curve size corresponds to.

virtual BayerTuple<float> Argus::IAutoControlSettings::getWbGains | ( |  | ) | const

pure virtual

Returns the Manual White Balance gains.

Returns:
  Manual White Balance Gains structure

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

inline static

Definition at line 231 of file Settings.h.

virtual Status Argus::IAutoControlSettings::setAeAntibandingMode | ( | const AeAntibandingMode & | mode | ) |

pure virtual

Sets the AE antibanding mode.

Parameters:

  [in] | mode | The requested antibanding mode.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setAeLock | ( | bool | lock | ) |

pure virtual

Sets the AE lock.

When locked, AE will maintain constant exposure.

Parameters:

  [in] | lock | If `true`, locks AE at its current exposure.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setAeRegions | ( | const std::vector< AcRegion > & | regions | ) |

pure virtual

Sets the AE regions of interest.

If no regions are specified, the region of interest will be determined by device and obtain by CameraMetadata::getAeRegions.

Parameters:

  [in] | regions | The AE regions of interest. The maximum number of regions is returned by `ICameraProperties::getMaxAeRegions()`. The minimum supported size of resultatnt region is returned by `ICameraProperties::getMinAeRegionSize()`.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setAfRegions | ( | const std::vector< AcRegion > & | regions | ) |

pure virtual

Sets the AF regions of interest.

If no regions are specified, the region of interest will be determined by device and obtain by CameraMetadata::getAfRegions.

Parameters:

  [in] | regions | The AF regions of interest. The maximum number of regions is returned by `ICameraProperties::getMaxAfRegions()`.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setAwbLock | ( | bool | lock | ) |

pure virtual

Sets the AWB lock.

Parameters:

  [in] | lock | If `true`, locks AWB at its current state.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setAwbMode | ( | const AwbMode & | mode | ) |

pure virtual

Sets the AWB mode.

Parameters:

  [in] | mode | The new AWB mode.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setAwbRegions | ( | const std::vector< AcRegion > & | regions | ) |

pure virtual

Sets the AWB regions of interest.

If no regions are specified, the region of interest will be determined by device and obtain by CameraMetadata::getAwbRegions.

Parameters:

  [in] | regions | The AWB regions of interest. The maximum number of regions is returned by `ICameraProperties::getMaxAwbRegions()`.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setBayerHistogramRegion | ( | const Rectangle< uint32_t > & | region | ) |

pure virtual

Sets the bayer histogram region of interest.

If no region is specified, the entire image is the region of interest.

Parameters:

  [in] | region | The bayer histogram region of interest.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setColorCorrectionMatrix | ( | const std::vector< float > & | matrix | ) |

pure virtual

Sets the user-specified color correction matrix.

This matrix will be ignored unless `getColorCorrectionMatrixEnable() == true`. The active color correction matrix used for image processing may be internally modified to account for the active color saturation value (either user-specified or automatically generated, after biasing,

See also:
  setColorSaturation and
  setColorSaturationBias).

Parameters:

  [in] | matrix | A color correction matrix that maps sensor RGB to linear sRGB. This matrix is given in row-major order and must have the size w*h, where w and h are the width and height of the Size returned by getColorCorrectionMatrixSize()

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setColorCorrectionMatrixEnable | ( | bool | enable | ) |

pure virtual

Enables the user-specified color correction matrix.

Parameters:

  [in] | enable | If `true`, libargus uses the user-specified matrix.

See also:
  setColorCorrectionMatrix()

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setColorSaturation | ( | float | saturation | ) |

pure virtual

Sets the user-specified absolute color saturation.

This must be enabled via

See also:
  setColorSaturationEnable, otherwise saturation will be determined automatically. This saturation value may be used to modify the color correction matrix used for processing (
  setColorCorrectionMatrix), and these changes will be reflected in the color correction matrix output to the capture metadata.

Parameters:

  [in] | saturation | The absolute color saturation. Acceptable values are in [0.0, 2.0], and the default value is 1.0.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setColorSaturationBias | ( | float | bias | ) |

pure virtual

Sets the color saturation bias.

This bias is used to multiply the active saturation value, either the user-specified or the automatically generated value depending on the state of

See also:
  getColorSaturationEnable, and produces the final saturation value to use for capture processing. This is used primarily to tweak automatically generated saturation values when the application prefers more or less saturation than what the implementation or hardware generates by default. The final saturation value (after biasing) may affect the color correction matrix used for processing (
  setColorCorrectionMatrix).

Parameters:

  [in] | bias | The color saturation bias. Acceptable values are in [0.0, 2.0], where 1.0 does not modify the saturation (default), 0.0 is fully desaturated (greyscale), and 2.0 is highly saturated.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setColorSaturationEnable | ( | bool | enable | ) |

pure virtual

Enables the user-specified absolute color saturation.

Parameters:

  [in] | enable | If `true`, libargus uses the user-specified color saturation.

See also:
  setColorSaturation()

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setExposureCompensation | ( | float | ev | ) |

pure virtual

Sets the exposure compensation.

Exposure compensation is applied after AE is solved.

Parameters:

  [in] | ev | The exposure adjustment step in stops.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setIspDigitalGainRange | ( | const Range< float > & | gain | ) |

pure virtual

Sets the user-specified Isp Digital gain range.

Parameters:

  [in] | gain | The user-specified Isp Digital gain.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setToneMapCurve | ( | RGBChannel | channel,
|  | const std::vector< float > & | curve
| ) |  |

pure virtual

Sets the user-specified tone map curve for a channel on the stream.

The user-specified tone map will be ignored unless `getToneMapCurveEnable() == true`.

Parameters:

  [in] | channel | The color the curve corresponds to.
  [in] | curve | A float vector that describes the LUT. The number of elements must match the number of elements returned from getToneMapCurve() of the same channel.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setToneMapCurveEnable | ( | bool | enable | ) |

pure virtual

Enables the user-specified tone map.

Parameters:

  [in] | enable | If `true`, libargus uses the user-specified tone map.

Returns:
  success/status of the call.

virtual Status Argus::IAutoControlSettings::setWbGains | ( | const BayerTuple< float > & | gains | ) |

pure virtual

Sets the Manual White Balance gains.

Parameters:

  [in] | gains | The Manual White Balance Gains

Returns:
  success/status of the call.

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

- include/Argus/Settings.h