GEOS  3.8.0dev
PolygonizeEdge.h
1 /**********************************************************************
2  *
3  * GEOS - Geometry Engine Open Source
4  * http://geos.osgeo.org
5  *
6  * Copyright (C) 2006 Refractions Research Inc.
7  * Copyright (C) 2001-2002 Vivid Solutions Inc.
8  *
9  * This is free software; you can redistribute and/or modify it under
10  * the terms of the GNU Lesser General Public Licence as published
11  * by the Free Software Foundation.
12  * See the COPYING file for more information.
13  *
14  **********************************************************************
15  *
16  * Last port: operation/polygonize/PolygonizeEdge.java rev. 1.3 (JTS-1.10)
17  *
18  **********************************************************************/
19 
20 
21 #ifndef GEOS_OP_POLYGONIZE_POLYGONIZEEDGE_H
22 #define GEOS_OP_POLYGONIZE_POLYGONIZEEDGE_H
23 
24 #include <geos/export.h>
25 
26 #include <geos/planargraph/Edge.h> // for inheritance
27 
28 // Forward declarations
29 namespace geos {
30 namespace geom {
31 class LineString;
32 }
33 }
34 
35 namespace geos {
36 namespace operation { // geos::operation
37 namespace polygonize { // geos::operation::polygonize
38 
39 /* \brief
40  * An edge of a polygonization graph.
41  *
42  * @version 1.4
43  */
44 class GEOS_DLL PolygonizeEdge: public planargraph::Edge {
45 private:
46  // Externally owned
47  const geom::LineString* line;
48 public:
49 
50  // Keep the given pointer (won't do anything to it)
51  PolygonizeEdge(const geom::LineString* newLine);
52 
53  // Just return what it was given initially
54  const geom::LineString* getLine();
55 };
56 
57 } // namespace geos::operation::polygonize
58 } // namespace geos::operation
59 } // namespace geos
60 
61 #endif // GEOS_OP_POLYGONIZE_POLYGONIZEEDGE_H
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:25