10 #ifndef __VOP_Block_h__
11 #define __VOP_Block_h__
28 const char *
inputLabel(
unsigned idx)
const override;
29 const char *
outputLabel(
unsigned idx)
const override;
38 virtual unsigned getBuiltInInputs()
const = 0;
49 {
return myIsOpenBlock; }
51 {
return !isOpenBlock(); }
52 virtual bool isLoop()
const = 0;
53 virtual bool isConditional()
const = 0;
55 virtual void getOpenCode(
UT_String &codestr,
57 virtual void getCloseCode(
UT_String &codestr,
62 bool findEnclosedItems(
72 void findAllBlockInputNodes(
95 virtual bool validatePairingSubclass(
100 void *
data)
override;
104 int idx)
const override;
117 virtual int NUMPARMS()
const;
129 mutable bool myFindingEnclosed;
202 if (dynamic_cast<const VOP_BlockWhile *>(close) ||
203 dynamic_cast<const VOP_BlockNone *>(close))
253 if (dynamic_cast<const VOP_BlockWhile *>(close) ||
254 dynamic_cast<const VOP_BlockNone *>(close))
260 bool isLoop()
const override {
return false; }
300 bool isLoop()
const override {
return false; }
342 if (dynamic_cast<const VOP_BlockBreakIf *>(close) ||
343 dynamic_cast<const VOP_BlockNone *>(close))
349 bool isLoop()
const override {
return true; }
395 if (dynamic_cast<const VOP_BlockBreakIf *>(close) ||
396 dynamic_cast<const VOP_BlockNone *>(close))
402 bool isLoop()
const override {
return true; }
virtual int getInputFromNameSubclass(const UT_String &in) const
bool validatePairingSubclass(const VOP_Block *close) const override
unsigned getBuiltInInputs() const override
VOP_BlockFor(OP_Network *parent, const char *name, OP_Operator *entry, bool isopen)
const VOP_Block * castToBlock() const override
virtual unsigned getNumVisibleInputs() const
unsigned getBuiltInInputs() const override
unsigned getBuiltInInputs() const override
virtual const char * inputLabel(unsigned idx) const
UT_StringHolder builtinVARNAME(int idx) const override
virtual void getOpenCode(UT_String &codestr, const VOP_CodeGenContext &context)=0
unsigned getBuiltInInputs() const override
unsigned getBuiltInInputs() const override
VOP_BlockWhile(OP_Network *parent, const char *name, OP_Operator *entry, bool isopen)
virtual unsigned getNumVisibleOutputs() const
void setType(VOP_Type type, VOP_Type raw_type=VOP_TYPE_UNDEF, const char *type_name=NULL)
VOP_BlockForEach(OP_Network *parent, const char *name, OP_Operator *entry, bool isopen)
bool setColor(const UT_Color &col) override
**But if you need a result
virtual bool generateErrorsSubclass()
bool isConditional() const override
virtual void getInputTypeInfoSubclass(VOP_TypeInfo &type_info, int idx)
void getBuiltInTypeInfo(VOP_TypeInfo &type_info, int idx) override
unsigned getBuiltInInputs() const override
VOP_Block * castToBlock() override
bool isLoop() const override
bool validatePairingSubclass(const VOP_Block *close) const override
VOP_Block * getPairedNode() const
Only returns non-null if it is a valid pair.
bool isCloseBlock() const
bool validatePairingSubclass(const VOP_Block *close) const override
bool validatePairingSubclass(const VOP_Block *close) const override
UT_StringHolder builtinVARNAME(int idx) const override
bool isLoop() const override
UT_StringHolder builtinVARNAME(int idx) const override
virtual unsigned orderedInputs() const
virtual void getBuiltInTypeInfo(VOP_TypeInfo &type_info, int idx)=0
GLuint const GLchar * name
VOP_BlockBreakIf(OP_Network *parent, const char *name, OP_Operator *entry, bool isopen)
bool isConditional() const override
UT_StringHolder builtinVARNAME(int idx) const override
bool isLoop() const override
bool isLoop() const override
virtual void getCode(UT_String &codestr, const VOP_CodeGenContext &context)
Get the code fragment to be included in the shader code.
virtual void getCloseCode(UT_String &codestr, const VOP_CodeGenContext &context)=0
bool isLoop() const override
bool isConditional() const override
virtual const char * outputLabel(unsigned idx) const
virtual void getOutputTypeInfoSubclass(VOP_TypeInfo &type_info, int idx)
virtual void getOutputNameSubclass(UT_String &out, int idx) const
bool findEnclosedItems(OP_EnclosedItems &items) const
UT_StringHolder builtinVARNAME(int idx) const override
void getBuiltInTypeInfo(VOP_TypeInfo &type_info, int idx) override
VOP_BlockIf(OP_Network *parent, const char *name, OP_Operator *entry, bool isopen)
virtual void getInputNameSubclass(UT_String &in, int idx) const
void reference(const char *src)
bool validatePairingSubclass(const VOP_Block *close) const override
UT_StringHolder builtinVARNAME(int idx) const override
void getBuiltInTypeInfo(VOP_TypeInfo &type_info, int idx) override
bool isConditional() const override
bool isLoop() const override
void getBuiltInTypeInfo(VOP_TypeInfo &type_info, int idx) override
bool validatePairingSubclass(const VOP_Block *close) const override
bool isConditional() const override
VOP_BlockNone(OP_Network *parent, const char *name, OP_Operator *entry, bool isopen)
void getBuiltInTypeInfo(VOP_TypeInfo &type_info, int idx) override
bool isConditional() const override
virtual void postOpChanged(OP_EventType, void *)