19 #ifndef GEOS_OP_LINEMERGE_LINEMERGER_H
20 #define GEOS_OP_LINEMERGE_LINEMERGER_H
22 #include <geos/export.h>
23 #include <geos/operation/linemerge/LineMergeGraph.h>
29 #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
36 class GeometryFactory;
39 namespace planargraph {
45 class LineMergeDirectedEdge;
81 std::vector<geom::LineString*> *mergedLineStrings;
83 std::vector<EdgeString*> edgeStrings;
89 void buildEdgeStringsForObviousStartNodes();
91 void buildEdgeStringsForIsolatedLoops();
93 void buildEdgeStringsForUnprocessedNodes();
95 void buildEdgeStringsForNonDegree2Nodes();
113 void add(std::vector<geom::Geometry*> *geometries);
131 std::vector<geom::LineString*>* getMergedLineStrings();
145 #endif // GEOS_OP_LINEMERGE_LINEMERGER_H