GEOS  3.3.3
Noder.h
1 /**********************************************************************
2  * $Id: Noder.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) 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_NODING_NODER_H
17 #define GEOS_NODING_NODER_H
18 
19 #include <geos/export.h>
20 
21 #include <vector>
22 #include <iostream>
23 
24 #include <geos/inline.h>
25 
26 // Forward declarations
27 namespace geos {
28  namespace noding {
29  class SegmentString;
30  }
31 }
32 
33 namespace geos {
34 namespace noding { // geos.noding
35 
36 
50 class GEOS_DLL Noder {
51 public:
60  virtual void computeNodes(std::vector<SegmentString*>* segStrings)=0;
61 
69  virtual std::vector<SegmentString*>* getNodedSubstrings() const=0;
70 
71  virtual ~Noder() {}
72 
73 protected:
74  Noder(){};
75 };
76 
77 } // namespace geos.noding
78 } // namespace geos
79 
80 //#ifdef GEOS_INLINE
81 //# include "geos/noding/Noder.inl"
82 //#endif
83 
84 #endif // GEOS_NODING_NODER_H
85 
86 /**********************************************************************
87  * $Log$
88  * Revision 1.2 2006/03/24 09:52:41 strk
89  * USE_INLINE => GEOS_INLINE
90  *
91  * Revision 1.1 2006/03/09 16:46:49 strk
92  * geos::geom namespace definition, first pass at headers split
93  *
94  **********************************************************************/
95