12 #ifndef __LOP_Node_h__
13 #define __LOP_Node_h__
41 #define LOP_DEBUG_FLAG 'D'
120 static void initializeExpressions();
136 bool getNestedDebug()
const;
150 LOP_Node *getOutputLop(
int outputidx)
const;
162 bool use_last_cook_context_options =
false);
175 bool use_last_cook_context_options =
false);
179 bool hasLayerColorIndex(
int &clridx)
const;
191 static bool getSimplifiedCollection(
OP_Node *node,
196 static bool getSimplifiedCollection(
OP_Node *node,
203 static bool getPathsFromPattern(
LOP_Node &lop,
206 bool allow_missing_explicit_prims =
false);
211 bool isPrimitiveEditable(
215 bool ignoreeditableflag,
220 int layerCount()
const;
230 void clearLastModifiedPrims();
236 virtual bool getResolverContextAssetPath(
UT_String &assetpath);
237 virtual bool getResolverContextStrings(
254 const char *
name)
override;
259 {
return myLastCookActivationState; }
279 const char *
inputLabel(
unsigned idx)
const override;
280 const char *
outputLabel(
unsigned idx)
const override;
287 virtual int getNumGuides()
const;
288 virtual const char *getGuideColorName(
int idx)
const;
318 bool copy_data_handle =
false,
319 bool add_extra_input =
true,
326 bool require_input =
false,
327 bool copy_data_handle =
false,
334 bool require_input =
false,
348 LOP_Node *getNodeForSubnetOutput(
int outidx)
const;
355 bool allow_empty_strings =
false);
358 void setClearCheckpointsOnInputChange(
bool clear);
362 void removeAllCheckpoints();
370 int &copied_input)
override;
380 static void getRampAttributeNamesForParmSet(
385 static void getAttributeParmSet(
OP_Node *node,
395 bool applySchemaFromParmSet(
402 bool setAttributeFromParmSet(
411 int stackdepth)
const;
450 bool onlyTimeDep =
true);
452 bool checkForDifferingTCPS(
bool emitWarning =
true);
456 std::set<fpreal64> myTCPSEntries;
466 void setDebugDirtyRecursive(
467 void *change_data,
bool top_level);
468 void resetDataHandle();
virtual int saveCookedData(std::ostream &os, OP_Context &, int binary=0)=0
LOP_ActivationState lastCookActivationState() const
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_SharedPtr< HUSD_LoadMasks > HUSD_LoadMasksPtr
UT_StringHolder myPrimPath
virtual UT_AttributeEvaluator * createAttributeEvaluator(const char *name)
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 myRampBasisAttrName
const GLuint GLenum const void * binary
GLsizei const GLchar *const * path
virtual const char * inputLabel(unsigned idx) const
UT_StringHolder myValueType
virtual OP_ERROR cookMe(OP_Context &context)=0
virtual void childFlagChange(OP_Node *)
UT_StringHolder myRampPosAttrName
UT_StringHolder myControl
virtual bool showConvexHull() const
virtual OP_Node * getCurrentNodePtr()
UT_StringMap< UT_UniquePtr< UT_AttributeEvaluator > > myEvaluators
void opChanged(OP_EventType reason, void *data=0) override
UT_Array< LOP_AttributeParmSet > LOP_AttributeParms
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
DifferingTimeCodesPerSecChecker(LOP_Node *lop)
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
void addSystemError(const char *msg=0)
Parameters for OP_Node::fillInfoTree()/OP_Node::fillInfoTreeNodeSpecific()
virtual void fillInfoTreeNodeSpecific(UT_InfoTree &tree, const OP_NodeInfoTreeParms &parms)
virtual const char * outputLabel(unsigned idx) const
UT_SharedPtr< HUSD_LockedStage > HUSD_LockedStagePtr
Utility class for containing a color ramp.
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)
void addError(int code, const char *msg=0)
virtual bool getDebug() const
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)
virtual void deleteCookedData()=0