GumTree

Last updated
GumTree
Developer(s) ANSTO
Stable release
1.6.3 / August 26, 2011 (2011-08-26)
Operating system Cross-platform [ which? ]
Type Scientific Workbench
License Eclipse Public License
Website at sourceforge.net

GumTree is an open-source scientific workbench for performing scientific experiments under a distributed network environment. It provides a multi-platform graphical user interface for instrument data acquisition, online or offline data visualisation and analysis. GumTree is designed to provide a highly Integrated Scientific Experiment Environment (ISEE), allowing interaction between different components within the workbench. Several instrument control server systems including TANGO, EPICS and SICS have been adapted to GumTree. Current developments include acquisition, control and analysis on neutron and synchrotron beamlines. In the future it will be extended telescope control and other scientific instruments with distributed hardware.

Contents

History

GumTree was first started as a small graphical user interface project to fulfill the IT requirement for the Neutron Beam Instrument Project (NBIP) at ANSTO. Later in the year, the GumTree project has been approved to go open source for international collaboration.

Architecture

GumTree is based on the Eclipse Rich Client Platform (RCP). In order to support scientific operations, GumTree extends RCP with data handling framework and visualisation toolkit as part of the GumTree platform API.

GumTree Extension

Adapting GumTree on a particular instrument requires special customisation to fit the scientific workbench to its instrument ecosystem. Customisation of GumTree can be achieved by adding new plug-ins to the existing GumTree application. In a broader sense, the common base of GumTree is a generic platform which provides all the necessary infrastructure to realise the ISEE concept for the scientific instrument. This platform, known as the GumTree Platform, is built and modelled upon an award-winning Java based universal platform called Eclipse. The GumTree Platform consists of an Eclipse Rich Client Platform (RCP) application, and an application framework for handling data exchange, experiment life cycle, device control (via distributed control system e.g. TANGO), application accessibility, data visualisation, and data analysis. All services from the platform can be extended and modified to suit any particular scientific instrument. A developer adds a GumTree workbench (or RCP based GumTree application) which integrates all services provided by the GumTree Platform. The GumTree Platform encourages developers to encapsulate the knowledge of an experiment method or procedure in the workbench.

Related Research Articles

Eclipse (software) Java software development environment

Eclipse is an integrated development environment (IDE) used in computer programming. It contains a base workspace and an extensible plug-in system for customizing the environment. Eclipse is written mostly in Java and its primary use is for developing Java applications, but it may also be used to develop applications in other programming languages via plug-ins, including Ada, ABAP, C, C++, C#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby, Rust, Scala, and Scheme. It can also be used to develop documents with LaTeX and packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others.

In computer programming, an application framework consists of a software framework used by software developers to implement the standard structure of application software.

Standard Widget Toolkit graphical widget toolkit for use with the Java platform

The Standard Widget Toolkit (SWT) is a graphical widget toolkit for use with the Java platform. It was originally developed by Stephen Northover at IBM and is now maintained by the Eclipse Foundation in tandem with the Eclipse IDE. It is an alternative to the Abstract Window Toolkit (AWT) and Swing Java graphical user interface (GUI) toolkits provided by Sun Microsystems as part of the Java Platform, Standard Edition (J2SE).

LabVIEW system-design platform and development environment

Laboratory Virtual Instrument Engineering Workbench (LabVIEW) is a system-design platform and development environment for a visual programming language from National Instruments.

Computer-aided software engineering type of software tools

Computer-aided software engineering (CASE) is the domain of software tools used to design and implement applications. CASE tools are similar to and were partly inspired by computer-aided design (CAD) tools used for designing hardware products. CASE tools are used for developing high-quality, defect-free, and maintainable software. CASE software is often associated with methods for the development of information systems together with automated tools that can be used in the software development process.

ROOT data analysis software

ROOT is an object-oriented program and library developed by CERN. It was originally designed for particle physics data analysis and contains several features specific to this field, but it is also used in other applications such as astronomy and data mining. The latest release is 6.18.04, as of 2019-09-11.

ScientificPython is an open source library of scientific tools for the Python programming language. Its development started in 1995.

Rational Application Developer

Rational Application Developer for WebSphere Software (RAD) is a commercial Eclipse-based integrated development environment (IDE), made by IBM. It provides tools for visually designing, constructing, testing, analyzing, and deploying many types of applications including Java, Java EE, Web 2.0, hybrid mobile, Portal applications, and Web and REST services.

The rich client platform (RCP) is a programmer tool that makes it easier to integrate independent software components, where most of the data processing occurs on the client side.

The Bioclipse project is a Java-based, open-source, visual platform for chemo- and bioinformatics based on the Eclipse Rich Client Platform (RCP). It gained scripting functionality in 2009.

The Graphical Editing Framework(GEF) is an Eclipse project that provides framework and end-user components related to graphical applications.

JFire

JFire was an Enterprise Resource Planning and Customer Relationship Management system.

Remote Application Platform Project is an open-source software project under the Eclipse Technology Project which aims to enable software developers to build Ajax-enabled rich Internet applications by using the Eclipse development model, plugins and a Java-only application programming interface (API). It can be considered a counterpart for web development to the Rich Client Platform (RCP). The API is very similar to RCP so developers who know RCP can reuse extant knowledge. RAP encourages sharing source code between RCP and RAP applications to reduce the development effort for business applications that need both desktop-based and web-based front ends.

3DSlicer

3D Slicer (Slicer) is a free and open source software package for image analysis and scientific visualization. Slicer is used in a variety of medical applications, including autism, multiple sclerosis, systemic lupus erythematosus, prostate cancer, lung cancer, breast cancer, schizophrenia, orthopedic biomechanics, COPD, cardiovascular disease and neurosurgery.

The OpenSource application Bio7 is a software for ecological simulation models, image analysis and statistical analysis. Built upon the RCP framework of Eclipse it embeds several tools and programming languages for the analysis of complex ecological systems. Several Java based scripting languages and the Java language can be used from within Bio7 for the creation of simulation models and analysis tasks. In addition Bio7 also contains a complete "Graphical User Interface" (GUI) for the statistical software R and the scientific image analysis tool ImageJ with special functions to send image data from ImageJ to R or R data to ImageJ.

Eclipse Sirius

Sirius is an open-source software project of the Eclipse Foundation. This technology allows users to create custom graphical modeling workbenches by leveraging the Eclipse Modeling technologies, including EMF and GMF. The modeling workbench created is composed of a set of Eclipse editors which allow the users to create, edit and visualize EMF models.