schrodinger.stepper.sideinputs module¶
Utility steps for creating side inputs in stepper workflows.
For example, in a workflow with steps A, B, C, and D, a ForkStep and JoinStep can be set up so that all outputs from A are passed along to D. This allows outputs from A to get to D even if B or C would normally filter those inputs.
Example:
class MyWorkflow(stepper.Chain):
def buildChain(self):
a = A()
self.addStep(a)
fork = ForkStep(step=a)
self.addStep(fork)
self.addStep(B())
self.addStep(C())
self.addStep(JoinStep(fork=fork))
self.addStep(D())
-
class
schrodinger.stepper.sideinputs.ForkStep(step)[source]¶ Bases:
schrodinger.tasks.stepper.UnbatchedReduceStep-
Input= None¶
-
Output= None¶
-
InputSerializer¶ alias of
schrodinger.tasks.stepper._DynamicSerializer
-
OutputSerializer¶ alias of
schrodinger.tasks.stepper._DynamicSerializer
-
Settings¶
-
blockSignals(self, bool) → bool¶
-
childEvent(self, QChildEvent)¶
-
children(self) → List[QObject]¶
-
cleanUp()¶ Hook for adding any type of work that needs to happen after all outputs are exhausted or if some outputs are created and the step is destroyed.
-
connectNotify(self, QMetaMethod)¶
-
customEvent(self, QEvent)¶
-
deleteLater(self)¶
-
destroyed¶ destroyed(self, object: QObject = None) [signal]
-
disconnect(self)¶
-
disconnectNotify(self, QMetaMethod)¶
-
dumpObjectInfo(self)¶
-
dumpObjectTree(self)¶
-
dynamicPropertyNames(self) → List[QByteArray]¶
-
event(self, QEvent) → bool¶
-
eventFilter(self, QObject, QEvent) → bool¶
-
findChild(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) → QObject¶ findChild(self, Tuple, name: str = ‘’, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> QObject
-
findChildren(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) → List[QObject]¶ findChildren(self, Tuple, name: str = ‘’, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, type, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, Tuple, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, type, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, Tuple, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject]
-
getLicenseRequirements()¶
-
getOutputSerializer()¶
-
getOutputs()¶ Gets all the outputs in a list by fully iterating the output generator.
-
getRunInfo()¶
-
getStepId()¶
-
inherits(self, str) → bool¶
-
inputs()¶
-
installEventFilter(self, QObject)¶
-
isBigQueryBatched()¶
-
isSignalConnected(self, QMetaMethod) → bool¶
-
isWidgetType(self) → bool¶
-
isWindowType(self) → bool¶
-
killTimer(self, int)¶
-
metaObject(self) → QMetaObject¶
-
moveToThread(self, QThread)¶
-
objectName(self) → str¶
-
objectNameChanged¶ objectNameChanged(self, str) [signal]
-
outputs(*args, **kwargs)¶
-
parent(self) → QObject¶
-
prettyPrintRunInfo()¶ Format and print info about the step’s run.
-
progressUpdated¶
-
property(self, str) → Any¶
-
pyqtConfigure(...)¶ Each keyword argument is either the name of a Qt property or a Qt signal. For properties the property is set to the given value which should be of an appropriate type. For signals the signal is connected to the given value which should be a callable.
-
receivers(self, PYQT_SIGNAL) → int¶
-
removeEventFilter(self, QObject)¶
-
sender(self) → QObject¶
-
senderSignalIndex(self) → int¶
-
setInputBQTable(bq_table, bq_dataset=None)¶
-
setInputFile(fname)¶
-
setInputs(*args, **kwargs)¶
-
setObjectName(self, str)¶
-
setOutputBQTable(bq_table)¶
-
setParent(self, QObject)¶
-
setProperty(self, str, Any) → bool¶
-
setSettings(*args, **kwargs)¶
-
setUp()¶ Hook for adding any type of work that needs to happen before any outputs are created.
-
signalsBlocked(self) → bool¶
-
startTimer(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) → int¶
-
staticMetaObject= <PyQt5.QtCore.QMetaObject object>¶
-
thread(self) → QThread¶
-
timerEvent(self, QTimerEvent)¶
-
tr(self, str, disambiguation: str = None, n: int = - 1) → str¶
-
validateSettings()¶ Check whether the step settings are valid and return a list of
SettingsErrorandSettingsWarningto report any invalid settings. Default implementation checks that all stepper files are set to valid file paths.- Return type
list[TaskError or TaskWarning]
-
writeOutputsToFile(fname)¶ Write outputs to
fname. By default, the output file will consist of one line for each output with whatever is produced when passing the out- put tostr. Override this method if more complex behavior is needed.
-
writeOutputsToTable()¶
-
-
class
schrodinger.stepper.sideinputs.JoinStep(fork)[source]¶ Bases:
schrodinger.tasks.stepper.UnbatchedReduceStep-
property
Input¶
-
property
Output¶
-
InputSerializer¶ alias of
schrodinger.tasks.stepper._DynamicSerializer
-
OutputSerializer¶ alias of
schrodinger.tasks.stepper._DynamicSerializer
-
Settings¶
-
blockSignals(self, bool) → bool¶
-
childEvent(self, QChildEvent)¶
-
children(self) → List[QObject]¶
-
cleanUp()¶ Hook for adding any type of work that needs to happen after all outputs are exhausted or if some outputs are created and the step is destroyed.
-
connectNotify(self, QMetaMethod)¶
-
customEvent(self, QEvent)¶
-
deleteLater(self)¶
-
destroyed¶ destroyed(self, object: QObject = None) [signal]
-
disconnect(self)¶
-
disconnectNotify(self, QMetaMethod)¶
-
dumpObjectInfo(self)¶
-
dumpObjectTree(self)¶
-
dynamicPropertyNames(self) → List[QByteArray]¶
-
event(self, QEvent) → bool¶
-
eventFilter(self, QObject, QEvent) → bool¶
-
findChild(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) → QObject¶ findChild(self, Tuple, name: str = ‘’, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> QObject
-
findChildren(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) → List[QObject]¶ findChildren(self, Tuple, name: str = ‘’, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, type, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, Tuple, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, type, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, Tuple, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject]
-
getLicenseRequirements()¶
-
getOutputSerializer()¶
-
getOutputs()¶ Gets all the outputs in a list by fully iterating the output generator.
-
getRunInfo()¶
-
getStepId()¶
-
inherits(self, str) → bool¶
-
inputs()¶
-
installEventFilter(self, QObject)¶
-
isBigQueryBatched()¶
-
isSignalConnected(self, QMetaMethod) → bool¶
-
isWidgetType(self) → bool¶
-
isWindowType(self) → bool¶
-
killTimer(self, int)¶
-
metaObject(self) → QMetaObject¶
-
moveToThread(self, QThread)¶
-
objectName(self) → str¶
-
objectNameChanged¶ objectNameChanged(self, str) [signal]
-
outputs(*args, **kwargs)¶
-
parent(self) → QObject¶
-
prettyPrintRunInfo()¶ Format and print info about the step’s run.
-
progressUpdated¶
-
property(self, str) → Any¶
-
pyqtConfigure(...)¶ Each keyword argument is either the name of a Qt property or a Qt signal. For properties the property is set to the given value which should be of an appropriate type. For signals the signal is connected to the given value which should be a callable.
-
receivers(self, PYQT_SIGNAL) → int¶
-
removeEventFilter(self, QObject)¶
-
sender(self) → QObject¶
-
senderSignalIndex(self) → int¶
-
setInputBQTable(bq_table, bq_dataset=None)¶
-
setInputFile(fname)¶
-
setInputs(*args, **kwargs)¶
-
setObjectName(self, str)¶
-
setOutputBQTable(bq_table)¶
-
setParent(self, QObject)¶
-
setProperty(self, str, Any) → bool¶
-
setSettings(*args, **kwargs)¶
-
setUp()¶ Hook for adding any type of work that needs to happen before any outputs are created.
-
signalsBlocked(self) → bool¶
-
startTimer(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) → int¶
-
staticMetaObject= <PyQt5.QtCore.QMetaObject object>¶
-
thread(self) → QThread¶
-
timerEvent(self, QTimerEvent)¶
-
tr(self, str, disambiguation: str = None, n: int = - 1) → str¶
-
validateSettings()¶ Check whether the step settings are valid and return a list of
SettingsErrorandSettingsWarningto report any invalid settings. Default implementation checks that all stepper files are set to valid file paths.- Return type
list[TaskError or TaskWarning]
-
writeOutputsToFile(fname)¶ Write outputs to
fname. By default, the output file will consist of one line for each output with whatever is produced when passing the out- put tostr. Override this method if more complex behavior is needed.
-
writeOutputsToTable()¶
-
property