10 #ifndef __VOP_Collect_h__
11 #define __VOP_Collect_h__
67 bool forcesubnet =
false)
override;
78 const char *
label,
int keeppos,
93 bool create_missing_multiparms,
116 void *
data)
override;
119 int NUMINPUTS()
const;
120 void INPUTNAME(
UT_String &name,
int idx)
const;
121 void setINPUTNAME(
const char *name,
int idx,
122 bool make_unique =
true);
123 bool hasINPUTNAME(
const char *name,
int skip_idx);
125 void setINPUTLABEL(
const char *
label,
int idx);
128 void notifyParentOfInputChange();
129 void adjustForInputChange(
int idx,
130 bool is_new,
bool is_deleted);
131 void adjustForInputMove(
int srcidx,
int dstidx );
132 void moveInputNameParm(
int srcidx,
int dstidx);
133 void removeInputNameParm(
int idx);
virtual int getInputFromNameSubclass(const UT_String &in) const
virtual VOP_Type getShaderType() const
Returns the name, type, and render mask of the VOP shader.
virtual void initMaterialFlag()
void moveInput(int srcidx, int dstidx, bool forcesubnet=false) override
GLuint GLsizei const GLchar * label
virtual VOP_Node * getProcedural(VOP_Type type)
Material VOP may be able to return a procedural node.
virtual void getAllowedInputTypesSubclass(unsigned idx, VOP_VopTypeArray &voptypes)
OP_ERROR setNamedInputReference(const OP_ConnectorId &input_name, const char *label, int, const OP_ConnectorId *output_name=nullptr) override
OP_ERROR setInputReference(OP_InputIdx idx, const char *label, int keeppos, OP_OutputIdx outputIdx=0) override
Connects an input to particular node by name in the network.
virtual unsigned getNumVisibleInputs() const
OP_ERROR setInput(OP_InputIdx idx, OP_Node *op, OP_OutputIdx outputIdx=0) override
virtual void getInputTypeInfoSubclass(VOP_TypeInfo &type_info, int idx)
virtual int getNumInputsFromParent() const =0
constexpr auto in(type t, int set) -> bool
virtual const char * inputLabel(OP_InputIdx idx) const
GLint GLint GLsizei GLint GLenum GLenum type
virtual void NAMEFROMPARM(UT_String &str, int idx) const =0
virtual void preOpChanged(OP_EventType, void *)
virtual void loadFinished()
virtual void setLABELFROMPARM(UT_String &str, int idx)=0
GLuint const GLchar * name
bool getParameterOrProperty(const UT_StringRef &name, fpreal now, OP_Node *&op, PRM_Parm *&parm, bool create_missing_multiparms, PRM_ParmList *obsolete=0) override
virtual VOP_OutputNameEditorSource * getOutputNameEditorSource()
Returns a pointer used by OPUI_OutputNameEditor to get and set data.
virtual void setNAMEFROMPARM(UT_String &str, int idx)=0
VOP_Type
Enumeration of the built-in (basic) VOP data types.
virtual void getInputNameSubclass(UT_String &in, int idx) const
virtual void findAllShaders(VOP_NodeList &shader_nodes, VOP_ShaderTypeList &shader_types, UT_StringArray &output_names)
bool getParameterOrPropertyByChannel(const UT_StringRef &chname, fpreal now, OP_Node *&op, PRM_Parm *&parm, int &vector_index, PRM_ParmList *obsolete=0) override
GLsizei GLenum GLenum * types
virtual bool isUSDNodeGraph() const
virtual VOP_Node * findShader(VOP_Type shader_type, fpreal now)
OP_ERROR setNamedInput(const OP_ConnectorId &input_name, OP_Node *op, const OP_ConnectorId *output_name=nullptr) override
New input functions that use names instead of indices.
virtual void LABELFROMPARM(UT_String &str, int idx) const =0
virtual void postOpChanged(OP_EventType, void *)