19 #ifndef GEOS_OP_UNION_CASCADEDUNION_H
20 #define GEOS_OP_UNION_CASCADEDUNION_H
22 #include <geos/export.h>
27 #include "GeometryListHolder.h"
32 class GeometryFactory;
55 class GEOS_DLL CascadedUnion {
57 const std::vector<geom::Geometry*>* inputGeoms;
58 geom::GeometryFactory
const* geomFactory;
67 static int const STRTREE_NODE_CAPACITY = 4;
78 static geom::Geometry* Union(std::vector<geom::Geometry*>* geoms);
91 std::vector<geom::Geometry*> polys;
92 for(T i = start; i != end; ++i) {
94 polys.push_back(const_cast<geom::Geometry*>(p));
138 geom::Geometry* binaryUnion(GeometryListHolder* geoms, std::size_t start,
148 GeometryListHolder* reduceToGeometries(index::strtree::ItemsList* geomTree);
183 geom::Geometry* geom, std::vector<const geom::Geometry*>& disjointGeoms);