21 #ifndef GEOS_GEOMGRAPH_TOPOLOGYLOCATION_H
22 #define GEOS_GEOMGRAPH_TOPOLOGYLOCATION_H
24 #include <geos/export.h>
25 #include <geos/inline.h>
26 #include <geos/geom/Location.h>
34 #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
60 class GEOS_DLL TopologyLocation {
64 friend std::ostream& operator<< (std::ostream&,
const TopologyLocation&);
66 TopologyLocation() =
default;
83 TopologyLocation(
const TopologyLocation& gl);
85 TopologyLocation& operator= (
const TopologyLocation& gl);
97 bool isAnyNull()
const;
99 bool isEqualOnSide(
const TopologyLocation& le,
int locIndex)
const;
116 const std::array<geom::Location, 3>& getLocations()
const;
126 void merge(
const TopologyLocation& gl);
128 std::string toString()
const;
132 std::array<geom::Location, 3> location;
133 std::uint8_t locationSize;
142 # include "geos/geomgraph/TopologyLocation.inl"
149 #endif // ifndef GEOS_GEOMGRAPH_TOPOLOGYLOCATION_H