[MOAB-dev] r5657 - MOAB/trunk/src/moab/point_locater

rhl6856 at mcs.anl.gov rhl6856 at mcs.anl.gov
Fri Aug 3 13:37:15 CDT 2012


Author: rhl6856
Date: 2012-08-03 13:37:15 -0500 (Fri, 03 Aug 2012)
New Revision: 5657

Modified:
   MOAB/trunk/src/moab/point_locater/point_locater.hpp
Log:
level 2

Modified: MOAB/trunk/src/moab/point_locater/point_locater.hpp
===================================================================
--- MOAB/trunk/src/moab/point_locater/point_locater.hpp	2012-08-03 18:37:14 UTC (rev 5656)
+++ MOAB/trunk/src/moab/point_locater/point_locater.hpp	2012-08-03 18:37:15 UTC (rev 5657)
@@ -18,6 +18,8 @@
 public:
 	typedef  _Tree Tree;
 	typedef typename Elements::value_type Element;
+	//arbitrary type for now.. A box should be a small struct, boxes a
+	//Vector of them, or a set?
 	typedef	std::vector< std::vector< std::size_t> > Boxes;
 	//temporary error code
 	typedef typename std::size_t Error;
@@ -37,21 +39,31 @@
 	      source_elements( _source_elements),
 	      comm( _comm), boxes(), 
 	      iterations( _iterations){}
+//private functionality
+private:
+template< typename Points, typename Bitmask>
+void local_point_search( const Points & query_points, Bitmask & located_points, 
+			 Elements & result,
+			 const double rel_eps, const double abs_eps){}	
 
+//public functionality
+public:
 template< typename Points> 
 Error locate_points( Points & query_points, Elements & result,
                      const double rel_eps, const double abs_eps){
+	//bitmask for located points
+	std::vector< bool> located_points( query_points.size(), 0);
+	local_point_search( query_points, located_points, 
+			    result, rel_eps, abs_eps);
+	resolve_boxes( query_points, located_points, rel_eps, abs_eps);
+	//scatter-gather
+	//TODO: probably too good to be true..
+	local_point_search( query_points, located_points, 
+			    result, rel_eps, abs_eps);
+	//send back to target
 	return 0;
 } 
 
-template< typename Points> 
-Error locate_points( Points & query_points,
-                     const double rel_eps = 0.0, 
-                     const double abs_eps = 0.0){
-     Elements result;
-     return locate_points( query_points, result, rel_eps, abs_eps);
-} 
-
 //public accessor methods


More information about the moab-dev mailing list