24 #include <boost/scoped_ptr.hpp>
25 #include <boost/ptr_container/ptr_map.hpp>
27 #include <tbb/mutex.h>
45 namespace MAKVRinTerra
47 class DtFeatureContext;
48 class DtFeaturesDebugger;
49 class DtUnusedFeatureTileTracker;
77 static DtFeatureSet* CreateFeatureSetFromFile(std::string file);
84 DtFeatureSet* set, std::string attribute, std::string value);
86 static std::auto_ptr<DtFeatureSet> ConfigureAttribute(
87 std::auto_ptr<DtFeatureSet> set, std::string attribute, std::string value);
98 virtual bool loadSrcSpecConfigFor(std::string sourceFile, std::string attribute);
107 virtual bool loadConfig(std::string configFile,
DtQuery schema);
113 virtual std::auto_ptr<DtFeatureSet> addFeatureSource(std::string file,
bool page=
true);
120 virtual std::auto_ptr<DtFeatureSet> addFeatureSource(
122 std::string earthfile=std::string(),
bool page=
true);
128 virtual std::auto_ptr<DtFeatureSet> addFeatureSource(
DtFeatureSet* fs,
bool page=
true);
133 virtual void addFeatureSource(boost::shared_ptr<DtFeatureSet> fs,
bool page=
true);
139 virtual std::auto_ptr<DtFeatureSet> addFeatureSource(
146 virtual void addFeatureSource(
147 boost::shared_ptr<DtFeatureSet> fs,
154 virtual std::auto_ptr<DtFeatureSet> addVectorNetworkFeatureSource(
163 virtual std::auto_ptr<DtFeatureSet> addFeatureSource(
174 boost::shared_ptr<DtAttributeConfigParser> parser()
const;
177 boost::shared_ptr<DtUnusedFeatureTileTracker> tracker()
const;
180 boost::shared_ptr<DtFeaturesDebugger> debugger()
const;
183 boost::shared_ptr<LoadingQueue> loadingQueue()
const;
191 virtual std::auto_ptr<DtFeatureSet> features(
const std::string& queryName)
const;
194 virtual std::auto_ptr<DtFeatureSet> allFeatures()
const;
202 typedef boost::shared_ptr<Record>
Ptr;
214 boost::shared_ptr<DtAttributeConfigParser>
myParser;
237 void shutdown(
bool block =
true);
241 std::auto_ptr<DtFeatureSet> features(
const std::string& queryName)
const;
244 std::auto_ptr<DtFeatureSet> allFeatures()
const;
248 std::auto_ptr<DtAreaFeatureSet> areas(
249 const std::string& type,
250 const boost::shared_ptr<DtVrfCallbackQueue>& = boost::shared_ptr<DtVrfCallbackQueue>());
257 std::auto_ptr<DtAreaFeatureSet> areas(
259 const boost::shared_ptr<DtVrfCallbackQueue>& = boost::shared_ptr<DtVrfCallbackQueue>());
262 std::auto_ptr<DtPathFeatureSet> paths(std::string type);
273 void cleanUpPathFinders();
Represents a set of DtFeature objects or others which conform to the DtFeature concept.
Definition: featureSet.h:101
#define DT_DLL_features
stop complaining about multiple independent base classes for boost::noncopyable this should probably ...
Definition: featuresDefines.h:36
Class DtTerrainInterfaceConfig is a readable-writable class holding terrain interface configuration o...
Definition: terrainInterfaceConfig.h:32
std::vector< Ptr > Vector
Definition: featureContext.h:203
DtQueueLoadingFeatureSet< DtFeatureSet >::Queue LoadingQueue
Async queue for loading feature sets.
Definition: featureContext.h:58
DtUnusedFeatureTileTracker::Ptr myUnusedTracker
Unused tile tracker.
Definition: featureContext.h:311
Each record represents one feature set and all the info needed to load it.
Definition: featureContext.h:200
Definition: featureContext.h:37
DtFeatureSet::List myFeatures
Definition: featureContext.h:218
std::auto_ptr< DtFeatureSet > featureSet
Definition: featureContext.h:205
boost::shared_ptr< FeatureQueue > myFeatureLoadingQueue
Definition: featureContext.h:290
boost::shared_ptr< DtAStarGraph > Ptr
Definition: aStarGraph.h:89
boost::ptr_map< const AreaConfig, DtAreaFeatureSet > AreaFeatureSetMap
Area stuff.
Definition: featureContext.h:293
boost::scoped_ptr< DtFeatureSet > mySourceFeatures
Reads from set of per-source page tables.
Definition: featureContext.h:283
Simple asynchronous callback queue.
Definition: vrfCallbackQueue.h:32
boost::ptr_map< const std::string, DtFeatureSet > FeatureSetMap
Plain features.
Definition: featureContext.h:286
boost::shared_ptr< DtUnusedFeatureTileTracker > myUnusedTracker
Definition: featureContext.h:215
tbb::mutex myPathFindersMutex
Definition: featureContext.h:302
DtProj::CPtr myProjection
Local projection.
Definition: featureContext.h:277
DtTerrainInterfaceConfig config
Definition: featureContext.h:206
DtTerrainInterfaceConfig myTerrainInterfaceConfig
Terrain interface config object.
Definition: featureContext.h:280
boost::shared_ptr< LoadingQueue > myLoadingQueue
Definition: featureContext.h:220
boost::shared_ptr< DtUnusedFeatureTileTracker > Ptr
Definition: unusedFeatureTileTracker.h:50
DtQueueLoadingFeatureSet< DtFeatureSet >::Queue FeatureQueue
Definition: featureContext.h:287
boost::shared_ptr< AreaQueue > myAreaLoadingQueue
Definition: featureContext.h:297
Feature system config file.
FeatureSetMap myFeatureSets
Definition: featureContext.h:288
Represents some coordinate system.
Definition: proj.h:44
Represents a set of characeters a DtFeature object can have.
Definition: query.h:38
boost::ptr_map< const std::string, DtAStarGraph::Ptr > PathFinderMap
Path finder for path planning.
Definition: featureContext.h:300
boost::shared_ptr< DtAttributeConfigParser > myParser
Definition: featureContext.h:214
boost::shared_ptr< DtAttributeConfigParser > myAttributeParser
Feature config parser.
Definition: featureContext.h:308
boost::shared_ptr< const DtProj > CPtr
Definition: proj.h:48
Definition: featureContext.h:51
const char * source
Definition: lz4.h:436
PathFinderMap myPathFinders
Definition: featureContext.h:301
boost::shared_ptr< DtFeaturesDebugger > myDebugger
Top level feature debugger.
Definition: featureContext.h:305
Parser for feature system configuration file.
Definition: attributeConfigParser.h:78
DtTerrainInterfaceConfig myTerrainInterfaceConfig
Definition: featureContext.h:211
AreaFeatureSetMap myAreaFeatureSets
Definition: featureContext.h:295
tbb::mutex myFeatureSetMutex
Definition: featureContext.h:289
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
tbb::mutex myAreasMutex
Definition: featureContext.h:296
boost::function< DtFeatureSet *(std::string)> FeatureSetCreatorFcn
Factory function for creating feature sets.
Definition: featureContext.h:55
Record::Vector myRecords
Definition: featureContext.h:217
boost::shared_ptr< Record > Ptr
Definition: featureContext.h:202
DtQueueLoadingFeatureSet< DtAreaFeatureSet >::Queue AreaQueue
Definition: featureContext.h:294
boost::shared_ptr< DtFeaturesDebugger > myDebugger
Definition: featureContext.h:213
DtAreaFeatureSetAdapter::Config AreaConfig
Configuration information for areas.
Definition: featureContext.h:253
DtFeatureSet used to combine multiple feature sets into one.
Definition: featureSetList.h:21
Definition: featureContext.h:223
Configuration object for processing areas.
Definition: areaFeature.h:45
std::vector< DtFeatureTransform > TransformVector
Sequence of transforms.
Definition: attributeConfigParser.h:89
Definition: vectorNetwork.h:37