17 #include <geometry/surface.h>
18 #include <geometry/tdbextent.h>
20 #include <tbb/tbb_thread.h>
21 #include <tbb/mutex.h>
38 virtual void addProcessGeometry(
const GeometryArray&,
const DtSurface&,
bool triangulate);
44 virtual void process();
54 virtual bool isStopped()
const;
57 virtual bool isRunning()
const;
60 virtual void cancel();
63 virtual bool isCancelled()
const;
66 virtual bool isProcessing()
const;
74 const DtSurface& surface)
const;
77 virtual void tessellate(
const GeometryArray& pointFeatures,
const DtSurface& defaultSurface);
80 virtual void triangulate(
const GeometryArray& pointFeatures,
const DtSurface& defaultSurface);
121 typedef std::pair<std::string, QueryType>
Query;
134 virtual void reset();
137 virtual void addQuery(
const std::string& key,
const std::string& value,
QueryType = QUERY_DEFAULT);
141 virtual std::string addQuery(
const std::string& value,
QueryType = QUERY_DEFAULT);
142 std::string addQueryByAreaSelect(
const std::string& value)
144 return addQuery(value, AREA_SELECT);
147 std::string addQueryByPointSelect(
const std::string& value)
149 return addQuery(value, POINT_SELECT);
153 virtual void removeQuery(
const std::string& key);
156 virtual const Queries& queries()
const;
165 virtual void setSeaLevel(
double);
166 virtual double seaLevel()
const;
178 : geometry(orig.geometry), extent(orig.extent), query(orig.query), retries(orig.retries) {};
202 const std::string& query,
bool& firstTime, AreasCovered::iterator&);
206 const std::vector<MAKVRinTerra::DtFeatureGeometry>&)
const;
212 virtual void createGeometry(
const std::vector<MAKVRinTerra::DtFeatureGeometry>&,
226 std::string query,
bool readDirectly =
false);
236 int retries = 0)
const;
271 typedef boost::ptr_map<std::string, MAKVRinTerra::DtFeatureSet>
SavedQueries;