11 #ifndef __SOP_BlockEndFor_h__
12 #define __SOP_BlockEndFor_h__
19 class sop_PieceExtractor;
56 {
return !myIterationGeo.isNull() && myPieceExtractor; }
62 if (!myFeedbackGeo.isNull())
63 myFeedbackGeo.removePreserveRequest();
64 myFeedbackGeo.clear();
69 void clearPieceExtractor();
129 virtual bool hasFeedbackGeo()
const;
132 virtual bool hasPieceGeo()
const;
146 virtual void registerEachSOP(
SOP_Node *sop);
147 virtual void unregisterEachSOP(
SOP_Node *sop);
154 static int resetCookPassStatic(
void *op,
int idx,
fpreal t,
164 static sop_PieceExtractor *buildPieceExtractor(
const SOP_GraphProxy *graph,
177 const char *
inputLabel(
unsigned idx)
const override;
180 virtual void dirtyAllEachSOPs();
189 {
return evalInt(
"itermethod", 0, t); }
191 {
return evalInt(
"method", 0, t); }
193 {
return evalInt(
"iterations", 0, t); }
197 {
return evalInt(
"usemaxiter", 0, t); }
199 {
return evalInt(
"useattrib", 0, t); }
201 {
return evalInt(
"maxiter", 0, t); }
207 {
return evalInt(
"dosinglepass", 0, t); }
209 {
return evalInt(
"singlepass", 0, t); }
211 {
return evalInt(
"stopcondition", 0, t); }
213 {
return evalInt(
"multithread", 0, t); }
bool USEMAXITER(fpreal t) const
virtual bool updateParmsFlags()
int FORMETHOD(fpreal t) const
GLuint const GLchar * name
sop_PieceExtractor * myPieceExtractor
Functor object to extract a subset of the iteration geo.
virtual const char * inputLabel(unsigned idx) const
Parameters for OP_Node::getInfoText()/OP_Node::getNodeSpecificInfoText()
ForStateIterator * myForState
bool encloseInputs() const override
void TEMPLATEPATH(UT_String &str, fpreal t) const
GA_AttributeOwner myClass
bool MULTITHREAD(fpreal t) const
void ATTRIB(UT_String &str, fpreal t) const
exint getStartPass() const
GU_DetailHandle myPieceGeo
void PRIMARYNEXT(UT_String &str, fpreal t) const
void evalString(UT_String &val, int pi, int vi, fpreal t) const
int SINGLEPASS(fpreal t) const
exint getExpectedIterations() const
void PRIMARYPATH(UT_String &str, fpreal t) const override
GU_DetailHandle getIterationGeo()
virtual void getDescriptiveName(UT_String &str) const
bool USEATTRIB(fpreal t) const
ForStateIterator(const ForStateIterator &iter)
exint myFullPassIterations
bool STOPCONDITION(fpreal t) const
exint getCurrentCookPass() const
bool DOSINGLEPASS(fpreal t) const
Parameters for OP_Node::fillInfoTree()/OP_Node::fillInfoTreeNodeSpecific()
int MAXITER(fpreal t) const
int ITERATIONMETHOD(fpreal t) const
GU_DetailHandle myIterationGeo
GU_DetailHandle myFeedbackGeo
GU_DetailHandle myMetadataGeo
Likewise, the cached metadata.
exint evalInt(int pi, int vi, fpreal t) const
exint myExpectedIterations
virtual OP_ERROR cookMySop(OP_Context &context)=0
exint ITERATIONS(fpreal t) const
void getNodeSpecificInfoText(OP_Context &context, OP_NodeInfoParms &iparms) override
exint getCurrentCookPass() const
exint getFullPassIterations() const
exint getExpectedIterations() const
void fillInfoTreeNodeSpecific(UT_InfoTree &tree, const OP_NodeInfoTreeParms &parms) override
Fill in tree with this SOP's details.
UT_Set< int > myNextSOPList