GumTree has delivered its sixth major release since version 0.2.x. This release targets many usability issues, as well as major API upgrade. Here are some of the the noteworthy thigns available in this version of GumTree:


Echidna


Echidna dashboard


A new dashboard is introduced to Echidna. It provides a central view to commonly used devices and the histogram memory image. (GUMTREE-418)


Wombat


Wombat dashboard


The Wombat dashboard is considered to be the next generation DAQ control panel. It provides quick access to commonly used devices with "parental lock" buttons, as well as graphical histogram memory acquisition control. (GUMTREE-101, GUMTREE-409)


 


Efficiency map perspective


A wombat specific data analysis perspective is created for producing the efficiency map by the processor chain. (GUMTREE-341)


Refined reduction algorithm


Our newly refined reduction algorithms are now capable of:


Wizard for initialising new experiment


The wizard provides button to open wizard for creating new experiment, together with:

  1. acquire user information
  2. create profile folder for user, all data will be stored there.
  3. switch user
    (GUMTREE-343)


Wombat experiment control


The new Wombat experiment control supports running the acqusition by using visually constructed batch script.


Kowari


Kowari analysis workbench


We have separated the Kowari analysis feature to a independent GumTree executable, known as the Kowari analysis workbench. (GUMTREE-111)


Kowari dashboard


The Kowari dashboard is our first attempt to provide a centralised DAQ control to the instrument users.
(GUMTREE-419)


Quokka


Online data reduction


The workflow triggered data reduction is now fully functional. (GUMTREE-346)


New beam stop support


The new beamstop device is supported in GumTree as well as in the workflow script. (GUMTREE-105)


Workflow time estimation


The Quokka workflow can automatically estimate the time it takes to complete an experiment. In the case of monitor count acquisition, it will use the curren beam monitor rate for calculation.
(GUMTREE-107, GUMTREE-406)


Interactive Quokka alignment commands


The Quokka alignment commands can now print immediate status report to the users. (GUMTREE-411)


Quokka dashboard


The new Quokka dashboard is a powerful tool for configuring the instrument. This dashboard encapsulates useful SICS features so that most DAQ tasks can be performed in a single screen. (GUMTREE-430)


Platypus


Platypus dashboard


The new Platypus dashboard is a partial mockup to the existing Platypus FIZZY software. It uses interactive animation to show the movement of Platypus slit packages. (GUMTREE-429)


Pelican


Pelican workbench


Pelican is a new member of the GumTree family. While the instrument is still under construction, the first version of its DAQ workbench is ready for commissioning use.
(GUMTREE-97)


Platform


Jython scripting support


Jython is the Java implementation of the Python language. It integrates seemlessly with Java API, and works for multiple OS platforms. GumTree will gradually switch from cPython to Jython, in order to provide better out-of-box user experience (that is, no additional installation of cPython). (GUMTREE-130)


New Windows installers


The GumTree website provides Windows installers for all instrument specific GumTree applications. See our download page for further details. (GUMTREE-135)


Plotting package enhancement


New enhancements for our plotting package includes:


Upgraded TCL editor


The embedded TCL editor within GumTree has been switched to Eclipse Dynamic Languages Toolkit (DLTK). The new TCL editor is more than just a syntax highlighter; it provides standard TCL code completion and syntax checking. (GUMTREE-415)


SICS table tree improvement


Few minor visual improvements for the table tree are introduced in this version. (GUMTREE-104)


New SICS batch buffer viewer


A new batch buffer viewer is developed to replace our existing batch control viewer. This viewer contains a buffer queue to allow running multiple batch script in FIFO order. It also provides instant execution feedback, validation, instrument ready check, and reconnect ability. (GUMTREE-134)


API


Update to Eclipse 3.5


Code base has been upgraded to the latest Eclipse 3.5 release. Developers can now take the benefit of new APIs and components from the Eclipse ecosystem, like Equinox OSGi and P2 provisioning platform.(GUMTREE-119)


Generic viewer for algorithms


Generic SWT components are introduced to present the algorithm processors, without using the Kakadu framework. (GUMTREE-345)


Data access API


The data access API follows the ReST resource oriented architectural style to access resources that are available to the system. Together with the service oriented approach provided by OSGi, they have changed that way that we program software. Currently GumTree supports data access with SICS proxy, local file system, http, OSGi service registry and scripting engine. Most SICS device related widgets are binded with this data access API for value update, and hence they are completely decoupled from the SICS proxy controller API. The potential of the ReST approach is discussed in this presentation. (GUMTREE-99, GUMTREE-103, GUMTREE-358, GUMTREE-376)


2nd generation dashboard


The dashboard component has been completely redesigned to support custom layout and component injection (widget can be a normal SWT widget or Javabean, without extending the dashboard API). It also provides cross communication between widgets, so individual widget can response with other widgets' events. (GUMTREE-98, GUMTREE-155)


Local persistence support


GumTree provides local persistence support via the embedded db4o object database. The perssistence support is an OSGi service, which allows developers to persist data like a hash map. See Persistence Service for further API usage. (GUMTREE-355)


GumTree Data Model refactoring


The data model has been cleaned up and re-designed. This new API will form the basis of our new data model collaboration with other major beamline facilities. The developer note can be found in GumTree Data Model. (GUMTREE-142)


JavaFX integration


JavaFX is an amazing Java technology to create interactive graphical user interface. GumTree has now successfully integrated with the JavaFX runtime, so developers can embedded any pre-compiled JavaFX scripts inside SWT. Although scripting support for JavaFX is unavailable for GumTree due to a known issue in JavaFX 1.2, we hope it will be fixed once a newer JavaFX version is ready. See Using JavaFX in GumTree for how to develop JavaFX within GumTree. (GUMTREE-428)


Extensible workflow editor


The workflow editor is re-coded to allow extension and modification, for example, developers can embed additional workflow control panel via the API. The component over inheritance design pattern increase the reusability of our software. See Workflow Viewer for programming examples. (GUMTREE-102)


Automated Javadoc generation


Javadoc generation is now automated in our build system. It is now publicly available under http://gumtree.codehaus.org/javadoc/gumtree/r1.4/.