digiKam Developer Documentation
Professional Photo Management with the Power of Open Source
Loading...
Searching...
No Matches
Digikam::CurvesContainer Class Reference

Public Member Functions

 CurvesContainer ()=default
 Provides a convenient storage for a curve.
 
 CurvesContainer (int type, bool sixteenBit)
 
void initialize ()
 Fills the values with a linear curve suitable for type and sixteenBit parameters.
 
bool isEmpty () const
 An empty container is interpreted as a linear curve.
 
bool isStoredLosslessly () const
 Serialize from and to FilterAction.
 
bool operator== (const CurvesContainer &other) const
 
void writeToFilterAction (FilterAction &action, const QString &prefix=QString()) const
 

Static Public Member Functions

static CurvesContainer fromFilterAction (const FilterAction &action, const QString &prefix=QString())
 

Public Attributes

int curvesType = ImageCurves::CURVE_SMOOTH
 Smooth : QPolygon have size of 18 points.
 
bool sixteenBit = false
 
QPolygon values [ColorChannels]
 

Constructor & Destructor Documentation

◆ CurvesContainer()

Digikam::CurvesContainer::CurvesContainer ( )
default

Initially, the values are empty. Call initialize() before adjusting values manually.

Member Function Documentation

◆ isEmpty()

bool Digikam::CurvesContainer::isEmpty ( ) const

A non-empty container can also be linear; test for isLinear() of the resulting ImageCurves. Note: If an ImageCurves is linear, it will return an empty container.

◆ isStoredLosslessly()

bool Digikam::CurvesContainer::isStoredLosslessly ( ) const

isStoredLosslessly returns false if the curve cannot be losslessly stored in XML because it would be too large (free 16 bit). It is then lossily compressed.

Member Data Documentation

◆ curvesType

int Digikam::CurvesContainer::curvesType = ImageCurves::CURVE_SMOOTH

Free : QPolygon have size of 255 or 65535 values.