/* ----------------------------------------------------------------------------- GSFramework Copyright 2001-2013 Emmanuel Julien. All Rights Reserved. ----------------------------------------------------------------------------- */ #ifndef __NCOLORGRADIENT__ #define __NCOLORGRADIENT__ #include "ntypes.h" #include "picture/pict.h" #include "color/color.h" namespace GS { /* @short Color gradient. @author Emmanuel Julien (ejulien@nworks.fr) */ class Gradient { uint control_point_count; Picture::BlendMode op; public: float k[8]; ///< Gradient coefficient. Color color[8]; ///< Gradient color. inline uint GetControlPointCount() const { return control_point_count; } inline Picture::BlendMode GetOperator() const { return op; } inline void SetOperator(Picture::BlendMode _op) { op = _op; } inline void Reset() { control_point_count = 0; } bool FromMetaTag(NML::Tag *); Gradient() { control_point_count = 0; op = Picture::BlendMultiply; } }; } // GS #endif // __NCOLORGRADIENT__