1 
2 #ifndef WK_GEOMETRY_HANDLER_H
3 #define WK_GEOMETRY_HANDLER_H
4 
5 #include "wk/coord.hpp"
6 #include "wk/parse-exception.hpp"
7 #include "wk/geometry-meta.hpp"
8 
9 class WKGeometryHandler {
10 public:
11 
nextFeatureStart(size_t featureId)12   virtual void nextFeatureStart(size_t featureId) {
13 
14   }
15 
nextFeatureEnd(size_t featureId)16   virtual void nextFeatureEnd(size_t featureId) {
17 
18   }
19 
nextNull(size_t featureId)20   virtual void nextNull(size_t featureId) {
21 
22   }
23 
nextGeometryStart(const WKGeometryMeta & meta,uint32_t partId)24   virtual void nextGeometryStart(const WKGeometryMeta& meta, uint32_t partId) {
25 
26   }
27 
nextGeometryEnd(const WKGeometryMeta & meta,uint32_t partId)28   virtual void nextGeometryEnd(const WKGeometryMeta& meta, uint32_t partId) {
29 
30   }
31 
nextLinearRingStart(const WKGeometryMeta & meta,uint32_t size,uint32_t ringId)32   virtual void nextLinearRingStart(const WKGeometryMeta& meta, uint32_t size, uint32_t ringId) {
33 
34   }
35 
nextLinearRingEnd(const WKGeometryMeta & meta,uint32_t size,uint32_t ringId)36   virtual void nextLinearRingEnd(const WKGeometryMeta& meta, uint32_t size, uint32_t ringId) {
37 
38   }
39 
nextCoordinate(const WKGeometryMeta & meta,const WKCoord & coord,uint32_t coordId)40   virtual void nextCoordinate(const WKGeometryMeta& meta, const WKCoord& coord, uint32_t coordId) {
41 
42   }
43 
nextError(WKParseException & error,size_t featureId)44   virtual bool nextError(WKParseException& error, size_t featureId) {
45     return false;
46   }
47 
48 };
49 
50 #endif
51