12 #ifndef __OP_ScriptOperator__
13 #define __OP_ScriptOperator__
22 #include <sys/types.h>
56 bool forvex,
bool for_python =
false,
57 const char * section_name = NULL)
const;
61 void getScriptFunctionName(
UT_String &name)
const;
71 void getScriptSecondaryFunctionsNames(
100 static int findScriptOperators(
const char *
path,
108 int traverseCommand(
OP_Node *node,
141 void editScriptFile(
const char *pathprefix,
142 const char *context =
"surface",
144 const char *title =
"VEX Function",
145 const char **obj_extensions = 0,
154 bool isCompiledPythonCookCodeCached();
160 void dirtyParmTemplates();
170 const char *child_table_name,
171 unsigned min_sources,
172 unsigned max_sources = 9999,
175 const char **inputlabels = 0,
179 void getDefinitionSourceText(
UT_String &defsource );
198 static void freeSwitcherDefaults(
PRM_Default *defs);
243 void readBuffer(
const char *str);
249 { myMainFunctionName =
name; }
251 {
return myMainFunctionName; }
256 { mySecondaryFunctionsMap = m; }
258 {
return mySecondaryFunctionsMap; }
263 static void getFunctionCodeSections(
UT_StringArray §ion_names,
266 void parseStringJSON(
const char *str);
virtual void clearOTLIndexFile()
typedef int(APIENTRYP RE_PFNGLXSWAPINTERVALSGIPROC)(int)
std::function< OP_Ptr(OP_Network *, const char *, OP_Operator *)> OP_Constructor
Helper class for reading and writing FunctionName HDA section.
GT_API const UT_StringHolder filename
virtual int updateParmTemplates()
void setSecondaryFunctionsMap(const UT_StringMap< UT_StringHolder > &m)
The dictionary of additional functions stored in HDA.
PRM_Default * myBaseSwitcherDefaults
GLsizei const GLchar *const * path
PY_CompiledCode * myCachedCompiledPythonCookCode
**But if you need a result
virtual void removeAllBindings()
int myBaseControlsSwitcherPageNum
const UT_StringHolder & getMainFunctionName() const
The name of the main (shader) function HDA represents.
static UT_StringSet theAllIndexFiles
virtual PRM_Template * loadParmTemplates(UT_IStream &, const char *, UT_String &, PRM_ScriptImports *&)
virtual bool loadParmTemplatesSubclass()
virtual void refreshAllBindings()
fpreal getUnitLength() const
int myBaseControlsSwitcherIndex
virtual void fillInfoTreeOperatorSpecific(UT_InfoTree &tree, const OP_NodeInfoTreeParms &parms)
const UT_StringMap< UT_StringHolder > & getSecondaryFunctionsMap() const
The dictionary of additional functions stored in HDA.
UT_String & getScriptHelp()
GLuint const GLchar * name
virtual bool hasLoadedParmTemplates() const
int myBaseControlsInsertIndex
virtual bool writeFile(const GA_Detail &g, const char *filename, const GA_SaveOptions *opts, UT_StringArray *errors) const
int myHasCachedCode
State var indicating if cached code is saved with HDA definition.
GA_API const UT_StringHolder parms
Parameters for OP_Node::fillInfoTree()/OP_Node::fillInfoTreeNodeSpecific()
section HDK_USDHydraEventScripts USD a python event script is run This gives the render delegate the opportunity to perform any required external initialization or other renderer specific action that may be required The script is found by searching the HOUDINI_SCRIPT_PATH for a file named scene DelegateName_Events py Within this file should be two functions
UT_Lock myCachedCompiledPythonCookLock
virtual const char * getOperatorShortHelpString()
virtual bool readFile(GA_Detail &g, const char *filename, const GA_LoadOptions *opts, UT_StringArray *errors) const
Class which defines an I/O interface to save/load geometry.
fpreal getUnitMass() const
virtual void getOperatorSpecificInfoText(int verbose, UT_WorkBuffer &text)
virtual void forceUpdateParmTemplates()
int(* OP_ScriptParmFunc)(OP_Node *node, PRM_Template *temp, int idx, fpreal t, void *data)
void setMainFunctionName(const char *name)
The name of the main (shader) function HDA represents.
OIIO_UTIL_API std::string extension(string_view filepath, bool include_dot=true) noexcept