// Generated by Haxe 4.3.3
#ifndef INCLUDED_hsluv_Hsluv
#define INCLUDED_hsluv_Hsluv
#ifndef HXCPP_H
#include <hxcpp.h>
#endif
HX_DECLARE_CLASS1(hsluv,Hsluv)
namespace hsluv{
class HXCPP_CLASS_ATTRIBUTES Hsluv_obj : public ::hx::Object
{
public:
typedef ::hx::Object super;
typedef Hsluv_obj OBJ_;
Hsluv_obj();
public:
enum { _hx_ClassId = 0x29e47ee8 };
void __construct();
inline void *operator new(size_t inSize, bool inContainer=true,const char *inName="hsluv.Hsluv")
{ return ::hx::Object::operator new(inSize,inContainer,inName); }
inline void *operator new(size_t inSize, int extra)
{ return ::hx::Object::operator new(inSize+extra,true,"hsluv.Hsluv"); }
static ::hx::ObjectPtr< Hsluv_obj > __new();
static ::hx::ObjectPtr< Hsluv_obj > __alloc(::hx::Ctx *_hx_ctx);
static void * _hx_vtable;
static Dynamic __CreateEmpty();
static Dynamic __Create(::hx::DynamicArray inArgs);
//~Hsluv_obj();
HX_DO_RTTI_ALL;
::hx::Val __Field(const ::String &inString, ::hx::PropertyAccess inCallProp);
static bool __GetStatic(const ::String &inString, Dynamic &outValue, ::hx::PropertyAccess inCallProp);
::hx::Val __SetField(const ::String &inString,const ::hx::Val &inValue, ::hx::PropertyAccess inCallProp);
static bool __SetStatic(const ::String &inString, Dynamic &ioValue, ::hx::PropertyAccess inCallProp);
void __GetFields(Array< ::String> &outFields);
static void __register();
void __Mark(HX_MARK_PARAMS);
void __Visit(HX_VISIT_PARAMS);
bool _hx_isInstanceOf(int inClassId);
::String __ToString() const { return HX_("Hsluv",82,a7,2f,c1); }
static void __boot();
static ::String hexChars;
static Float refY;
static Float refU;
static Float refV;
static Float kappa;
static Float epsilon;
static Float m_r0;
static Float m_r1;
static Float m_r2;
static Float m_g0;
static Float m_g1;
static Float m_g2;
static Float m_b0;
static Float m_b1;
static Float m_b2;
static Float fromLinear(Float c);
static ::Dynamic fromLinear_dyn();
static Float lToY(Float L);
static ::Dynamic lToY_dyn();
static ::String rgbChannelToHex(Float chan);
static ::Dynamic rgbChannelToHex_dyn();
static Float distanceFromOriginAngle(Float slope,Float intercept,Float angle);
static ::Dynamic distanceFromOriginAngle_dyn();
static Float min6(Float f1,Float f2,Float f3,Float f4,Float f5,Float f6);
static ::Dynamic min6_dyn();
::String hex;
Float rgb_r;
Float rgb_g;
Float rgb_b;
Float xyz_x;
Float xyz_y;
Float xyz_z;
Float luv_l;
Float luv_u;
Float luv_v;
Float lch_l;
Float lch_c;
Float lch_h;
Float hsluv_h;
Float hsluv_s;
Float hsluv_l;
Float r0s;
Float r0i;
Float r1s;
Float r1i;
Float g0s;
Float g0i;
Float g1s;
Float g1i;
Float b0s;
Float b0i;
Float b1s;
Float b1i;
void rgbToHex();
::Dynamic rgbToHex_dyn();
void xyzToRgb();
::Dynamic xyzToRgb_dyn();
void luvToXyz();
::Dynamic luvToXyz_dyn();
void lchToLuv();
::Dynamic lchToLuv_dyn();
void calculateBoundingLines(Float l);
::Dynamic calculateBoundingLines_dyn();
Float calcMaxChromaHsluv(Float h);
::Dynamic calcMaxChromaHsluv_dyn();
void hsluvToLch();
::Dynamic hsluvToLch_dyn();
void hsluvToRgb();
::Dynamic hsluvToRgb_dyn();
void hsluvToHex();
::Dynamic hsluvToHex_dyn();
};
} // end namespace hsluv
#endif /* INCLUDED_hsluv_Hsluv */