VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes
makVrf::DtNavigationAreasManager Class Reference
Inheritance diagram for makVrf::DtNavigationAreasManager:
Inheritance graph
[legend]

Classes

struct  NavigationArea
 
struct  SimObjectNavigationArea
 

Public Types

enum  Status {
  Unknown = -1, Generated, NeedsGeneration, Generating,
  ScheduledForGeneration
}
 
typedef std::map< std::string,
DtNavSectorIndices
DtNavSectorIndicesByBackEnd
 
typedef std::map
< makVrv::DtUniqueID,
NavigationArea
NavigationAreas
 
typedef std::map< DtUUID,
SimObjectNavigationArea
SimObjectNavigationAreas
 

Public Member Functions

 DtNavigationAreasManager (makVrv::DtDe &)
 
virtual ~DtNavigationAreasManager ()
 
virtual bool addNavigationArea (const DtFilename &, makVrv::DtUniqueID *resID=0)
 
virtual int profilesToGenerate (makVrv::DtUniqueID) const
 
virtual
DtEnvironmentalFacadeCollection
createNavigationArea (const NavigationArea &) const
 
virtual void selectNavigationAreas (const std::set< makVrv::DtUniqueID > &, bool selectOnMap=true)
 
const std::set
< makVrv::DtUniqueID > & 
selectedNavigationAreas () const
 
virtual Status status (makVrv::DtUniqueID)
 
virtual const
DtNavSectorIndicesByBackEnd
sectorsBeingRegenerated (makVrv::DtUniqueID) const
 
virtual const
DtNavSectorIndicesByBackEnd
sectorsQueuedForRegeneration (makVrv::DtUniqueID) const
 
virtual void revertNavigationArea (makVrv::DtUniqueID)
 
virtual bool isModified (makVrv::DtUniqueID) const
 
virtual Status navDataGenerated (const NavigationArea &) const
 
virtual void generateNavigationArea (makVrv::DtUniqueID)
 
virtual void regenerateAllUngeneratedAreas ()
 
virtual void saveConfigurations ()
 
virtual makVrv::DtUniqueID generatingNavigationArea () const
 
virtual void generateAllNavigationAreas ()
 
virtual bool generatingAnyNavigationArea ()
 
virtual void removeCurrentFromGeneration ()
 
virtual void removeAllFromGeneration ()
 
virtual void removeNavigationAreaForGeneration (makVrv::DtUniqueID)
 
virtual bool scheduledForGeneration (makVrv::DtUniqueID) const
 
virtual bool isNavigationArea (makVrv::DtUniqueID) const
 
virtual makVrv::DtUniqueID navigationAreaForConfigurationFile (const DtFilename &) const
 
virtual void setShowNavigationAreas (bool)
 
virtual bool showNavigationAreas () const
 
virtual void setShowProgressOnGenerationStart (bool b)
 
virtual bool showProgressOnGenerationStart () const
 
virtual void removeNavigationArea (makVrv::DtUniqueID, bool ask=false)
 
virtual void setGenerationCheckDelta (double)
 
double generationCheckDelta () const
 
virtual std::map< DtString,
DtFilename > 
profilesAndOutputDirectoriesFor (makVrv::DtUniqueID id) const
 
const NavigationAreasnavigationAreas () const
 
virtual void setMaximumNavigationAreaCellSize (double length, double width)
 
virtual void getMaximumNavigationAreaCellSize (double &length, double &width)
 
virtual bool needsRegeneration () const
 
virtual bool startGenerationProcess (makVrv::DtUniqueID, makVrv::DtUnicode &error)
 
virtual std::vector< DtVectorconvertRuntimeExtentToLocations (const DtRwNavRuntimeConfig &, bool &valid) const
 
virtual DtFilename navDataRuntimeDirectory (const NavigationArea &) const
 
virtual DtFilename navDataRuntimeDirectory (makVrv::DtUniqueID) const
 
virtual bool checkValidExtent (const std::vector< DtVector > &) const
 
virtual DtVector convertToLocalNavigationArea (const DtVector &geocentric) const
 
bool generationHadErrors () const
 
SimObjectNavigationAreassimObjectNavAreas ()
 
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 
virtual ~DtVirtualBaseClass ()
 

Static Public Member Functions

static DtNavigationAreasManagerinstance (makVrv::DtDe &de)
 
static void registerInstance (makVrv::DtDe &, DtNavigationAreasManager *)
 

