GEOS
3.12.0
include
geos
geom
GeometryFilter.h
1
/**********************************************************************
2
*
3
* GEOS - Geometry Engine Open Source
4
* http://geos.osgeo.org
5
*
6
* Copyright (C) 2001-2002 Vivid Solutions Inc.
7
* Copyright (C) 2005 2006 Refractions Research 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
#pragma once
17
18
#include <geos/export.h>
19
20
#include <string>
21
#include <vector>
22
#include <cassert>
23
24
namespace
geos
{
25
namespace
geom {
// geos::geom
26
class
Geometry;
27
}
28
}
29
30
namespace
geos
{
31
namespace
geom {
// geos::geom
32
33
45
class
GEOS_DLL
GeometryFilter
{
46
public
:
47
/*
48
* Performs an operation with or on <code>geom</code>.
49
*
50
* @param geom a <code>Geometry</code> to which the filter
51
* is applied.
52
*
53
* NOTE: this are not pure abstract to allow read-only
54
* or read-write-only filters to avoid defining a fake
55
* version of the not-implemented kind.
56
*/
57
virtual
void
58
filter_ro(
const
Geometry
*
/*geom*/
)
59
{
60
assert(0);
61
}
62
virtual
void
63
filter_rw(
Geometry
*
/*geom*/
)
64
{
65
assert(0);
66
}
67
68
virtual
69
~
GeometryFilter
() {}
70
};
71
72
}
// namespace geos::geom
73
}
// namespace geos
74
geos
Basic namespace for all GEOS functionalities.
Definition:
Angle.h:25
geos::geom::Geometry
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition:
Geometry.h:186
geos::geom::GeometryFilter
Geometry classes support the concept of applying a Geometry filter to the Geometry.
Definition:
GeometryFilter.h:45
Generated by
1.8.20