Skip to content

alexgobbo/mxcube

 
 

Repository files navigation

mxCuBE

mxCuBE stands for macromolecular xtallography customized beamline environment; the project started in 2005 at ESRF, since then it has been adopted by other institutes in Europe. In 2010, a collaboration agreement has been signed for the development of mxCuBE with the following partners:

mxCuBE consists of 2 main parts:

  • a graphical user interface
  • data acquisition control layer

Graphical user interface

mxCuBE GUI is built on top of the Bliss Framework, a tool developed at ESRF for building graphical interfaces based on Python 2.x and the Qt 3 toolkit, especially designed for beamline experiment control applications.

Data acquisition control

Data acquisition control is made of Hardware Objects. Hardware Objects are Python classes associated with a configuration XML file. Hardware Objects are instanciated by the Hardare Repository.

Each Hardware Object should be based on an abstract class, defining a common API for mxCuBE. Then, implementation differs at each site depending on hardware and beamline specificities.

Installing mxCuBE

git repository organization

This repository includes two submodules, for both BlissFramework and HardwareRepository. After cloning you have to initialize and update submodules:

git submodule init; git submodule update

Or alternatively you can clone the repository with the --recursive option.

Within the bin directory you can find scripts to start mxCuBE and the HWR server. By default the mxcube script loads mxcube.gui ; this file is not shipped with the repository, for the first time it has to be created by making a copy of example_mxcube.gui.

Dependencies

SpecClient(http://github.com/mxcube/specclient) is an optional dependency. If it is not present, the Hardware Repository Server does not work, though. In this case it is possible to specify a directory containing the Hardware Objects XML files instead of a "host:port" string for the --hardwareRepository command line argument.

Running mxCuBE

Once dependencies are satisfied, and the mxcube.gui is present, just run the mxcube script:

./bin/mxcube --hardwareRepository=<directory or host:port>

See mxcube --help for more command line arguments.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.1%
  • Other 0.9%