00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef GEOS_NODING_SEGMENTSETMUTUALINTERSECTOR_H
00017 #define GEOS_NODING_SEGMENTSETMUTUALINTERSECTOR_H
00018
00019 #include <geos/noding/SegmentString.h>
00020 #include <geos/noding/SegmentIntersector.h>
00021
00022 namespace geos {
00023 namespace noding {
00024
00037 class SegmentSetMutualIntersector
00038 {
00039 public:
00040
00041 SegmentSetMutualIntersector()
00042 : segInt(0)
00043 {}
00044
00045 virtual ~SegmentSetMutualIntersector() {}
00046
00054 void setSegmentIntersector(SegmentIntersector* si)
00055 {
00056 segInt = si;
00057 }
00058
00063 virtual void setBaseSegments(SegmentString::ConstVect* segStrings) = 0;
00064
00070 virtual void process(SegmentString::ConstVect* segStrings) = 0;
00071
00072 protected:
00073
00074 SegmentIntersector* segInt;
00075
00076 };
00077
00078 }
00079 }
00080
00081 #endif // GEOS_NODING_SEGMENTSETMUTUALINTERSECTOR_H