11 #ifndef __SOP_ForEach_h__
12 #define __SOP_ForEach_h__
44 virtual bool hasFeedbackGeo()
const;
49 virtual void registerEachSOP(
SOP_Node *sop);
50 virtual void unregisterEachSOP(
SOP_Node *sop);
64 const char *
inputLabel(
unsigned idx)
const override;
66 void buildStampListFromGroup(
fpreal t,
69 void buildStampListFromAttrib(
fpreal t,
73 void buildStampListFromPrimitive(
fpreal t,
77 virtual void dirtyAllEachSOPs();
80 {
return evalInt(
"mergeresults", 0, t); }
96 {
return evalInt(
"usemaxiter", 0, t); }
98 {
return evalInt(
"maxiter", 0, t); }
101 {
return evalInt(
"fortype", 0, t); }
108 {
return evalInt(
"eachpoint", 0, t); }
111 {
return evalInt(
"stopcondition", 0, t); }
virtual bool updateParmsFlags()
GU_DetailHandle myFeedbackGeo
bool STOPCONDITION(fpreal t)
bool USEMAXITER(fpreal t)
void ATTRIB(UT_String &str, fpreal t)
virtual const char * inputLabel(unsigned idx) const
constexpr SYS_FORCE_INLINE T & z() noexcept
fpreal evalFloat(int pi, int vi, fpreal t) const
Parameters for OP_Node::getInfoText()/OP_Node::getNodeSpecificInfoText()
virtual void childDeleted(OP_Node *)
void FORIDXSTAMP(UT_String &str, fpreal t)
static const char * theChildTableName
bool MERGERESULTS(fpreal t)
float ATTRIBTOL(fpreal t)
virtual void childFlagChange(OP_Node *)
void FORSTAMP(UT_String &str, fpreal t)
void GROUPMASK(UT_String &str, fpreal t)
void evalString(UT_String &val, int pi, int vi, fpreal t) const
bool canCreateNewOpType() const override
void NUMRANGE(UT_Vector3R &v, fpreal t)
GLuint const GLchar * name
Parameters for OP_Node::fillInfoTree()/OP_Node::fillInfoTreeNodeSpecific()
UT_Set< int > myEachSOPList
exint evalInt(int pi, int vi, fpreal t) const
virtual OP_ERROR cookMySop(OP_Context &context)=0
constexpr SYS_FORCE_INLINE T & y() noexcept
void getNodeSpecificInfoText(OP_Context &context, OP_NodeInfoParms &iparms) override
void fillInfoTreeNodeSpecific(UT_InfoTree &tree, const OP_NodeInfoTreeParms &parms) override
Fill in tree with this SOP's details.
constexpr SYS_FORCE_INLINE T & x() noexcept