HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RU_Feather.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: RU_Feather.h
7  *
8  * COMMENTS:
9  * Does a feather on a matte.
10  */
11 #ifndef RU_FEATHER_H
12 #define RU_FEATHER_H
13 
14 #include "RU_API.h"
15 #include <PXL/PXL_LumFuncs.h>
16 
17 #include "RU_Algorithm.h"
18 
20 {
25 };
26 
28 {
34  RU_FEATHER_RAMP // for RU_PolySurface only, currently.
35 };
36 
37 
39 {
40 public:
41  RU_Feather();
42  ~RU_Feather() override;
43 
44  int initialize(float ) override;
45 
46  DECLARE_FILTER_OP(RU_FeatherOp, override)
47 
48  void setLUTVal(int x, int y, float v);
49  float getLUTVal(int x, int y) const;
50 
51  float evalLUT(float x, float y) const;
52 
53  // determines whether to expand off the luminance or per-component
54  bool myUseLuma;
56 
57  // operation.
59 
60  // Parameters for expand/shink
61  float myExpandSize;
63 
69 
70  // parameters for fill holes
72 
73  // treat these as private:
74  float *myFeatherLUT;
75  int myXSize;
76  int myYSize;
77 
78  // mask - must be the same size as the data passed in.
79  float *myMask;
80 };
81 
82 
83 #endif
RU_FeatherType myFeatherType
Definition: RU_Feather.h:58
float myExpandYSize
Definition: RU_Feather.h:62
bool myUseLuma
Definition: RU_Feather.h:54
int mySmoothLevel
Definition: RU_Feather.h:67
RU_FeatherDropoff myFeatherDropoff
Definition: RU_Feather.h:66
virtual int initialize(float t)
const GLdouble * v
Definition: glcorearb.h:837
#define RU_API
Definition: RU_API.h:10
GLint y
Definition: glcorearb.h:103
int myXSize
Definition: RU_Feather.h:75
PXL_LumFunction
Definition: PXL_LumFuncs.h:18
RU_FeatherDropoff
Definition: RU_Feather.h:27
#define DECLARE_FILTER_OP(name, override_)
int myYSize
Definition: RU_Feather.h:76
float myFeatherSize
Definition: RU_Feather.h:64
PXL_LumFunction myLumFunc
Definition: RU_Feather.h:55
float myFeatherYSize
Definition: RU_Feather.h:65
float * myFeatherLUT
Definition: RU_Feather.h:74
GLint GLenum GLint x
Definition: glcorearb.h:409
float myExpandSize
Definition: RU_Feather.h:61
float * myMask
Definition: RU_Feather.h:79
float myHoleThreshold
Definition: RU_Feather.h:71
RU_FeatherType
Definition: RU_Feather.h:19
bool myFeatherFast
Definition: RU_Feather.h:68