23#include <geos/export.h>
24#include <geos/geom/GeometryFilter.h>
25#include <geos/geom/GeometryCollection.h>
46 template <
class ComponentType,
class TargetContainer>
50 if(
const ComponentType* p_c =
dynamic_cast<const ComponentType*
>(&geom)) {
55 GeometryExtracter::Extracter<ComponentType, TargetContainer> extracter(lst);
56 p_c1->apply_ro(&extracter);
62 template <
class ComponentType,
class TargetContainer>
70 Extracter(TargetContainer& comps) : comps_(comps) {}
72 TargetContainer& comps_;
75 filter_ro(
const Geometry* geom)
override
77 if(
const ComponentType* c =
dynamic_cast<const ComponentType*
>(geom)) {
83 Extracter(
const Extracter& other);
84 Extracter& operator=(
const Extracter& rhs);
88 GeometryExtracter(
const GeometryExtracter& other) =
delete;
89 GeometryExtracter& operator=(
const GeometryExtracter& rhs) =
delete;
Represents a collection of heterogeneous Geometry objects.
Definition: GeometryCollection.h:52
Geometry classes support the concept of applying a Geometry filter to the Geometry.
Definition: GeometryFilter.h:45
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition: Geometry.h:186
Basic namespace for all GEOS functionalities.
Definition: geos.h:39