OGDF » Release Notes » Sakura
Released 2012-07-18.
This release is mainly a clean-up and bug-fix release, bringing support for new compilers and fixing some annoying bugs.
Highlights:
- Improved compiler support:
- Support for the latest compiler versions added (gcc 4.7, Visual Studio 2012).
- Support for new compilers / platforms: MinGW on Windows and LLVM/clang on Linux.
- Adjusted generated project files for Visual Studio, so that source files can now be compiled in parallel.
- Support for shared libraries (DLLs for Visual Studio 2008-2012, shared libraries for gcc, LLVM/clang).
- Clean-up of classes for planarity testing and embedding:
PlanarModulehas been renamed toBoothLueker.- Introduced a base class
PlanarityModulefor planarity testing and embedding and adjusted the interface ofBoothLuekerandBoyerMyrvold. extended_graph_alg.hnow contains simple functions for planarity testing and embedding.
- Changed the interface of embedder modules from
PlanReptoGraph.PlanarStraightLayoutandPlanarDrawLayoutnow have a module option for the embedder. - Various important bugfixes:
- Fixed crashes when compiling with gcc and
-O2or-O3. By default, OGDF release builds now use-O2. - Fixed crashes of some embedder modules when the input graph contained blocks just consisting of two parallel edges.
- Fixed a bug in the special handling of isolated nodes when minimizing
crossings with
SugiyamaLayout. Previous code did not work as intended, the revised code can decrease the number of crossings in many cases.
- Fixed crashes when compiling with gcc and
- Clean-up of classes for planarity testing and embedding:
PlanarModulehas been renamed toBoothLueker; both have been adjusted to the new interface specified byPlanarityModule.- Introduced a base class
PlanarityModulespecifiying the interface for planarity testing and embedding. - Derived
BoothLuekerandBoyerMyvoldfromPlanarityModuleand adjusted their interface. - Added new functions for planarity testing and embedding to
extended_graph_alg.h, making it easier to call this functionality:isPlanar(),planarEmbed(),planarEmbedPlanarGraph() - Remark: If you used
PlanarModulefor planarity testing or embedding in your programs, you have to rewrite your code! The simplest way is to use the above functions fromextended_graph_alg.hinstead.
- Changed the interface of embedder modules from
PlanReptoGraph. - Added module option for the embedder to
PlanarStraightLyoutandPlanarDrawLayout.
- Renamed some graph load functions (for consistent naming):
loadRomeGraphStream→loadRomeGraphloadChacoStream→loadChacoGraphloadSimpleGraphStream→loadSimpleGraphloadBenchHypergraphStream→loadBenchHypergraph
- Made
Array2D::det()method const - Moved definition of
MemElemtoMallocMemoryAllocator - Replaced ogdf’s
min/maxbystd::min/std::max - Renamed
eLabelTyp→eLabelType - Made destructor of class
Threadvirtual - Documentation adjusted to latest doxygen version (1.8.1.1).
- Fixed crashes when compiling with gcc and
-O2or-O3. By default, OGDF release builds now use-O2. - Fixed crashes of some embedder modules when the input graph contained
blocks just consisting of two parallel edges. Affected where
EmbedderMaxFace,EmbedderMaxFaceLayers,EmbedderMinDepth,EmbedderMinDepthMaxFace,EmbedderMinDepthMaxFaceLayers. - Fixed a bug in the special handling of isolated nodes when minimizing
crossings with
SugiyamaLayout. Previous code did not work as intended, the revised code can decrease the number of crossings in many cases. - Fixed a bug in
makeConnected(): now also works for empty graphs (just returns) - Added missing header files for
SteinLibParser. - Corrected various errors when compiling
HyperGraph.h.
- Added support for gcc 4.7.
- Added support for Visual Studio 2012.
- Added support for MinGW on Windows (just 32-bit MinGW version).
- Added support for LLVM/clang on Linux.
- Adjusted generated project files for Visual Studio, so that source files can now be compiled in parallel.
- OGDF can now be built as DLL with Visual Studio 2008-2012.
- OGDF can now be built as a shared library on Linux with gcc and LLVM/clang.
- Clean-up of OGDF’s main directory:
- Moved project templates to the subdirectory
config - Moved OGDF’s doxygen configuration file
ogdf-doxygen.cfgto the subdirectory doc
- Moved project templates to the subdirectory