interface#

Interface#

This module encompasses all possible node interfaces. This includes parameters, such as configuration files (using FileParameter) and simple values (using Parameter), but also Input (MultiInput) and Output (MultiOutput) ports allowing the attachment of (multiple) channels to communicate with other nodes. All interfaces expose a datatype attribute that is used to ensure the usage of correct types when constructing a workflow graph.

Classes

FileParameter(*args, **kwargs)

Allows provision of files as parameters to nodes.

Input(*args, **kwargs)

Input port to allow receiving or parameterising data.

Interface(*args, **kwargs)

Interface parent class, handles behaviour common to ports and parameters.

MultiInput(*args, **kwargs)

Aggregation of multiple input ports into a single port.

MultiOutput(*args, **kwargs)

Aggregation of multiple output ports into a single port.

MultiParameter(*args, **kwargs)

Container for multiple parameters.

MultiPort(*args, **kwargs)

Aggregate Port parent class, allowing multiple ports to be integrated into one instance.

Output(*args, **kwargs)

Output port to allow sending arbitrary data.

Parameter(*args, **kwargs)

Task parameter container.

Port(*args, **kwargs)

Port parent class, use the Input or Output classes to specify user connections.

Suffix(*suffixes)

Utility class to annotate paths with restrictions on possible suffixes.

Exceptions

ParameterException

Exception raised for parameter issues.

PortException

Exception raised for channel issues.

PortInterrupt(*args[, name])

Interrupt raised to quit a process immediately to avoid propagating None values to downstream nodes.