GEOS  3.3.3
NodeFactory.h
1 /**********************************************************************
2  * $Id: NodeFactory.h 2557 2009-06-08 09:30:55Z strk $
3  *
4  * GEOS - Geometry Engine Open Source
5  * http://geos.refractions.net
6  *
7  * Copyright (C) 2005-2006 Refractions Research Inc.
8  * Copyright (C) 2001-2002 Vivid Solutions Inc.
9  *
10  * This is free software; you can redistribute and/or modify it under
11  * the terms of the GNU Lesser General Public Licence as published
12  * by the Free Software Foundation.
13  * See the COPYING file for more information.
14  *
15  **********************************************************************
16  *
17  * Last port: geomgraph/NodeFactory.java rev. 1.3 (JTS-1.10)
18  *
19  **********************************************************************/
20 
21 
22 #ifndef GEOS_GEOMGRAPH_NODEFACTORY_H
23 #define GEOS_GEOMGRAPH_NODEFACTORY_H
24 
25 #include <geos/export.h>
26 #include <geos/inline.h>
27 
28 // Forward declarations
29 namespace geos {
30  namespace geom {
31  class Coordinate;
32  }
33  namespace geomgraph {
34  class Node;
35  }
36 }
37 
38 namespace geos {
39 namespace geomgraph { // geos.geomgraph
40 
41 class GEOS_DLL NodeFactory {
42 public:
43  virtual Node* createNode(const geom::Coordinate &coord) const;
44  static const NodeFactory &instance();
45  virtual ~NodeFactory() {}
46 protected:
47  NodeFactory() {};
48 };
49 
50 
51 } // namespace geos.geomgraph
52 } // namespace geos
53 
54 //#ifdef GEOS_INLINE
55 //# include "geos/geomgraph/NodeFactory.inl"
56 //#endif
57 
58 #endif // ifndef GEOS_GEOMGRAPH_NODEFACTORY_H
59 
60 /**********************************************************************
61  * $Log$
62  * Revision 1.3 2006/06/08 11:20:24 strk
63  * Added missing virtual destructor to abstract classes.
64  *
65  * Revision 1.2 2006/03/24 09:52:41 strk
66  * USE_INLINE => GEOS_INLINE
67  *
68  * Revision 1.1 2006/03/09 16:46:49 strk
69  * geos::geom namespace definition, first pass at headers split
70  *
71  **********************************************************************/
72