20 #ifndef GEOS_IO_WKBREADER_H
21 #define GEOS_IO_WKBREADER_H
23 #include <geos/export.h>
25 #include <geos/io/ByteOrderDataInStream.h>
32 #define BAD_GEOM_TYPE_MSG "Bad geometry type encountered in"
36 #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
43 class GeometryFactory;
46 class GeometryCollection;
52 class MultiLineString;
55 class CoordinateSequence;
97 std::unique_ptr<geom::Geometry> read(std::istream& is);
107 std::unique_ptr<geom::Geometry> readHEX(std::istream& is);
115 static std::ostream& printHEX(std::istream& is, std::ostream& os);
122 unsigned int inputDimension;
128 std::array<double, 4> ordValues;
130 std::unique_ptr<geom::Geometry> readGeometry();
132 std::unique_ptr<geom::Point> readPoint();
134 std::unique_ptr<geom::LineString> readLineString();
136 std::unique_ptr<geom::LinearRing> readLinearRing();
138 std::unique_ptr<geom::Polygon> readPolygon();
140 std::unique_ptr<geom::MultiPoint> readMultiPoint();
142 std::unique_ptr<geom::MultiLineString> readMultiLineString();
144 std::unique_ptr<geom::MultiPolygon> readMultiPolygon();
146 std::unique_ptr<geom::GeometryCollection> readGeometryCollection();
148 std::unique_ptr<geom::CoordinateSequence> readCoordinateSequence(
int);
150 void readCoordinate();
164 #endif // #ifndef GEOS_IO_WKBREADER_H
Reads a Geometry from Well-Known Binary format.
Definition: WKBReader.h:80
Allows reading an stream of primitive datatypes from an underlying istream, with the representation b...
Definition: ByteOrderDataInStream.h:41
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Definition: GeometryFactory.h:68