TEMERITY

us.temerity.pipeline.plugin.NukeCatCompAction.v2_4_3
Class NukeCatCompAction

java.lang.Object
  extended by us.temerity.pipeline.Named
      extended by us.temerity.pipeline.PluginID
          extended by us.temerity.pipeline.BasePlugin
              extended by us.temerity.pipeline.BaseAction
                  extended by us.temerity.pipeline.plugin.CommonActionUtils
                      extended by us.temerity.pipeline.plugin.CompositeActionUtils
                          extended by us.temerity.pipeline.plugin.NukeActionUtils
                              extended by us.temerity.pipeline.plugin.NukeCatCompAction.v2_4_3.NukeCatCompAction
All Implemented Interfaces:
Serializable, Cloneable, Comparable<PluginID>, Glueable

public class NukeCatCompAction
extends NukeActionUtils

Dynamically assemples a Nuke script by concatenates several Nuke script fragments and then executing the resulting script with Nuke.

The resulting dynamic Nuke script should contain a Write node for the primary target file sequence of the node using this action. Alternatively, this action can append a Write node to the dynamically generated script which will write the primary target file sequence images. In either case, this action only supports a single target file sequence. See the NukeComp action for an alternative way of executing Nuke scripts that does support multiple target image sequences.

This action defines the following single valued parameters:

Mode
The mode of operation for this action:
Append & Process - Append a Nuke Write node to the end of dynamically generated Nuke script and then execute it with Nuke to generate the primary target image sequence for the node.

Process - Dynamically generated a Nuke script by concatenating the source Nuke script fragments and execute it with Nuke. The resulting script should contain a Nuke Write node which generates the primary target image sequence for the node. If a Nuke Write node is encountered which uses the string "@PL_TARGET@" as its file option, this will be replaced with the full path to the actual primary target image sequence for the node.

Concatenate - Dynamically generate a Nuke script by concatenating the source Nuke script fragments as the target file sequence of the node, but do not execute it with Nuke.


Extra Options
Additional command-line arguments for Nuke.

This action defines the following per-source parameters:

Order
Each source node sequence which sets this parameter should contain a Nuke script fragment without headers or Root nodes. This parameter determines the order in which these Nuke script fragments are concatenated together and evaluated. If this parameter is not set for a source node file sequence, it will be ignored.

By default, this Action executes the "Nuke4.6" binary. This can be overridden by specifying an alternate binary with the NUKE_BINARY environmental variable in the Toolset used to run this Action plugin. On Windows, the Nuke binary name should include the ".exe" extension.

All Read/Write nodes should have absolute file paths relative to the root working directory which start with the string "WORKING" in order to support portability of Nuke scripts between artists and operation sytems. To enable the "WORKING" prefix to be expanded to the value of the WORKING environmental variable in these file paths, a "init.tcl" script as been provided with Pipeline in the "app-extra/nuke" directory where Pipeline is installed at your site. You must either copy this script into the "plugin/user" directory of your Nuke installation or add Pipeline's "app-extra/nuke" directory to the NUKE_PATH defined in the Toolset using this plugin.

See Also:
Serialized Form

Field Summary
static String aAppendAndProcess
           
static String aConcatenate
           
static String aMode
           
static String aOrder
           
static String aProcess
           
 
Fields inherited from class us.temerity.pipeline.plugin.CompositeActionUtils
aAdd, aAlphaAdd, aAlphaMode, aBlack, aBlendMode, aClassicColorBurn, aClassicColorDodge, aClassicDifference, aColor, aColorBurn, aColorDodge, aCompFrameRate, aCompHeight, aCompPixelRatio, aCompWidth, aDancingDissolve, aDarken, aDifference, aDissolve, aExclusion, aFrameRate, aHardLight, aHue, aIgnore, aLayer, aLighten, aLinearBurn, aLinearDodge, aLinearLight, aLuminescentPremul, aLuminosity, aMultiply, aNormal, aOverlay, aPass, aPinLight, aPixelRatio, aPreMultColor, aPreMultipled, aSaturation, aScreen, aSilhouetteAlpha, aSilhouetteLuma, aSoftLight, aStencilAlpha, aStencilLuma, aStraight, aVividLight, aWhite
 
Fields inherited from class us.temerity.pipeline.plugin.CommonActionUtils
aExtraOptions
 
Fields inherited from class us.temerity.pipeline.BasePlugin
pDescription
 
Fields inherited from class us.temerity.pipeline.PluginID
pVendor, pVersionID
 
Fields inherited from class us.temerity.pipeline.Named
pName
 
Constructor Summary
NukeCatCompAction()
           
 
Method Summary
 TreeMap<String,ActionParam> getInitialSourceParams()
          Get an initial set of action parameters associated with an upstream node.
 SubProcessHeavy prep(ActionAgenda agenda, File outFile, File errFile)
          Construct a SubProcessHeavy instance which when executed will fulfill the given action agenda.
 boolean supportsSourceParams()
          Does this action support per-source parameters?
 
Methods inherited from class us.temerity.pipeline.plugin.NukeActionUtils
getNukeExtensions, getNukeProgram, getNukeProgram, getNukeProgramVersion, getNukeProgramVersion, toNukeFilePattern, toNukeFrameRange
 
Methods inherited from class us.temerity.pipeline.plugin.CompositeActionUtils
addCompFrameRateParam, addCompHeightParam, addCompPixelRatioParam, addCompWidthParam, addSourceAlphaModeParam, addSourceFrameRateParam, addSourceLayerParam, addSourceOrderParam, addSourcePassParam, addSourcePixelRatioParam, addSourcePreMultColorParam
 
