![]() |
VR-Forces 4.7 Class Documentation
|
The DtNavigationFeatureManager matches streamed features to other streamed features (buoys and beacons) that have the same location. More...

Public Types | |
| typedef std::map< DtUniqueID, DtNavigationFeature * > | FeatureMap |
| Type for a map of controller IDs to DtNavigationFeature. | |
Public Member Functions | |
| DtNavigationFeatureManager (const std::string &name, DtDe &de, DtAgentManagerInterface &sceneInterface, DtBuoyBeaconLayer &buoyBeaconLayer, DtBuoyBeaconLayer::AttachableTypes attType, const std::string &featureLayerList, const std::string &featureAttrMapFilename, DtNavigationFeatureBuilder *featureBuilder, int presenceSwitchNum, int typeSwitchNum) | |
| CTOR. | |
| virtual | ~DtNavigationFeatureManager () |
| DTOR. | |
| bool | readFeatureStyleListFile (const std::string &path, const std::string &layerListFileName) |
| Read the file that specifies the list of osgEarth style names that we wish to have our registered builder called for when features are streamed in. | |
| virtual void | addFeature (DtNavigationFeature *feature) |
| Add a feature (ex. | |
| DtNavigationFeature * | findFeature (DtUniqueID elementId) |
| Finds a pointer to the feature controller with the given element id. | |
| virtual bool | destroyFeature (DtUniqueID id) |
| Destroys the feature with the element id. | |
| virtual DtUniqueID | findFeatureWithPosition (const DtVector &position) |
| Look through the list of unattached features for a feature with the specified position. | |
| const FeatureMap & | features () const |
| Get the container of features associated held by the manager. | |
| FeatureMap & | features () |
Protected Types | |
| typedef std::list< std::string > | FeatureStylesList |
| typedef boost::unordered_map < DtUniqueID, DtVector > | PendingFeatureAttachmentMap |
| Type for hash table of feature ids and locations. | |
| typedef boost::unordered_map < DtUniqueID, DtUniqueID > | FeatureToFeatureMap |
| Type for hash tables of features to attached buoys and attached buoys to features. | |
Protected Member Functions | |
| DtNavigationFeatureManager () | |
| CTOR (unimplemented default CTOR ) | |
| DtNavigationFeatureManager (const DtNavigationFeatureManager &orig) | |
| Copy CTOR (unimplemented) | |
| DtNavigationFeatureManager & | operator= (const DtNavigationFeatureManager &rhs) |
| Assignment operator (unimplemented) | |
| virtual void | setPresenceSwitchNumber (int switchNum) |
| virtual int | presenceSwitchNumber () const |
| virtual void | setTypeSwitchNumber (int typeNum) |
| virtual int | typeSwitchNumber () const |
| virtual void | attachToBuoyOrBeacon (DtNavigationFeature &controller, DtBuoyOrBeaconFacade &buoyOrBeacon) |
| Helper function for setting up a buoy/beacon attachment. | |
| virtual void | detachFromBuoyOrBeacon (DtNavigationFeature &controller, DtBuoyOrBeaconFacade &buoy) |
| Helper function for detaching from a buoy/beacon. | |
| virtual void | moveFeatureToDetachedFeatureList (DtUniqueID controllerId) |
| Move features from the list of attached features to the list of unattached features. | |
| virtual void | moveFeatureToAttachedFeatureList (DtUniqueID controllerId) |
| Move features from the list of unattached features to the list of attached features. | |
| virtual void | initializeFeatureCreators () |
| Register creators with the streamed feature manager for each feature layer (osgEarth model style) of interest. | |
| virtual void | slot_featureToBeDeleted (const std::string &myLayerName, DtUniqueID featureId) |
| Slot connected to signal from the streamed feature manager that a feature has paged out. | |
| virtual void | slot_buoyOrBeaconCreated (DtBuoyOrBeaconFacade &buoy, const DtVector &initialPosition) |
| Slot connected to signal from the streamed feature manager that a buoy has paged in. | |
| virtual void | slot_buoyOrBeaconAboutToBeDestroyed (const DtBuoyOrBeaconFacade &buoy) |
| Slot connected to signal from the streamed feature manager that a buoy has paged out. | |
| void | slot_sceneCreated () |
| If the IG is initialized when this is called, it will call initializeFeatureCreators. | |
| void | slot_postInitialize () |
| slot used to wait for postInitialized signal | |
Protected Attributes | |
| DtDe & | myDe |
| DtAgentManagerInterface & | mySceneInterface |
| FeatureMap | myFeatures |
| DtSignalConnectionManager | myConnections |
| std::string | myName |
| DtBuoyBeaconLayer::AttachableTypes | myAttachableType |
| std::string | myFeatureLayerList |
| std::string | myFeatureAttrMapFilename |
| DtNavigationFeatureBuilder * | myNavigationFeatureBuilder |
| int | myPresenceSwitchNumber |
| int | myTypeSwitchNumber |
| FeatureStylesList | myFeatureStylesList |
| The list of osgEarth model styles we want to be notified about. | |
| PendingFeatureAttachmentMap | myDetachedFeatures |
| Features start here. When attached they move to... | |
| PendingFeatureAttachmentMap | myAttachedFeatures |
| ...here. | |
| FeatureToFeatureMap | myFeatureToBuoyOrBeaconMap |
| FeatureToFeatureMap | myBuoyOrBeaconToFeatureMap |
| DtBuoyBeaconLayer & | myBuoyBeaconLayer |
| Access to the buoys. | |
| boost::signals::connection | myPostInitializeConnection |
The DtNavigationFeatureManager matches streamed features to other streamed features (buoys and beacons) that have the same location.
It is also responsible for removing them when the streamed features page out
| typedef std::map<DtUniqueID, DtNavigationFeature*> makVrv::DtNavigationFeatureManager::FeatureMap |
Type for a map of controller IDs to DtNavigationFeature.
|
protected |
|
protected |
Type for hash table of feature ids and locations.
|
protected |
Type for hash tables of features to attached buoys and attached buoys to features.
| makVrv::DtNavigationFeatureManager::DtNavigationFeatureManager | ( | const std::string & | name, |
| DtDe & | de, | ||
| DtAgentManagerInterface & | sceneInterface, | ||
| DtBuoyBeaconLayer & | buoyBeaconLayer, | ||
| DtBuoyBeaconLayer::AttachableTypes | attType, | ||
| const std::string & | featureLayerList, | ||
| const std::string & | featureAttrMapFilename, | ||
| DtNavigationFeatureBuilder * | featureBuilder, | ||
| int | presenceSwitchNum, | ||
| int | typeSwitchNum | ||
| ) |
CTOR.
|
virtual |
DTOR.
|
protected |
CTOR (unimplemented default CTOR )
|
protected |
Copy CTOR (unimplemented)
| bool makVrv::DtNavigationFeatureManager::readFeatureStyleListFile | ( | const std::string & | path, |
| const std::string & | layerListFileName | ||
| ) |
Read the file that specifies the list of osgEarth style names that we wish to have our registered builder called for when features are streamed in.
|
virtual |
Add a feature (ex.
light, daymark). The manager takes ownership of the controller
| DtNavigationFeature* makVrv::DtNavigationFeatureManager::findFeature | ( | DtUniqueID | elementId | ) |
Finds a pointer to the feature controller with the given element id.
|
virtual |
Destroys the feature with the element id.
Returns true if the feature was destroyed, false otherwise.
| const FeatureMap& makVrv::DtNavigationFeatureManager::features | ( | ) | const |
Get the container of features associated held by the manager.
| FeatureMap& makVrv::DtNavigationFeatureManager::features | ( | ) |
|
virtual |
Look through the list of unattached features for a feature with the specified position.
|
protected |
Assignment operator (unimplemented)
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Helper function for setting up a buoy/beacon attachment.
Reimplemented in makVrv::DtNavigationLightManager.
|
protectedvirtual |
Helper function for detaching from a buoy/beacon.
Reimplemented in makVrv::DtNavigationLightManager.
|
protectedvirtual |
Move features from the list of attached features to the list of unattached features.
|
protectedvirtual |
Move features from the list of unattached features to the list of attached features.
|
protectedvirtual |
Register creators with the streamed feature manager for each feature layer (osgEarth model style) of interest.
|
protectedvirtual |
Slot connected to signal from the streamed feature manager that a feature has paged out.
|
protectedvirtual |
Slot connected to signal from the streamed feature manager that a buoy has paged in.
|
protectedvirtual |
Slot connected to signal from the streamed feature manager that a buoy has paged out.
|
protected |
If the IG is initialized when this is called, it will call initializeFeatureCreators.
Otherwise, it connects to the postInitialize signal, which will then call initializeFeatureCreators.
|
protected |
slot used to wait for postInitialized signal
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
The list of osgEarth model styles we want to be notified about.
|
protected |
Features start here. When attached they move to...
|
protected |
...here.
When buoys attached to a feature page out, they move back to the waiting list
|
protected |
|
protected |
|
protected |
Access to the buoys.
|
protected |