Public Attributes

boost::signals2::signal< void(bool)> signal_showNavigationAreasChanged
 
boost::signals2::signal< void()> signal_areasCleared
 
boost::signals2::signal< void(makVrv::DtUniqueID,
NavigationArea, bool)> 
signal_navigationAreaAdded
 
boost::signals2::signal< void(makVrv::DtUniqueID)> signal_navigationAreaRemoved
 
boost::signals2::signal< void(makVrv::DtUniqueID,
NavigationArea)> 
signal_navigationAreaUpdated
 
boost::signals2::signal< void(makVrv::DtUniqueID,
makVrv::DtUnicode)> 
signal_generationError
 
boost::signals2::signal< void(makVrv::DtUniqueID,
makVrv::DtUnicode)> 
signal_startingGeneration
 
boost::signals2::signal< void()> signal_generationComplete
 
boost::signals2::signal< void(makVrv::DtUniqueID)> signal_generationRequested
 
boost::signals2::signal< void(makVrv::DtUniqueID,
const DtFilename &)> 
signal_profileGenerated
 
boost::signals2::signal< void()> signal_navigationAreaGenerationProcessStarted
 
boost::signals2::signal< void(QProcess *)> signal_generatorProcessStarted
 
boost::signals2::signal< void()> signal_generatorProcessCompleted
 
boost::signals2::signal< void(makVrv::DtUniqueID,
int)> 
signal_removedFromGeneration
 

Protected Types

typedef std::vector
< makVrv::DtUniqueID
NavigationAreasToGenerate
 

Protected Member Functions

virtual void resetNavAreaColors ()
 
virtual void initExistingNavigationAreas ()
 
virtual void slot_navigationAreasCleared ()
 
virtual void showNavigationArea (const NavigationArea &)
 
virtual void initialize ()
 
virtual void navigationAreaUpdated (makVrv::DtStateView< makVrv::DtVrlinkSimulatedBaseState > *)
 
virtual void navigationAreaAdded (const makVrv::DtStateView< makVrv::DtVrlinkSimulatedBaseState > *)
 
virtual void tick ()
 
virtual void navAreaDebugPortsReceived (DtSimMessage *)
 
virtual void simObjectNavareaDebugPortsReceived (DtSimMessage *)
 
virtual void detachIfAttachedToNavigationArea (makVrv::DtUniqueID)
 
virtual void slot_onCurrentSelectionChanged (const makVrv::DtSelectionManager::IdSet &selected, const makVrv::DtSelectionManager::IdSet &deselected)
 
virtual void setTerrainClearing (bool)
 

Protected Attributes

makVrv::DtDemyDe
 
makVrv::DtSignalConnectionManager myConnectionManager
 
makVrv::DtSignalConnectionManager myInitializeConnectionManager
 
NavigationAreas myNavigationAreas
 
std::set< makVrv::DtUniqueIDmySelectedNavigationAreas
 
NavigationAreasToGenerate myNavigationAreasToGenerate
 
QProcess * myNavigationGenerationProcess
 
makVrv::DtUniqueID myGeneratingNavigationArea
 
std::vector< std::string > myProfilesToGenerate
 
DtTimedSection myTimedSection
 
double myTimeSinceLastCheck
 
double myGenerationCheckDelta
 
bool myGenerationHadErrors
 
SimObjectNavigationAreas mySimObjectNavAreas
 
bool myTerrainClearing
 

Member Typedef Documentation

Member Enumeration Documentation

Enumerator
Unknown 
Generated 
NeedsGeneration 
Generating 
ScheduledForGeneration 

Constructor & Destructor Documentation

makVrf::DtNavigationAreasManager::DtNavigationAreasManager ( makVrv::DtDe )

CTOR.

virtual makVrf::DtNavigationAreasManager::~DtNavigationAreasManager ( )
virtual

DTOR.

Member Function Documentation

static DtNavigationAreasManager& makVrf::DtNavigationAreasManager::instance ( makVrv::DtDe de)
static

Returns DtLocalWeatherManager of the manager.

static void makVrf::DtNavigationAreasManager::registerInstance ( makVrv::DtDe ,
DtNavigationAreasManager  
)
static

Register a new manager instance.

virtual bool makVrf::DtNavigationAreasManager::addNavigationArea ( const DtFilename &  ,
makVrv::DtUniqueID resID = 0 
)
virtual

