Skip to content

← utilities package

PipelineDone

Special purpose node used to force a pipeline to report that it is finished.

An example are streaming pipelines that also have one or more offline components (i.e., calling a node that generates a report or exports files to disk), or pipelines that have complex looping structures where NeuroPype cannot otherwise determine whether the pipeline is finished. Nodes which write to disk should have an "done" port that is wired into this node and which returns True when they are done. When all nodes wired into this node report they are finished (=True), this node will report itself as "finished" (is_finished=True). Neuropype will then set the status of the pipeline, which can be queried over the API, to completed (completed=True) even if there are other nodes which are not "finished" (i.e., LSLInput, StreamData, etc.) The inputs to this node are ideally booleans (True/False values), but can be any value that can be interpreted as a boolean (e.g., that can be wired into an If/Else node). For some data types (e.g., Packets) this would be ambiguous, so you will get an error if you wire such data into the node without first reducing it to a boolean value. The number of inputs that must evaluate to True can be specified in the required_inputs property. You can also have data passed unmodified through this node that you may wire into a Result node to have the Pipeline return a value when it is is finished. Version 1.2.0

Ports/Properties

data1

Input Condition 1.

verbose name
Data1
default value
None
port type
DataPort
value type
object (can be None)
data direction
IN

data2

Input Condition 2.

verbose name
Data2
default value
None
port type
DataPort
value type
object (can be None)
data direction
IN

data3

Input Condition 3.

verbose name
Data3
default value
None
port type
DataPort
value type
object (can be None)
data direction
IN

data4

Input Condition 4.

verbose name
Data4
default value
None
port type
DataPort
value type
object (can be None)
data direction
IN

data5

Input Condition 5.

verbose name
Data5
default value
None
port type
DataPort
value type
object (can be None)
data direction
IN

dataN

Additional conditions.

verbose name
Datan
default value
None
port type
DataPort
value type
list (can be None)
data direction
IN

passthrough

Pass through data. Can be wired into a final Result node.

verbose name
Passthrough
default value
None
port type
DataPort
value type
object (can be None)
data direction
INOUT

required_inputs

Number of inputs which must evaluate to True for pipeline to complete. If 0, the pipeline will unconditionally complete when the node is reached (regardless of the value). If set to the special value (use default), then each wired-in input must evaluate to True.

verbose name
Required Inputs
default value
0
port type
IntPort
value type
int (can be None)

wait_n_ticks

Number of additional scheduler ticks to wait after the trigger condition is met before reporting the pipeline as finished. Useful for offline pipelines that complete in a single tick but need to remain running long enough to flush data out (e.g., over LSL) to a downstream consumer.

verbose name
Wait N Ticks
default value
0
port type
IntPort
value type
int (can be None)

verbose

Print verbose output. This will log when the node was triggered.

verbose name
Verbose
default value
True
port type
BoolPort
value type
bool (can be None)

Show a popup message when the node is triggered to notify the user that the pipeline is finished (useful for long-running pipelines). Note that this option is ignored when NeuroPype is run in non-GUI mode (--nogui flag at launch).

verbose name
Popup
default value
False
port type
BoolPort
value type
bool (can be None)

set_breakpoint

Set a breakpoint on this node. If this is enabled, your debugger (if one is attached) will trigger a breakpoint.

verbose name
Set Breakpoint (Debug Only)
default value
False
port type
BoolPort
value type
bool (can be None)

metadata

User-definable meta-data associated with the node. Usually reserved for technical purposes.

verbose name
Metadata
default value
{}
port type
DictPort
value type
dict (can be None)