Methods inherited from class us.temerity.pipeline.plugin.CommonActionUtils
addExtraOptionsParam, addExtraOptionsParamToLayout, createScriptSubProcess, createSubProcess, createSubProcess, createSubProcess, createSubProcess, createTempCopySubProcess, createTempScript, escPath, escPath, getExtraOptionsArgs, getPrimarySourcePath, getPrimarySourcePath, getPrimarySourcePath, getPrimarySourcePaths, getPrimarySourcePaths, getPrimarySourcePaths, getPrimaryTargetPath, getPrimaryTargetPath, getPrimaryTargetPath, getPrimaryTargetPaths, getPrimaryTargetPaths, getPrimaryTargetPaths, getSecondarySourceBooleanParamValue, getSecondarySourceDoubleParamValue, getSecondarySourceDoubleParamValue, getSecondarySourceEnumParamIndex, getSecondarySourceIntegerParamValue, getSecondarySourceIntegerParamValue, getSecondarySourceLongParamValue, getSecondarySourceLongParamValue, getSecondarySourceOptionalBooleanParamValue, getSecondarySourceStringParamValue, getSecondarySourceStringParamValue, getSingleBooleanParamValue, getSingleDoubleParamValue, getSingleDoubleParamValue, getSingleEnumParamIndex, getSingleIntegerParamValue, getSingleIntegerParamValue, getSingleLongParamValue, getSingleLongParamValue, getSingleOptionalBooleanParamValue, getSingleStringParamValue, getSingleStringParamValue, getSingleTuple2dParamValue, getSingleTuple2dParamValue, getSingleTuple2dParamValue, getSingleTuple2iParamValue, getSingleTuple2iParamValue, getSingleTuple2iParamValue, getSingleTuple3dParamValue, getSingleTuple3dParamValue, getSingleTuple3dParamValue, getSingleTuple3iParamValue, getSingleTuple3iParamValue, getSingleTuple3iParamValue, getSingleTuple4dParamValue, getSingleTuple4dParamValue, getSingleTuple4dParamValue, getSourceBooleanParamValue, getSourceDoubleParamValue, getSourceDoubleParamValue, getSourceEnumParamIndex, getSourceIntegerParamValue, getSourceIntegerParamValue, getSourceLongParamValue, getSourceLongParamValue, getSourceOptionalBooleanParamValue, getSourceStringParamValue, getSourceStringParamValue, getWorkingNodeFilePath, getWorkingNodeFilePath, getWorkingNodeFilePath, getWorkingNodeFilePath, getWorkingNodeFilePaths
 
Methods inherited from class us.temerity.pipeline.BaseAction
addPreset, addPresetValues, addSingleParam, chmod, cleanupLater, clearAllLinkParams, clearLinkParams, clone, createTemp, createTemp, equals, equalSingleParams, equalSourceParams, fromGlue, getPluginType, getPresetChoices, getPresetValues, getSecondarySequences, getSecondarySourceNames, getSecondarySourceParam, getSecondarySourceParams, getSecondarySourceParamValue, getSingleLayout, getSingleParam, getSingleParams, getSingleParamValue, getSourceLayout, getSourceNames, getSourceParam, getSourceParams, getSourceParamValue, getTempDir, getTempPath, hasSecondarySourceParams, hasSingleParams, hasSourceParams, initSecondarySourceParams, initSourceParams, removeAllSourceParams, removeSecondarySourceParams, removeSecondarySourceParams, removeSourceParams, setSecondarySourceParamValue, setSingleLayout, setSingleParamValue, setSingleParamValues, setSourceLayout, setSourceParamValue, setSourceParamValues, toGlue
 
Methods inherited from class us.temerity.pipeline.BasePlugin
addSupport, compareTo, getDescription, getFullMessage, getPluginID, getResource, getResources, getResourceSize, getSupports, isUnderDevelopment, removeSupport, setSupports, supports, toString, underDevelopment
 
Methods inherited from class us.temerity.pipeline.PluginID
getVendor, getVersionID
 
Methods inherited from class us.temerity.pipeline.Named
getName
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

aMode

public static final String aMode
See Also:
Constant Field Values

aAppendAndProcess

public static final String aAppendAndProcess
See Also:
Constant Field Values

aProcess

public static final String aProcess
See Also:
Constant Field Values

aConcatenate

public static final String aConcatenate
See Also:
Constant Field Values

aOrder

public static final String aOrder
See Also:
Constant Field Values
Constructor Detail

NukeCatCompAction

public NukeCatCompAction()
Method Detail

supportsSourceParams

public boolean supportsSourceParams()
Does this action support per-source parameters?

Overrides:
supportsSourceParams in class BaseAction

getInitialSourceParams

public TreeMap<String,ActionParam> getInitialSourceParams()
Get an initial set of action parameters associated with an upstream node.

Overrides:
getInitialSourceParams in class BaseAction

prep

public SubProcessHeavy prep(ActionAgenda agenda,
                            File outFile,
                            File errFile)
                     throws PipelineException
Construct a SubProcessHeavy instance which when executed will fulfill the given action agenda.

Overrides:
prep in class BaseAction
Parameters:
agenda - The agenda to be accomplished by the action.
outFile - The file to which all STDOUT output is redirected.
errFile - The file to which all STDERR output is redirected.
Returns:
The SubProcess which will fulfill the agenda.
Throws:
PipelineException - If unable to prepare a SubProcess due to illegal, missing or imcompatable information in the action agenda or a general failure of the prep method code.

TEMERITY