Crude implementation of a parallel execution engine in python but without dirty propagation , meant to be used via commandline. Currently we lock up maya when we use the gui due to maya thinking we want a separate shell which boots mayapy separately, will need to rework this to be single process when running in the GUI but works fine via commandline, yet to be tested over a farm system.
:note:: This Repo is still WIP
- unittest
- maya processing nodes(I/O)
- 3dsmax nodes
- on demand dirty propagation
- documentation
- error handling within nodes
- Skip attribute and node initialization if a node fails to initialize
- up front graph expansion since by default compounds we lazily expand only when we hit a compound not up front.
- example of creating a graph on the fly.
- deserialize a graph from json
These variables store the node and data type library, you can add your own directory paths once slither is initialized SLITHER_NODE_LIB SLITHER_TYPE_LIB
Compound nodes eg. nesting nodes within nodes parallel execution array attributes compound attributes node and datatype library extendability Graph mutation
import os
import sys
from slither import api
from slither.core import executor
app = api.initialize()
root = app.root
testSum = app.createNode("testNode", type_="Sum")
executor.StandardExecutor().execute(root)
# pprint the graph
pprint.pprint(root.serialize())
# get the final result for the graph
print root.execution.value()