[geos-commits] [SCM] GEOS branch master updated. ff80c6d661cd2df4caf06dd8830082e42298d2cf

git at osgeo.org git at osgeo.org
Fri Nov 8 08:23:11 PST 2019


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GEOS".

The branch, master has been updated
       via  ff80c6d661cd2df4caf06dd8830082e42298d2cf (commit)
       via  1d4c2d250cf4cc934a5d3eb5157c2e43b25bbacb (commit)
       via  926bfa46e6715b9feb0b4c41bd41d73baac5ffff (commit)
       via  a0ad8a63e5ca3aca63a2ac64c757c55b81220f2f (commit)
       via  4e1d7b65998bebfb485e6ed0098fe2cadb2f6027 (commit)
       via  14a159c6abf2479e02cb2c55ded5e810c3e6b390 (commit)
      from  388953bccc5fe1cb9196b0fd393a14988b8a3d84 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit ff80c6d661cd2df4caf06dd8830082e42298d2cf
Merge: 388953b 1d4c2d2
Author: Daniel Baston <dbaston at gmail.com>
Date:   Fri Nov 8 11:22:58 2019 -0500

    Merge remote-tracking branch 'nilason/namespaces-header-files'


commit 1d4c2d250cf4cc934a5d3eb5157c2e43b25bbacb
Author: nila <n_larsson at yahoo.com>
Date:   Sat Oct 19 13:02:43 2019 +0200

    Update credit

diff --git a/include/geos/namespaces.h b/include/geos/namespaces.h
index dc7951b..a95e9eb 100644
--- a/include/geos/namespaces.h
+++ b/include/geos/namespaces.h
@@ -3,7 +3,9 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2019   Nicklas Larsson
+ * Copyright (C) 2001-2002 Vivid Solutions Inc.
+ * Copyright (C) 2005-2006 Refractions Research Inc.
+ * Copyright (C) 2019      Nicklas Larsson
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published

commit 926bfa46e6715b9feb0b4c41bd41d73baac5ffff
Author: nila <n_larsson at yahoo.com>
Date:   Fri Oct 18 21:57:36 2019 +0200

    Remove doxygen file reference

