API Documentation¶
Template module¶
-
class
nuketemplate.template.AbstractTemplate(root, attrs='attrs', nodes='nodes', template=[])[source]¶ Template class, automates Jinja2 loader and environment generation, wraps Jinja2 rendering and JSON encoding.
Parameters:
Graph module¶
-
class
nuketemplate.graph.AbstractGraph(nx_graph, start=None, end=None, end_slot=0)[source]¶ Abstraction of a NetworkX Directed Graph, adds
start,endattributes for simplified graph combination.Parameters: - nx_graph (
Graph) – NetworkX directed graph - start (
GenericNodeorNukeNode) – Start node - end (str) –
GenericNodeorNukeNode - end_slot (int) – End node input slot, for nodes with multiple inputs
- nx_graph (
-
class
nuketemplate.graph.GenericNode(name)[source]¶ Generic Node, used with
AbstractGraphParameters: name (str) – Node name
-
class
nuketemplate.graph.NukeNode(name, type, attr, id, nuke_node=None, nuke_name=None)[source]¶ Nuke Node, used with
AbstractGraph, inherits fromGenericNodeParameters:
-
nuketemplate.graph.is_node_in_nx_graph(instance, attribute, value)[source]¶ Input validator for
AbstractGraph. Check whether start and end node inputs are part of the graph.Parameters: - instance (
AbstractGraph) –AbstractGraphinstance - _type (
Attribute) – Attribute - _attr (
GenericNodeorNukeNode) – Input node
- instance (
Convert module¶
-
class
nuketemplate.convert.AbstractTemplateConverter(template, start='>>', end='<<', subgraphs=[], result=None)[source]¶ Template to Graph Converter
Parameters: -
convert()[source]¶ Convert the JSON template into an
AbstractGraph, if the template consists of multiple sub graphs, convert and combine otherwise convert in one pass.
-
Build module¶
-
class
nuketemplate.build.NukeGraphBuilder(abstract_graph)[source]¶ NukeGraphBuilder, convert an
AbstractGraphto a Nuke compositing scriptParameters: abstract_graph ( AbstractGraph) – Abstract graph