GEOS
3.5.0
Main Page
Related Pages
Namespaces
Classes
Files
File List
include
geos
geom
util
LinearComponentExtracter.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) 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
#ifndef GEOS_GEOM_UTIL_LINEARCOMPONENTEXTRACTER_H
17
#define GEOS_GEOM_UTIL_LINEARCOMPONENTEXTRACTER_H
18
19
20
#include <geos/export.h>
21
#include <vector>
22
23
#include <geos/geom/GeometryComponentFilter.h>
24
#include <geos/geom/Geometry.h>
// to be removed when we have the .inl
25
#include <geos/geom/LineString.h>
// to be removed when we have the .inl
26
//#include <geos/platform.h>
27
28
namespace
geos {
29
namespace
geom {
// geos.geom
30
namespace
util {
// geos.geom.util
31
35
class
GEOS_DLL
LinearComponentExtracter
:
public
GeometryComponentFilter
{
36
37
private
:
38
39
LineString::ConstVect
&comps;
40
41
// Declare type as noncopyable
42
LinearComponentExtracter
(
const
LinearComponentExtracter
& other);
43
LinearComponentExtracter
& operator=(
const
LinearComponentExtracter
& rhs);
44
45
public
:
53
static
void
getLines(
const
Geometry
&geom, std::vector<const LineString*> &ret);
58
LinearComponentExtracter
(std::vector<const LineString*> &newComps);
59
60
void
filter_rw(
Geometry
*geom);
61
62
void
filter_ro(
const
Geometry
*geom);
63
64
};
65
66
}
// namespace geos.geom.util
67
}
// namespace geos.geom
68
}
// namespace geos
69
70
#endif
Generated on Thu Mar 3 2016 20:56:27 for GEOS by
1.8.2