24 #include <boost/scoped_ptr.hpp>
25 #include <boost/ptr_container/ptr_map.hpp>
27 #include <tbb/mutex.h>
45 namespace MAKVRinTerra
47 class DtSharedMemoryFeaturesDebugDrawer;
48 class DtFeatureContext;
49 class DtFeaturesDebugger;
50 class DtUnusedFeatureTileTracker;
78 static DtFeatureSet* CreateFeatureSetFromFile(std::string file);
85 DtFeatureSet*
set, std::string attribute, std::string value);
87 static std::auto_ptr<DtFeatureSet> ConfigureAttribute(
88 std::auto_ptr<DtFeatureSet>
set, std::string attribute, std::string value);
99 virtual bool loadSrcSpecConfigFor(std::string sourceFile, std::string attribute);
108 virtual bool loadConfig(std::string configFile,
DtQuery schema);
114 virtual std::auto_ptr<DtFeatureSet> addFeatureSource(std::string file,
bool page=
true);
121 virtual std::auto_ptr<DtFeatureSet> addFeatureSource(
122 osg::ref_ptr<osgEarth::Map> map,
123 std::string earthfile=std::string(),
bool page=
true);
129 virtual std::auto_ptr<DtFeatureSet> addFeatureSource(
DtFeatureSet* fs,
bool page=
true);
134 virtual void addFeatureSource(boost::shared_ptr<DtFeatureSet> fs,
bool page=
true);
140 virtual std::auto_ptr<DtFeatureSet> addFeatureSource(
147 virtual void addFeatureSource(
148 boost::shared_ptr<DtFeatureSet> fs,
155 virtual std::auto_ptr<DtFeatureSet> addVectorNetworkFeatureSource(
164 virtual std::auto_ptr<DtFeatureSet> addFeatureSource(
170 void addToDebugger(
DtFeatureSet* fs,
bool draw =
false);
176 boost::shared_ptr<DtAttributeConfigParser> parser()
const;
179 boost::shared_ptr<DtUnusedFeatureTileTracker> tracker()
const;
182 boost::shared_ptr<DtFeaturesDebugger> debugger()
const;
185 boost::shared_ptr<LoadingQueue> loadingQueue()
const;
193 virtual std::auto_ptr<DtFeatureSet> features(
const std::string& queryName)
const;
196 virtual std::auto_ptr<DtFeatureSet> allFeatures()
const;
204 typedef boost::shared_ptr<Record>
Ptr;
216 boost::shared_ptr<DtAttributeConfigParser>
myParser;
239 void shutdown(
bool block =
true);
243 std::auto_ptr<DtFeatureSet> features(
const std::string& queryName)
const;
246 std::auto_ptr<DtFeatureSet> allFeatures()
const;
250 std::auto_ptr<DtAreaFeatureSet> areas(
251 const std::string& type,
252 const boost::shared_ptr<DtVrfCallbackQueue>& = boost::shared_ptr<DtVrfCallbackQueue>());
259 std::auto_ptr<DtAreaFeatureSet> areas(
261 const boost::shared_ptr<DtVrfCallbackQueue>& = boost::shared_ptr<DtVrfCallbackQueue>());
264 std::auto_ptr<DtPathFeatureSet> paths(std::string type);
275 void cleanUpPathFinders();