Skip to content

Python package for unified MMCore access through pymmcore or ZMQ-MMCoreJ + associated utilities

License

Notifications You must be signed in to change notification settings

micro-manager/mmpycorex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

License PyPI

mmpycorex

This package contains modules for downloading and installing MM through python, and for accessing the Java core of a running micro-manager instance, creating a headless java core object for access through python, or creating and instance of the python wrapper of the core (pymmcore)

Installation

pip install mmpycorex

Programatically installing Micro-Manager

  • Python utility functions for downloading and installing Micro-Manager
from mmpycorex import download_and_install_mm, find_existing_mm_install

# this automatically installs the latest nightly build
# specify destination="your/custom/path", otherwise it will default to 'C:/Program files/Micro-Manager/'
# on windows or the home directory on mac
installed_path = download_and_install_mm()

Accessing the Java core through python

### Java Core example
from mmpycorex import create_core_instance, terminate_core_instances, get_default_install_location

# If micro-manager is alread running, you can get access to the core directly
# (just make sure the "run server" in the tools options dialog is checked)

# Otherwise you must create an instance of the Core in headless mode
mm_location = get_default_install_location() # 'C:/Program files/Micro-Manager/'
config_file = 'MMConfig_demo.cfg'
create_core_instance(mm_location, config_file, python_backend=False) # Create a remote MMCoreJ object

# Now that a core is running (either through the MM App or headless mode), create an object to access it
core = Core()

#### use the core

terminate_core_instances() 

Accessing the python core (pymmcore)

### pymmcore example
from mmpycorex import create_core_instance, terminate_core_instances

# Otherwise you must create an instance of the Core in headless mode
mm_location = get_default_install_location() # 'C:/Program files/Micro-Manager/'
config_file = 'MMConfig_demo.cfg'
create_core_instance(mm_location, config_file, python_backend=True) # Create pymmcore instance

# Now that a core is running (either through the MM App or headless mode), create an object to access it
core = Core()

#### use the core

terminate_core_instances() 

Install issues on M1 Macs

conda-forge/miniforge#165 (comment)

About

Python package for unified MMCore access through pymmcore or ZMQ-MMCoreJ + associated utilities

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages