|
|
""" Defines an in-process KernelManager with signals and slots.
|
|
|
"""
|
|
|
|
|
|
# Local imports.
|
|
|
from IPython.kernel.inprocess import (
|
|
|
InProcessShellChannel, InProcessIOPubChannel, InProcessStdInChannel,
|
|
|
InProcessHBChannel, InProcessKernelClient, InProcessKernelManager,
|
|
|
)
|
|
|
|
|
|
from IPython.utils.traitlets import Type
|
|
|
from .kernel_mixins import (
|
|
|
QtShellChannelMixin, QtIOPubChannelMixin,
|
|
|
QtStdInChannelMixin, QtHBChannelMixin, QtKernelClientMixin,
|
|
|
QtKernelManagerMixin,
|
|
|
)
|
|
|
|
|
|
|
|
|
class QtInProcessShellChannel(QtShellChannelMixin, InProcessShellChannel):
|
|
|
pass
|
|
|
|
|
|
class QtInProcessIOPubChannel(QtIOPubChannelMixin, InProcessIOPubChannel):
|
|
|
pass
|
|
|
|
|
|
class QtInProcessStdInChannel(QtStdInChannelMixin, InProcessStdInChannel):
|
|
|
pass
|
|
|
|
|
|
class QtInProcessHBChannel(QtHBChannelMixin, InProcessHBChannel):
|
|
|
pass
|
|
|
|
|
|
class QtInProcessKernelClient(QtKernelClientMixin, InProcessKernelClient):
|
|
|
""" An in-process KernelManager with signals and slots.
|
|
|
"""
|
|
|
|
|
|
iopub_channel_class = Type(QtInProcessIOPubChannel)
|
|
|
shell_channel_class = Type(QtInProcessShellChannel)
|
|
|
stdin_channel_class = Type(QtInProcessStdInChannel)
|
|
|
hb_channel_class = Type(QtInProcessHBChannel)
|
|
|
|
|
|
class QtInProcessKernelManager(QtKernelManagerMixin, InProcessKernelManager):
|
|
|
client_class = __module__ + '.QtInProcessKernelClient'
|
|
|
|