[ome-devel] Release of OME Files C++ 0.3.0

Manuel Stritt manuel.stritt at actelion.com
Tue Feb 14 13:05:17 GMT 2017


Dear Roger,

short question regarding JPEG-XR compression. Do you see any chance for the
next future that OME-TIFF (it's reference implementation) supports JPEG-XR
compression?

Even if it doesn't support it - do you think it's feasible - maybe with an
external contribution?

I'm thinking about it because we'd like to store 16bit WSI images in a
standardized format...

Regards,
Manuel



OME Files C++ 0.3.0
> ===================
>
> OME Files is a reference implementation of the OME Data Model and
> OME-TIFF file format for the storage and interchange of biological
> imaging data and metadata.  It provides support for:
>
>  • the OME Data Model (model objects, metadata store, XSL transforms
>    and XML validation)
>  • OME-TIFF reading
>  • OME-TIFF writing
>
> Changes in this release include:
>
>  • updating the minimum C++ language standard to C++11 (from C++98)
>  • adding support for TIFF compression
>  • performance improvements for metadata reading and TIFF reading and
>    writing
>  • addition of the ome-model component, replacing bioformats' ome-xml
>    (this is the data model specification and ome-xml library following
>    decoupling from the Bio-Formats repository)
>
> Downloads
> ---------
>
> The software release is available at the OME Files C++ 0.3.0 download
> page (http://downloads.openmicroscopy.org/ome-files-cpp/0.3.0/).  This
> page includes links to the individual repositories and source
> releases, as well as the documentation and binary builds of the
> collection for several common platforms, including Windows, Linux and
> MacOS X.
>
> Upgrading from 0.2.3
> --------------------
>
> The main change is the switch to C++11.  No immediate source changes
> are strictly required; the compatibility headers will continue to work
> for now, however upgrading to the standard C++11 headers is highly
> recommended to avoid future breakage.  Client code is free to use any
> C++11 features of their choosing.  To update your code:
>
>  • enable C++11 or later support for your compiler
>    · MSVC users do not need to do anything (it doesn't have any
>      special option)
>    · GCC and Clang users need to add the "-std=c++11" or "-std=c++14"
>      option (the most recent versions default to C++14 and don't need
>      this)
>    · CMake users can set CMAKE_CXX_STANDARD_REQUIRED=11 and
>      CMAKE_CXX_STANDARD=14 to try C++14 and fall back to C++11 if
>      C++14 is unavailable
>  • replace <ome/compat/array.h> with <array> and use of
>    ome::compat::array with std::array
>  • replace <ome/compat/cstdint.h> with <cstdint>
>  • replace <ome/compat/memory.h> with <memory> and use of
>    ome::compat::shared_ptr with std::shared_ptr (likewise for related
>    types and functions such as std::weak_ptr, std::make_shared and
>    std::dynamic_pointer_cast)
>  • replace <ome/compat/tuple.h> with <tuple> and use of
>    ome::compat::tuple with std::tuple (likewise for related functions
>    such as std::get)
>  • the above compatibility headers, and their declared types in the
>    ome::compat namespace still exist but are deprecated; they simply
>    wrap the standard headers and types.
>  • the deprecated headers will be removed for 0.4.0.
>
> Changes since ome-files-cpp 0.2.3
> ---------------------------------
>
> All components:
>
>  • C++11 is now the minimum required language version, with C++14
>    being used when available
>  • enabled the use of a restricted number of C++11 features, including
>    enum class, nullptr, initializer lists, range-based for loops and
>    type traits
>  • enabled the use of C++11 syntax changes including "<::" not being
>    interpreted as a trigraph and ">>" being used to close nested
>    templates instead of "> >"
>  • additional features will be enabled in subsequent releases
>  • Google Test (gtest) is no longer built separately in each source
>    component; the latest gtest release now allows use as a
>    conventional library
>  • source releases are now made directly from git with "git archive";
>    additional version metadata is no longer embedded in the source
>    releases
>
> OME Common:
>
>  • Boost MPL size limits are now set with MSVC only; they are no
>    longer required for other compilers with C++11
>  • <ome/compat/array.h>, <ome/compat/cstdint.h>, <ome/compat/memory.h>
>    and <ome/compat/tuple.h> are now deprecated in favor of the
>    standard headers; they wrap the standard headers for backward
>    compatibility but will be removed in the next breaking release
>
> OME Model:
>
> The first release of the ome-model components (specification, xsd-fu
> and ome-xml) since decoupling from Bio-Formats.
>
>  • sources use a Java maven source layout; this component is a dual
>    language component building both C++ and Java libraries
>  • specification OME-XML samples: Added ROI transform and mask samples
>  • specification transforms: Corrected upgrade to preserve ROI
>    transforms
>  • AffineTransform: Initialized with the identity matrix when default
>    constructed
>  • migrated formats documentation from the ome-documentation
>    repository, updated and integrated with cmake and maven builds
>  • renamed toplevel project from ome-xml to ome-model; the library
>    continues to be named ome-xml
>
> OME Files:
>
>  • added support for TIFF compression, exposing all compression
>    algorithms supported by libtiff.  Deflate and LZW will work for all
>    pixel types; JPEG support will be available if libtiff was compiled
>    with support for libjpeg
>  • OMETIFFReader now sets the interleaved property according to the
>    TIFF PlanarConfiguration tag; previously it was set to false
>    unconditionally
>  • TIFF wrapper: Cache IFD offsets on reading; this speeds up reading
>    by changing the complexity of indexed IFD access from O(n) to O(1)
>  • OMETIFFWriter: Sets the interleaved property unconditionally, even
>    when the samples per pixel count is 1; this is to ensure easy
>    round-tripping of data between readers and writers using the same
>    logical dimension ordering in the pixel buffer
>  • all TIFF writers: Set a default strip size of 2^16 pixels, which is
>    for example 64KiB for 8-bit greyscale data, or 192KiB for 8-bit RGB
>    data; the previous default was to copy the Java behavior of one row
>    per strip, which was much less efficient
>
> OME QtWidgets:
>
>  • no changes
>
> Super-Build 0.3.0:
>
>  • gtest: Build and install (into tool directory) like a regular
>    package
>  • renamed superbuild-install to stage
>  • docs: Dropped PDF documentation; documented C++11 changes
>  • added git-dir option to simplify building multiple repositories
>    from git
>  • Package changes:
>    · boost 1.63: Updated package
>    · ome-common 5.4.0: Updated package
>    · ome-files 0.3.0: Updated package
>    · ome-files-py: New experimental package (initial Python bindings
>      for OME Files C++)
>    · ome-model 5.5.0: New package (previously part of the Bio-Formats
>      sources)
>    · ome-qtwidgets 5.4.0: Updated package
>    · png 1.6.28: Updated package
>    · tiff 4.0.7: Updated package
>    · zlib 1.2.10: Updated package
>
> Future changes
> --------------
>
> Upcoming improvements include:
>
> All components:
>
>  • enabling of additional C++11 features following testing of compiler
>    support and compatibility
>  • further performance profiling and scalability improvements
>
> OME XML:
>
>  • support for the use of custom annotations with the OME-XML data
>    model API
>  • this generalized annotation support will also be used for existing
>    annotations including Modulo and OriginalMetadata
>  • improved and more comprehensive OME-XML and OME-TIFF samples
>  • Improved documentation and code samples
>
> OME Files:
>
>  • improvements to automated integration testing of OME-TIFF files
>
> Super-Build:
>
>  • further improvements for building on Windows, including initial
>    VS2017 support
>  • updating of the set of platforms binary builds are provided for
>
> You can find further information on which features will be included in
> upcoming releases via the Trello board for version 0.3.1
> (https://trello.com/b/nNwJHdpp/ome-files-0-3-1) and 0.4.0
> (https://trello.com/b/WFYWCvoV/ome-files-0-4-0) (note that these are a
> work in progress and are subject to change).
>
> Errata
> ------
>
> See the errata for this release
> (https://www.openmicroscopy.org/site/support/ome-files-cpp/
> ome-cmake-superbuild/manual/html/errata.html).
>
> Support
> -------
>
> For any problems or comments, please use the OME forums or mailing
> lists (http://www.openmicroscopy.org/site/community).
>
>
> Kind regards,
> Roger Leigh
>
> on behalf of the OME team
>
> --
> 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
> _______________________________________________
> ome-devel mailing list
> ome-devel at lists.openmicroscopy.org.uk
> http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-devel
>

-- 

The information of this email and in any file transmitted with it is 
strictly confidential and may be legally privileged.
It is intended solely for the addressee. If you are not the intended 
recipient, any copying, distribution or any other use of this email is 
prohibited and may be unlawful. In such case, you should please notify the 
sender immediately and destroy this email.
The content of this email is not legally binding unless confirmed by letter.
Any views expressed in this message are those of the individual sender, 
except where the message states otherwise and the sender is authorized to 
state them to be the views of the sender's company.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openmicroscopy.org.uk/pipermail/ome-devel/attachments/20170214/791bb891/attachment.html>


More information about the ome-devel mailing list