krita
kis_u8_base_colorspace.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef KIS_U8_BASE_COLORSPACE_H_
00019 #define KIS_U8_BASE_COLORSPACE_H_
00020
00021 #include <qcolor.h>
00022
00023 #include <qcolor.h>
00024
00025 #include "kis_global.h"
00026 #include "kis_abstract_colorspace.h"
00027
00031 class KisU8BaseColorSpace : public KisAbstractColorSpace {
00032
00033 public:
00034
00035 KisU8BaseColorSpace(const KisID & id, DWORD cmType, icColorSpaceSignature colorSpaceSignature,
00036 KisColorSpaceFactoryRegistry * parent,
00037 KisProfile *p)
00038 : KisAbstractColorSpace(id, cmType, colorSpaceSignature, parent, p)
00039 {
00040 m_alphaSize = sizeof(Q_UINT8);
00041 };
00042
00043 virtual Q_UINT8 getAlpha(const Q_UINT8 * pixel) const;
00044 virtual void setAlpha(Q_UINT8 * pixels, Q_UINT8 alpha, Q_INT32 nPixels) const;
00045 virtual void multiplyAlpha(Q_UINT8 * pixels, Q_UINT8 alpha, Q_INT32 nPixels);
00046
00047 virtual void applyAlphaU8Mask(Q_UINT8 * pixels, Q_UINT8 * alpha, Q_INT32 nPixels);
00048 virtual void applyInverseAlphaU8Mask(Q_UINT8 * pixels, Q_UINT8 * alpha, Q_INT32 nPixels);
00049
00050 virtual QString channelValueText(const Q_UINT8 *pixel, Q_UINT32 channelIndex) const;
00051 virtual QString normalisedChannelValueText(const Q_UINT8 *pixel, Q_UINT32 channelIndex) const;
00052
00053 virtual Q_UINT8 scaleToU8(const Q_UINT8 * srcPixel, Q_INT32 channelPos);
00054 virtual Q_UINT16 scaleToU16(const Q_UINT8 * srcPixel, Q_INT32 channelPos);
00055 };
00056
00057
00058 #endif // KIS_U8_BASE_COLORSPACE_H_
|