CoordinateSequenceFactory.h

00001 /**********************************************************************
00002  *
00003  * GEOS - Geometry Engine Open Source
00004  * http://geos.osgeo.org
00005  *
00006  * Copyright (C) 2006 Refractions Research Inc.
00007  *
00008  * This is free software; you can redistribute and/or modify it under
00009  * the terms of the GNU Lesser General Public Licence as published
00010  * by the Free Software Foundation. 
00011  * See the COPYING file for more information.
00012  *
00013  **********************************************************************
00014  *
00015  * Last port: geom/CoordinateSequenceFactory.java r591 (JTS-1.12)
00016  *
00017  **********************************************************************/
00018 
00019 #ifndef GEOS_GEOM_COORDINATESEQUENCEFACTORY_H
00020 #define GEOS_GEOM_COORDINATESEQUENCEFACTORY_H
00021 
00022 
00023 #include <geos/export.h>
00024 #include <vector>
00025 
00026 //#include <geos/geom/Coordinate.h>
00027 #include <geos/inline.h>
00028 
00029 // Forward declarations
00030 namespace geos {
00031         namespace geom { 
00032                 class CoordinateSequence;
00033                 class Coordinate;
00034         }
00035 }
00036 
00037 namespace geos {
00038 namespace geom { // geos::geom
00039 
00047 class GEOS_DLL CoordinateSequenceFactory {
00048 public:
00049 
00065         virtual CoordinateSequence *create(
00066             std::vector<Coordinate> *coordinates,
00067             std::size_t dimension=0 ) const=0;
00068 
00079         virtual CoordinateSequence *create(std::size_t size,
00080                                            std::size_t dimension) const=0;
00081 
00089         virtual CoordinateSequence *create(const CoordinateSequence &coordSeq) const=0;
00090 
00091         virtual ~CoordinateSequenceFactory();
00092 };
00093 
00094 } // namespace geos::geom
00095 } // namespace geos
00096 
00097 //#ifdef GEOS_INLINE
00098 //# include "geos/geom/CoordinateSequenceFactory.inl"
00099 //#endif
00100 
00101 #endif // ndef GEOS_GEOM_COORDINATESEQUENCEFACTORY_H

Generated on 15 May 2014 for GEOS by  doxygen 1.4.7