12 #ifndef __MOT_Director_h__
13 #define __MOT_Director_h__
30 class MOT_ScriptNodeResolver;
50 bool alloptypes =
true,
51 bool exec_pythonrc =
true,
52 bool exec_ready =
true);
56 int *hint =
nullptr)
const override;
67 MGR_Node *getParticleManager() {
return myParticles; }
77 void setFileName(
const char *nm,
bool dovarchange);
78 void setFileName(
const char *nm);
88 bool moveFileNameToNumberedBackup(
94 bool moveFileNameToNumberedBackup(
103 bool copyFileNameToNumberedBackup(
110 bool copyFileNameToNumberedBackup(
117 void resetForNewFile();
121 void runPostNewScript();
131 const char *indexPath,
143 std::ostream &os)
const override;
155 const char *parmname,
168 const char *nodename,
169 bool saveempty)
const override;
186 bool is_source_code =
false)
override;
188 bool is_source_code =
false)
override;
191 std::ostream &os)
override;
198 const char *node_name=
nullptr);
203 static const char *hasSubNetworks(
OP_Network *net);
218 const char *preferred_subnet_name =
nullptr,
219 const char *subnet_type_name =
nullptr);
223 static void extractSubNetwork(
OP_Network *subnet,
239 bool loadOrMergeHipFile(
const char *file_name,
246 void getCollisionsIfMerged(
const char *file_name,
256 OP_ERROR saveHipFile(
const char *file_name,
258 bool autosave =
false);
261 OP_ERROR saveNetworkToFile(
const char *file_name,
273 {
return myGeometryChannelsManager; }
275 bool runDSO(
const char* lib_path);
289 void layoutManagers();
290 void execPythonRCFiles();
291 void execReadyFiles();
292 void installCommands();
293 void loadOpCustomizeFile();
294 void cacheChopnetOperators();
295 bool forceChopnetToExport(
OP_Node &chop_network);
MOT_GeometryChannelsManager & getGeometryChannelsManager()
virtual bool addNodeSpareParm(OP_Parameters *, PRM_Template *) const
MGR_Node * getRenderManager()
MGR_Node * getTopNetManager()
virtual void clearHOMSessionModuleSource()
virtual void enable(int state)
virtual void findInternalScriptOperators(const char *, OP_OTLDefinitionArray &)
virtual bool loadNodeSpareParms(OP_Parameters *, UT_IStream &, UT_String &) const
const UT_StringHolder & getLastFileName() const
virtual void beginLoading()
MGR_Node * getVopManager()
virtual void clearHandleSettings(OP_Operator *)
virtual void deleteAllNodeSpareParms(OP_Parameters *) const
MGR_Node * getObjectManager()
std::unique_ptr< T, Deleter > UT_UniquePtr
A smart pointer for unique ownership of dynamically allocated objects.
virtual void opUpdateAllExports()
LOP_Network * getLopManager()
virtual void updateExportedParms(OP_Node *)
virtual void clearNetwork(int clear_aliases)
virtual bool loadNodeCompiledDs(OP_Node *, UT_IStream &)
virtual bool loadNodeCompiledCode(OP_Node *, UT_IStream &, bool is_source_code=false)
OP_Node * getChild(const char *name=nullptr, int *hint=nullptr) const override
MGR_Node * getShopManager()
virtual OP_ERROR saveNodeSpareParms(OP_Parameters *, bool, std::ostream &) const
GLuint const GLchar * name
virtual bool removeNodeSpareParm(OP_Parameters *node, const char *parmname, UT_StringArray *errs=nullptr, UT_StringArray *warn=nullptr) const
virtual OP_Node * linkInternalScriptOperator(const char *, OP_Operator *)
virtual void getInternalScriptDefinition(OP_Node *, UT_String &)
virtual void deleteNodeSpareParmLayout(OP_Parameters *) const
virtual bool loadHOMSessionModuleSource(UT_IStream &is)
GA_API const UT_StringHolder parms
Create an evaluation context scope with a new node.
virtual void endLoading()
virtual void saveNodeSpareParmCommands(OP_Parameters *, std::ostream &, const char *, bool) const
virtual void saveNodeCompiledDs(OP_Node *, std::ostream &)
MGR_Node * getMatManager()
virtual PRM_ScriptPage * allocateSpareScriptPage(OP_Operator *)
MGR_Node * getChopNetManager()
virtual void saveNodeCompiledCode(OP_Node *, std::ostream &, bool is_source_code=false)
virtual void changeNodeSpareParms(OP_Parameters *, PI_EditScriptedParms &, UT_String &) const
const UT_String & getFileName() const
virtual void saveHOMSessionModuleSource(std::ostream &os)
MGR_Node * getCop2Manager()
static const char * theChildTableName
friend class MOT_Director