1#ifndef SQL_GIS_WKB_VISITOR_H_INCLUDED
2#define SQL_GIS_WKB_VISITOR_H_INCLUDED
Definition: spatial_reference_system.h:52
Abstract superclass for all geometric objects.
Definition: geometries.h:99
A collection of geometries.
Definition: geometries.h:409
A string of connected line segments.
Definition: geometries.h:255
A visitor that implements the entire interface and does nothing.
Definition: geometry_visitor.h:121
bool visit_enter(Geometry *) override
Enters a compound geometry.
Definition: geometry_visitor.h:123
bool visit(Geometry *) override
Visits a geometry.
Definition: geometry_visitor.h:158
A 2d point.
Definition: geometries.h:149
A polygon consisting of an outer ring and zero or more interior rings defining holes in the polygon.
Definition: geometries.h:348
A visitor that serializes the geometry to little-endian WKB and appends it to a string.
Definition: wkb_visitor.h:33
const dd::Spatial_reference_system * m_srs
Spatial reference system of the geometry.
Definition: wkb_visitor.h:36
char * m_wkb_current_position
The position of the next character to be added to the string.
Definition: wkb_visitor.h:42
bool visit_enter(Geometry *) override
Enters a compound geometry.
Definition: wkb_visitor.h:58
Wkb_visitor(const dd::Spatial_reference_system *srs, char *wkb, size_t wkb_size)
Construct a new WKB visitor.
Definition: wkb_visitor.h:50
const char * m_wkb
The WKB string.
Definition: wkb_visitor.h:38
bool visit(Point *pt) override
Definition: wkb_visitor.cc:105
const size_t m_wkb_size
Size of the buffer allocated for the WKB string.
Definition: wkb_visitor.h:40
The geometries implement a hierarchical visitor pattern.