1 
2 #ifndef WK_IO_H
3 #define WK_IO_H
4 
5 class WKProvider {
6 public:
7   virtual bool seekNextFeature() = 0;
8   virtual bool featureIsNull() = 0;
9   virtual size_t nFeatures() = 0;
10   virtual void reset() = 0;
~WKProvider()11   virtual ~WKProvider() {}
12 };
13 
14 class WKExporter {
15 public:
WKExporter(size_t size)16   WKExporter(size_t size): size(size) {}
17   virtual void prepareNextFeature() = 0;
18   virtual void writeNull() = 0;
19   virtual void writeNextFeature() = 0;
nFeatures()20   size_t nFeatures() {
21     return this->size;
22   }
23 
~WKExporter()24   virtual ~WKExporter() {}
25 
26 private:
27   size_t size;
28 };
29 
30 #endif
31