00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef GEOS_UTIL_COORDINATEARRAYFILTER_H
00017 #define GEOS_UTIL_COORDINATEARRAYFILTER_H
00018
00019 #include <geos/export.h>
00020 #include <cassert>
00021
00022 #include <geos/geom/CoordinateFilter.h>
00023 #include <geos/geom/CoordinateSequence.h>
00024 #include <geos/geom/Coordinate.h>
00025
00026 namespace geos {
00027 namespace util {
00028
00036 class GEOS_DLL CoordinateArrayFilter: public geom::CoordinateFilter {
00037 private:
00038 geom::Coordinate::ConstVect &pts;
00039 public:
00045 CoordinateArrayFilter(geom::Coordinate::ConstVect& target)
00046 :
00047 pts(target)
00048 {}
00049
00050 virtual ~CoordinateArrayFilter() {}
00051
00052 virtual void filter_ro(const geom::Coordinate *coord)
00053 {
00054 pts.push_back(coord);
00055 }
00056 };
00057
00058
00059 }
00060 }
00061
00062 #endif // GEOS_UTIL_COORDINATEARRAYFILTER_H