A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/pymmcore-plus/pymmcore-remote below:

pymmcore-plus/pymmcore-remote: Communicate remotely with a pymmcore-plus core instance

Remote process communication for pymmcore-plus

This package provides experimental support for running pymmcore-plus in a remote process and communicating with it via RPC (currently mediated by Pyro5)

For now, please install from the main branch on github:

pip install git+https://github.com/pymmcore-plus/pymmcore-remote

pymmcore-remote must be installed on both the server (microscope) side, and the client (controller) side.

On the microscope machine, you must also install micromanager device adapters:

More detail available in the pymmcore-plus documentation

Start a server on the machine with the microscope:

You can also specify the port with --port and the hostname with --host. Run mmcore-remote --help for more options.

Then, on the client side (or in a separate process), connect to the server using using pymmcore_remote.ClientCMMCorePlus. ClientCMMCorePlus accepts host and port arguments that must match the server (if you override the defaults).

from pymmcore_remote import ClientCMMCorePlus

with ClientCMMCorePlus() as core:
    core.loadSystemConfiguration("path/to/config.cfg")
    # continue using core as you would with pymmcore_plus.CMMCorePlus

Commands are serialized and sent to the server, which executes them in the context of a CMMCorePlus object. The results are then serialized and sent back to the client.

See the pymmcore-plus documentation for standard usage of the CMMCorePlus object.

This package is experimental: The goal is for the API to be identical to that of pymmcore-plus, but there may be some differences, and various serialization issues may still be undiscovered. Please open an issue if you encounter any problems.

Data is currently shared between processes using python's shared memory module, which is a fast and efficient way to share memory buffers directly. However, this won't work for network access between different machines, so please open an issue to discuss your use case.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4