9 #ifndef __HOM_VopNode_h__
10 #define __HOM_VopNode_h__
38 bool reference_input_defaults) = 0;
39 virtual std::map<std::string, HOM_ElemPtr<HOM_Node> >
40 insertParmGeneratorsForAllInputs(
42 bool reference_input_defaults) = 0;
49 virtual bool deleteIndependentInputNodes(
int input_index) = 0;
51 virtual bool dependsOnlyOn(
HOM_VopNode * other_node,
int max_connections,
54 virtual void setIsInputVisible(
const char* input_name,
bool is_visible) = 0;
55 virtual bool isInputVisible(
const char* input_name) = 0;
57 virtual std::vector<std::string> inputDataTypes() = 0;
58 virtual std::vector<std::string> outputDataTypes() = 0;
59 virtual std::vector<std::string> inputParmTypes() = 0;
60 virtual bool isInputCompatible(
int idx,
HOM_VopNode &other,
int other_idx,
61 bool allow_conversions =
false) = 0;
68 virtual bool isBypassed() = 0;
69 virtual void bypass(
bool on) = 0;
70 virtual bool isDebugFlagSet() = 0;
71 virtual void setDebugFlag(
bool on) = 0;
72 virtual bool isDetailLowFlagSet() = 0;
73 virtual void setDetailLowFlag(
bool on) = 0;
74 virtual bool isDetailMediumFlagSet() = 0;
75 virtual void setDetailMediumFlag(
bool on) = 0;
76 virtual bool isDetailHighFlagSet() = 0;
77 virtual void setDetailHighFlag(
bool on) = 0;
78 virtual bool isCompressFlagSet() = 0;
79 virtual void setCompressFlag(
bool on) = 0;
80 virtual bool isMaterialFlagSet() = 0;
81 virtual void setMaterialFlag(
bool on) = 0;
84 virtual void setInputGroupExpanded(
const char *group,
bool expanded) = 0;
85 virtual bool isInputGroupExpanded(
const char *group) = 0;
86 virtual std::vector<int> inputsInGroup(
const char *group) = 0;
87 virtual std::vector<std::string> inputGroupNames() = 0;
88 virtual std::vector<int> inputIndexOrder() = 0;
92 virtual std::string findBypassInputName(
const char *output_name) = 0;
99 virtual std::string shaderString(
const char *render_type=NULL,
101 bool as_encapsulated =
false) = 0;
111 bool as_otl_path=
true,
const char *shader_type_name=
nullptr) = 0;
113 const char *signature =
nullptr) = 0;
118 virtual bool setShaderLanguageName(
const char*language_name) = 0;
126 virtual std::vector<HOM_ElemPtr<HOM_Node> > coshaderNodes(
127 const char *parm_name) = 0;
128 virtual std::vector<std::string> coshaderNodesOutputNames(
129 const char *parm_name) = 0;
133 virtual std::pair<HOM_ElemPtr<HOM_Node>,
std::string>
134 subnetTerminalChild(
const char *subnet_output_name) = 0;
138 virtual std::vector<std::string> extraBindings() = 0;
142 virtual std::vector<std::string> usdShaderParms(
143 bool force_parms_at_default=
false) = 0;
148 virtual std::vector<std::string> usdPreviewShaderParms() = 0;
#define HOM_DESTRUCT_OBJECT(pointer)
GLsizei const GLchar *const * string
string __repr__(VtArray< T > const &self)
virtual HOM_EnumValue * shaderType()=0
HOM_VopNode(const HOM_VopNode &vop_node)
#define HOM_CONSTRUCT_OBJECT(pointer)
OIIO_UTIL_API bool rename(string_view from, string_view to, std::string &err)