VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
makVrv::DtNavigationDaymarkManager Class Reference

The DtNavigationDaymarkManager matches streamed daymarks to other streamed features (buoys and beacons) that have the same location. More...

Inheritance diagram for makVrv::DtNavigationDaymarkManager:
Inheritance graph
[legend]

Public Types

typedef std::map< DtUniqueID,
DtNavigationDaymark * > 
DaymarkMap
 Type for a map of daymark IDs to DtNavigationDaymark.
- Public Types inherited from makVrv::DtNavigationFeatureManager
typedef std::map< DtUniqueID,
DtNavigationFeature * > 
ObjectMap
 Type for a map of controller IDs to DtNavigationFeature.

Public Member Functions

 DtNavigationDaymarkManager (DtDe &de, DtAgentManagerInterface &sceneInterface, DtBuoyLayer &buoyLayer)
 CTOR.
virtual ~DtNavigationDaymarkManager ()
 DTOR.
virtual void addObject (DtNavigationFeature *object)
 Add a daymark. The manager takes ownership of the daymark.
virtual bool needsUpdate (DtTime tNow)
 Tickable implementation The check function called by DtTickableManager to verify if an update is required.
virtual void update (DtTime tNow)
 The update function called by DtTickableManager during update-ticks.
void setDaymarkShapeSwitchNumber (int switchNum)
 Set/get the switch number to use for changing daymark shape on models.
int DaymarkShapeSwitchNumber () const
 Set/get the switch number to use for changing daymark shape on models.
- Public Member Functions inherited from makVrv::DtNavigationFeatureManager
 DtNavigationFeatureManager (DtDe &de, DtAgentManagerInterface &sceneInterface, DtBuoyLayer &buoyLayer)
 CTOR.
virtual ~DtNavigationFeatureManager ()
 DTOR.
