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