00001 /********************************************************************** 00002 * $Id: GeometryEditorOperation.h 1820 2006-09-06 16:54:23Z mloskot $ 00003 * 00004 * GEOS - Geometry Engine Open Source 00005 * http://geos.refractions.net 00006 * 00007 * Copyright (C) 2001-2002 Vivid Solutions Inc. 00008 * Copyright (C) 2006 Refractions Research Inc. 00009 * 00010 * This is free software; you can redistribute and/or modify it under 00011 * the terms of the GNU Lesser General Public Licence as published 00012 * by the Free Software Foundation. 00013 * See the COPYING file for more information. 00014 * 00015 **********************************************************************/ 00016 00017 #ifndef GEOS_GEOM_UTIL_GEOMETRYEDITOROPERATION_H 00018 #define GEOS_GEOM_UTIL_GEOMETRYEDITOROPERATION_H 00019 00020 // Forward declarations 00021 namespace geos { 00022 namespace geom { 00023 class Geometry; 00024 class GeometryFactory; 00025 } 00026 } 00027 00028 00029 namespace geos { 00030 namespace geom { // geos.geom 00031 namespace util { // geos.geom.util 00032 00033 00037 class GeometryEditorOperation { 00038 00039 public: 00052 virtual Geometry* edit(const Geometry *geometry, 00053 const GeometryFactory *factory)=0; 00054 00055 virtual ~GeometryEditorOperation() {} 00056 }; 00057 00058 } // namespace geos.geom.util 00059 } // namespace geos.geom 00060 } // namespace geos 00061 00062 //#ifdef GEOS_INLINE 00063 //# include "geos/geom/util/GeometryEditorOperation.inl" 00064 //#endif 00065 00066 #endif 00067 00068 /********************************************************************** 00069 * $Log$ 00070 * Revision 1.3 2006/06/08 11:20:24 strk 00071 * Added missing virtual destructor to abstract classes. 00072 * 00073 * Revision 1.2 2006/03/24 09:52:41 strk 00074 * USE_INLINE => GEOS_INLINE 00075 * 00076 * Revision 1.1 2006/03/09 16:46:49 strk 00077 * geos::geom namespace definition, first pass at headers split 00078 * 00079 **********************************************************************/