Complete Note#1 in the http://wiki.osgeo.org/wiki/GEOS_Provenance_Review to get out...
[geos.git] / include / geos / geomgraph / NodeFactory.h
blobf9884f992ca48f1b52cc82c4bbecd1f0fdec4f55
1 /**********************************************************************
3 * GEOS - Geometry Engine Open Source
4 * http://geos.osgeo.org
6 * Copyright (C) 2005-2006 Refractions Research Inc.
7 * Copyright (C) 2001-2002 Vivid Solutions Inc.
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.
14 **********************************************************************
16 * Last port: geomgraph/NodeFactory.java rev. 1.3 (JTS-1.10)
18 **********************************************************************/
21 #ifndef GEOS_GEOMGRAPH_NODEFACTORY_H
22 #define GEOS_GEOMGRAPH_NODEFACTORY_H
24 #include <geos/export.h>
25 #include <geos/inline.h>
27 // Forward declarations
28 namespace geos {
29 namespace geom {
30 class Coordinate;
32 namespace geomgraph {
33 class Node;
37 namespace geos {
38 namespace geomgraph { // geos.geomgraph
40 class GEOS_DLL NodeFactory {
41 public:
42 virtual Node* createNode(const geom::Coordinate &coord) const;
43 static const NodeFactory &instance();
44 virtual ~NodeFactory() {}
45 protected:
46 NodeFactory() {}
50 } // namespace geos.geomgraph
51 } // namespace geos
53 //#ifdef GEOS_INLINE
54 //# include "geos/geomgraph/NodeFactory.inl"
55 //#endif
57 #endif // ifndef GEOS_GEOMGRAPH_NODEFACTORY_H
59 /**********************************************************************
60 * $Log$
61 * Revision 1.3 2006/06/08 11:20:24 strk
62 * Added missing virtual destructor to abstract classes.
64 * Revision 1.2 2006/03/24 09:52:41 strk
65 * USE_INLINE => GEOS_INLINE
67 * Revision 1.1 2006/03/09 16:46:49 strk
68 * geos::geom namespace definition, first pass at headers split
70 **********************************************************************/