diff --git a/include/geos/algorithm/InteriorPointPoint.h b/include/geos/algorithm/InteriorPointPoint.h
index 1de7cf7..e28c763 100644
--- a/include/geos/algorithm/InteriorPointPoint.h
+++ b/include/geos/algorithm/InteriorPointPoint.h
@@ -30,7 +30,7 @@ namespace geos {
 namespace algorithm { // geos::algorithm
 
 /**
- * \class InteriorPointPoint geosAlgorithm.h geos/geosAlgorithm.h
+ * \class InteriorPointPoint
  * \brief
  * Computes a point in the interior of an point geometry.
  *
diff --git a/include/geos/algorithm/NotRepresentableException.h b/include/geos/algorithm/NotRepresentableException.h
index 6e44fba..47207be 100644
--- a/include/geos/algorithm/NotRepresentableException.h
+++ b/include/geos/algorithm/NotRepresentableException.h
@@ -24,7 +24,7 @@ namespace geos {
 namespace algorithm { // geos::algorithm
 
 /**
- * \class NotRepresentableException geosAlgorithm.h geos/geosAlgorithm.h
+ * \class NotRepresentableException
  * \brief
  * Indicates that a HCoordinate has been computed which is
  * not representable on the Cartesian plane.
diff --git a/include/geos/algorithm/PointLocator.h b/include/geos/algorithm/PointLocator.h
index da66f84..b43671f 100644
--- a/include/geos/algorithm/PointLocator.h
+++ b/include/geos/algorithm/PointLocator.h
@@ -39,7 +39,7 @@ namespace geos {
 namespace algorithm { // geos::algorithm
 
 /**
- * \class PointLocator geosAlgorithm.h geos/geosAlgorithm.h
+ * \class PointLocator
  *
  * \brief
  * Computes the topological relationship (Location)
diff --git a/include/geos/index/quadtree/IntervalSize.h b/include/geos/index/quadtree/IntervalSize.h
index edc7ad8..36d9398 100644
--- a/include/geos/index/quadtree/IntervalSize.h
+++ b/include/geos/index/quadtree/IntervalSize.h
@@ -26,7 +26,7 @@ namespace index { // geos::index
 namespace quadtree { // geos::index::quadtree
 
 /**
- * \class IntervalSize indexQuadtree.h geos/indexQuadtree.h
+ * \class IntervalSize
  *
  * \brief
  * Provides a test for whether an interval is
diff --git a/include/geos/index/quadtree/Root.h b/include/geos/index/quadtree/Root.h
index 65ed66d..c60f2ff 100644
--- a/include/geos/index/quadtree/Root.h
+++ b/include/geos/index/quadtree/Root.h
@@ -40,7 +40,7 @@ namespace index { // geos::index
 namespace quadtree { // geos::index::quadtree
 
 /**
- * \class Root indexQuadtree.h geos/indexQuadtree.h
+ * \class Root
  *
  * \brief
  * QuadRoot is the root of a single Quadtree.  It is centred at the origin,
diff --git a/include/geos/io/ByteOrderDataInStream.h b/include/geos/io/ByteOrderDataInStream.h
index 6f516c2..88346be 100644
--- a/include/geos/io/ByteOrderDataInStream.h
+++ b/include/geos/io/ByteOrderDataInStream.h
@@ -32,7 +32,7 @@ namespace geos {
 namespace io {
 
 /**
- * \class ByteOrderDataInStream io.h geos.h
+ * \class ByteOrderDataInStream
  *
  * \brief Allows reading an stream of primitive datatypes from an underlying
  * istream, with the representation being in either common byte ordering.
diff --git a/include/geos/io/ByteOrderValues.h b/include/geos/io/ByteOrderValues.h
index d41794b..e2d2344 100644
--- a/include/geos/io/ByteOrderValues.h
+++ b/include/geos/io/ByteOrderValues.h
@@ -27,7 +27,7 @@ namespace geos {
 namespace io {
 
 /**
- * \class ByteOrderValues io.h geos.h
+ * \class ByteOrderValues
  *
  * \brief Methods to read and write primitive datatypes from/to byte
  * sequences, allowing the byte order to be specified.
diff --git a/include/geos/io/ParseException.h b/include/geos/io/ParseException.h
index 4b5003a..b713b77 100644
--- a/include/geos/io/ParseException.h
+++ b/include/geos/io/ParseException.h
@@ -28,7 +28,7 @@ namespace geos {
 namespace io {
 
 /**
- * \class ParseException io.h geos.h
+ * \class ParseException
  * \brief Notifies a parsing error
  */
 class GEOS_DLL ParseException : public util::GEOSException {
diff --git a/include/geos/io/WKBReader.h b/include/geos/io/WKBReader.h
index affdb1c..63e4128 100644
--- a/include/geos/io/WKBReader.h
+++ b/include/geos/io/WKBReader.h
@@ -61,7 +61,7 @@ namespace geos {
 namespace io {
 
 /**
- * \class WKBReader io.h geos.h
+ * \class WKBReader
  *
  * \brief Reads a Geometry from Well-Known Binary format.
  *
diff --git a/include/geos/io/WKBWriter.h b/include/geos/io/WKBWriter.h
index 1ed424e..20f5f6a 100644
--- a/include/geos/io/WKBWriter.h
+++ b/include/geos/io/WKBWriter.h
@@ -49,7 +49,7 @@ namespace io {
 
 /**
  *
- * \class WKBWriter io.h geos.h
+ * \class WKBWriter
  *
  * \brief Writes a Geometry into Well-Known Binary format.
  *
diff --git a/include/geos/io/WKTReader.h b/include/geos/io/WKTReader.h
index a43bffa..d43e1ee 100644
--- a/include/geos/io/WKTReader.h
+++ b/include/geos/io/WKTReader.h
@@ -52,7 +52,7 @@ namespace geos {
 namespace io {
 
 /**
- * \class WKTReader io.h geos.h
+ * \class WKTReader
  * \brief WKT parser class; see also WKTWriter.
  */
 class GEOS_DLL WKTReader {
diff --git a/include/geos/io/WKTWriter.h b/include/geos/io/WKTWriter.h
index b501804..6b888c7 100644
--- a/include/geos/io/WKTWriter.h
+++ b/include/geos/io/WKTWriter.h
@@ -56,7 +56,7 @@ namespace geos {
 namespace io {
 
 /**
- * \class WKTWriter io.h geos.h
+ * \class WKTWriter
  *
  * \brief Outputs the textual representation of a Geometry.
  * See also WKTReader.
diff --git a/include/geos/operation/buffer/BufferOp.h b/include/geos/operation/buffer/BufferOp.h
index b814d81..411256c 100644
--- a/include/geos/operation/buffer/BufferOp.h
+++ b/include/geos/operation/buffer/BufferOp.h
@@ -44,7 +44,7 @@ namespace operation { // geos.operation
 namespace buffer { // geos.operation.buffer
 
 /**
- * \class BufferOp opBuffer.h geos/opBuffer.h
+ * \class BufferOp
  *
  * \brief
  * Computes the buffer of a geometry, for both positive and negative
diff --git a/include/geos/operation/buffer/OffsetCurveBuilder.h b/include/geos/operation/buffer/OffsetCurveBuilder.h
index 2d3b424..8c90a6c 100644
--- a/include/geos/operation/buffer/OffsetCurveBuilder.h
+++ b/include/geos/operation/buffer/OffsetCurveBuilder.h
@@ -46,7 +46,7 @@ namespace operation { // geos.operation
 namespace buffer { // geos.operation.buffer
 
 /**
- * \class OffsetCurveBuilder opBuffer.h geos/opBuffer.h
+ * \class OffsetCurveBuilder
  *
  * \brief
  * Computes the raw offset curve for a
diff --git a/include/geos/operation/buffer/OffsetCurveSetBuilder.h b/include/geos/operation/buffer/OffsetCurveSetBuilder.h
index 62a1593..392e76f 100644
--- a/include/geos/operation/buffer/OffsetCurveSetBuilder.h
+++ b/include/geos/operation/buffer/OffsetCurveSetBuilder.h
@@ -59,7 +59,7 @@ namespace operation { // geos.operation
 namespace buffer { // geos.operation.buffer
 
 /**
- * \class OffsetCurveSetBuilder opBuffer.h geos/opBuffer.h
+ * \class OffsetCurveSetBuilder
  *
  * \brief
  * Creates all the raw offset curves for a buffer of a Geometry.
diff --git a/include/geos/operation/buffer/SubgraphDepthLocater.h b/include/geos/operation/buffer/SubgraphDepthLocater.h
index b4e3ba6..551fb23 100644
--- a/include/geos/operation/buffer/SubgraphDepthLocater.h
+++ b/include/geos/operation/buffer/SubgraphDepthLocater.h
@@ -46,7 +46,7 @@ namespace operation { // geos.operation
 namespace buffer { // geos.operation.buffer
 
 /**
- * \class SubgraphDepthLocater opBuffer.h geos/opBuffer.h
+ * \class SubgraphDepthLocater
  *
  * \brief
  * Locates a subgraph inside a set of subgraphs,
diff --git a/include/geos/planargraph/PlanarGraph.h b/include/geos/planargraph/PlanarGraph.h
index f871736..2ae8af0 100644
--- a/include/geos/planargraph/PlanarGraph.h
+++ b/include/geos/planargraph/PlanarGraph.h
@@ -45,7 +45,7 @@ namespace geos {
 namespace planargraph { // geos.planargraph
 
 /**
- * \class PlanarGraph planargraph.h geos/planargraph.h
+ * \class PlanarGraph
  * \brief
  * Represents a directed graph which is embeddable in a planar surface.
  *

commit a0ad8a63e5ca3aca63a2ac64c757c55b81220f2f
Author: nila <n_larsson at yahoo.com>
Date:   Fri Oct 18 22:22:16 2019 +0200

    Description moved to geos/namespaces.h

diff --git a/include/geos/util.h b/include/geos/util.h
index c841255..2af350f 100644
--- a/include/geos/util.h
+++ b/include/geos/util.h
@@ -83,9 +83,6 @@ make_unique(Args &&...) = delete;
 #endif
 }
 
-/// Utility classes for GEOS.
-namespace util { // geos.util
-} // geos.util
 }
 
 #endif // GEOS_UTIL_H

commit 4e1d7b65998bebfb485e6ed0098fe2cadb2f6027
Author: nila <n_larsson at yahoo.com>
Date:   Fri Oct 18 22:00:46 2019 +0200

    Replace includes with concrete header files
    
    instead of inclusion of now deprecated namespace/package header files.

diff --git a/doc/example.cpp b/doc/example.cpp
index 8d091ab..0a6b32c 100644
--- a/doc/example.cpp
+++ b/doc/example.cpp
@@ -46,8 +46,8 @@
 #include <geos/geom/util/SineStarFactory.h>
 #include <geos/util/GEOSException.h>
 #include <geos/util/IllegalArgumentException.h>
-#include <geos/opLinemerge.h>
-#include <geos/opPolygonize.h>
+#include <geos/operation/linemerge/LineMerger.h>
+#include <geos/operation/polygonize/Polygonizer.h>
 #include <geos/constants.h>
 #include <vector>
 #include <sstream>
diff --git a/include/geos.h b/include/geos.h
index 1587890..233fc36 100644
--- a/include/geos.h
+++ b/include/geos.h
@@ -25,7 +25,15 @@
 #include <geos/version.h>
 #include <geos/geom.h>
 #include <geos/util.h>
-#include <geos/io.h>
+#include <geos/io/ByteOrderDataInStream.h>
+#include <geos/io/ByteOrderValues.h>
+#include <geos/io/ParseException.h>
+#include <geos/io/WKBConstants.h>
+#include <geos/io/WKBReader.h>
+#include <geos/io/WKBWriter.h>
+#include <geos/io/WKTReader.h>
+#include <geos/io/WKTWriter.h>
+#include <geos/io/CLocalizer.h>
 #include <geos/unload.h>
 
 /// Basic namespace for all GEOS functionalities.
diff --git a/src/noding/snapround/MCIndexPointSnapper.cpp b/src/noding/snapround/MCIndexPointSnapper.cpp
index c6be26b..3215efc 100644
--- a/src/noding/snapround/MCIndexPointSnapper.cpp
+++ b/src/noding/snapround/MCIndexPointSnapper.cpp
@@ -21,7 +21,8 @@
 #include <geos/noding/snapround/SimpleSnapRounder.h>
 #include <geos/noding/SegmentString.h>
 #include <geos/noding/NodedSegmentString.h>
-#include <geos/spatialIndex.h>
+#include <geos/index/SpatialIndex.h>
+#include <geos/index/ItemVisitor.h>
 #include <geos/geom/Envelope.h>
 #include <geos/index/chain/MonotoneChainSelectAction.h>
 #include <geos/index/chain/MonotoneChain.h>
diff --git a/tests/xmltester/CTS.cpp b/tests/xmltester/CTS.cpp
index a405e92..c11a6c9 100644
--- a/tests/xmltester/CTS.cpp
+++ b/tests/xmltester/CTS.cpp
@@ -20,7 +20,15 @@
 
 #include <iostream>
 
-#include <geos/io.h>
+#include <geos/io/ByteOrderDataInStream.h>
+#include <geos/io/ByteOrderValues.h>
+#include <geos/io/ParseException.h>
+#include <geos/io/WKBConstants.h>
+#include <geos/io/WKBReader.h>
+#include <geos/io/WKBWriter.h>
+#include <geos/io/WKTReader.h>
+#include <geos/io/WKTWriter.h>
+#include <geos/io/CLocalizer.h>
 #include <geos/geom.h>
 
 using namespace std;
diff --git a/tests/xmltester/XMLTester.cpp b/tests/xmltester/XMLTester.cpp
index aa02b95..1c71baf 100644
--- a/tests/xmltester/XMLTester.cpp
+++ b/tests/xmltester/XMLTester.cpp
@@ -46,17 +46,16 @@
 #include <geos/precision/MinimumClearance.h>
 #include <geos/util.h>
 #include <geos/util/Interrupt.h>
-//#include <geos/geomgraph.h>
 #include <geos/io/WKBReader.h>
 #include <geos/io/WKBWriter.h>
 #include <geos/io/WKTReader.h>
 #include <geos/io/WKTWriter.h>
-#include <geos/opRelate.h>
-#include <geos/opPolygonize.h>
-#include <geos/opLinemerge.h>
+#include <geos/operation/relate/RelateOp.h>
+#include <geos/operation/polygonize/Polygonizer.h>
+#include <geos/operation/linemerge/LineMerger.h>
 #include <geos/profiler.h>
 #include <geos/unload.h>
-#include <geos/opValid.h>
+#include <geos/operation/valid/IsValidOp.h>
 #include "XMLTester.h"
 #include "BufferResultMatcher.h"
 #include "SingleSidedBufferResultMatcher.h"

commit 14a159c6abf2479e02cb2c55ded5e810c3e6b390
Author: nila <n_larsson at yahoo.com>
Date:   Fri Oct 18 16:23:33 2019 +0200

    Replace namespace/package header files with a single file
    
    as they have lost their use, except for doxygen documentation purpose.

diff --git a/include/geos/Makefile.am b/include/geos/Makefile.am
index cc55c4a..363494c 100644
--- a/include/geos/Makefile.am
+++ b/include/geos/Makefile.am
@@ -16,40 +16,17 @@ SUBDIRS = \
     triangulate \
     util
 
-EXTRA_DIST = 
+EXTRA_DIST =
 
 geosdir = $(includedir)/geos
 
 geos_HEADERS = \
     constants.h \
     export.h \
-    geomgraph.h \
-    geomgraphindex.h \
     geom.h \
-    geomUtil.h \
-    geosAlgorithm.h \
-    indexBintree.h \
-    indexChain.h \
-    indexQuadtree.h \
-    indexStrtree.h \
-    indexSweepline.h \
     inline.h \
-    io.h \
-    noding.h \
-    nodingSnapround.h \
-    opBuffer.h \
-    opDistance.h \
-    operation.h \
-    opLinemerge.h \
-    opOverlay.h \
-    opPolygonize.h \
-    opPredicate.h \
-    opRelate.h \
-    opValid.h \
-    planargraph.h \
-    precision.h \
+    namespaces.h \
     profiler.h \
-    spatialIndex.h \
     unload.h \
     util.h
 
diff --git a/include/geos/geomPrep.h b/include/geos/geomPrep.h
deleted file mode 100644
index 0acd445..0000000
--- a/include/geos/geomPrep.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- * Copyright (C) 2006 Refractions Research Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_GEOMPREP_H
-#define GEOS_GEOMPREP_H
-
-#include <geos/geom/prep/PreparedGeometry.h>
-#include <geos/geom/prep/PreparedGeometryFactory.h>
-#include <geos/geom/prep/PreparedPoint.h>
-#include <geos/geom/prep/PreparedLineString.h>
-#include <geos/geom/prep/PreparedPolygon.h>
-
-namespace geos {
-namespace geom { // geos.geom
-
-/** \brief
- * Contains classes and interfaces implementing algorithms that optimize the
- * performance of repeated calls to specific geometric operations.
- */
-namespace prep { // geos.geom.prep
-
-} // namespace geos.geom.prep
-} // namespace geos.geom
-} // namespace geos
-
-#endif //GEOS_GEOMPREP_H
diff --git a/include/geos/geomUtil.h b/include/geos/geomUtil.h
deleted file mode 100644
index 0b970e1..0000000
--- a/include/geos/geomUtil.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- * Copyright (C) 2006 Refractions Research Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_GEOMUTIL_H
-#define GEOS_GEOMUTIL_H
-
-#include <geos/geom/util/GeometryEditor.h>
-#include <geos/geom/util/GeometryEditorOperation.h>
-#include <geos/geom/util/CoordinateOperation.h>
-#include <geos/geom/util/LinearComponentExtracter.h>
-#include <geos/geom/util/PointExtracter.h>
-#include <geos/geom/util/PolygonExtracter.h>
-#include <geos/geom/util/ShortCircuitedGeometryVisitor.h>
-
-namespace geos {
-namespace geom { // geos.geom
-
-/** \brief
- * Provides classes that parse and modify Geometry objects.
- */
-namespace util { // geos.geom.util
-
-} // namespace geos.geom.util
-} // namespace geos.geom
-} // namespace geos
-
-#endif
diff --git a/include/geos/geomgraph.h b/include/geos/geomgraph.h
deleted file mode 100644
index 596d28d..0000000
--- a/include/geos/geomgraph.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2005-2006 Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************
- *
- * Try not to include this header directly. It is kept
- * for backward compatibility.
- * Please include geomgraph/classname.h for new code.
- *
- **********************************************************************/
-
-
-#ifndef GEOS_GEOMGRAPH_H
-#define GEOS_GEOMGRAPH_H
-
-namespace geos {
-
-/** \brief
- * Contains classes that implement topology graphs.
- *
- * The Java Topology Suite (JTS) is a Java API that implements a core
- * set of spatial data operations using an explicit precision model
- * and robust geometric algorithms. JTS is int ended to be used in the
- * development of applications that support the validation, cleaning,
- * integration and querying of spatial datasets.
- *
- * JTS attempts to implement the OpenGIS Simple Features Specification (SFS)
- * as accurately as possible.  In some cases the SFS is unclear or omits a
- * specification; in this case JTS attempts to choose a reasonable and
- * consistent alternative.  Differences from and elaborations of the SFS
- * are documented in this specification.
- *
- * <h2>Package Specification</h2>
- *
- * <ul>
- *   <li>Java Topology Suite Technical Specifications
- *   <li><A HREF="http://www.opengis.org/techno/specs.htm">
- *       OpenGIS Simple Features Specification for SQL</A>
- * </ul>
- *
- */
-namespace geomgraph { // geos.geomgraph
-} // namespace geos.geomgraph
-} // namespace geos
-
-//#include <geos/geomgraph/Depth.h>
-//#include <geos/geomgraph/DirectedEdge.h>
-//#include <geos/geomgraph/DirectedEdgeStar.h>
-//#include <geos/geomgraph/Edge.h>
-#include <geos/geomgraph/EdgeEnd.h>
-#include <geos/geomgraph/EdgeEndStar.h>
-//#include <geos/geomgraph/EdgeIntersection.h>
-//#include <geos/geomgraph/EdgeIntersectionList.h>
-#include <geos/geomgraph/EdgeList.h>
-//#include <geos/geomgraph/EdgeNodingValidator.h>
-//#include <geos/geomgraph/EdgeRing.h>
-#include <geos/geomgraph/GeometryGraph.h>
-#include <geos/geomgraph/GraphComponent.h>
-//#include <geos/geomgraph/Label.h>
-#include <geos/geomgraph/Node.h>
-//#include <geos/geomgraph/NodeFactory.h>
-#include <geos/geomgraph/NodeMap.h>
-#include <geos/geomgraph/PlanarGraph.h>
-//#include <geos/geomgraph/Position.h>
-//#include <geos/geomgraph/Quadrant.h>
-//#include <geos/geomgraph/TopologyLocation.h>
-
-#endif // ifndef GEOS_GEOMGRAPH_H
diff --git a/include/geos/geomgraphindex.h b/include/geos/geomgraphindex.h
deleted file mode 100644
index 786e391..0000000
--- a/include/geos/geomgraphindex.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- * Copyright (C) 2005 Refractions Research Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_GEOMGRAPH_INDEX_H
-#define GEOS_GEOMGRAPH_INDEX_H
-
-namespace geos {
-namespace geomgraph {
-
-/// \brief Contains classes that implement indexes for performing noding on
-/// geometry graph edges.
-namespace index {
-}
-}
-}
-
-#include <geos/geomgraph/index/EdgeSetIntersector.h>
-# include <geos/geomgraph/index/SimpleEdgeSetIntersector.h>
-# include <geos/geomgraph/index/SimpleSweepLineIntersector.h>
-# include <geos/geomgraph/index/SimpleMCSweepLineIntersector.h>
-
-#include <geos/geomgraph/index/SweepLineSegment.h>
-#include <geos/geomgraph/index/SweepLineEvent.h>
-#include <geos/geomgraph/index/SegmentIntersector.h>
-#include <geos/geomgraph/index/MonotoneChain.h>
-#include <geos/geomgraph/index/MonotoneChainIndexer.h>
-#include <geos/geomgraph/index/MonotoneChainEdge.h>
-
-#endif
-
-
diff --git a/include/geos/geosAlgorithm.h b/include/geos/geosAlgorithm.h
deleted file mode 100644
index f49c35d..0000000
--- a/include/geos/geosAlgorithm.h
+++ /dev/null
@@ -1,99 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2005-2006 Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************
- *
- * This includes all headers from geos/algorithm.
- * It is reccommended you avoid to include this file, but rather
- * you include the specific headers you need. This is to reduce
- * dependency and thus build times.
- * We kept this file to provide some degree of backward compatibility.
- * This is also where Doxygen documentation for the geos::algorithm
- * namespace resides.
- *
- **********************************************************************/
-
-#ifndef GEOS_ALGORITHM_H
-#define GEOS_ALGORITHM_H
-
-//#include <geos/algorithm/ConvexHull.h>
-//#include <geos/algorithm/HCoordinate.h>
-//#include <geos/algorithm/InteriorPointArea.h>
-//#include <geos/algorithm/InteriorPointLine.h>
-//#include <geos/algorithm/InteriorPointPoint.h>
-#include <geos/algorithm/LineIntersector.h>
-//#include <geos/algorithm/MinimumDiameter.h>
-//#include <geos/algorithm/NotRepresentableException.h>
-#include <geos/algorithm/PointLocator.h>
-//#include <geos/algorithm/SimplePointInAreaLocator.h>
-
-namespace geos {
-
-/** \brief
- * Contains classes and interfaces implementing fundamental computational geometry algorithms.
- *
- * <H3>Robustness</H3>
- *
- * Geometrical algorithms involve a combination of combinatorial and numerical computation.  As with
- * all numerical computation using finite-precision numbers, the algorithms chosen are susceptible to
- * problems of robustness.  A robustness problem occurs when a numerical calculation produces an
- * incorrect answer for some inputs due to round-off errors.  Robustness problems are especially
- * serious in geometric computation, since they can result in errors during topology building.
- * <P>
- * There are many approaches to dealing with the problem of robustness in geometrical computation.
- * Not surprisingly, most robust algorithms are substantially more complex and less performant than
- * the non-robust versions.  Fortunately, JTS is sensitive to robustness problems in only a few key
- * functions (such as line intersection and the point-in-polygon test).  There are efficient robust
- * algorithms available for these functions, and these algorithms are implemented in JTS.
- *
- * <H3>Computational Performance</H3>
- *
- * Runtime performance is an important consideration for a production-quality implementation of
- * geometric algorithms.  The most computationally intensive algorithm used in JTS is intersection
- * detection.  JTS methods need to determine both all intersection between the line segments in a
- * single Geometry (self-intersection) and all intersections between the line segments of two different
- * Geometries.
- * <P>
- * The obvious naive algorithm for intersection detection (comparing every segment with every other)
- * has unacceptably slow performance.  There is a large literature of faster algorithms for intersection
- * detection.  Unfortunately, many of them involve substantial code complexity.  JTS tries to balance code
- * simplicity with performance gains.  It uses some simple techniques to produce substantial performance
- * gains for common types of input data.
- *
- *
- * <h2>Package Specification</h2>
- *
- * <ul>
- *   <li>Java Topology Suite Technical Specifications
- *   <li><A HREF="http://www.opengis.org/techno/specs.htm">
- *       OpenGIS Simple Features Specification for SQL</A>
- * </ul>
- *
- */
-namespace algorithm { // geos::algorithm
-
-/** \brief
- * Classes which determine the Location of points in geometries.
- */
-namespace locate {
-} // namespace geos::algorithm::locate
-
-/// \brief Classes to compute distance metrics between geometries.
-namespace distance { // namespace geos::algorithm::distance
-} // namespace geos::algorithm::distance
-} // namespace geos::algorithm
-} // namespace geos
-
-
-#endif
-
diff --git a/include/geos/indexBintree.h b/include/geos/indexBintree.h
deleted file mode 100644
index fd139b5..0000000
--- a/include/geos/indexBintree.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2006 Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_INDEXBINTREE_H
-#define GEOS_INDEXBINTREE_H
-
-namespace geos {
-namespace index { // geos.index
-
-/// Contains classes that implement a Binary Interval Tree index
-namespace bintree { // geos.index.bintree
-
-} // namespace geos.index.bintree
-} // namespace geos.index
-} // namespace geos
-
-#include <geos/index/bintree/Bintree.h>
-#include <geos/index/bintree/Interval.h>
-//#include <geos/index/bintree/Key.h>
-//#include <geos/index/bintree/Node.h>
-//#include <geos/index/bintree/NodeBase.h>
-//#include <geos/index/bintree/Root.h>
-
-#endif
diff --git a/include/geos/indexChain.h b/include/geos/indexChain.h
deleted file mode 100644
index efcd7bb..0000000
--- a/include/geos/indexChain.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_INDEXCHAIN_H
-#define GEOS_INDEXCHAIN_H
-
-namespace geos {
-namespace index { // geos.index
-
-/// Contains classes that implement Monotone Chains
-namespace chain { // geos.index.chain
-
-} // namespace geos.index.chain
-} // namespace geos.index
-} // namespace geos
-
-#include <geos/index/chain/MonotoneChain.h>
-//#include <geos/index/chain/MonotoneChainBuilder.h>
-#include <geos/index/chain/MonotoneChainOverlapAction.h>
-#include <geos/index/chain/MonotoneChainSelectAction.h>
-
-#endif
-
diff --git a/include/geos/indexIntervalRTree.h b/include/geos/indexIntervalRTree.h
deleted file mode 100644
index c0a2da4..0000000
--- a/include/geos/indexIntervalRTree.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2006 Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_INDEXINTERVALRTREE_H
-#define GEOS_INDEXINTERVALRTREE_H
-
-namespace geos {
-namespace index { // geos.index
-
-/** \brief
- * Contains classes that implement a static index on a set of 1-dimensional intervals,
- * using an R-Tree packed based on the order of the interval midpoints.
- */
-namespace intervalrtree { // geos.index.intervalrtree
-
-} // namespace geos.index.intervalrtree
-} // namespace geos.index
-} // namespace geos
-
-#endif //GEOS_INDEXINTERVALRTREE_H
-
diff --git a/include/geos/indexQuadtree.h b/include/geos/indexQuadtree.h
deleted file mode 100644
index 567c8a7..0000000
--- a/include/geos/indexQuadtree.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2006 Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_INDEXQUADTREE_H
-#define GEOS_INDEXQUADTREE_H
-
-namespace geos {
-namespace index { // geos.index
-
-/// Contains classes that implement a Quadtree spatial index
-namespace quadtree { // geos.index.quadtree
-
-} // namespace geos.index.quadtree
-} // namespace geos.index
-} // namespace geos
-
-//#include <geos/index/quadtree/DoubleBits.h>
-//#include <geos/index/quadtree/IntervalSize.h>
-//#include <geos/index/quadtree/Key.h>
-//#include <geos/index/quadtree/Node.h>
-#include <geos/index/quadtree/NodeBase.h>
-#include <geos/index/quadtree/Quadtree.h>
-#include <geos/index/quadtree/Root.h>
-
-#endif
-
diff --git a/include/geos/indexStrtree.h b/include/geos/indexStrtree.h
deleted file mode 100644
index 1896d56..0000000
--- a/include/geos/indexStrtree.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2006 Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_INDEXSTRTREE_H
-#define GEOS_INDEXSTRTREE_H
-
-namespace geos {
-namespace index { // geos.index
-
-/// Contains 2-D and 1-D versions of the Sort-Tile-Recursive (STR) tree, a query-only R-tree.
-namespace strtree { // geos.index.strtree
-
-} // namespace geos.index.strtree
-} // namespace geos.index
-} // namespace geos
-
-#include <geos/index/strtree/AbstractNode.h>
-#include <geos/index/strtree/AbstractSTRtree.h>
-#include <geos/index/strtree/Boundable.h>
-#include <geos/index/strtree/Interval.h>
-//#include <geos/index/strtree/ItemBoundable.h>
-#include <geos/index/strtree/SIRtree.h>
-#include <geos/index/strtree/STRtree.h>
-
-#endif // GEOS_INDEXSTRTREE_H
diff --git a/include/geos/indexSweepline.h b/include/geos/indexSweepline.h
deleted file mode 100644
index a601498..0000000
--- a/include/geos/indexSweepline.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2006 Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_INDEXSWEEPLINE_H
-#define GEOS_INDEXSWEEPLINE_H
-
-namespace geos {
-namespace index { // geos.index
-
-/// \brief
-/// Contains classes which implement a sweepline algorithm
-/// for scanning geometric data structures.
-///
-namespace sweepline { // geos.index.sweepline
-
-} // namespace geos.index.sweepline
-} // namespace geos.index
-} // namespace geos
-
-//#include <geos/index/sweepline/SweepLineEvent.h>
-//#include <geos/index/sweepline/SweepLineIndex.h>
-//#include <geos/index/sweepline/SweepLineInterval.h>
-#include <geos/index/sweepline/SweepLineOverlapAction.h>
-
-#endif
diff --git a/include/geos/io.h b/include/geos/io.h
deleted file mode 100644
index 3f79540..0000000
--- a/include/geos/io.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2005-2006 Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_IO_H
-#define GEOS_IO_H
-
-namespace geos {
-
-/// Contains the interfaces for converting JTS objects to and from other formats.
-//
-/// The Java Topology Suite (JTS) is a Java API that implements a core
-/// set of spatial data operations usin g an explicit precision model
-/// and robust geometric algorithms. JTS is intended to be used in the
-/// devel opment of applications that support the validation, cleaning,
-/// integration and querying of spatial data sets.
-///
-/// JTS attempts to implement the OpenGIS Simple Features Specification
-/// (SFS) as accurately as possible.  In some cases the SFS is unclear
-/// or omits a specification; in this case JTS attempts to choose a reaso
-/// nable and consistent alternative.  Differences from and elaborations
-/// of the SFS are documented in this specification.
-///
-/// <h2>Package Specification</h2>
-///
-/// <ul>
-/// <li>Java Topology Suite Technical Specifications
-/// <li><A HREF="http://www.opengis.org/techno/specs.htm">
-///   OpenGIS Simple Features Specification for SQL</A>
-/// </ul>
-///
-namespace io { // geos.io
-
-} // namespace geos.io
-} // namespace geos
-
-#include <geos/io/ByteOrderDataInStream.h>
-#include <geos/io/ByteOrderValues.h>
-#include <geos/io/ParseException.h>
-//#include <geos/io/StringTokenizer.h>
-#include <geos/io/WKBConstants.h>
-#include <geos/io/WKBReader.h>
-#include <geos/io/WKBWriter.h>
-#include <geos/io/WKTReader.h>
-#include <geos/io/WKTWriter.h>
-#include <geos/io/CLocalizer.h>
-//#include <geos/io/Writer.h>
-
-#ifdef __GNUC__
-#warning *** DEPRECATED: You are using deprecated header io.h. Please, update your sources according to new layout of GEOS headers and namespaces
-#endif
-
-using namespace geos::io;
-
-#endif
diff --git a/include/geos/namespaces.h b/include/geos/namespaces.h
new file mode 100644
index 0000000..dc7951b
--- /dev/null
+++ b/include/geos/namespaces.h
@@ -0,0 +1,317 @@
+/**********************************************************************
+ *
+ * GEOS - Geometry Engine Open Source
+ * http://geos.osgeo.org
+ *
+ * Copyright (C) 2019   Nicklas Larsson
+ *
+ * This is free software; you can redistribute and/or modify it under
+ * the terms of the GNU Lesser General Public Licence as published
+ * by the Free Software Foundation.
+ * See the COPYING file for more information.
+ *
+ **********************************************************************/
+
+#ifndef GEOS_NAMESPACES_H
+#define GEOS_NAMESPACES_H
+
+namespace geos {
+
+/// \brief
+/// Contains classes and interfaces implementing fundamental computational
+/// geometry algorithms.
+///
+/// ### Robustness
+///
+/// Geometrical algorithms involve a combination of combinatorial and numerical
+/// computation. As with all numerical computation using finite-precision
+/// numbers, the algorithms chosen are susceptible to problems of robustness.
+/// A robustness problem occurs when a numerical calculation produces an
+/// incorrect answer for some inputs due to round-off errors.  Robustness
+/// problems are especially serious in geometric computation, since they can
+/// result in errors during topology building.
+///
+/// There are many approaches to dealing with the problem of robustness in
+/// geometrical computation. Not surprisingly, most robust algorithms are
+/// substantially more complex and less performant than the non-robust
+/// versions. Fortunately, JTS is sensitive to robustness problems in only a
+/// few key functions (such as line intersection and the point-in-polygon
+/// test). There are efficient robust algorithms available for these
+/// functions, and these algorithms are implemented in JTS.
+///
+/// ### Computational Performance
+///
+/// Runtime performance is an important consideration for a production-quality
+/// implementation of geometric algorithms. The most computationally intensive
+/// algorithm used in JTS is intersection detection. JTS methods need to
+/// determine both all intersection between the line segments in a single
+/// Geometry (self-intersection) and all intersections between the line
+/// segments of two different Geometries.
+///
+/// The obvious naive algorithm for intersection detection (comparing every
+/// segment with every other) has unacceptably slow performance. There is a
+/// large literature of faster algorithms for intersection detection.
+/// Unfortunately, many of them involve substantial code complexity. JTS tries
+/// to balance code simplicity with performance gains. It uses some simple
+/// techniques to produce substantial performance gains for common types of
+/// input data.
+///
+/// ### Package Specification
+///
+/// - Java Topology Suite Technical Specifications
+/// - <A HREF="http://www.opengis.org/techno/specs.htm">
+///       OpenGIS Simple Features Specification for SQL</A>
+    namespace algorithm { // geos::algorithm
+
+    /// Classes to compute distance metrics between geometries.
+    namespace distance {}
+
+    /// Classes which determine the Location of points in geometries.
+    namespace locate {}
+} // namespace geos::algorithm
+
+namespace geom { // geos.geom
+
+    /// \brief
+    /// Contains classes and interfaces implementing algorithms that optimize
+    /// the performance of repeated calls to specific geometric operations.
+    namespace prep {}
+
+    /// \brief
+    /// Provides classes that parse and modify Geometry objects.
+    namespace util {}
+} // namespace geos.geom
+
+/// \brief
+/// Contains classes that implement topology graphs.
+///
+/// The Java Topology Suite (JTS) is a Java API that implements a core set of
+/// spatial data operations using an explicit precision model and robust
+/// geometric algorithms. JTS is int ended to be used in the development of
+/// applications that support the validation, cleaning, integration and
+/// querying of spatial datasets.
+///
+/// JTS attempts to implement the OpenGIS Simple Features Specification (SFS)
+/// as accurately as possible.  In some cases the SFS is unclear or omits a
+/// specification; in this case JTS attempts to choose a reasonable and
+/// consistent alternative.  Differences from and elaborations of the SFS are
+/// documented in this specification.
+///
+/// ### Package Specification
+///
+/// - Java Topology Suite Technical Specifications
+/// - <A HREF="http://www.opengis.org/techno/specs.htm">
+///   OpenGIS Simple Features Specification for SQL</A>
+namespace geomgraph { // geos.geomgraph
+
+    /// \brief
+    /// Contains classes that implement indexes for performing noding on
+    /// geometry graph edges.
+    namespace index {}
+} // namespace geos.geomgraph
+
+
+/// Provides classes for various kinds of spatial indexes.
+namespace index { // geos.index
+
+    /// Contains classes that implement a Binary Interval Tree index
+    namespace bintree {}
+
+    /// Contains classes that implement Monotone Chains
+    namespace chain {}
+
+    /// \brief Contains classes that implement a static index on a set of
+    /// 1-dimensional intervals, using an R-Tree packed based on the order of
+    /// the interval midpoints.
+    namespace intervalrtree {}
+
+    /// Contains classes that implement a Quadtree spatial index
+    namespace quadtree {}
+
+    /// \brief Contains 2-D and 1-D versions of the Sort-Tile-Recursive (STR)
+    /// tree, a query-only R-tree.
+    namespace strtree {}
+
+    /// \brief Contains classes which implement a sweepline algorithm for
+    /// scanning geometric data structures.
+    namespace sweepline {}
+} // namespace geos.index
+
+/// \brief
+/// Contains the interfaces for converting JTS objects to and from other
+/// formats.
+///
+/// The Java Topology Suite (JTS) is a Java API that implements a core set of
+/// spatial data operations usin g an explicit precision model and robust
+/// geometric algorithms. JTS is intended to be used in the devel opment of
+/// applications that support the validation, cleaning, integration and
+/// querying of spatial data sets.
+///
+/// JTS attempts to implement the OpenGIS Simple Features Specification (SFS)
+/// as accurately as possible.  In some cases the SFS is unclear or omits a
+/// specification; in this case JTS attempts to choose a reasonable and
+/// consistent alternative.  Differences from and elaborations of the SFS are
+/// documented in this specification.
+///
+/// ### Package Specification
+///
+/// - Java Topology Suite Technical Specifications
+/// - <A HREF="http://www.opengis.org/techno/specs.htm">
+///   OpenGIS Simple Features Specification for SQL</A>
+///
+namespace io {}
+
+/// \brief Contains classes and interfaces implementing linear referencing on
+/// linear geometries.
+namespace linearref {}
+
+/// \brief Classes to compute nodings for arrangements of line segments and
+/// line segment sequences.
+namespace noding { // geos.noding
+
+    /// \brief Contains classes to implement the Snap Rounding algorithm for
+    /// noding linestrings.
+    namespace snapround {}
+} // namespace geos.noding
+
+/// Provides classes for implementing operations on geometries.
+namespace operation { // geos.operation
+
+    /// Provides classes for computing buffers of geometries
+    namespace buffer {}
+
+    /// Provides classes for computing the distance between geometries.
+    namespace distance {}
+
+    /// \brief Provides classes for computing the intersection of a Geometry
+    /// and a clipping Rectangle.
+    namespace intersection {}
+
+    /// Line merging package.
+    namespace linemerge {}
+
+    /// \brief
+    /// Contains classes that perform a topological overlay to compute boolean
+    /// spatial functions.
+    ///
+    /// The Overlay Algorithm is used in spatial analysis methods for computing
+    /// set-theoretic operations (boolean combinations) of input
+    /// [Geometrys](\ref geom::Geometry).
+    /// The algorithm for computing the overlay uses the intersection operations
+    /// supported by topology graphs. To compute an overlay it is necessary to
+    /// explicitly compute the resultant graph formed by the computed
+    /// intersections.
+    ///
+    /// The algorithm to compute a set-theoretic spatial analysis method has the
+    /// following steps:
+    ///
+    /// - Build topology graphs of the two input geometries. For each geometry
+    ///   all self-intersection nodes are computed and added to the graph.
+    /// - Compute nodes for all intersections between edges and nodes of the
+    ///   graphs.
+    /// - Compute the labeling for the computed nodes by merging the labels from
+    ///   the input graphs.
+    /// - Compute new edges between the compute intersection nodes.
+    ///   Label the edges appropriately.
+    /// - Build the resultant graph from the new nodes and edges.
+    /// - Compute the labeling for isolated components of the graph. Add the
+    ///   isolated components to the resultant graph.
+    /// - Compute the result of the boolean combination by selecting the node
+    ///   and edges with the appropriate labels. Polygonize areas and sew linear
+    ///   geometries together.
+    ///
+    /// ### Package Specification
+    ///
+    /// - Java Topology Suite Technical Specifications
+    /// - <A HREF="http://www.opengis.org/techno/specs.htm">
+    ///   OpenGIS Simple Features Specification for SQL</A>
+    namespace overlay {}
+
+    /// An API for polygonizing sets of lines.
+    namespace polygonize {}
+
+    /// \brief Classes which implement topological predicates optimized for
+    /// particular kinds of geometries.
+    namespace predicate {}
+
+    /// \brief Contains classes to implement the computation of the spatial
+    /// relationships of `Geometry`s.
+    ///
+    /// The `relate` algorithm computes the `IntersectionMatrix` describing the
+    /// relationship of two `Geometry`s. The algorithm for computing `relate`
+    /// uses the intersection operations supported by topology graphs. Although
+    /// the `relate` result depends on the resultant graph formed by the
+    /// computed intersections, there is no need to explicitly compute the
+    /// entire graph. It is sufficient to compute the local structure of the
+    /// graph at each intersection node.
+    ///
+    /// The algorithm to compute `relate` has the following steps:
+    ///
+    /// - Build topology graphs of the two input geometries. For each geometry
+    ///   all self-intersection nodes are computed and added to the graph.
+    /// - Compute nodes for all intersections between edges and nodes of the
+    ///   graphs.
+    /// - Compute the labeling for the computed nodes by merging the labels
+    ///   from the input graphs.
+    /// - Compute the labeling for isolated components of the graph (see below)
+    /// - Compute the `IntersectionMatrix` from the labels on the nodes and
+    ///   edges.
+    ///
+    /// ### Labeling isolated components
+    ///
+    /// Isolated components are components (edges or nodes) of an input
+    /// `Geometry` which do not contain any intersections with the other input
+    /// `Geometry`. The topological relationship of these components to the
+    /// other input `Geometry` must be computed in order to determine the
+    /// complete labeling of the component. This can be done by testing whether
+    /// the component lies in the interior or exterior of the other `Geometry`.
+    /// If the other `Geometry` is 1-dimensional, the isolated component must
+    /// lie in the exterior (since otherwise it would have an intersection with
+    /// an edge of the `Geometry`). If the other `Geometry` is 2-dimensional,
+    /// a Point-In-Polygon test can be used to determine whether the isolated
+    /// component is in the interior or exterior.
+    ///
+    /// ### Package Specification
+    ///
+    /// - Java Topology Suite Technical Specifications
+    /// - <A HREF="http://www.opengis.org/techno/specs.htm">
+    ///    OpenGIS Simple Features Specification for SQL</A>
+    namespace relate {}
+
+    /// Find shared paths among two linear Geometry objects.
+    namespace sharedpaths {}
+
+    /// Classes to perform efficient unioning of collections of geometries.
+    namespace geounion {}
+
+    /// Provides classes for testing the validity of geometries.
+    namespace valid {}
+} // namespace geos.operation
+
+/// Contains classes to implement a planar graph data structure.
+namespace planargraph { // geos::planargraph
+
+    /// Planargraph algorithms.
+    namespace algorithm {}
+} // namespace geos::planargraph
+
+/// Provides classes for manipulating the precision model of Geometries.
+namespace precision {}
+
+/// Classes which implement algorithms for simplifying or generalizing geometries.
+namespace simplify {}
+
+/// Classes to compute Delaunay triangulations.
+namespace triangulate { // geos.triangulate
+
+    /// \brief Classes to implement a topological subdivision of quadeges, to
+    /// support creating triangulations and Voronoi diagrams.
+    namespace quadedge {}
+} // namespace geos.triangulate
+
+/// Utility classes for GEOS.
+namespace util {}
+
+} // namespace geos
+
+#endif // GEOS_NAMESPACES_H
diff --git a/include/geos/noding.h b/include/geos/noding.h
deleted file mode 100644
index 92dec8c..0000000
--- a/include/geos/noding.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2006      Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************
- *
- * Kept for backward compatibility, avoid to include
- * directly, include <geos/noding/whatever.h> instead.
- *
- **********************************************************************/
-
-#ifndef GEOS_NODING_H
-#define GEOS_NODING_H
-
-//#include <geos/noding/IntersectionAdder.h>
-//#include <geos/noding/IntersectionFinderAdder.h>
-//#include <geos/noding/IteratedNoder.h>
-//#include <geos/noding/MCIndexNoder.h>
-//#include <geos/noding/Noder.h>
-//#include <geos/noding/NodingValidator.h>
-//#include <geos/noding/Octant.h>
-//#include <geos/noding/ScaledNoder.h>
-//#include <geos/noding/SegmentIntersector.h>
-//#include <geos/noding/SegmentNode.h>
-//#include <geos/noding/SegmentNodeList.h>
-//#include <geos/noding/SegmentString.h>
-//#include <geos/noding/SimpleNoder.h>
-//#include <geos/noding/SinglePassNoder.h>
-
-namespace geos {
-
-/// Classes to compute nodings for arrangements of line segments and line segment sequences.
-namespace noding { // geos.noding
-
-} // namespace geos.noding
-} // namespace geos
-
-
-#endif
-
diff --git a/include/geos/nodingSnapround.h b/include/geos/nodingSnapround.h
deleted file mode 100644
index 001df48..0000000
--- a/include/geos/nodingSnapround.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- * Copyright (C) 2006 Refractions Research Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_NODING_SNAPROUND_H
-#define GEOS_NODING_SNAPROUND_H
-
-namespace geos {
-namespace noding { // geos.noding
-
-/// \brief
-/// Contains classes to implement the Snap Rounding algorithm for
-/// noding linestrings.
-namespace snapround { // geos.noding.snapround
-
-} // namespace geos.noding.snapround
-} // namespace geos.noding
-} // namespace geos
-
-//#include <geos/noding/snapround/HotPixel.h>
-//#include <geos/noding/snapround/SimpleSnapRounder.h>
-//#include <geos/noding/snapround/MCIndexSnapRounder.h>
-//#include <geos/noding/snapround/MCIndexPointSnapper.h>
-
-#endif
-
-
diff --git a/include/geos/opBuffer.h b/include/geos/opBuffer.h
deleted file mode 100644
index ef6b13c..0000000
--- a/include/geos/opBuffer.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- * Copyright (C) 2005 Refractions Research Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_OPBUFFER_H
-#define GEOS_OPBUFFER_H
-
-namespace geos {
-namespace operation { // geos.operation
-
-/// Provides classes for computing buffers of geometries
-namespace buffer {
-} // namespace geos.operation.buffer
-} // namespace geos.operation
-} // namespace geos
-
-#include <geos/operation/buffer/BufferOp.h>
-
-// This is needed for enum values
-#include <geos/operation/buffer/OffsetCurveBuilder.h>
-
-//#include <geos/operation/buffer/BufferBuilder.h>
-//#include <geos/operation/buffer/OffsetCurveSetBuilder.h>
-//#include <geos/operation/buffer/BufferSubgraph.h>
-//#include <geos/operation/buffer/SubgraphDepthLocater.h>
-//#include <geos/operation/buffer/RightmostEdgeFinder.h>
-
-#endif // ndef GEOS_OPBUFFER_H
-
diff --git a/include/geos/opDistance.h b/include/geos/opDistance.h
deleted file mode 100644
index a61a317..0000000
--- a/include/geos/opDistance.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- * Copyright (C) 2006 Refractions Research Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_OPDISTANCE_H
-#define GEOS_OPDISTANCE_H
-
-namespace geos {
-namespace operation { // geos.operation
-
-/// Provides classes for computing the distance between geometries
-namespace distance { // geos.operation.distance
-
-} // namespace geos.operation.distance
-} // namespace geos.operation
-} // namespace geos
-
-//#include <geos/operation/distance/ConnectedElementLocationFilter.h>
-//#include <geos/operation/distance/ConnectedElementPointFilter.h>
-#include <geos/operation/distance/DistanceOp.h>
-//#include <geos/operation/distance/GeometryLocation.h>
-
-#endif
-
diff --git a/include/geos/opLinemerge.h b/include/geos/opLinemerge.h
deleted file mode 100644
index 63b2926..0000000
--- a/include/geos/opLinemerge.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2006 Refractions Research Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_OPLINEMERGE_H
-#define GEOS_OPLINEMERGE_H
-
-namespace geos {
-namespace operation { // geos::operation
-
-/// Line merging package
-namespace linemerge { // geos::operation::linemerge
-
-} // namespace geos::operation::linemerge
-} // namespace geos::operation
-} // namespace geos
-
-//#include <geos/operation/linemerge/EdgeString.h>
-//#include <geos/operation/linemerge/LineMergeDirectedEdge.h>
-//#include <geos/operation/linemerge/LineMergeEdge.h>
-//#include <geos/operation/linemerge/LineMergeGraph.h>
-#include <geos/operation/linemerge/LineMerger.h>
-//#include <geos/operation/linemerge/LineSequencer.h>
-
-#endif
-
diff --git a/include/geos/opOverlay.h b/include/geos/opOverlay.h
deleted file mode 100644
index 41a24c2..0000000
--- a/include/geos/opOverlay.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2005-2006 Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_OPOVERLAY_H
-#define GEOS_OPOVERLAY_H
-
-namespace geos {
-namespace operation {
-
-/** \brief
- * Contains classes that perform a topological overlay to compute boolean
- * spatial functions.
- *
- * The Overlay Algorithm is used in spatial analysis methods for computing
- * set-theoretic operations (boolean combinations) of input
- * [Geometrys](@ref geom::Geometry).
- * The algorithm for computing the overlay uses the intersection operations
- * supported by topology graphs.
- * To compute an overlay it is necessary to explicitly compute the resultant
- * graph formed by the computed intersections.
- *
- * The algorithm to compute a set-theoretic spatial analysis method has the
- * following steps:
- *
- *  - Build topology graphs of the two input geometries.  For each geometry all
- *    self-intersection nodes are computed and added to the graph.
- *  - Compute nodes for all intersections between edges and nodes of the graphs.
- *  - Compute the labeling for the computed nodes by merging the labels from
- *    the input graphs.
- *  - Compute new edges between the compute intersection nodes.
- *    Label the edges appropriately.
- *  - Build the resultant graph from the new nodes and edges.
- *  - Compute the labeling for isolated components of the graph.  Add the
- *    isolated components to the resultant graph.
- *  - Compute the result of the boolean combination by selecting the node
- *    and edges with the appropriate labels. Polygonize areas and sew linear
- *    geometries together.
- *
- * <h2>Package Specification</h2>
- *
- * - Java Topology Suite Technical Specifications
- * - <A HREF="http://www.opengis.org/techno/specs.htm">
- *   OpenGIS Simple Features Specification for SQL</A>
- *
- */
-namespace overlay { // geos.operation.overlay
-
-} // namespace geos.operation.overlay
-} // namespace geos.operation
-} // namespace geos
-
-#include <geos/operation/overlay/OverlayOp.h>
-//#include <geos/operation/overlay/PolygonBuilder.h>
-//#include <geos/operation/overlay/PointBuilder.h>
-//#include <geos/operation/overlay/LineBuilder.h>
-//#include <geos/operation/overlay/MinimalEdgeRing.h>
-//#include <geos/operation/overlay/MaximalEdgeRing.h>
-//#include <geos/operation/overlay/OverlayNodeFactory.h>
-//#include <geos/operation/overlay/EdgeSetNoder.h>
-//#include <geos/operation/overlay/ElevationMatrix.h>
-
-#endif
-
diff --git a/include/geos/opPolygonize.h b/include/geos/opPolygonize.h
deleted file mode 100644
index 43ea58e..0000000
--- a/include/geos/opPolygonize.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-
-#ifndef GEOS_OPPOLYGONIZE_H
-#define GEOS_OPPOLYGONIZE_H
-
-namespace geos {
-namespace operation { // geos.operation
-
-/// An API for polygonizing sets of lines.
-namespace polygonize { // geos.operation.polygonize
-
-} // namespace geos.operation.polygonize
-} // namespace geos.operation
-} // namespace geos
-
-//#include <geos/operation/polygonize/EdgeRing.h>
-//#include <geos/operation/polygonize/PolygonizeDirectedEdge.h>
-//#include <geos/operation/polygonize/PolygonizeEdge.h>
-//#include <geos/operation/polygonize/PolygonizeGraph.h>
-#include <geos/operation/polygonize/Polygonizer.h>
-
-#endif
-
diff --git a/include/geos/opPredicate.h b/include/geos/opPredicate.h
deleted file mode 100644
index 06a5358..0000000
--- a/include/geos/opPredicate.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2006 Refractions Research Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_OPPREDICATE_H
-#define GEOS_OPPREDICATE_H
-
-namespace geos {
-namespace operation {
-
-/// Classes which implement topological predicates optimized for particular kinds of geometries.
-namespace predicate {
-
-} // namespace predicate
-} // namespace operation
-} // namespace geos
-
-//#include <geos/operation/predicate/RectangleContains.h>
-//#include <geos/operation/predicate/RectangleIntersects.h>
-//#include <geos/operation/predicate/SegmentIntersectionTester.h>
-
-#endif // ifndef GEOS_OPPREDICATE_H
diff --git a/include/geos/opRelate.h b/include/geos/opRelate.h
deleted file mode 100644
index dc9ad7f..0000000
--- a/include/geos/opRelate.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- * Copyright (C) 2005 Refractions Research Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_OPRELATE_H
-#define GEOS_OPRELATE_H
-
-namespace geos {
-namespace operation { // geos::operation
-
-
-/** \brief
- * Contains classes to implement the computation of the spatial relationships of <CODE>Geometry</CODE>s.
- *
- * The <code>relate</code> algorithm computes the <code>IntersectionMatrix</code> describing the
- * relationship of two <code>Geometry</code>s.  The algorithm for computing <code>relate</code>
- * uses the intersection operations supported by topology graphs.  Although the <code>relate</code>
- * result depends on the resultant graph formed by the computed intersections, there is
- * no need to explicitly compute the entire graph.
- * It is sufficient to compute the local structure of the graph
- * at each intersection node.
- * <P>
- * The algorithm to compute <code>relate</code> has the following steps:
- * <UL>
- *   <LI>Build topology graphs of the two input geometries. For each geometry
- *       all self-intersection nodes are computed and added to the graph.
- *   <LI>Compute nodes for all intersections between edges and nodes of the graphs.
- *   <LI>Compute the labeling for the computed nodes by merging the labels from the input graphs.
- *   <LI>Compute the labeling for isolated components of the graph (see below)
- *   <LI>Compute the <code>IntersectionMatrix</code> from the labels on the nodes and edges.
- * </UL>
- *
- * <H3>Labeling isolated components</H3>
- *
- * Isolated components are components (edges or nodes) of an input <code>Geometry</code> which
- * do not contain any intersections with the other input <code>Geometry</code>.  The
- * topological relationship of these components to the other input <code>Geometry</code>
- * must be computed in order to determine the complete labeling of the component.  This can
- * be done by testing whether the component lies in the interior or exterior of the other
- * <code>Geometry</code>.  If the other <code>Geometry</code> is 1-dimensional, the isolated
- * component must lie in the exterior (since otherwise it would have an intersection with an
- * edge of the <code>Geometry</code>).  If the other <code>Geometry</code> is 2-dimensional,
- * a Point-In-Polygon test can be used to determine whether the isolated component is in the
- * interior or exterior.
- *
- * <h2>Package Specification</h2>
- *
- * <ul>
- *   <li>Java Topology Suite Technical Specifications
- *   <li><A HREF="http://www.opengis.org/techno/specs.htm">
- *       OpenGIS Simple Features Specification for SQL</A>
- * </ul>
- *
- */
-namespace relate { // geos.operation.relate
-
-} // namespace geos:operation:relate
-} // namespace geos:operation
-} // namespace geos
-
-
-//#include <geos/operation/relate/EdgeEndBuilder.h>
-//#include <geos/operation/relate/EdgeEndBundle.h>
-//#include <geos/operation/relate/EdgeEndBundleStar.h>
-#include <geos/operation/relate/RelateComputer.h>
-//#include <geos/operation/relate/RelateNode.h>
-//#include <geos/operation/relate/RelateNodeFactory.h>
-//#include <geos/operation/relate/RelateNodeGraph.h>
-#include <geos/operation/relate/RelateOp.h>
-
-#endif
-
diff --git a/include/geos/opValid.h b/include/geos/opValid.h
deleted file mode 100644
index 7c23162..0000000
--- a/include/geos/opValid.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2005-2006 Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_OPVALID_H
-#define GEOS_OPVALID_H
-
-namespace geos {
-namespace operation { // geos.operation
-
-/// Provides classes for testing the validity of geometries.
-namespace valid { // geos.operation.valid
-
-} // namespace geos.operation.valid
-} // namespace geos.operation
-} // namespace geos
-
-//#include <geos/operation/valid/ConnectedInteriorTester.h>
-//#include <geos/operation/valid/ConsistentAreaTester.h>
-#include <geos/operation/valid/IsValidOp.h>
-//#include <geos/operation/valid/QuadtreeNestedRingTester.h>
-//#include <geos/operation/valid/RepeatedPointTester.h>
-//#include <geos/operation/valid/SimpleNestedRingTester.h>
-//#include <geos/operation/valid/SweeplineNestedRingTester.h>
-#include <geos/operation/valid/TopologyValidationError.h>
-
-#endif
diff --git a/include/geos/operation.h b/include/geos/operation.h
deleted file mode 100644
index a8c7ebd..0000000
--- a/include/geos/operation.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- * Copyright (C) 2005 Refractions Research Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************
- *
- * Don't include this file, rather include from <geos/operation/class.h>
- *
- **********************************************************************/
-
-#ifndef GEOS_OPERATION_H
-#define GEOS_OPERATION_H
-
-namespace geos {
-
-/// Provides classes for implementing operations on geometries
-namespace operation { // geos.operation
-
-} // namespace geos.operation
-} // namespace geos
-
-#include <geos/operation/GeometryGraphOperation.h>
-#include <geos/operation/IsSimpleOp.h>
-
-#endif
diff --git a/include/geos/planargraph.h b/include/geos/planargraph.h
deleted file mode 100644
index 905ebda..0000000
--- a/include/geos/planargraph.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- * Copyright (C) 2005-2006 Refractions Research Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_PLANARGRAPH_H
-#define GEOS_PLANARGRAPH_H
-
-namespace geos {
-
-/// Contains classes to implement a planar graph data structure.
-namespace planargraph { // geos::planargraph
-
-/// Planargraph algorithms
-namespace algorithm { // geos::planargraph::algorithm
-
-} // namespace geos::planargraph::algorithm
-} // namespace geos::planargraph
-} // namespace geos
-
-//#include <geos/planargraph/GraphComponent.h>
-//#include <geos/planargraph/DirectedEdgeStar.h>
-//#include <geos/planargraph/Node.h>
-//#include <geos/planargraph/Edge.h>
-//#include <geos/planargraph/DirectedEdge.h>
-#include <geos/planargraph/NodeMap.h>
-#include <geos/planargraph/PlanarGraph.h>
-//#include <geos/planargraph/Subgraph.h>
-//#include <geos/planargraph/algorithm/ConnectedSubgraphFinder.h>
-
-#endif
-
diff --git a/include/geos/precision.h b/include/geos/precision.h
deleted file mode 100644
index 2aef2f4..0000000
--- a/include/geos/precision.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2005-2006 Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_PRECISION_H
-#define GEOS_PRECISION_H
-
-namespace geos {
-
-/// Provides classes for manipulating the precision model of Geometries
-namespace precision { // geos.precision
-
-} // namespace geos.precision
-} // namespace geos
-
-//#include <geos/precision/CommonBits.h>
-#include <geos/precision/CommonBitsOp.h>
-//#include <geos/precision/CommonBitsRemover.h>
-#include <geos/precision/EnhancedPrecisionOp.h>
-#include <geos/precision/SimpleGeometryPrecisionReducer.h>
-
-#endif
diff --git a/include/geos/spatialIndex.h b/include/geos/spatialIndex.h
deleted file mode 100644
index 210685a..0000000
--- a/include/geos/spatialIndex.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2006 Refractions Research Inc.
- * Copyright (C) 2001-2002 Vivid Solutions Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation.
- * See the COPYING file for more information.
- *
- **********************************************************************/
-
-#ifndef GEOS_INDEX_H
-#define GEOS_INDEX_H
-
-namespace geos {
-
-/// Provides classes for various kinds of spatial indexes.
-namespace index {
-
-} // namespace geos.index
-} // namespace geos
-
-#include <geos/index/SpatialIndex.h>
-#include <geos/index/ItemVisitor.h>
-
-#endif // GEOS_INDEX_H

-----------------------------------------------------------------------

Summary of changes:
 doc/example.cpp                                    |   4 +-
 include/geos.h                                     |  10 +-
 include/geos/Makefile.am                           |  27 +-
 include/geos/algorithm/InteriorPointPoint.h        |   2 +-
 include/geos/algorithm/NotRepresentableException.h |   2 +-
 include/geos/algorithm/PointLocator.h              |   2 +-
 include/geos/geomPrep.h                            |  38 ---
 include/geos/geomUtil.h                            |  39 ---
 include/geos/geomgraph.h                           |  78 -----
 include/geos/geomgraphindex.h                      |  43 ---
 include/geos/geosAlgorithm.h                       |  99 -------
 include/geos/index/quadtree/IntervalSize.h         |   2 +-
 include/geos/index/quadtree/Root.h                 |   2 +-
 include/geos/indexBintree.h                        |  36 ---
 include/geos/indexChain.h                          |  34 ---
 include/geos/indexIntervalRTree.h                  |  33 ---
 include/geos/indexQuadtree.h                       |  38 ---
 include/geos/indexStrtree.h                        |  37 ---
 include/geos/indexSweepline.h                      |  37 ---
 include/geos/io.h                                  |  66 -----
 include/geos/io/ByteOrderDataInStream.h            |   2 +-
 include/geos/io/ByteOrderValues.h                  |   2 +-
 include/geos/io/ParseException.h                   |   2 +-
 include/geos/io/WKBReader.h                        |   2 +-
 include/geos/io/WKBWriter.h                        |   2 +-
 include/geos/io/WKTReader.h                        |   2 +-
 include/geos/io/WKTWriter.h                        |   2 +-
 include/geos/namespaces.h                          | 319 +++++++++++++++++++++
 include/geos/noding.h                              |  49 ----
 include/geos/nodingSnapround.h                     |  38 ---
 include/geos/opBuffer.h                            |  40 ---
 include/geos/opDistance.h                          |  35 ---
 include/geos/opLinemerge.h                         |  36 ---
 include/geos/opOverlay.h                           |  75 -----
 include/geos/opPolygonize.h                        |  36 ---
 include/geos/opPredicate.h                         |  32 ---
 include/geos/opRelate.h                            |  83 ------
 include/geos/opValid.h                             |  38 ---
 include/geos/operation.h                           |  34 ---
 include/geos/operation/buffer/BufferOp.h           |   2 +-
 include/geos/operation/buffer/OffsetCurveBuilder.h |   2 +-
 .../geos/operation/buffer/OffsetCurveSetBuilder.h  |   2 +-
 .../geos/operation/buffer/SubgraphDepthLocater.h   |   2 +-
 include/geos/planargraph.h                         |  42 ---
 include/geos/planargraph/PlanarGraph.h             |   2 +-
 include/geos/precision.h                           |  33 ---
 include/geos/spatialIndex.h                        |  30 --
 include/geos/util.h                                |   3 -
 src/noding/snapround/MCIndexPointSnapper.cpp       |   3 +-
 tests/xmltester/CTS.cpp                            |  10 +-
 tests/xmltester/XMLTester.cpp                      |   9 +-
 51 files changed, 364 insertions(+), 1234 deletions(-)
 delete mode 100644 include/geos/geomPrep.h
 delete mode 100644 include/geos/geomUtil.h
 delete mode 100644 include/geos/geomgraph.h
 delete mode 100644 include/geos/geomgraphindex.h
 delete mode 100644 include/geos/geosAlgorithm.h
 delete mode 100644 include/geos/indexBintree.h
 delete mode 100644 include/geos/indexChain.h
 delete mode 100644 include/geos/indexIntervalRTree.h
 delete mode 100644 include/geos/indexQuadtree.h
 delete mode 100644 include/geos/indexStrtree.h
 delete mode 100644 include/geos/indexSweepline.h
 delete mode 100644 include/geos/io.h
 create mode 100644 include/geos/namespaces.h
 delete mode 100644 include/geos/noding.h
 delete mode 100644 include/geos/nodingSnapround.h
 delete mode 100644 include/geos/opBuffer.h
 delete mode 100644 include/geos/opDistance.h
 delete mode 100644 include/geos/opLinemerge.h
 delete mode 100644 include/geos/opOverlay.h
 delete mode 100644 include/geos/opPolygonize.h
 delete mode 100644 include/geos/opPredicate.h
 delete mode 100644 include/geos/opRelate.h
 delete mode 100644 include/geos/opValid.h
 delete mode 100644 include/geos/operation.h
 delete mode 100644 include/geos/planargraph.h
 delete mode 100644 include/geos/precision.h
 delete mode 100644 include/geos/spatialIndex.h


hooks/post-receive
-- 
GEOS


More information about the geos-commits mailing list