diff options
Diffstat (limited to 'src/gui/painting/qcolortransform_p.h')
-rw-r--r-- | src/gui/painting/qcolortransform_p.h | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/src/gui/painting/qcolortransform_p.h b/src/gui/painting/qcolortransform_p.h index 99c09188cb..3f11603420 100644 --- a/src/gui/painting/qcolortransform_p.h +++ b/src/gui/painting/qcolortransform_p.h @@ -22,11 +22,12 @@ #include <QtGui/qrgbafloat.h> QT_BEGIN_NAMESPACE +class QCmyk32; class QColorTransformPrivate : public QSharedData { public: - QColorMatrix colorMatrix; + QColorMatrix colorMatrix; // Combined colorSpaceIn->toXyz and colorSpaceOut->toXyz.inverted() QExplicitlySharedDataPointer<const QColorSpacePrivate> colorSpaceIn; QExplicitlySharedDataPointer<const QColorSpacePrivate> colorSpaceOut; @@ -35,7 +36,6 @@ public: void updateLutsIn() const; void updateLutsOut() const; - bool simpleGammaCorrection() const; bool isIdentity() const; Q_GUI_EXPORT void prepare(); @@ -48,19 +48,18 @@ public: }; Q_DECLARE_FLAGS(TransformFlags, TransformFlag) - void apply(QRgb *dst, const QRgb *src, qsizetype count, TransformFlags flags = Unpremultiplied) const; - void apply(QRgba64 *dst, const QRgba64 *src, qsizetype count, TransformFlags flags = Unpremultiplied) const; - void apply(QRgbaFloat32 *dst, const QRgbaFloat32 *src, qsizetype count, - TransformFlags flags = Unpremultiplied) const; - void apply(quint8 *dst, const QRgb *src, qsizetype count, TransformFlags flags = Unpremultiplied) const; - void apply(quint16 *dst, const QRgba64 *src, qsizetype count, TransformFlags flags = Unpremultiplied) const; - - template<typename T> - void apply(T *dst, const T *src, qsizetype count, TransformFlags flags) const; + QColorVector map(QColorVector color) const; + QColorVector mapExtended(QColorVector color) const; template<typename D, typename S> - void applyReturnGray(D *dst, const S *src, qsizetype count, TransformFlags flags) const; + void apply(D *dst, const S *src, qsizetype count, TransformFlags flags) const; +private: + void pcsAdapt(QColorVector *buffer, qsizetype len) const; + template<typename S> + void applyConvertIn(const S *src, QColorVector *buffer, qsizetype len, TransformFlags flags) const; + template<typename D, typename S> + void applyConvertOut(D *dst, const S *src, QColorVector *buffer, qsizetype len, TransformFlags flags) const; }; QT_END_NAMESPACE |