Module neuropype.engine
The data-flow engine of NeuroPype.
The engine defines processing nodes arranged into a flow graph, which is implemented in the following modules:
neuropype.engine.node
: Defines a processing node (Node
)neuropype.engine.ports
: Defines the input/output ports of a node (Port
)neuropype.engine.graph
: Defines a flow graph of processing nodes (Graph
)neuropype.engine.scheduler
: Defines a scheduler that runs a graph's data flow (Scheduler
)
The data structure that is exchanged between nodes (the Packet
) is defined in
the following modules:
neuropype.engine.packet
: Defines that packet that represents data travelling between nodesneuropype.engine.block
: A multi-dim array/tensor with robust axis annotations (Block
)neuropype.engine.axes
: Various types of commonly used axis classes for use in the Blockneuropype.engine.stats
: Definitions used in axes that involve statisticsneuropype.engine.constants
: Constants used to tag/flag/describe data used in packets
Furthermore, the following additional modules are defined:
neuropype.engine.errors
: Definitions of errors and warnings used throughout NeuroPypeneuropype.engine.helpers
: Helpers for code using the NeuroPype Engine data structuresneuropype.engine.breakpoints
: Functions where one can set breakpoints in debug modeneuropype.engine.common
: Miscellaneous low-level primitives commonly used across NeuroPype
Lastly, the main loop is implemented in the following module:
neuropype.engine.main
: Definition of the Core Processing Engine (CPE) class
It is enough to import the engine packet to get access to all engine functionality (except for breakpoints which must be imported explicitly).
Many other utility functions are defined in various modules in neuropype.utilities
Sub-modules
neuropype.engine.axes
-
Definitions of various kinds of commonly used axis classes …
neuropype.engine.block
-
Defines the
Block
data structure … neuropype.engine.breakpoints
-
Controls behavior of breakpoints and exceptions in Neuropype nodes in debug mode.
neuropype.engine.common
-
Miscellaneous low-level primitives that are commonly used across the CPE.
neuropype.engine.constants
-
Constants that are used throughout the NeuroPype framework …
neuropype.engine.errors
-
Definitions of error codes and warnings used in NeuroPype …
neuropype.engine.graph
-
A data-flow graph of processing nodes in NeuroPype …
neuropype.engine.helpers
-
Useful helper functions for working with engine data structure …
neuropype.engine.main
-
Definition of Core Processing Engine (CPE) class.
neuropype.engine.node
-
Defines the base class for all processing nodes in NeuroPype …
neuropype.engine.packet
-
Defines a data structure that holds the packets of data transmitted between processing nodes (
Packet
) … neuropype.engine.ports
-
Functionality for declaring input/output data ports in NeuroPype …
neuropype.engine.scheduler
-
Scheduling subsystem for executing data-flow graphs (patches) in NeuroPype.
neuropype.engine.stats
-
Definitions for representing statistical distributions …