Adds a new navigation area that is referenced by the given filename. This filename is assumed to be the root of a particular navigation area (for example, Ground-db Area 1.navRuntimeConfig)

virtual int makVrf::DtNavigationAreasManager::profilesToGenerate ( makVrv::DtUniqueID  ) const
virtual

Returns the number of profiles that the nav area wants to generate.

virtual DtEnvironmentalFacadeCollection* makVrf::DtNavigationAreasManager::createNavigationArea ( const NavigationArea ) const
virtual

Creates an environmental facade collection of DtNavigationAreaObjectType in the local object manager.

virtual void makVrf::DtNavigationAreasManager::selectNavigationAreas ( const std::set< makVrv::DtUniqueID > &  ,
bool  selectOnMap = true 
)
virtual

Selects the given navigation areas – mainly used for display of currently selected navigation areas.

const std::set<makVrv::DtUniqueID>& makVrf::DtNavigationAreasManager::selectedNavigationAreas ( ) const
virtual Status makVrf::DtNavigationAreasManager::status ( makVrv::DtUniqueID  )
virtual

Status of the particular area.

virtual const DtNavSectorIndicesByBackEnd& makVrf::DtNavigationAreasManager::sectorsBeingRegenerated ( makVrv::DtUniqueID  ) const
virtual

The sectors current being regenerated, on each back end, for the particular area.

virtual const DtNavSectorIndicesByBackEnd& makVrf::DtNavigationAreasManager::sectorsQueuedForRegeneration ( makVrv::DtUniqueID  ) const
virtual

The sectors currently queued for regeneration, on each back end, for the particular area.

virtual void makVrf::DtNavigationAreasManager::revertNavigationArea ( makVrv::DtUniqueID  )
virtual

If there has been a change, revert the navigation area to the original area. This must be done before navigation area generation.

virtual bool makVrf::DtNavigationAreasManager::isModified ( makVrv::DtUniqueID  ) const
virtual

Returns true if the navigation area has been changed from the original configuration.

virtual Status makVrf::DtNavigationAreasManager::navDataGenerated ( const NavigationArea ) const
virtual

Returns "Generated", if, for the given navigation area, all navigation data is generated. This is checked by seeing if there are profile Return "NeedsGeneration" if not started Return "Generating" if processing directories in the navigation data path for all profiles.

virtual void makVrf::DtNavigationAreasManager::generateNavigationArea ( makVrv::DtUniqueID  )
virtual

Adds this navigation area to the queue to be generated. Will also make the area non-editable until it is generated.

virtual void makVrf::DtNavigationAreasManager::regenerateAllUngeneratedAreas ( )
virtual

Will regenerate only navigation areas that need to be regenerated.

virtual void makVrf::DtNavigationAreasManager::saveConfigurations ( )
virtual

Saves all configurations loaded for the current terrain.

virtual makVrv::DtUniqueID makVrf::DtNavigationAreasManager::generatingNavigationArea ( ) const
virtual

Returns the navigation area currently being generated.

virtual void makVrf::DtNavigationAreasManager::generateAllNavigationAreas ( )
virtual

Schedules all navigation areas for generation.

virtual bool makVrf::DtNavigationAreasManager::generatingAnyNavigationArea ( )
virtual

Returns true if any navigation areas are being generated.

virtual void makVrf::DtNavigationAreasManager::removeCurrentFromGeneration ( )
virtual

Removes the current area from generation.

virtual void makVrf::DtNavigationAreasManager::removeAllFromGeneration ( )
virtual

Removes all areas from generation.

virtual void makVrf::DtNavigationAreasManager::removeNavigationAreaForGeneration ( makVrv::DtUniqueID  )
virtual

If in the queue, removes this item from being generated.

virtual bool makVrf::DtNavigationAreasManager::scheduledForGeneration ( makVrv::DtUniqueID  ) const
virtual

Returns true if this area is scheduled to be generated.

virtual bool makVrf::DtNavigationAreasManager::isNavigationArea ( makVrv::DtUniqueID  ) const
virtual

Returns true if the given id is a navigation area.

virtual makVrv::DtUniqueID makVrf::DtNavigationAreasManager::navigationAreaForConfigurationFile ( const DtFilename &  ) const
virtual

Returns the id of the navigation area for the given configuration file.

virtual void makVrf::DtNavigationAreasManager::setShowNavigationAreas ( bool  )
virtual

Sets whether or not to show all navigation areas. If all are not shown only the current navigation area is.

