11 #ifndef _COP2_CHROMAKEY_H_
12 #define _COP2_CHROMAKEY_H_
15 #define ARG_CHROMAKEY_HUE (myParmBase + 0)
16 #define ARG_CHROMAKEY_LUM (myParmBase + 1)
17 #define ARG_CHROMAKEY_DISCARD (myParmBase + 2)
18 #define ARG_CHROMAKEY_HUE_ROLLOFF (myParmBase + 3)
19 #define ARG_CHROMAKEY_SAT_ROLLOFF (myParmBase + 4)
20 #define ARG_CHROMAKEY_LUM_ROLLOFF (myParmBase + 5)
21 #define ARG_CHROMAKEY_ROLL_FUNC (myParmBase + 6)
22 #define ARG_CHROMAKEY_SUPER_SAMPLE (myParmBase + 7)
23 #define ARG_CHROMAKEY_KEY_PLANE (myParmBase + 8)
38 static const char *myInputLabels[];
42 float t,
int xres,
int yres,
43 int thread,
int max_threads)
override;
48 float smin,
float smax,
49 float lmin,
float lmax,
50 bool add,
float t)
override;
53 float smin,
float smax,
54 float lmin,
float lmax,
55 bool add,
float t)
override;
77 void *&
data)
override;
80 float val[4],
float key)
override;
83 int component)
override;
89 void HUE(
float &h1,
float &h2,
float t)
93 void SAT(
float &s1,
float &s2,
float t)
97 void LUM(
float &l1,
float &l2,
float t)
101 float HUE_ROLLOFF(
float t)
104 float SAT_ROLLOFF(
float t)
107 float LUM_ROLLOFF(
float t)
110 int ROLLOFF_FUNCTION()
116 int SUPER_SAMPLE(
float t)
#define ARG_CHROMAKEY_DISCARD
static OP_VariablePair myVariablePair
virtual void getShaderAndConstants(COP2_Context &context, UT_String &shader_funcs, UT_ComputeGPU &engine)
virtual int getSuperSample(COP2_Context &)
fpreal evalFloat(int pi, int vi, fpreal t) const
virtual void setSpillParms(float hmin, float hmax, float smin, float smax, float lmin, float lmax, bool add, float t)
#define ARG_CHROMAKEY_SAT_ROLLOFF
#define ARG_CHROMAKEY_ROLL_FUNC
virtual void setColorParms(float hmin, float hmax, float smin, float smax, float lmin, float lmax, bool add, float t)
#define ARG_CHROMAKEY_LUM
IMATH_NAMESPACE::V2f float
void evalString(UT_String &val, int pi, int vi, fpreal t) const
virtual COP2_KeyFunction getKeyFunction(COP2_Context &context, void *&data)
virtual cop2_Interpolate getInterpFunction(COP2_Context &context, int component)
#define ARG_CHROMAKEY_HUE_ROLLOFF
virtual const char * getKeyPlane(COP2_Context &context)
virtual COP2_ContextData * newContextData(const TIL_Plane *plane, int array_index, float t, int xres, int yres, int thread, int max_threads)
GLuint const GLchar * name
#define ARG_CHROMAKEY_SUPER_SAMPLE
virtual bool convertToColorSpace(COP2_Context &context, const float *c1, const float *c2, const float *c3, const float *c4, float *&d1, float *&d2, float *&d3, float *&d4, int size)
**Note that the tasks the is the thread number *for the or if it s being executed by a non pool thread(this *can happen in cases where the whole pool is occupied and the calling *thread contributes to running the work load).**Thread pool.Have fun
static OP_TemplatePair myTemplatePair
GT_API const UT_StringHolder st
#define ARG_CHROMAKEY_KEY_PLANE
#define ARG_CHROMAKEY_LUM_ROLLOFF
#define ARG_CHROMAKEY_HUE
~cop2_ChromaContext() override
bool isFrameEffectHandled() override
exint evalInt(int pi, int vi, fpreal t) const
ImageBuf OIIO_API add(Image_or_Const A, Image_or_Const B, ROI roi={}, int nthreads=0)
virtual void colorFunction(COP2_Context &context, float val[4], float key)
float(* COP2_KeyFunction)(void *data, const float val[4])
float(* cop2_Interpolate)(float v1, float v2, float w)