class Core::BitmapPrimitives32

Functions for 32 bit RGBA bitmaps.

#include <corebitmapprimitives.h>

class BitmapPrimitives32: public Core::BitmapPrimitives
{
public:
    // typedefs

    typedef void (*BasicModifier)(
        BitmapData &dstData,
        const BitmapData &srcData
        );

    typedef void (*ValueModifier)(
        BitmapData &dstData,
        const BitmapData &srcData,
        float value
        );

    typedef void (*ColorModifier)(
        BitmapData &dstData,
        const BitmapData &srcData,
        Color color
        );

    // methods

    static INLINE Color toColor(RGBA p);
    static INLINE RGBA toRGBA(Color c);
    static INLINE ColorHSL toHSL(RGBA p);
    static INLINE RGBA toRGBA(ColorHSL& hsl);
    static void copyFrom(BitmapData& dstData, const BitmapData& srcData);

    static void copyPart(
        BitmapData& dstData,
        const BitmapData& srcData,
        int srcOffsetX,
        int srcOffsetY
    );

    static void copyPart(
        BitmapData& dstData,
        int dstX,
        int dstY,
        const BitmapData& srcData,
        int srcX,
        int srcY,
        int width,
        int height
    );

    static void scrollRect(
        BitmapData& dstData,
        const Rect& rect,
        const Point& delta
    );

    static void premultiplyAlpha(BitmapData& dstData, const BitmapData& srcData);

    static void revertPremultipliedAlpha(
        BitmapData& dstData,
        const BitmapData& srcData
    );

    static void byteSwapRGB(BitmapData& dstData, const BitmapData& srcData);
    static void invert(BitmapData& dstData, const BitmapData& srcData);
    static void grayScale(BitmapData& dstData, const BitmapData& srcData);

    static void setAlpha(
        BitmapData& dstData,
        const BitmapData& srcData,
        float value
    );

    static void scaleAlpha(
        BitmapData& dstData,
        const BitmapData& srcData,
        float value
    );

    static void lighten(BitmapData& dstData, const BitmapData& srcData, float value);

    static void addNoise(
        BitmapData& dstData,
        const BitmapData& srcData,
        float value
    );

    static void blurX(BitmapData& dstData, const BitmapData& srcData, float value);
    static void blurY(BitmapData& dstData, const BitmapData& srcData, float value);

    static void saturate(
        BitmapData& dstData,
        const BitmapData& srcData,
        float value
    );

    static void tint(BitmapData& dstData, const BitmapData& srcData, Color color);

    static void colorize(
        BitmapData& dstData,
        const BitmapData& srcData,
        Color color
    );

    static void lightAdapt(
        BitmapData& dstData,
        const BitmapData& srcData,
        Color color
    );

    static void fillRect(BitmapData& data, RectRef r, ColorRef color);
};

Inherited Members

public:
    // methods

    static void clear(BitmapData& dstData);