12 #ifndef __LOP_Node_h__
13 #define __LOP_Node_h__
42 #define LOP_DEBUG_FLAG 'D'
148 static void initializeExpressions();
153 static LOP_Node *getLopNodeFromLopOrNetworkPath(
const char *
path,
154 bool default_to_stage =
true);
170 bool getNestedDebug()
const;
184 LOP_Node *getOutputLop(
int outputidx)
const;
196 bool use_last_cook_context_options =
false,
210 bool use_last_cook_context_options =
false,
214 bool isMostRecentStageLock()
const;
218 bool hasLayerColorIndex(
int &clridx)
const;
221 bool inEditLayerBlock()
const;
233 static bool getSimplifiedCollection(
OP_Node *node,
238 static bool getSimplifiedCollection(
OP_Node *node,
245 static bool getPathsFromPattern(
LOP_Node &lop,
248 bool allow_missing_explicit_prims =
false);
253 bool isPrimitiveEditable(
257 bool ignoreeditableflag,
262 int layerCount()
const;
268 bool add_to_existing =
false);
270 bool add_to_existing =
false);
272 bool add_to_existing =
false);
274 bool add_to_existing =
false);
276 bool add_to_existing =
false);
277 void setLastModifiedPrimsWithPathExpression(
280 bool add_to_existing =
false);
281 void clearLastModifiedPrims();
289 virtual bool hasLargeActiveLayer()
const;
295 virtual bool getResolverContextAssetPath(
UT_String &assetpath);
296 virtual bool getResolverContextStrings(
313 const char *
name)
override;
318 {
return myLastCookActivation; }
346 virtual int getNumGuides()
const;
347 virtual const char *getGuideColorName(
int idx)
const;
366 bool get_inverse_xform,
371 virtual void handleParmEvaluatedForParmSet(
PRM_Parm *parm);
376 virtual bool supportMultipleOutputsAsContextOption()
const;
403 bool copy_data_handle =
false,
404 bool add_extra_input =
true,
411 bool require_input =
false,
412 bool copy_data_handle =
false,
419 bool require_input =
false,
431 bool add_extra_input);
453 LOP_Node *getNodeForSubnetOutput(
int outidx);
460 bool allow_empty_strings =
false);
463 void setClearCheckpointsOnInputChange(
bool clear);
467 void removeAllCheckpoints();
475 int &copied_input)
override;
485 static void getRampAttributeNamesForParmSet(
490 void getAttributeParmSet(
OP_Node *node,
500 bool applySchemaFromParmSet(
507 bool setAttributeFromParmSet(
516 int stackdepth)
const;
555 bool onlyTimeDep =
true);
557 bool checkForDifferingTCPS(
bool emitWarning =
true);
561 std::set<fpreal64> myTCPSEntries;
577 void setDebugDirtyRecursive(
578 void *change_data,
bool top_level);
579 void resetDataHandle();
584 bool myLastCookActivation;
585 bool myHasActivationParameter;
586 bool myHasShotActivationParameter;
virtual int saveCookedData(std::ostream &os, OP_Context &, int binary=0)=0
int myEvaluatingInputNameIndex
fpreal getH() const override
Node position/scale is used by the UI.
virtual bool getUseBypassLook(const OP_EditorContext &ctx) const
fpreal getW() const override
Node position/scale is used by the UI.
UT_StringHolder myCollectionExpansionRule
UT_SharedPtr< HUSD_LoadMasks > HUSD_LoadMasksPtr
UT_StringHolder myPrimPath
virtual UT_AttributeEvaluator * createAttributeEvaluator(const char *name)
HUSD_MakeNewPathFunc myMakeNewPathFn
void addMessage(int code, const char *msg=0)
HUSD_XformStyle myValueXformStyle
virtual void getAttributeEvaluatorNames(UT_StringArray &names)
#define SYS_VISIBILITY_EXPORT
virtual void setFlag(char tag, int8 val)
UT_StringHolder myReplacementIdentifier
UT_StringHolder myRampBasisAttrName
const GLuint GLenum const void * binary
GLsizei const GLchar *const * path
UT_StringHolder myValueType
UT_StringHolder myCreateNewSublayerName
bool myReplaceSublayersOnly
virtual OP_ERROR cookMe(OP_Context &context)=0
virtual void childFlagChange(OP_Node *)
UT_StringHolder myRampPosAttrName
void opChanged(OP_EventType reason, void *data=nullptr) override
UT_StringHolder myControl
virtual const char * inputLabel(OP_InputIdx idx) const
UT_StringHolder myCollectionIcon
bool myCollectionUsePathExpr
virtual bool showConvexHull() const
virtual OP_Node * getCurrentNodePtr()
UT_StringMap< UT_UniquePtr< UT_AttributeEvaluator > > myEvaluators
bool myCollectionAllowInstanceProxies
UT_Array< LOP_AttributeParmSet > LOP_AttributeParms
virtual bool getCameraInfo(const UT_StringRef &camid, const OP_Context &context, DEP_MicroNode *depnode, UT_StringHolder &foundcamid, UT_CameraParms &camparms)
SYS_VISIBILITY_EXPORT void newLopOperator(OP_OperatorTable *table)
void addWarning(int code, const char *msg=0)
PRM_MultiType myMultiParmType
GLuint const GLchar * name
virtual OP_DataType getCookedDataType() const =0
GLenum GLenum GLsizei void * table
virtual OP_OpTypeId getOpTypeID() const
UT_StringHolder myConnection
DifferingTimeCodesPerSecChecker(LOP_Node *lop)
UT_Function< UT_StringHolder(const UT_StringRef &oldpath)> HUSD_MakeNewPathFunc
UT_StringHolder myRampCountAttrName
virtual int contextOptionsStackEffect(int input) const
virtual const char * getChildType() const
static const char * theChildTableName
UT_StringHolder myAttrName
**Note that the tasks the is the thread number *for the or if it s being executed by a non pool thread(this *can happen in cases where the whole pool is occupied and the calling *thread contributes to running the work load).**Thread pool.Have fun
virtual const char * getFileExtension(int binary) const =0
GA_API const UT_StringHolder parms
void addSystemError(const char *msg=0)
Parameters for OP_Node::fillInfoTree()/OP_Node::fillInfoTreeNodeSpecific()
virtual void fillInfoTreeNodeSpecific(UT_InfoTree &tree, const OP_NodeInfoTreeParms &parms)
UT_StringHolder myCollectionParmPrefix
UT_StringHolder myCollectionIncludePattern
UT_SharedPtr< HUSD_LockedStage > HUSD_LockedStagePtr
Utility class for containing a color ramp.
int myCreateNewSublayerIndex
virtual const char * getOpType() const
UT_StringHolder myApiSchema
UT_StringHolder myInterpolation
UT_StringHolder myValueStr
virtual OP_OpTypeId getChildTypeID() const =0
virtual int getRelativeTransform(OP_Node &to, UT_Matrix4 &xform, OP_Context &context)
UT_StringHolder myXformParmPrefix
virtual bool evalVariableValue(UT_String &val, int index, int thread)
virtual bool getWorldTransformFromData(const UT_StringRef &id, const OP_Context &context, bool get_inverse_xform, DEP_MicroNode *depnode, UT_DMatrix4 &xform)
void addError(int code, const char *msg=0)
UT_StringHolder myCollectionName
virtual bool getDebug() const
virtual const char * outputLabel(OP_OutputIdx idx) const
UT_StringHolder myCollectionExcludePattern
virtual OP_ERROR bypassMe(OP_Context &context, int &copied_input)=0
UT_LockedRawPtr< UT_ErrorManager, OP_Lock > getLockedErrorManager()
fpreal64 myValueFloat[16]
virtual OP_Node * getDisplayNodePtr()
PRM_MultiType
This type enum defines the different types of multi (dynamic) parameters.
virtual void clearCache()
virtual void onCreated()
Overriden in VOPs.
virtual bool setDebug(bool on_off)
bool lastCookActivationState() const
virtual void deleteCookedData()=0