23 #ifndef GEOS_SIMPLIFY_LINESEGMENTINDEX_H
24 #define GEOS_SIMPLIFY_LINESEGMENTINDEX_H
26 #include <geos/export.h>
32 #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
42 class TaggedLineString;
54 class GEOS_DLL LineSegmentIndex {
62 void add(
const TaggedLineString& line);
64 void add(
const geom::LineSegment* seg);
66 void remove(
const geom::LineSegment* seg);
68 std::auto_ptr< std::vector<geom::LineSegment*> >
69 query(
const geom::LineSegment* seg)
const;
73 std::auto_ptr<index::quadtree::Quadtree> index;
75 std::vector<geom::Envelope*> newEnvelopes;
78 LineSegmentIndex(
const LineSegmentIndex&);
79 LineSegmentIndex& operator=(
const LineSegmentIndex&);
89 #endif // GEOS_SIMPLIFY_LINESEGMENTINDEX_H