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)¶
- Bases: - schrodinger.stepper.stepper.UnbatchedReduceStep- A step to save some inputs to be reprocessed again. See the module docstring for more info and an example. - __init__(step)¶
- See class docstring for info on the different constructor arguments. 
 - Input = None¶
 - Output = None¶
 - InputSerializer¶
- alias of - schrodinger.stepper.stepper._DynamicSerializer
 - OutputSerializer¶
- alias of - schrodinger.stepper.stepper._DynamicSerializer
 - reduceFunction(inps)¶
 - getPipeFilename()¶
 - report(prefix='')¶
- Report the settings and batch settings for this step. 
 - Settings¶
 - blockSignals(self, b: bool) bool¶
 - childEvent(self, a0: 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, signal: QMetaMethod)¶
 - customEvent(self, a0: QEvent)¶
 - deleteLater(self)¶
 - destroyed¶
- destroyed(self, object: typing.Optional[QObject] = None) [signal] 
 - disconnect(a0: QMetaObject.Connection) bool¶
- disconnect(self) None
 - disconnectNotify(self, signal: QMetaMethod)¶
 - dumpObjectInfo(self)¶
 - dumpObjectTree(self)¶
 - dynamicPropertyNames(self) List[QByteArray]¶
 - event(self, a0: QEvent) bool¶
 - eventFilter(self, a0: QObject, a1: QEvent) bool¶
 - findChild(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject¶
- findChild(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
 - findChildren(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]¶
- findChildren(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, type: type, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, types: Tuple, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
 - getLicenseRequirements()¶
 - getMetricsLoggerDepth() Optional[int]¶
 - getOutputSerializer()¶
 - getOutputs()¶
- Gets all the outputs in a list by fully iterating the output generator. 
 - getResources(param_type, resource_type)¶
- Get the stepper resources in the settings that are instances of - param_typeand have a resource_type attribute that is- resource_type.- Note does not work for list/set/tuple subparams in the settings. - Parameters
- param_type (tasks._TaskResource) – the resource parameter type 
- resource_type (ResourceType) – the type of resource to get 
 
- Returns
- the set of stepper resources of - resource_type
- Return type
- set of tasks._TaskResource 
 
 - getRunInfo()¶
 - getStepDepth() int¶
- Get the depth of a step which is defined as how nested it is. A step run in isolation (i.e. not within a chain) has a depth level of 0. 
 - getStepId()¶
 - inherits(self, classname: str) bool¶
 - inputs()¶
 - installEventFilter(self, a0: QObject)¶
 - isSignalConnected(self, signal: QMetaMethod) bool¶
 - isWidgetType(self) bool¶
 - isWindowType(self) bool¶
 - killTimer(self, id: int)¶
 - metaObject(self) QMetaObject¶
 - moveToThread(self, thread: QThread)¶
 - objectName(self) str¶
 - objectNameChanged¶
- objectNameChanged(self, objectName: str) [signal] 
 - outputs(*args, **kwargs)¶
 - parent(self) QObject¶
 - prettyPrintRunInfo()¶
- Format and print info about the step’s run. 
 - property(self, name: 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, signal: PYQT_SIGNAL) int¶
 - removeEventFilter(self, a0: QObject)¶
 - sender(self) QObject¶
 - senderSignalIndex(self) int¶
 - setInputFile(fname)¶
 - setInputs(*args, **kwargs)¶
 - setObjectName(self, name: str)¶
 - setParent(self, a0: QObject)¶
 - setProperty(self, name: str, value: 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, interval: int, timerType: Qt.TimerType = Qt.CoarseTimer) int¶
 - staticMetaObject = <PyQt6.QtCore.QMetaObject object>¶
 - thread(self) QThread¶
 - timerEvent(self, a0: QTimerEvent)¶
 - tr(sourceText: str, disambiguation: typing.Optional[str] = None, n: int = - 1) str¶
 - validateSettings()¶
- Check whether the step settings are valid and return a list of - SettingsErrorand- SettingsWarningto 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 to- str. Override this method if more complex behavior is needed.
 
- class schrodinger.stepper.sideinputs.JoinStep(*args, **kwargs)¶
- Bases: - schrodinger.stepper.stepper.PubsubEnabledStepMixin,- schrodinger.stepper.sideinputs.JoinStep- __init__(*args, **kwargs)¶
- See class docstring for info on the different constructor arguments. 
 - InputSerializer¶
- alias of - schrodinger.stepper.stepper._DynamicSerializer
 - OutputSerializer¶
- alias of - schrodinger.stepper.stepper._DynamicSerializer
 - property Input¶
 - property Output¶
 - reduceFunction(inps)¶
 - report(prefix='')¶
- Report the settings and batch settings for this step. 
 - outputs()¶
 - usingPubsub()¶
 - Settings¶
 - blockSignals(self, b: bool) bool¶
 - childEvent(self, a0: 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, signal: QMetaMethod)¶
 - customEvent(self, a0: QEvent)¶
 - deleteLater(self)¶
 - destroyed¶
- destroyed(self, object: typing.Optional[QObject] = None) [signal] 
 - disconnect(a0: QMetaObject.Connection) bool¶
- disconnect(self) None
 - disconnectNotify(self, signal: QMetaMethod)¶
 - dumpObjectInfo(self)¶
 - dumpObjectTree(self)¶
 - dynamicPropertyNames(self) List[QByteArray]¶
 - event(self, a0: QEvent) bool¶
 - eventFilter(self, a0: QObject, a1: QEvent) bool¶
 - findChild(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject¶
- findChild(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
 - findChildren(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]¶
- findChildren(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, type: type, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, types: Tuple, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
 - getInputTopic() Optional[schrodinger.stepper.stepper.Topic]¶
 - getLicenseRequirements()¶
 - getMetricsLoggerDepth() Optional[int]¶
 - getOutputSerializer()¶
 - getOutputTopic() Optional[schrodinger.stepper.stepper.Topic]¶
 - getOutputs()¶
- Gets all the outputs in a list by fully iterating the output generator. 
 - getResources(param_type, resource_type)¶
- Get the stepper resources in the settings that are instances of - param_typeand have a resource_type attribute that is- resource_type.- Note does not work for list/set/tuple subparams in the settings. - Parameters
- param_type (tasks._TaskResource) – the resource parameter type 
- resource_type (ResourceType) – the type of resource to get 
 
- Returns
- the set of stepper resources of - resource_type
- Return type
- set of tasks._TaskResource 
 
 - getRunInfo()¶
 - getStepDepth() int¶
- Get the depth of a step which is defined as how nested it is. A step run in isolation (i.e. not within a chain) has a depth level of 0. 
 - getStepId()¶
 - inherits(self, classname: str) bool¶
 - initializeTopics()¶
 - inputs()¶
 - installEventFilter(self, a0: QObject)¶
 - isSignalConnected(self, signal: QMetaMethod) bool¶
 - isWidgetType(self) bool¶
 - isWindowType(self) bool¶
 - killTimer(self, id: int)¶
 - metaObject(self) QMetaObject¶
 - moveToThread(self, thread: QThread)¶
 - objectName(self) str¶
 - objectNameChanged¶
- objectNameChanged(self, objectName: str) [signal] 
 - parent(self) QObject¶
 - prettyPrintRunInfo()¶
- Format and print info about the step’s run. 
 - property(self, name: 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, signal: PYQT_SIGNAL) int¶
 - removeEventFilter(self, a0: QObject)¶
 - sender(self) QObject¶
 - senderSignalIndex(self) int¶
 - setInputFile(fname)¶
 - setInputTopic(inp_topic: Optional[schrodinger.stepper.stepper.Topic])¶
 - setInputs(*args, **kwargs)¶
 - setObjectName(self, name: str)¶
 - setOutputTopic(outp_topic: Optional[schrodinger.stepper.stepper.Topic])¶
 - setParent(self, a0: QObject)¶
 - setProperty(self, name: str, value: 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, interval: int, timerType: Qt.TimerType = Qt.CoarseTimer) int¶
 - staticMetaObject = <PyQt6.QtCore.QMetaObject object>¶
 - thread(self) QThread¶
 - timerEvent(self, a0: QTimerEvent)¶
 - property topic_prefix¶
 - property topic_suffix¶
 - tr(sourceText: str, disambiguation: typing.Optional[str] = None, n: int = - 1) str¶
 - validateSettings()¶
- Check whether the step settings are valid and return a list of - SettingsErrorand- SettingsWarningto 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 to- str. Override this method if more complex behavior is needed.
 
- class schrodinger.stepper.sideinputs.JoinFromFileStep(*args, **kwargs)¶
- Bases: - schrodinger.stepper.stepper.PubsubEnabledStepMixin,- schrodinger.stepper.sideinputs.JoinFromFileStep- class Settings(*args, _param_type=<object object>, **kwargs)¶
- Bases: - schrodinger.models.parameters.CompoundParam- join_file: schrodinger.stepper.stepper.StepperFile¶
- Base class for all Param classes. A Param is a descriptor for storing data, which means that a single Param instance will manage the data values for multiple instances of the class that owns it. Example: - class Coord(CompoundParam): x: int y: int - An instance of the Coord class can be created normally, and Params can be accessed as normal attributes: - coord = Coord() coord.x = 4 - When a Param value is set, the - valueChangedsignal is emitted. Params can be serialized and deserialized to and from JSON. Params can also be nested:- class Atom(CompoundParam): coord: Coord element: str 
 - DataClass¶
- This class can be used to declare a public attribute on a - CompoundParam. Declared public attributes can be used without error.- Example usage: - class Coord(CompoundParam): x: int y: int note = NonParamAttribute() coord = Coord() coord.note = "hello" # No error 
 - __init__(default_value=<object object>, _param_type=<object object>, **kwargs)¶
 - classmethod addSubParam(name, param, update_owner=True)¶
 - blockSignals(self, b: bool) bool¶
 - block_signal_propagation()¶
 - childEvent(self, a0: QChildEvent)¶
 - children(self) List[QObject]¶
 - classmethod configureParam()¶
- Override this class method to set up the abstract param class (e.g. setParamReference on child params.) 
 - connectNotify(self, signal: QMetaMethod)¶
 - customEvent(self, a0: QEvent)¶
 - classmethod defaultValue()¶
- Returns the default value for this abstract param: - default_atom = Atom.defaultValue() assert Atom.coord.x == 0 
 - deleteLater(self)¶
 - destroyed¶
- destroyed(self, object: typing.Optional[QObject] = None) [signal] 
 - disconnect(a0: QMetaObject.Connection) bool¶
- disconnect(self) None
 - disconnectNotify(self, signal: QMetaMethod)¶
 - dumpObjectInfo(self)¶
 - dumpObjectTree(self)¶
 - dynamicPropertyNames(self) List[QByteArray]¶
 - event(self, a0: QEvent) bool¶
 - eventFilter(self, a0: QObject, a1: QEvent) bool¶
 - findChild(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject¶
- findChild(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
 - findChildren(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]¶
- findChildren(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, type: type, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, types: Tuple, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
 - classmethod fromJson(json_obj)¶
- A factory method which constructs a new object from a given dict loaded from a json string or file. - Parameters
- json_obj (dict) – A json-loaded dictionary to create an object from. 
- Returns
- An instance of this class. 
- Return type
- cls 
 
 - classmethod fromJsonImplementation(json_dict)¶
- Sets the value of this compound param value object from a JSON dict. - Warning - This should never be called directly. 
 - getAbstractParam()¶
- Return the corresponding abstract param for this instance. 
 - classmethod getJsonBlacklist()¶
- Override to customize what params are serialized. - Implementations should return a list of abstract params that should be omitted from serialization. - ..NOTE
- Returned abstract params must be direct child params of - cls, e.g.- cls.name, not- cls.coord.x.
 
 - classmethod getParamSignal(obj, signal_type='Changed')¶
 - classmethod getParamValue(obj)¶
- Enables access to a param value on a compound param via an abstract param reference: - a = Atom() assert Atom.coord.x.getParamValue(a) == 0 # ints default to 0 a.coord.x = 3 assert Atom.coord.x.getParamValue(a) == 3 - Parameters
- param (CompoundParam) – The owner param to get a param value from 
 
 - classmethod getSubParam(name)¶
- Get the value of a subparam using the string name: - c = Coord() assert c.getSubParam('x') == 0 - Note - Using the string name to access params is generally discouraged, but can be useful for serializing/deserializing param data. - Parameters
- name (str) – The name of the subparam to get the value for. 
 
 - classmethod getSubParams()¶
- Return a dictionary mapping subparam names to their values. 
 - getTypeHint()¶
 - get_version()¶
- Method to get the version of a particular object. Defaults to the current version of mmshare. This class can be overridden for custom versioning behavior. 
 - inherits(self, classname: str) bool¶
 - initAbstract()¶
 - initConcrete()¶
- Override to customize initialization of concrete params. 
 - initializeValue()¶
- Override to dynamically set up the default value of the param. Useful for default values that are determined at runtime. This is called any time the param is reset. 
 - installEventFilter(self, a0: QObject)¶
 - classmethod isAbstract()¶
- Whether the param is an “abstract” param. 
 - isDefault()¶
- Whether the current value of this instance matches the default value. 
 - isSignalConnected(self, signal: QMetaMethod) bool¶
 - isWidgetType(self) bool¶
 - isWindowType(self) bool¶
 - join_fileChanged¶
 - join_fileReplaced¶
 - killTimer(self, id: int)¶
 - metaObject(self) QMetaObject¶
 - moveToThread(self, thread: QThread)¶
 - objectName(self) str¶
 - objectNameChanged¶
- objectNameChanged(self, objectName: str) [signal] 
 - classmethod owner()¶
- Get the owner of the param: - # Can be called on an abstract param: assert Coord.x.owner() == Coord # ...or on an instance of a CompoundParam a = Atom() assert a.coord.owner() == a 
 - classmethod ownerChain()¶
- Returns a list of param owners starting from the toplevel param and ending with self. Examples: - foo.bar.atom.coord.ownerChain()will return- [foo, bar, atom, coord]where every item is a concrete param.- Foo.bar.atom.coord.x.ownerChain()will return- [Foo, Foo.bar, Foo.atom.coord, Foo.atom.coord.x]where every item is an abstract params.
 - classmethod paramName()¶
- Get the name of the param: - # Can be called on an abstract param: print(Coord.x.paramName()) # 'x' # ...or on an instance of a CompoundParam a = Atom() a.coord.paramName() # 'coord' 
 - parent(self) QObject¶
 - property(self, name: 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, signal: PYQT_SIGNAL) int¶
 - removeEventFilter(self, a0: QObject)¶
 - reset(*abstract_params)¶
- Resets this compound param to its default value: - class Line(CompoundParam): start = Coord(x=1, y=2) end = Coord(x=4, y=5) line = Line() line.start.x = line.end.x = 10 assert line.start.x == line.end.x == 10 line.reset() assert line.start.x == 1 assert line.end.x == 4 - Any number of abstract params may be passed in to perform a partial reset of only the specified params: - line.start.x = line.end.x = 10 line.reset(Line.start.x) # resets just start.x assert line.start.x == 1 assert line.end.x == 10 line.reset(Line.end) # resets the entire end point assert line.end.x == 4 line.start.y = line.end.y = 10 line.reset(Line.start.y, Line.end.y) # resets the y-coord of both assert line.start.y == 2 assert line.end.y == 5 
 - sender(self) QObject¶
 - senderSignalIndex(self) int¶
 - setObjectName(self, name: str)¶
 - classmethod setParamValue(obj, value)¶
- Set the value of a param on an object by specifying the instance and the value: - # Setting the param value of a basic param a = Atom() Atom.coord.x.setParamValue(a, 5) assert a.coord.x == 5 # setParamValue can also be used to set the value of CompoundParams c = Coord() c.x = 10 atom.coord.setParamValue(a, c) assert atom.coord.x == 10 - Parameters
- param – The owner param to set a subparam value of. 
- value – The value to set the subparam value to. 
 
 
 - setParent(self, a0: QObject)¶
 - setProperty(self, name: str, value: Any) bool¶
 - classmethod setReference(param1, param2)¶
- Call this class method from configureParam to indicate that two params should be kept in sync. The initial values will start with the default value of - param1. Example:- class Square(CompoundParam): width: float = 5 height: float = 10 @classmethod def configureParam(cls): super().configureParam() cls.setReference(cls.width, cls.height) square = Square() assert square.width == square.height == 5 # Default value of width # takes priority square.height = 7 assert square.width == square.height == 7 square.width = 6 assert square.width == square.height == 6 - Parameters
- param1 – The first abstract param to keep synced 
- param2 – The second abstract param. After instantiation, this param will take on the value of param1. 
 
 
 - setValue(value=None, **kwargs)¶
- Set the value of this - CompoundParamto match- value.- Parameters
- value – The value to set this - CompoundParamto. It should be the same type as this- CompoundParam.
- kwargs – For internal use only. 
 
 
 - signalsBlocked(self) bool¶
 - skip_eq_check()¶
 - startTimer(self, interval: int, timerType: Qt.TimerType = Qt.CoarseTimer) int¶
 - staticMetaObject = <PyQt6.QtCore.QMetaObject object>¶
 - thread(self) QThread¶
 - timerEvent(self, a0: QTimerEvent)¶
 - toDict()¶
- Return a dictionary version of this - CompoundParam. The returned dictionary is fully nested and contains no- CompoundParaminstances- a = Atom() a_dict = a.toDict() assert a_dict['coord']['x'] == 0 assert a_dict['coord'] == {'x':0, 'y':0} 
 - toJson(_mark_version=True)¶
- Create and returns a data structure made up of jsonable items. - Return type
- An instance of one the classes from NATIVE_JSON_DATATYPES 
 
 - toJsonImplementation()¶
- Returns a JSON representation of this value object. - Warning - This should never be called directly. 
 - tr(sourceText: str, disambiguation: typing.Optional[str] = None, n: int = - 1) str¶
 - valueChanged¶
 
 - __init__(*args, **kwargs)¶
- See class docstring for info on the different constructor arguments. 
 - InputSerializer¶
- alias of - schrodinger.stepper.stepper._DynamicSerializer
 - OutputSerializer¶
- alias of - schrodinger.stepper.stepper._DynamicSerializer
 - Input = None¶
 - Output = None¶
 - reduceFunction(inps)¶
 - blockSignals(self, b: bool) bool¶
 - childEvent(self, a0: 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, signal: QMetaMethod)¶
 - customEvent(self, a0: QEvent)¶
 - deleteLater(self)¶
 - destroyed¶
- destroyed(self, object: typing.Optional[QObject] = None) [signal] 
 - disconnect(a0: QMetaObject.Connection) bool¶
- disconnect(self) None
 - disconnectNotify(self, signal: QMetaMethod)¶
 - dumpObjectInfo(self)¶
 - dumpObjectTree(self)¶
 - dynamicPropertyNames(self) List[QByteArray]¶
 - event(self, a0: QEvent) bool¶
 - eventFilter(self, a0: QObject, a1: QEvent) bool¶
 - findChild(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject¶
- findChild(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
 - findChildren(self, type: type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]¶
- findChildren(self, types: Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, type: type, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
- findChildren(self, types: Tuple, re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
 - getInputTopic() Optional[schrodinger.stepper.stepper.Topic]¶
 - getLicenseRequirements()¶
 - getMetricsLoggerDepth() Optional[int]¶
 - getOutputSerializer()¶
 - getOutputTopic() Optional[schrodinger.stepper.stepper.Topic]¶
 - getOutputs()¶
- Gets all the outputs in a list by fully iterating the output generator. 
 - getResources(param_type, resource_type)¶
- Get the stepper resources in the settings that are instances of - param_typeand have a resource_type attribute that is- resource_type.- Note does not work for list/set/tuple subparams in the settings. - Parameters
- param_type (tasks._TaskResource) – the resource parameter type 
- resource_type (ResourceType) – the type of resource to get 
 
- Returns
- the set of stepper resources of - resource_type
- Return type
- set of tasks._TaskResource 
 
 - getRunInfo()¶
 - getStepDepth() int¶
- Get the depth of a step which is defined as how nested it is. A step run in isolation (i.e. not within a chain) has a depth level of 0. 
 - getStepId()¶
 - inherits(self, classname: str) bool¶
 - initializeTopics()¶
 - inputs()¶
 - installEventFilter(self, a0: QObject)¶
 - isSignalConnected(self, signal: QMetaMethod) bool¶
 - isWidgetType(self) bool¶
 - isWindowType(self) bool¶
 - killTimer(self, id: int)¶
 - metaObject(self) QMetaObject¶
 - moveToThread(self, thread: QThread)¶
 - objectName(self) str¶
 - objectNameChanged¶
- objectNameChanged(self, objectName: str) [signal] 
 - outputs()¶
 - parent(self) QObject¶
 - prettyPrintRunInfo()¶
- Format and print info about the step’s run. 
 - property(self, name: 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, signal: PYQT_SIGNAL) int¶
 - removeEventFilter(self, a0: QObject)¶
 - report(prefix='')¶
- Report the settings and batch settings for this step. 
 - sender(self) QObject¶
 - senderSignalIndex(self) int¶
 - setInputFile(fname)¶
 - setInputTopic(inp_topic: Optional[schrodinger.stepper.stepper.Topic])¶
 - setInputs(*args, **kwargs)¶
 - setObjectName(self, name: str)¶
 - setOutputTopic(outp_topic: Optional[schrodinger.stepper.stepper.Topic])¶
 - setParent(self, a0: QObject)¶
 - setProperty(self, name: str, value: 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, interval: int, timerType: Qt.TimerType = Qt.CoarseTimer) int¶
 - staticMetaObject = <PyQt6.QtCore.QMetaObject object>¶
 - thread(self) QThread¶
 - timerEvent(self, a0: QTimerEvent)¶
 - property topic_prefix¶
 - property topic_suffix¶
 - tr(sourceText: str, disambiguation: typing.Optional[str] = None, n: int = - 1) str¶
 - validateSettings()¶
- Check whether the step settings are valid and return a list of - SettingsErrorand- SettingsWarningto 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 to- str. Override this method if more complex behavior is needed.
 - usingPubsub()¶