16 #ifndef GEOS_GEOM_UTIL_LINEARCOMPONENTEXTRACTER_H
17 #define GEOS_GEOM_UTIL_LINEARCOMPONENTEXTRACTER_H
20 #include <geos/export.h>
23 #include <geos/geom/GeometryComponentFilter.h>
24 #include <geos/geom/Geometry.h>
25 #include <geos/geom/LineString.h>
35 class GEOS_DLL LinearComponentExtracter:
public GeometryComponentFilter {
42 LinearComponentExtracter(
const LinearComponentExtracter& other) =
delete;
43 LinearComponentExtracter& operator=(
const LinearComponentExtracter& rhs) =
delete;
53 static void getLines(
const Geometry &geom, std::vector<const LineString*> &ret);
58 LinearComponentExtracter(std::vector<const LineString*> &newComps);
60 void filter_rw(Geometry *geom)
override;
62 void filter_ro(
const Geometry *geom)
override;