10 #ifndef __VOP_Visualize_h__
11 #define __VOP_Visualize_h__
32 bool check_shader_context)
const override
37 check_shader_context);
47 void *
data=0)
override;
65 const char *
inputLabel(
unsigned idx)
const override;
71 void setPARMSTRINGTYPE(
const char *style);
72 void setPARMOPFILTER(
const char *
filter);
105 int INVISIBLE()
const;
106 int JOINNEXT()
const;
107 int SHOWLABEL()
const;
108 int IRANGE(
int index)
const;
109 float FRANGE(
int index)
const;
122 bool export_parms=
false)
override;
127 int pidx)
const override;
136 bool allowMenu(
int parmtype)
const;
139 static int theParmNameParmIndex;
140 static int theParmTypeParmIndex;
Reprsents a language for which VOPs can generate source code.
virtual bool needsInput()=0
virtual bool isParmVisible() const =0
virtual int UNIFORM() const =0
virtual void PARMNAME(UT_String &str) const =0
virtual void copySettingsFrom(VOP_ParmGenerator *pvop)
Copy settings from a source parameter generator.
void getCode(UT_String &codestr, const VOP_CodeGenContext &context) override
Get the code fragment to be included in the shader code.
virtual bool getParmConstantString(const char *parmname, const VOP_TypeInfo &type_info, UT_String &str, bool expand_string, const VOP_Language *l=0)
Get the constant code that encodes the value of the node parameter.
bool updateParmsFlags() override
virtual const char * inputLabel(unsigned idx) const
virtual void copyDefaultValuesFrom(const PI_EditScriptedParm *parm)
void initializeNode() override
virtual void getInputTypeInfoSubclass(VOP_TypeInfo &type_info, int idx)
bool getIsParmGenerator() const override
Returns true if this VOP is a VOP_ParmGenerator or subclass.
virtual void PARMLABEL(UT_String &str) const =0
virtual void PARMPREFIX(UT_String &str) const
virtual void EXPORTSHADERCONTEXTS(UT_StringArray &context_names) const
virtual void setPARMTYPEINDEX(int type)
void opChanged(OP_EventType reason, void *data=nullptr) override
virtual int PARMTYPEINDEX() const =0
virtual void getParameterDeclaration(UT_String &parmdecl, const VOP_Language *language, const VOP_CodeGenContext &context)
The parameter variable declaration using the syntax of a given language.
OP_Node * getInput(unsigned idx, bool mark_used=false) const
Returns the node connected to a particular input (may be null).
void getOutputTypeInfoSubclass(VOP_TypeInfo &type_info, int idx) override
virtual int USEBOUND() const
virtual void MENUCHOICES(UT_String &str) const
bool forceCodeGenerationOfInputs(const VOP_CodeGenContext &ctx, bool check_shader_context) const override
virtual void getUnboundCode(UT_String &codestr, const VOP_CodeGenContext &context)
GLuint const GLchar * name
virtual void PARMPOSTFIX(UT_String &str) const
virtual bool USEASPARMDEFINER() const =0
virtual void setPARMSTORAGE(int type)
virtual void getParmDeclarationCode(UT_String &parm_decl, const VOP_CodeGenContext &codegen_ctx, const VOP_Language *language=NULL, bool export_parms=false)
bool forceCodeGenerationOfInputs(const VOP_CodeGenContext &ctx, bool check_shader_context) const override
virtual void setPARMNAME(const UT_String &str)
virtual bool getParmCanAffectParmName(int pidx) const =0
virtual int EXPORTPARM() const
GLint GLint GLint GLint GLint GLint GLint GLbitfield GLenum filter
bool getIsParmGenerator() const override
Returns true if this VOP is a VOP_ParmGenerator or subclass.