schrodinger.application.steps.basesteps module

class schrodinger.application.steps.basesteps.LoggerMixin(*args, **kwargs)

Bases: object

A mixin for stepper._BaseStep to allow debugging information about every input and output that is processed

__init__(*args, **kwargs)
reduceFunction(inputs)
class schrodinger.application.steps.basesteps.MolReduceStep(*args, **kwargs)

Bases: schrodinger.application.steps.dataclasses.MolMolMixin, schrodinger.stepper.stepper.ReduceStep

Input

alias of rdkit.Chem.rdchem.Mol

InputSerializer

alias of schrodinger.application.steps.dataclasses.MolToSmilesSerializer

Output

alias of rdkit.Chem.rdchem.Mol

OutputSerializer

alias of schrodinger.application.steps.dataclasses.MolToSmilesSerializer

Settings

alias of schrodinger.models.parameters.CompoundParam

__init__(*args, **kwargs)
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_type and 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(*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
reduceFunction(inputs)

The main computation for this step. This function should take in a iterable of inputs and return an iterable of outputs.

Example:

def reduceFunction(self, words):
    # Find all unique words
    seen_words = set()
    for word in words:
        if word not in seen_words:
            seen_words.add(word)
            yield word
removeEventFilter(self, a0: QObject)
report(prefix='')

Report the settings and batch settings for this step.

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
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
usingPubsub()
validateSettings()

Check whether the step settings are valid and return a list of SettingsError and SettingsWarning to 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.application.steps.basesteps.MolMapStep(*args, **kwargs)

Bases: schrodinger.application.steps.basesteps.LoggerMixin, schrodinger.application.steps.basesteps.MolReduceStep

Input

alias of rdkit.Chem.rdchem.Mol

InputSerializer

alias of schrodinger.application.steps.dataclasses.MolToSmilesSerializer

Output

alias of rdkit.Chem.rdchem.Mol

OutputSerializer

alias of schrodinger.application.steps.dataclasses.MolToSmilesSerializer

Settings

alias of schrodinger.models.parameters.CompoundParam

__init__(*args, **kwargs)
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_type and 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(*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
reduceFunction(inputs)

The main computation for this step. This function should take in a iterable of inputs and return an iterable of outputs.

Example:

def reduceFunction(self, words):
    # Find all unique words
    seen_words = set()
    for word in words:
        if word not in seen_words:
            seen_words.add(word)
            yield word
removeEventFilter(self, a0: QObject)
report(prefix='')

Report the settings and batch settings for this step.

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
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
usingPubsub()
validateSettings()

Check whether the step settings are valid and return a list of SettingsError and SettingsWarning to 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.application.steps.basesteps.MaeReduceStep(*args, **kwargs)

Bases: schrodinger.application.steps.dataclasses.MaeMaeMixin, schrodinger.stepper.stepper.ReduceStep

Input

alias of schrodinger.structure._structure.Structure

InputSerializer

alias of schrodinger.stepper.stepper._DynamicSerializer

Output

alias of schrodinger.structure._structure.Structure

OutputSerializer

alias of schrodinger.stepper.stepper._DynamicSerializer

Settings

alias of schrodinger.models.parameters.CompoundParam

__init__(*args, **kwargs)
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_type and 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(*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
reduceFunction(inputs)

The main computation for this step. This function should take in a iterable of inputs and return an iterable of outputs.

Example:

def reduceFunction(self, words):
    # Find all unique words
    seen_words = set()
    for word in words:
        if word not in seen_words:
            seen_words.add(word)
            yield word
removeEventFilter(self, a0: QObject)
report(prefix='')

Report the settings and batch settings for this step.

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
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
usingPubsub()
validateSettings()

Check whether the step settings are valid and return a list of SettingsError and SettingsWarning to 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.application.steps.basesteps.MaeMapStep(*args, **kwargs)

Bases: schrodinger.application.steps.basesteps.LoggerMixin, schrodinger.application.steps.basesteps.MaeReduceStep

Input

alias of schrodinger.structure._structure.Structure

InputSerializer

alias of schrodinger.stepper.stepper._DynamicSerializer

Output

alias of schrodinger.structure._structure.Structure

OutputSerializer

alias of schrodinger.stepper.stepper._DynamicSerializer

Settings

alias of schrodinger.models.parameters.CompoundParam

__init__(*args, **kwargs)
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_type and 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(*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
reduceFunction(inputs)

The main computation for this step. This function should take in a iterable of inputs and return an iterable of outputs.

Example:

def reduceFunction(self, words):
    # Find all unique words
    seen_words = set()
    for word in words:
        if word not in seen_words:
            seen_words.add(word)
            yield word
removeEventFilter(self, a0: QObject)
report(prefix='')

Report the settings and batch settings for this step.

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
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
usingPubsub()
validateSettings()

Check whether the step settings are valid and return a list of SettingsError and SettingsWarning to 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.application.steps.basesteps.OptionalStepsMixin

Bases: object

A mixin that provides optional steps for a Workflow class.

Whether the step is optional is determined by the OPTIONAL_SETTINGS_MAP, a dictionary with step classes as the key and the bool settings attributes as the value.

E.g.:

class ExampleOptionalStepChain(OptionalStepMixin, MolMolWorkflow):
    STEPS = (filters.UniqueSmilesFilter, filters.SmartsFilter,
             filters.PropertyFilter)

    OPTIONAL_SETTINGS_MAP = {filters.SmartsFilter: 'smarts_filter'}

    class Settings(parameters.CompoundParam):
        smarts_filter: bool = False
OPTIONAL_SETTINGS_MAP = {}
buildChain()
class schrodinger.application.steps.basesteps.Workflow(*args, **kwargs)

Bases: schrodinger.stepper.stepper.Chain

A chain of steps.

To define which steps should be present, populate the STEPS variable.

STEPS = ()
buildChain()

This method must be implemented by subclasses to build the chain. The chain is built by modifying self.steps. The chain’s composition may be dependent on self.settings.

property Input
property InputSerializer

The default serializer that simply uses json.loads and json.dumps

property Output
property OutputSerializer

The default serializer that simply uses json.loads and json.dumps

Settings

alias of schrodinger.models.parameters.CompoundParam

__init__(*args, **kwargs)

See class docstring for info on the different constructor arguments.

__len__()
addStep(step)
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 for the chain as well as for every step in the chain that are instances of param_type and 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(*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
reduceFunction(inputs)
removeEventFilter(self, a0: QObject)
report(prefix='')

Report the workflow steps and their settings (recursively).

Parameters

prefix (str) – the text to start each line with

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
setInputFile(input_file: str, starting_step_id: Optional[str] = None)

Set the input file for the chain. If starting_step_id is specified, then all steps before the specified starting step will be skipped. This is useful for resuming a chain’s computation.

setInputTopic(inp_topic: Optional[schrodinger.stepper.stepper.Topic])
setInputs(inputs: Iterable[Any], starting_step_id: Optional[str] = None)

Set the inputs for the chain. If starting_step_id is specified, then all steps before the specified starting step will be skipped. This is useful for resuming a chain’s computation.

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)
setStartingStep(starting_step: str)
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
usingPubsub()
validateChain()

Checks that the declaration of the chain is internally consistent - i.e. that each step is valid and each step’s Input class matches the preceding step’s Output class.

validateSettings()

Check whether the chain settings are valid and return a list of SettingsError and SettingsWarning to report any invalid settings. Default implementation simply returns problems from all child steps.

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.application.steps.basesteps.MolMolWorkflow(*args, **kwargs)

Bases: schrodinger.application.steps.dataclasses.MolMolMixin, schrodinger.application.steps.basesteps.Workflow

Input

alias of rdkit.Chem.rdchem.Mol

InputSerializer

alias of schrodinger.application.steps.dataclasses.MolToSmilesSerializer

Output

alias of rdkit.Chem.rdchem.Mol

OutputSerializer

alias of schrodinger.application.steps.dataclasses.MolToSmilesSerializer

STEPS = ()
Settings

alias of schrodinger.models.parameters.CompoundParam

__init__(*args, **kwargs)
__len__()
addStep(step)
blockSignals(self, b: bool) bool
buildChain()

This method must be implemented by subclasses to build the chain. The chain is built by modifying self.steps. The chain’s composition may be dependent on self.settings.

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 for the chain as well as for every step in the chain that are instances of param_type and 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(*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
reduceFunction(inputs)
removeEventFilter(self, a0: QObject)
report(prefix='')

Report the workflow steps and their settings (recursively).

Parameters

prefix (str) – the text to start each line with

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
setInputFile(input_file: str, starting_step_id: Optional[str] = None)

Set the input file for the chain. If starting_step_id is specified, then all steps before the specified starting step will be skipped. This is useful for resuming a chain’s computation.

setInputTopic(inp_topic: Optional[schrodinger.stepper.stepper.Topic])
setInputs(inputs: Iterable[Any], starting_step_id: Optional[str] = None)

Set the inputs for the chain. If starting_step_id is specified, then all steps before the specified starting step will be skipped. This is useful for resuming a chain’s computation.

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)
setStartingStep(starting_step: str)
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
usingPubsub()
validateChain()

Checks that the declaration of the chain is internally consistent - i.e. that each step is valid and each step’s Input class matches the preceding step’s Output class.

validateSettings()

Check whether the chain settings are valid and return a list of SettingsError and SettingsWarning to report any invalid settings. Default implementation simply returns problems from all child steps.

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.application.steps.basesteps.MolMaeWorkflow(*args, **kwargs)

Bases: schrodinger.application.steps.dataclasses.MolInMixin, schrodinger.application.steps.dataclasses.MaeOutMixin, schrodinger.application.steps.basesteps.Workflow

Input

alias of rdkit.Chem.rdchem.Mol

InputSerializer

alias of schrodinger.application.steps.dataclasses.MolToSmilesSerializer

Output

alias of schrodinger.structure._structure.Structure

property OutputSerializer

The default serializer that simply uses json.loads and json.dumps

STEPS = ()
Settings

alias of schrodinger.models.parameters.CompoundParam

__init__(*args, **kwargs)
__len__()
addStep(step)
blockSignals(self, b: bool) bool
buildChain()

This method must be implemented by subclasses to build the chain. The chain is built by modifying self.steps. The chain’s composition may be dependent on self.settings.

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 for the chain as well as for every step in the chain that are instances of param_type and 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(*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
reduceFunction(inputs)
removeEventFilter(self, a0: QObject)
report(prefix='')

Report the workflow steps and their settings (recursively).

Parameters

prefix (str) – the text to start each line with

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
setInputFile(input_file: str, starting_step_id: Optional[str] = None)

Set the input file for the chain. If starting_step_id is specified, then all steps before the specified starting step will be skipped. This is useful for resuming a chain’s computation.

setInputTopic(inp_topic: Optional[schrodinger.stepper.stepper.Topic])
setInputs(inputs: Iterable[Any], starting_step_id: Optional[str] = None)

Set the inputs for the chain. If starting_step_id is specified, then all steps before the specified starting step will be skipped. This is useful for resuming a chain’s computation.

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)
setStartingStep(starting_step: str)
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
usingPubsub()
validateChain()

Checks that the declaration of the chain is internally consistent - i.e. that each step is valid and each step’s Input class matches the preceding step’s Output class.

validateSettings()

Check whether the chain settings are valid and return a list of SettingsError and SettingsWarning to report any invalid settings. Default implementation simply returns problems from all child steps.

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.application.steps.basesteps.MaeMaeWorkflow(*args, **kwargs)

Bases: schrodinger.application.steps.dataclasses.MaeMaeMixin, schrodinger.application.steps.basesteps.Workflow

Input

alias of schrodinger.structure._structure.Structure

property InputSerializer

The default serializer that simply uses json.loads and json.dumps

Output

alias of schrodinger.structure._structure.Structure

property OutputSerializer

The default serializer that simply uses json.loads and json.dumps

STEPS = ()
Settings

alias of schrodinger.models.parameters.CompoundParam

__init__(*args, **kwargs)
__len__()
addStep(step)
blockSignals(self, b: bool) bool
buildChain()

This method must be implemented by subclasses to build the chain. The chain is built by modifying self.steps. The chain’s composition may be dependent on self.settings.

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 for the chain as well as for every step in the chain that are instances of param_type and 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(*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
reduceFunction(inputs)
removeEventFilter(self, a0: QObject)
report(prefix='')

Report the workflow steps and their settings (recursively).

Parameters

prefix (str) – the text to start each line with

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
setInputFile(input_file: str, starting_step_id: Optional[str] = None)

Set the input file for the chain. If starting_step_id is specified, then all steps before the specified starting step will be skipped. This is useful for resuming a chain’s computation.

setInputTopic(inp_topic: Optional[schrodinger.stepper.stepper.Topic])
setInputs(inputs: Iterable[Any], starting_step_id: Optional[str] = None)

Set the inputs for the chain. If starting_step_id is specified, then all steps before the specified starting step will be skipped. This is useful for resuming a chain’s computation.

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)
setStartingStep(starting_step: str)
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
usingPubsub()
validateChain()

Checks that the declaration of the chain is internally consistent - i.e. that each step is valid and each step’s Input class matches the preceding step’s Output class.

validateSettings()

Check whether the chain settings are valid and return a list of SettingsError and SettingsWarning to report any invalid settings. Default implementation simply returns problems from all child steps.

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.application.steps.basesteps.FileMolWorkflow(*args, **kwargs)

Bases: schrodinger.application.steps.dataclasses.FileInMixin, schrodinger.application.steps.dataclasses.MolOutMixin, schrodinger.application.steps.basesteps.Workflow

Input

alias of schrodinger.stepper.stepper.StepperFile

property InputSerializer

The default serializer that simply uses json.loads and json.dumps

Output

alias of rdkit.Chem.rdchem.Mol

OutputSerializer

alias of schrodinger.application.steps.dataclasses.MolToSmilesSerializer

STEPS = ()
Settings

alias of schrodinger.models.parameters.CompoundParam

__init__(*args, **kwargs)
__len__()
addStep(step)
blockSignals(self, b: bool) bool
buildChain()

This method must be implemented by subclasses to build the chain. The chain is built by modifying self.steps. The chain’s composition may be dependent on self.settings.

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 for the chain as well as for every step in the chain that are instances of param_type and 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(*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
reduceFunction(inputs)
removeEventFilter(self, a0: QObject)
report(prefix='')

Report the workflow steps and their settings (recursively).

Parameters

prefix (str) – the text to start each line with

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
setInputFile(input_file: str, starting_step_id: Optional[str] = None)

Set the input file for the chain. If starting_step_id is specified, then all steps before the specified starting step will be skipped. This is useful for resuming a chain’s computation.

setInputTopic(inp_topic: Optional[schrodinger.stepper.stepper.Topic])
setInputs(inputs: Iterable[Any], starting_step_id: Optional[str] = None)

Set the inputs for the chain. If starting_step_id is specified, then all steps before the specified starting step will be skipped. This is useful for resuming a chain’s computation.

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)
setStartingStep(starting_step: str)
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
usingPubsub()
validateChain()

Checks that the declaration of the chain is internally consistent - i.e. that each step is valid and each step’s Input class matches the preceding step’s Output class.

validateSettings()

Check whether the chain settings are valid and return a list of SettingsError and SettingsWarning to report any invalid settings. Default implementation simply returns problems from all child steps.

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.application.steps.basesteps.CloudFilterChain(*args, **kwargs)

Bases: schrodinger.stepper.stepper.Chain

Generic filter chain to use with cloud databases. Note that this class needs to be inherited with the following attributes or methods defined: 1. self.Settings 2. self.buildChain() 3. self._setUpTable() 4. self._validateTable()

setUp()

Hook for adding any type of work that needs to happen before any outputs are created.

validateSettings()

Check whether the chain settings are valid and return a list of SettingsError and SettingsWarning to report any invalid settings. Default implementation simply returns problems from all child steps.

Return type

list[TaskError or TaskWarning]

property Input
property InputSerializer

The default serializer that simply uses json.loads and json.dumps

property Output
property OutputSerializer

The default serializer that simply uses json.loads and json.dumps

Settings

alias of schrodinger.models.parameters.CompoundParam

__init__(*args, **kwargs)

See class docstring for info on the different constructor arguments.

__len__()
addStep(step)
blockSignals(self, b: bool) bool
buildChain()

This method must be implemented by subclasses to build the chain. The chain is built by modifying self.steps. The chain’s composition may be dependent on self.settings.

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 for the chain as well as for every step in the chain that are instances of param_type and 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(*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
reduceFunction(inputs)
removeEventFilter(self, a0: QObject)
report(prefix='')

Report the workflow steps and their settings (recursively).

Parameters

prefix (str) – the text to start each line with

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
setInputFile(input_file: str, starting_step_id: Optional[str] = None)

Set the input file for the chain. If starting_step_id is specified, then all steps before the specified starting step will be skipped. This is useful for resuming a chain’s computation.

setInputTopic(inp_topic: Optional[schrodinger.stepper.stepper.Topic])
setInputs(inputs: Iterable[Any], starting_step_id: Optional[str] = None)

Set the inputs for the chain. If starting_step_id is specified, then all steps before the specified starting step will be skipped. This is useful for resuming a chain’s computation.

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)
setStartingStep(starting_step: str)
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
usingPubsub()
validateChain()

Checks that the declaration of the chain is internally consistent - i.e. that each step is valid and each step’s Input class matches the preceding step’s Output class.

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.application.steps.basesteps.UploadStep(*args, batch_settings=<object object>, **kwargs)

Bases: schrodinger.application.steps.dataclasses.MolInMixin, schrodinger.stepper.stepper.ReduceStep

__init__(*args, batch_settings=<object object>, **kwargs)
Input

alias of rdkit.Chem.rdchem.Mol

InputSerializer

alias of schrodinger.application.steps.dataclasses.MolToSmilesSerializer

Output = None
OutputSerializer

alias of schrodinger.stepper.stepper._DynamicSerializer

Settings

alias of schrodinger.models.parameters.CompoundParam

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_type and 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(*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
reduceFunction(inputs)

The main computation for this step. This function should take in a iterable of inputs and return an iterable of outputs.

Example:

def reduceFunction(self, words):
    # Find all unique words
    seen_words = set()
    for word in words:
        if word not in seen_words:
            seen_words.add(word)
            yield word
removeEventFilter(self, a0: QObject)
report(prefix='')

Report the settings and batch settings for this step.

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
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
usingPubsub()
validateSettings()

Check whether the step settings are valid and return a list of SettingsError and SettingsWarning to 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.application.steps.basesteps.DownloadStep(*args, batch_settings=<object object>, **kwargs)

Bases: schrodinger.application.steps.dataclasses.MolOutMixin, schrodinger.stepper.stepper.MapStep

__init__(*args, batch_settings=<object object>, **kwargs)
Input = None
InputSerializer

alias of schrodinger.stepper.stepper._DynamicSerializer

Output

alias of rdkit.Chem.rdchem.Mol

OutputSerializer

alias of schrodinger.application.steps.dataclasses.MolToSmilesSerializer

Settings

alias of schrodinger.models.parameters.CompoundParam

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_type and 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)
mapFunction(input)

The main computation for this step. This function should take in a single input item and return an iterable of outputs. This allows a single output to produce multiple ouputs (e.g. enumeration).

The output may be yielded as a generator, in order to reduce memory usage.

If only a single output is produced for each input, return it as a single-element list.

Parameters

input

this will be a single input item from the input source. Implementer is encouraged to use a more descriptive, context- specific variable name. Example:

def mapFunction(self, starting_smiles):

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
reduceFunction(inputs)
removeEventFilter(self, a0: QObject)
report(prefix='')

Report the settings and batch settings for this step.

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
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
usingPubsub()
validateSettings()

Check whether the step settings are valid and return a list of SettingsError and SettingsWarning to 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.application.steps.basesteps.TableReduceStep(*args, **kwargs)

Bases: schrodinger.stepper.stepper.ReduceStep

reduceFunction(inps)

The main computation for this step. This function should take in a iterable of inputs and return an iterable of outputs.

Example:

def reduceFunction(self, words):
    # Find all unique words
    seen_words = set()
    for word in words:
        if word not in seen_words:
            seen_words.add(word)
            yield word
Input = None
InputSerializer

alias of schrodinger.stepper.stepper._DynamicSerializer

Output = None
OutputSerializer

alias of schrodinger.stepper.stepper._DynamicSerializer

Settings

alias of schrodinger.models.parameters.CompoundParam

__init__(*args, **kwargs)

See class docstring for info on the different constructor arguments.

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_type and 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(*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)
report(prefix='')

Report the settings and batch settings for this step.

sender(self) QObject
senderSignalIndex(self) int
setBatchSettings(*args, **kwargs)
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
usingPubsub()
validateSettings()

Check whether the step settings are valid and return a list of SettingsError and SettingsWarning to 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.