20 #ifndef GEOS_NODING_FASTSEGMENTSETINTERSECTIONFINDER_H
21 #define GEOS_NODING_FASTSEGMENTSETINTERSECTIONFINDER_H
23 #include <geos/algorithm/LineIntersector.h>
24 #include <geos/noding/SegmentString.h>
25 #include <geos/noding/MCIndexSegmentSetMutualIntersector.h>
32 class SegmentIntersectionDetector;
33 class SegmentSetMutualIntersector;
51 class FastSegmentSetIntersectionFinder {
53 std::unique_ptr<MCIndexSegmentSetMutualIntersector> segSetMutInt;
54 std::unique_ptr<geos::algorithm::LineIntersector> lineIntersector;
58 FastSegmentSetIntersectionFinder(SegmentString::ConstVect* baseSegStrings);
60 ~FastSegmentSetIntersectionFinder() =
default;
71 return segSetMutInt.get();
74 bool intersects(SegmentString::ConstVect* segStrings);
82 #endif // GEOS_NODING_FASTSEGMENTSETINTERSECTIONFINDER_H