[geos-commits] r2772 - trunk/source/headers/geos/geom/util

svn_geos at osgeo.org svn_geos at osgeo.org
Thu Dec 3 14:30:54 EST 2009


Author: mloskot
Date: 2009-12-03 14:30:54 -0500 (Thu, 03 Dec 2009)
New Revision: 2772

Modified:
   trunk/source/headers/geos/geom/util/ComponentCoordinateExtracter.h
   trunk/source/headers/geos/geom/util/GeometryCombiner.h
   trunk/source/headers/geos/geom/util/GeometryTransformer.h
   trunk/source/headers/geos/geom/util/LinearComponentExtracter.h
   trunk/source/headers/geos/geom/util/PointExtracter.h
   trunk/source/headers/geos/geom/util/PolygonExtracter.h
Log:
Part 11 of larger changeset - source/headers/geos/geom/util:
* Declare noncopyable types as such explicitly (Ticket #304).
* Added Visual C++ pragmas.
* Tidy up.


Modified: trunk/source/headers/geos/geom/util/ComponentCoordinateExtracter.h
===================================================================
--- trunk/source/headers/geos/geom/util/ComponentCoordinateExtracter.h	2009-12-03 19:29:54 UTC (rev 2771)
+++ trunk/source/headers/geos/geom/util/ComponentCoordinateExtracter.h	2009-12-03 19:30:54 UTC (rev 2772)
@@ -38,10 +38,6 @@
  */
 class ComponentCoordinateExtracter : public GeometryComponentFilter 
 {
-private:
-
-	Coordinate::ConstVect &comps;
-
 public:
 	/**
 	 * Push the linear components from a single geometry into
@@ -89,6 +85,13 @@
 		//	comps.push_back(ls);
 	}
 
+private:
+
+	Coordinate::ConstVect &comps;
+
+    // Declare type as noncopyable
+    ComponentCoordinateExtracter(const ComponentCoordinateExtracter& other);
+    ComponentCoordinateExtracter& operator=(const ComponentCoordinateExtracter& rhs);
 };
 
 } // namespace geos.geom.util

Modified: trunk/source/headers/geos/geom/util/GeometryCombiner.h
===================================================================
--- trunk/source/headers/geos/geom/util/GeometryCombiner.h	2009-12-03 19:29:54 UTC (rev 2771)
+++ trunk/source/headers/geos/geom/util/GeometryCombiner.h	2009-12-03 19:30:54 UTC (rev 2772)
@@ -101,6 +101,10 @@
 
 private:
     void extractElements(Geometry* geom, std::vector<Geometry*>& elems);
+
+    // Declare type as noncopyable
+    GeometryCombiner(const GeometryCombiner& other);
+    GeometryCombiner& operator=(const GeometryCombiner& rhs);
 };
 
 } // namespace geos.geom.util

Modified: trunk/source/headers/geos/geom/util/GeometryTransformer.h
===================================================================
--- trunk/source/headers/geos/geom/util/GeometryTransformer.h	2009-12-03 19:29:54 UTC (rev 2771)
+++ trunk/source/headers/geos/geom/util/GeometryTransformer.h	2009-12-03 19:30:54 UTC (rev 2772)
@@ -178,7 +178,9 @@
 	 */
 	bool preserveType;
 
-
+    // Declare type as noncopyable
+    GeometryTransformer(const GeometryTransformer& other);
+    GeometryTransformer& operator=(const GeometryTransformer& rhs);
 };
 
 

Modified: trunk/source/headers/geos/geom/util/LinearComponentExtracter.h
===================================================================
--- trunk/source/headers/geos/geom/util/LinearComponentExtracter.h	2009-12-03 19:29:54 UTC (rev 2771)
+++ trunk/source/headers/geos/geom/util/LinearComponentExtracter.h	2009-12-03 19:30:54 UTC (rev 2772)
@@ -39,6 +39,10 @@
 
 	LineString::ConstVect &comps;
 
+    // Declare type as noncopyable
+    LinearComponentExtracter(const LinearComponentExtracter& other);
+    LinearComponentExtracter& operator=(const LinearComponentExtracter& rhs);
+
 public:
 	/**
 	 * Push the linear components from a single geometry into

Modified: trunk/source/headers/geos/geom/util/PointExtracter.h
===================================================================
--- trunk/source/headers/geos/geom/util/PointExtracter.h	2009-12-03 19:29:54 UTC (rev 2771)
+++ trunk/source/headers/geos/geom/util/PointExtracter.h	2009-12-03 19:30:54 UTC (rev 2772)
@@ -32,9 +32,6 @@
  */
 class GEOS_DLL PointExtracter: public GeometryFilter {
 
-private:
-	Point::ConstVect& comps;
-
 public:
 	/**
 	 * Returns the Point components from a single geometry.
@@ -69,6 +66,13 @@
 		comps.push_back(p);
 	}
 
+private:
+
+	Point::ConstVect& comps;
+
+    // Declare type as noncopyable
+    PointExtracter(const PointExtracter& other);
+    PointExtracter& operator=(const PointExtracter& rhs);
 };
 
 } // namespace geos.geom.util

Modified: trunk/source/headers/geos/geom/util/PolygonExtracter.h
===================================================================
--- trunk/source/headers/geos/geom/util/PolygonExtracter.h	2009-12-03 19:29:54 UTC (rev 2771)
+++ trunk/source/headers/geos/geom/util/PolygonExtracter.h	2009-12-03 19:30:54 UTC (rev 2772)
@@ -32,11 +32,6 @@
  */
 class GEOS_DLL PolygonExtracter: public GeometryFilter {
 
-private:
-
-	/// Reference to provided vector
-	std::vector<const Polygon*>& comps;
-
 public:
 
 	/**
@@ -76,6 +71,14 @@
 		}
 	}
 
+private:
+
+    /// Reference to provided vector
+    std::vector<const Polygon*>& comps;
+
+    // Declare type as noncopyable
+    PolygonExtracter(const PolygonExtracter& other);
+    PolygonExtracter& operator=(const PolygonExtracter& rhs);
 };
 
 } // namespace geos.geom.util



More information about the geos-commits mailing list