[ome-devel] Fwd: Bio-Formats/C++/Python

Curtis Rueden ctrueden at wisc.edu
Wed Oct 6 19:00:11 BST 2010


Hi everyone,

Lee sent an informative response regarding the CellProfiler/Bio-Formats
integration, but his message got bounced, so I'm forwarding it.

-Curtis

---------- Forwarded message ----------
From: Lee Kamentsky <leek at broadinstitute.org>
Date: Wed, Oct 6, 2010 at 8:22 AM
Subject: Re: [ome-devel] Fwd: Bio-Formats/C++/Python
To: Curtis Rueden <ctrueden at wisc.edu>
Cc: OME Development <ome-devel at lists.openmicroscopy.org.uk>, Michael Held <
michael.held at bc.biol.ethz.ch>, Jason Swedlow <jason at lifesci.dundee.ac.uk>,
Adam Fraser <afraser at broadinstitute.org>


 Hi all,

The CellProfiler team chose the JNI route to limit dependencies,
specifically, the Boost build system. Each package we add to CellProfiler
comes with a risk (it might not compile on a given platform = Mac / 32/64
Windows / Linux flavors) and a cost in terms of support. Direct access to
JNI only had the risks and dependencies associated with Java and we would be
exposed to these risks with any in-process solution. Our solution is
efficient enough for our needs: image loading/storing uses a small fraction
of our CPU time, so the extra memory copy involved is not too expensive.

Jace might be a better choice for C++ integration. There's a good chance
that any C++ project already has Boost as part of its build. Python requires
an additional bridge step from C++ / Jace to Python and this isn't required
by C++. You all should probably disregard our experience with Jace unless
you are working in Python yourselves. Our javabridge is available via SVN at
http://www.broadinstitute.org/CellProfiler/trunk/CellProfiler (packages =
cellprofiler.utilities.javabridge / cellprofiler.utilities.jutil /
bioformats) for the curious or anyone who is doing Python development.

BioFormats represents a great deal of work. I for one am more than pleased
to use it for CellProfiler and not have to reimplement the whole thing. I
think our collaboration has eliminated the pitfalls of a C++ implementation,
specifically the difficulty of accessing AWT Java classes from a UI Mac
application. Loci is extremely responsive to our concerns and I have the
greatest confidence that BioFormats will be the community's highest quality
solution going forward.

--Lee
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openmicroscopy.org.uk/pipermail/ome-devel/attachments/20101006/01d1ef33/attachment.html>


More information about the ome-devel mailing list