virtual bool makVrf::DtNavigationAreasManager::showNavigationAreas ( ) const
virtual
virtual void makVrf::DtNavigationAreasManager::setShowProgressOnGenerationStart ( bool  b)
virtual

Sets whether or not to show the navigation area generation progress dialog when generation starts.

virtual bool makVrf::DtNavigationAreasManager::showProgressOnGenerationStart ( ) const
virtual
virtual void makVrf::DtNavigationAreasManager::removeNavigationArea ( makVrv::DtUniqueID  ,
bool  ask = false 
)
virtual

Removes the navigation area from the manager and from the DtVrfTerrain. This will mark the terrain as modified such that the user will be asked to save before closing or exiting.

Reimplemented in makVrf::DtQtNavigationAreasManager.

virtual void makVrf::DtNavigationAreasManager::setGenerationCheckDelta ( double  )
virtual

Update the time (in seconds) to check for the presence of a generated navigation data profile.

double makVrf::DtNavigationAreasManager::generationCheckDelta ( ) const
virtual std::map<DtString, DtFilename> makVrf::DtNavigationAreasManager::profilesAndOutputDirectoriesFor ( makVrv::DtUniqueID  id) const
virtual

Given the id, return a list of the profiles to generate and where their output will go.

const NavigationAreas& makVrf::DtNavigationAreasManager::navigationAreas ( ) const
inline
virtual void makVrf::DtNavigationAreasManager::setMaximumNavigationAreaCellSize ( double  length,
double  width 
)
virtual

Maximum navigation area cell length/width. Default is 20km.

virtual void makVrf::DtNavigationAreasManager::getMaximumNavigationAreaCellSize ( double length,
double width 
)
virtual
virtual bool makVrf::DtNavigationAreasManager::needsRegeneration ( ) const
virtual

Returns true if any of the items needs regeneration.

virtual bool makVrf::DtNavigationAreasManager::startGenerationProcess ( makVrv::DtUniqueID  ,
makVrv::DtUnicode error 
)
virtual

Starts the process of generating the navigation area. Returns false if the navigation area cannot be generated. Check the error string for reason why.

virtual std::vector<DtVector> makVrf::DtNavigationAreasManager::convertRuntimeExtentToLocations ( const DtRwNavRuntimeConfig ,
bool valid 
) const
virtual

Returns the four corners from the Kaim system of points to local database.

virtual DtFilename makVrf::DtNavigationAreasManager::navDataRuntimeDirectory ( const NavigationArea ) const
virtual

Returns the directory that the navigation data is in for this nav area (root plus runtime navigation configuration name)

virtual DtFilename makVrf::DtNavigationAreasManager::navDataRuntimeDirectory ( makVrv::DtUniqueID  ) const
virtual
virtual bool makVrf::DtNavigationAreasManager::checkValidExtent ( const std::vector< DtVector > &  ) const
virtual

Checks to see if this extent at least contains the database origin. Will also return true if this database is geocentric.

virtual DtVector makVrf::DtNavigationAreasManager::convertToLocalNavigationArea ( const DtVector geocentric) const
virtual

Converts from geocentric to the local coordinatae system of the navigation area.

bool makVrf::DtNavigationAreasManager::generationHadErrors ( ) const
inline
SimObjectNavigationAreas& makVrf::DtNavigationAreasManager::simObjectNavAreas ( )
inline
virtual void makVrf::DtNavigationAreasManager::resetNavAreaColors ( )
protectedvirtual
virtual void makVrf::DtNavigationAreasManager::initExistingNavigationAreas ( )
protectedvirtual
virtual void makVrf::DtNavigationAreasManager::slot_navigationAreasCleared ( )
protectedvirtual
virtual void makVrf::DtNavigationAreasManager::showNavigationArea ( const NavigationArea )
protectedvirtual
virtual void makVrf::DtNavigationAreasManager::initialize ( )
protectedvirtual
virtual void makVrf::DtNavigationAreasManager::navigationAreaUpdated ( makVrv::DtStateView< makVrv::DtVrlinkSimulatedBaseState > *  )
protectedvirtual
virtual void makVrf::DtNavigationAreasManager::navigationAreaAdded ( const makVrv::DtStateView< makVrv::DtVrlinkSimulatedBaseState > *  )
protectedvirtual
virtual void makVrf::DtNavigationAreasManager::tick ( )
protectedvirtual
virtual void makVrf::DtNavigationAreasManager::navAreaDebugPortsReceived ( DtSimMessage )
protectedvirtual

