59    std::unique_ptr<CoordinateSequence> m_pts;
 
   60    std::size_t m_ringCount ;
 
   61    bool m_isFreeRing = 
true;
 
   65    static std::unique_ptr<CoordinateSequence>
 
   67        std::size_t start, std::size_t end);
 
   79    CoverageEdge(std::unique_ptr<CoordinateSequence> && pts, 
bool isFreeRing)
 
   80        : m_pts(pts ? std::move(pts) : detail::make_unique<CoordinateSequence>())
 
   82        , m_isFreeRing(isFreeRing)
 
  109    static std::unique_ptr<CoverageEdge> createEdge(
 
  112    static std::unique_ptr<CoverageEdge> createEdge(
 
  117    static std::unique_ptr<MultiLineString> createLines(
 
  118        const std::vector<CoverageEdge*>& edges,
 
  121    std::unique_ptr<LineString> toLineString(
 
  131    std::size_t getRingCount()
 const 
  147    void setCoordinates(
const CoordinateSequence* pts)
 
  149        m_pts = pts->clone();
 
  152    const CoordinateSequence* getCoordinates()
 const 
  157    const Coordinate& getEndCoordinate()
 const 
  159        return m_pts->getAt(m_pts->size() - 1);
 
  162    const Coordinate& getStartCoordinate()
 const 
  164        return m_pts->getAt(0);