GEOS  3.3.3
CoordinateFilter.h
1 /**********************************************************************
2  * $Id: CoordinateFilter.h 2556 2009-06-06 22:22:28Z strk $
3  *
4  * GEOS - Geometry Engine Open Source
5  * http://geos.refractions.net
6  *
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 #ifndef GEOS_GEOM_COORDINATEFILTER_H
17 #define GEOS_GEOM_COORDINATEFILTER_H
18 
19 #include <geos/export.h>
20 #include <geos/inline.h>
21 
22 #include <cassert>
23 
24 namespace geos {
25 namespace geom { // geos::geom
26 
27 class Coordinate;
28 
44 class GEOS_DLL CoordinateFilter {
45 public:
46  virtual ~CoordinateFilter() {}
47 
53  virtual void filter_rw(Coordinate* /*coord*/) const { assert(0); }
54 
60  virtual void filter_ro(const Coordinate* /*coord*/) { assert(0); }
61 };
62 
63 } // namespace geos::geom
64 } // namespace geos
65 
66 //#ifdef GEOS_INLINE
67 //# include "geos/geom/CoordinateFilter.inl"
68 //#endif
69 
70 #endif // ndef GEOS_GEOM_COORDINATEFILTER_H
71 
72 /**********************************************************************
73  * $Log$
74  * Revision 1.4 2006/06/19 23:33:03 strk
75  * Don't *require* CoordinateFilters to define both read-only and read-write methods.
76  *
77  * Revision 1.3 2006/03/24 09:52:41 strk
78  * USE_INLINE => GEOS_INLINE
79  *
80  * Revision 1.2 2006/03/13 21:13:54 strk
81  * Added comment about possible refactoring
82  *
83  * Revision 1.1 2006/03/09 16:46:49 strk
84  * geos::geom namespace definition, first pass at headers split
85  *
86  **********************************************************************/