[ome-devel] Avian VM and Bio-Formats
Roger Leigh
r.leigh at dundee.ac.uk
Fri Oct 18 14:35:50 BST 2013
On 17/10/2013 01:28, Johannes Schindelin wrote:
> Also at that meeting, I got into contact with the OpenMole project, and in
> particular with Mark Hammons who not only explained patiently the benefits
> of the Scala language to me, but also pointed out the existence of the
> Avian VM, a small, embeddable, BSD-licensed Java Virtual Machine written
> in C++, with a tiny Just-In-Time compiler, just enough to make it a
> practical choice for running limited Java inside a C++ program/library:
> http://oss.readytalk.com/avian/
>
> It is actually very, very, *very* limited, as I found out when I tried to
> get it to run the bfconvert tool of Bio-Formats.
>
> But I did get it to run bfconvert. To be precise, in my hands, the 5MB
> executable compiled from my fork of Avian was able to run my
> (minimally-diverging) Bio-Formats v4.4.8 fork's
> loci.formats.tools.ImageConverter class to convert Fiji's icon.png (my
> standard example) to a .tiff file (although the colors are off, but
> running the same example with plain Java results in a byte-identical
> file).
Hi Johannes,
This looks very intereresting. Do you think this could replace the
existing use of JACE to provide C++ bindings, or would we still require
something like JACE to provide all the bindings/entry points into the
Avian VM? I assume you will still need C++ headers/wrapper proxies
generating somehow?
On a related note, over the last few weeks, the first parts of the
native Bio-Formats C++ implementation have been staged. This includes
shared libraries for the OME-XML data model and bioformats, though more
work is pending review; it's not yet complete. In terms of the work
done, this includes all the basic infrastructure (cmake, platform
compatibility code), generated data model, and base model
interfaces/classes. The metadata store classes are pending, and once
those are done we'll have all the needed bits for native
OME-XML/OME-TIFF reading and writing.
It may be the case that something like the Avian VM would be very useful
in providing support for readers and writers which do not have a native
C++ implementation.
Regards,
Roger
--
Dr Roger Leigh -- Open Microscopy Environment
Wellcome Trust Centre for Gene Regulation and Expression,
College of Life Sciences, University of Dundee, Dow Street,
Dundee DD1 5EH Scotland UK Tel: (01382) 386364
The University of Dundee is a registered Scottish Charity, No: SC015096
More information about the ome-devel
mailing list