bool readObjectStyleListFile (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.
DtNavigationFeaturefindObject (DtUniqueID elementId)
 Finds a pointer to the object controller with the given element id.
virtual bool destroyObject (DtUniqueID id)
 Destroys the object with the element id.
virtual DtUniqueID findObjectWithPosition (const DtVector &position)
 Look through the list of unattached objects for a object with the specified position.
const ObjectMapobjects () const
 Get the container of objects associated held by the manager.
ObjectMapobjects ()
 Get the container of objects associated held by the manager.
- Public Member Functions inherited from makVrv::DtTickable
virtual ~DtTickable ()
 Virtual DTOR.

Protected Member Functions

 DtNavigationDaymarkManager ()
 CTOR (unimplemented default CTOR )
 DtNavigationDaymarkManager (const DtNavigationDaymarkManager &orig)
 Copy CTOR (unimplemented)
DtNavigationDaymarkManageroperator= (const DtNavigationDaymarkManager &rhs)
 Assignment operator (unimplemented)
virtual void attachToBuoy (DtNavigationFeature &controller, DtBuoyOrBeaconFacade &buoy)
 Helper function for setting up a buoy/beacon attachment.
virtual void detachFromBuoy (DtNavigationFeature &controller, DtBuoyOrBeaconFacade &buoy)
 Helper function for detaching from a buoy/beacon.
virtual void initializeFeatureCreators ()
 Register creators with the streamed feature manager for each daymark layer (osgEarth model style) of interest.
virtual void slot_buoyCreated (DtBuoyOrBeaconFacade &buoy, const DtVector &initialPosition)
 Slot connected to signal from the streamed feature manager that a buoy has paged in.
- Protected Member Functions inherited from makVrv::DtNavigationFeatureManager
 DtNavigationFeatureManager ()
 CTOR (unimplemented default CTOR )
 DtNavigationFeatureManager (const DtNavigationFeatureManager &orig)
 Copy CTOR (unimplemented)
DtNavigationFeatureManageroperator= (const DtNavigationFeatureManager &rhs)
 Assigment operator (unimplemented)
virtual void moveObjectToDetachedObjectList (DtUniqueID controllerId)
 Move objects from the list of attached objects to the list of unattached objects.
virtual void moveObjectToAttachedObjectList (DtUniqueID controllerId)
 Move objects from the list of unattached objects to the list of attached objects.
virtual void slot_featureToBeDeleted (const std::string &myLayerName, DtUniqueID featureId)
 Slot connected to signal from the streamed feature manager that a object has paged out.
virtual void slot_buoyAboutToBeDestroyed (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 Member Functions inherited from makVrv::DtTickable
 DtTickable (DtTickableManagerInterface *manager)
 CTOR.
 DtTickable ()
 Unimplemented default CTOR.

Protected Attributes

int myDaymarkShapeSwitchNumber
- Protected Attributes inherited from makVrv::DtNavigationFeatureManager
const charObjectLayerList
const charObjectAttrMapFilename
DtDemyDe
DtAgentManagerInterfacemySceneInterface
ObjectMap myObjects
DtSignalConnectionManager myConnections
DtNavigationFeatureStringParsermyObjectStringParser
std::string myName
ObjectStylesList myObjectStylesList
 The list of osgEarth model styles we want to be notified about.
PendingObjectAttachmentMap myDetachedObjects
 Objects start here. When attached they move to...
PendingObjectAttachmentMap myAttachedObjects
 ...here.
ObjectToObjectMap myObjectToBuoyMap
ObjectToObjectMap myBuoyToObjectMap
DtBuoyLayermyBuoyLayer
 Access to the buoys.
boost::signals::connection myPostInitializeConnection
- Protected Attributes inherited from makVrv::DtTickable
DtTickableManagerInterfacemyManager
 Pointer to manager for removal during destruction.

Additional Inherited Members

- Protected Types inherited from makVrv::DtNavigationFeatureManager
typedef std::list< std::string > ObjectStylesList
typedef boost::unordered_map
< DtUniqueID, DtVector
PendingObjectAttachmentMap
 Type for hash table of object ids and locations.
typedef boost::unordered_map
< DtUniqueID, DtUniqueID
ObjectToObjectMap
 Type for hash tables of objects to attached buoys and attached buoys to objects.

Detailed Description

The DtNavigationDaymarkManager matches streamed daymarks to other streamed features (buoys and beacons) that have the same location.

It is also responsible for updating the daymarks and removing them when the streamed daymarks page out

Member Typedef Documentation

Type for a map of daymark IDs to DtNavigationDaymark.

Constructor & Destructor Documentation

makVrv::DtNavigationDaymarkManager::DtNavigationDaymarkManager ( DtDe de,
DtAgentManagerInterface sceneInterface,
DtBuoyLayer buoyLayer 
)

CTOR.

virtual makVrv::DtNavigationDaymarkManager::~DtNavigationDaymarkManager ( )
virtual

DTOR.

makVrv::DtNavigationDaymarkManager::DtNavigationDaymarkManager ( )
protected

CTOR (unimplemented default CTOR )

makVrv::DtNavigationDaymarkManager::DtNavigationDaymarkManager ( const DtNavigationDaymarkManager orig)
protected

Copy CTOR (unimplemented)

Member Function Documentation

virtual void makVrv::DtNavigationDaymarkManager::addObject ( DtNavigationFeature object)
virtual

Add a daymark. The manager takes ownership of the daymark.

Implements makVrv::DtNavigationFeatureManager.

virtual bool makVrv::DtNavigationDaymarkManager::needsUpdate ( DtTime  tNow)
virtual

Tickable implementation The check function called by DtTickableManager to verify if an update is required.

If this function returns true, the DtTickableManager will then call update().

Parameters
[in]tNowis the current time-stamp.
Return values
true

Implements makVrv::DtNavigationFeatureManager.

virtual void makVrv::DtNavigationDaymarkManager::update ( DtTime  tNow)
virtual

The update function called by DtTickableManager during update-ticks.

Parameters
[in]tNowis the current time-stamp. This method calls update() for all attached daymarks

Implements makVrv::DtNavigationFeatureManager.

void makVrv::DtNavigationDaymarkManager::setDaymarkShapeSwitchNumber ( int  switchNum)

Set/get the switch number to use for changing daymark shape on models.

Normally DtModelSemanticsMapper::States::daymark_shape, this provides a mechanism to change the value used.

int makVrv::DtNavigationDaymarkManager::DaymarkShapeSwitchNumber ( ) const

Set/get the switch number to use for changing daymark shape on models.

Normally DtModelSemanticsMapper::States::daymark_shape, this provides a mechanism to change the value used.

DtNavigationDaymarkManager& makVrv::DtNavigationDaymarkManager::operator= ( const DtNavigationDaymarkManager rhs)
protected

Assignment operator (unimplemented)

virtual void makVrv::DtNavigationDaymarkManager::attachToBuoy ( DtNavigationFeature controller,
DtBuoyOrBeaconFacade buoy 
)
protectedvirtual

Helper function for setting up a buoy/beacon attachment.

Implements makVrv::DtNavigationFeatureManager.

virtual void makVrv::DtNavigationDaymarkManager::detachFromBuoy ( DtNavigationFeature controller,
DtBuoyOrBeaconFacade buoy 
)
protectedvirtual

Helper function for detaching from a buoy/beacon.

Implements makVrv::DtNavigationFeatureManager.

virtual void makVrv::DtNavigationDaymarkManager::initializeFeatureCreators ( )
protectedvirtual

Register creators with the streamed feature manager for each daymark layer (osgEarth model style) of interest.

Implements makVrv::DtNavigationFeatureManager.

virtual void makVrv::DtNavigationDaymarkManager::slot_buoyCreated ( DtBuoyOrBeaconFacade buoy,
const DtVector initialPosition 
)
protectedvirtual

Slot connected to signal from the streamed feature manager that a buoy has paged in.

Implements makVrv::DtNavigationFeatureManager.

Member Data Documentation

int makVrv::DtNavigationDaymarkManager::myDaymarkShapeSwitchNumber
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)