Libosmium  2.3.0
Fast and flexible C++ library for working with OpenStreetMap data
Public Member Functions | Private Attributes | List of all members
osmium::area::ProblemReporterException Class Reference

#include <problem_reporter_exception.hpp>

Inheritance diagram for osmium::area::ProblemReporterException:
Inheritance graph
[legend]
Collaboration diagram for osmium::area::ProblemReporterException:
Collaboration graph
[legend]

Public Member Functions

 ProblemReporterException ()
 
virtual ~ProblemReporterException ()=default
 
void report_duplicate_node (osmium::object_id_type node_id1, osmium::object_id_type node_id2, osmium::Location location) override
 
void report_intersection (osmium::object_id_type way1_id, osmium::Location way1_seg_start, osmium::Location way1_seg_end, osmium::object_id_type way2_id, osmium::Location way2_seg_start, osmium::Location way2_seg_end, osmium::Location intersection) override
 
void report_ring_not_closed (osmium::Location end1, osmium::Location end2) override
 
void report_role_should_be_outer (osmium::object_id_type way_id, osmium::Location seg_start, osmium::Location seg_end) override
 
void report_role_should_be_inner (osmium::object_id_type way_id, osmium::Location seg_start, osmium::Location seg_end) override
 
- Public Member Functions inherited from osmium::area::ProblemReporterStream
 ProblemReporterStream (std::ostream &out)
 
virtual ~ProblemReporterStream ()=default
 
void header (const char *msg)
 
void report_duplicate_node (osmium::object_id_type node_id1, osmium::object_id_type node_id2, osmium::Location location) override
 
void report_intersection (osmium::object_id_type way1_id, osmium::Location way1_seg_start, osmium::Location way1_seg_end, osmium::object_id_type way2_id, osmium::Location way2_seg_start, osmium::Location way2_seg_end, osmium::Location intersection) override
 
void report_ring_not_closed (osmium::Location end1, osmium::Location end2) override
 
void report_role_should_be_outer (osmium::object_id_type way_id, osmium::Location seg_start, osmium::Location seg_end) override
 
void report_role_should_be_inner (osmium::object_id_type way_id, osmium::Location seg_start, osmium::Location seg_end) override
 
- Public Member Functions inherited from osmium::area::ProblemReporter
 ProblemReporter ()=default
 
virtual ~ProblemReporter ()=default
 
void set_object (osmium::item_type object_type, osmium::object_id_type object_id) noexcept
 

Private Attributes

std::stringstream m_sstream
 

Additional Inherited Members

- Protected Attributes inherited from osmium::area::ProblemReporter
osmium::item_type m_object_type
 
osmium::object_id_type m_object_id
 

Constructor & Destructor Documentation

osmium::area::ProblemReporterException::ProblemReporterException ( )
inline
virtual osmium::area::ProblemReporterException::~ProblemReporterException ( )
virtualdefault

Member Function Documentation

void osmium::area::ProblemReporterException::report_duplicate_node ( osmium::object_id_type  node_id1,
osmium::object_id_type  node_id2,
osmium::Location  location 
)
inlineoverridevirtual

Report a duplicate node, ie. two nodes with the same location.

Parameters
node_id1ID of the first node.
node_id2ID of the second node.
locationLocation of both nodes.

Reimplemented from osmium::area::ProblemReporter.

void osmium::area::ProblemReporterException::report_intersection ( osmium::object_id_type  way1_id,
osmium::Location  way1_seg_start,
osmium::Location  way1_seg_end,
osmium::object_id_type  way2_id,
osmium::Location  way2_seg_start,
osmium::Location  way2_seg_end,
osmium::Location  intersection 
)
inlineoverridevirtual

Report an intersection between two segments.

Parameters
way1_idID of the first involved way.
way1_seg_startLocation where the segment of the first way with the intersection starts
way1_seg_endLocation where the segment of the first way with the intersection ends
way2_idID of the second involved way.
way2_seg_startLocation where the segment of the second way with the intersection starts
way2_seg_endLocation where the segment of the second way with the intersection ends
intersectionLocation of the intersection. This might be slightly off the correct location due to rounding.

Reimplemented from osmium::area::ProblemReporter.

void osmium::area::ProblemReporterException::report_ring_not_closed ( osmium::Location  end1,
osmium::Location  end2 
)
inlineoverridevirtual

Report an open ring.

Parameters
end1Location of the first open end.
end2Location of the second open end.

Reimplemented from osmium::area::ProblemReporter.

void osmium::area::ProblemReporterException::report_role_should_be_inner ( osmium::object_id_type  way_id,
osmium::Location  seg_start,
osmium::Location  seg_end 
)
inlineoverridevirtual

Report a segment that should have role "inner", but has a different role.

Parameters
way_idID of the way this segment is in.
seg_startStart of the segment with the wrong role.
seg_endEnd of the segment with the wrong role.

Reimplemented from osmium::area::ProblemReporter.

void osmium::area::ProblemReporterException::report_role_should_be_outer ( osmium::object_id_type  way_id,
osmium::Location  seg_start,
osmium::Location  seg_end 
)
inlineoverridevirtual

Report a segment that should have role "outer", but has a different role.

Parameters
way_idID of the way this segment is in.
seg_startStart of the segment with the wrong role.
seg_endEnd of the segment with the wrong role.

Reimplemented from osmium::area::ProblemReporter.

Member Data Documentation

std::stringstream osmium::area::ProblemReporterException::m_sstream
private

The documentation for this class was generated from the following file: