GEOS 3.9.1
PreparedGeometryFactory.h
1/**********************************************************************
2 *
3 * GEOS - Geometry Engine Open Source
4 * http://geos.osgeo.org
5 *
6 * Copyright (C) 2006 Refractions Research Inc.
7 *
8 * This is free software; you can redistribute and/or modify it under
9 * the terms of the GNU Lesser General Public Licence as published
10 * by the Free Software Foundation.
11 * See the COPYING file for more information.
12 *
13 *
14 **********************************************************************
15 *
16 * Last port: geom/prep/PreparedGeometryFactory.java rev. 1.4 (JTS-1.10)
17 *
18 **********************************************************************/
19
20#ifndef GEOS_GEOM_PREP_PREPAREDGEOMETRYFACTORY_H
21#define GEOS_GEOM_PREP_PREPAREDGEOMETRYFACTORY_H
22
23#include <geos/export.h>
24#include <geos/geom/prep/PreparedGeometry.h>
25
26#include <memory>
27
28namespace geos {
29namespace geom {
30namespace prep {
31class PreparedGeometry;
32}
33}
34}
35
36
37namespace geos {
38namespace geom { // geos::geom
39namespace prep { // geos::geom::prep
40
41
55public:
56
63 static std::unique_ptr<PreparedGeometry>
65 {
67 return pf.create(geom);
68 }
69
75 static void
77 {
78 delete geom;
79 }
80
87 std::unique_ptr<PreparedGeometry> create(const geom::Geometry* geom) const;
88
89};
90
91} // namespace geos::geom::prep
92} // namespace geos::geom
93} // namespace geos
94
95#endif // GEOS_GEOM_PREP_PREPAREDGEOMETRYFACTORY_H
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition: Geometry.h:188
A factory for creating PreparedGeometrys.
Definition: PreparedGeometryFactory.h:54
std::unique_ptr< PreparedGeometry > create(const geom::Geometry *geom) const
static void destroy(const PreparedGeometry *geom)
Definition: PreparedGeometryFactory.h:76
static std::unique_ptr< PreparedGeometry > prepare(const geom::Geometry *geom)
Definition: PreparedGeometryFactory.h:64
An interface for classes which prepare Geometrys in order to optimize the performance of repeated cal...
Definition: PreparedGeometry.h:57
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:26