Called when a navigation area is added in a back-end and supplies the port.

virtual void makVrf::DtNavigationAreasManager::simObjectNavareaDebugPortsReceived ( DtSimMessage )
protectedvirtual
virtual void makVrf::DtNavigationAreasManager::detachIfAttachedToNavigationArea ( makVrv::DtUniqueID  )
protectedvirtual
virtual void makVrf::DtNavigationAreasManager::slot_onCurrentSelectionChanged ( const makVrv::DtSelectionManager::IdSet selected,
const makVrv::DtSelectionManager::IdSet deselected 
)
protectedvirtual
virtual void makVrf::DtNavigationAreasManager::setTerrainClearing ( bool  )
protectedvirtual

Set when the terrain is clearing, will prevent items from being deleted when they are deleted from the local object manager as this will cause the terrain editor to think the terrain has changed.

Member Data Documentation

boost::signals2::signal<void (bool)> makVrf::DtNavigationAreasManager::signal_showNavigationAreasChanged
boost::signals2::signal<void ()> makVrf::DtNavigationAreasManager::signal_areasCleared
boost::signals2::signal<void (makVrv::DtUniqueID, NavigationArea, bool)> makVrf::DtNavigationAreasManager::signal_navigationAreaAdded
boost::signals2::signal<void (makVrv::DtUniqueID)> makVrf::DtNavigationAreasManager::signal_navigationAreaRemoved
boost::signals2::signal<void (makVrv::DtUniqueID, NavigationArea)> makVrf::DtNavigationAreasManager::signal_navigationAreaUpdated
boost::signals2::signal<void (makVrv::DtUniqueID, makVrv::DtUnicode)> makVrf::DtNavigationAreasManager::signal_generationError
boost::signals2::signal<void (makVrv::DtUniqueID, makVrv::DtUnicode)> makVrf::DtNavigationAreasManager::signal_startingGeneration
boost::signals2::signal<void ()> makVrf::DtNavigationAreasManager::signal_generationComplete
boost::signals2::signal<void (makVrv::DtUniqueID)> makVrf::DtNavigationAreasManager::signal_generationRequested
boost::signals2::signal<void (makVrv::DtUniqueID, const DtFilename&)> makVrf::DtNavigationAreasManager::signal_profileGenerated
boost::signals2::signal<void ()> makVrf::DtNavigationAreasManager::signal_navigationAreaGenerationProcessStarted
boost::signals2::signal<void (QProcess*)> makVrf::DtNavigationAreasManager::signal_generatorProcessStarted
boost::signals2::signal<void ()> makVrf::DtNavigationAreasManager::signal_generatorProcessCompleted
boost::signals2::signal<void (makVrv::DtUniqueID, int)> makVrf::DtNavigationAreasManager::signal_removedFromGeneration
makVrv::DtDe& makVrf::DtNavigationAreasManager::myDe
protected
makVrv::DtSignalConnectionManager makVrf::DtNavigationAreasManager::myConnectionManager
protected
makVrv::DtSignalConnectionManager makVrf::DtNavigationAreasManager::myInitializeConnectionManager
protected
NavigationAreas makVrf::DtNavigationAreasManager::myNavigationAreas
protected
std::set<makVrv::DtUniqueID> makVrf::DtNavigationAreasManager::mySelectedNavigationAreas
protected
NavigationAreasToGenerate makVrf::DtNavigationAreasManager::myNavigationAreasToGenerate
protected
QProcess* makVrf::DtNavigationAreasManager::myNavigationGenerationProcess
protected
makVrv::DtUniqueID makVrf::DtNavigationAreasManager::myGeneratingNavigationArea
protected
std::vector<std::string> makVrf::DtNavigationAreasManager::myProfilesToGenerate
protected
DtTimedSection makVrf::DtNavigationAreasManager::myTimedSection
protected
double makVrf::DtNavigationAreasManager::myTimeSinceLastCheck
protected
double makVrf::DtNavigationAreasManager::myGenerationCheckDelta
protected
bool makVrf::DtNavigationAreasManager::myGenerationHadErrors
protected
SimObjectNavigationAreas makVrf::DtNavigationAreasManager::mySimObjectNavAreas
protected
bool makVrf::DtNavigationAreasManager::myTerrainClearing
protected

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

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)