Provides a spreadsheet designed for easy management of sets of associated plug values. Each column of the spreadsheet corresponds to an output value that can be connected to drive a plug on another node. Each row of the spreadsheet provides candidate values for each output, along with a row name and enabled status. Row names are matched against a selector to determine which row is passed through to the output. Row matching is performed as follows :

  • Matching starts with the second row and considers all subsequent rows one by one until a match is found. The first matching row is the one that is chosen.
  • Matching is performed using Gaffer’s standard wildcard matching. Each “name” may contain several individual patterns each separated by spaces.
  • The first row is used as a default, and is chosen only if no other row matches.


The matching rules are identical to the ones used by the NameSwitch node.


Container for user-defined plugs. Nodes should never make their own plugs here, so users are free to do as they wish.


Turns the node on and off.


The value that the row names will be matched against. Typically this will refer to a Context Variable using the ${variableName} syntax.


Holds a child RowPlug for each row in the spreadsheet.


The outputs from the spreadsheet. Contains a child plug for each column in the spreadsheet.


An output plug containing the names of all currently active rows.