VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
makVrv::DtGotoLogic Class Reference

DtGotoLogic declaration. The DtGotoWidget and DtGotoLogic work together to provide a user interface for directing the current observer to jump to either a location any of the coordinate systems we currently support; or an actual address that is used to look up a latitude/longitude by creating a geocoding session. The logic provides input coordinate systems (and the current system) to the widget; as well as the current goto type (which it may also receive FROM the widget). When a location to jump to is found, the logic determines an altitude currently hard-coded to 800 m. For stealth views, it also backs up 800m and looks down at the target location.

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

Public Member Functions

 DtGotoLogic (DtDe &de, DtGotoWidgetInterface *iface)
 
 DtGotoLogic ()=delete
 
 DtGotoLogic (const DtGotoLogic &orig)=delete
 
DtGotoLogicoperator= (const DtGotoLogic &orig)=delete
 
virtual ~DtGotoLogic ()
 
virtual void initialize ()
 

Protected Member Functions

virtual void slot_gotoLocation (double lat, double lon)
 
virtual void slot_requestJumpToAddress (const DtUnicode &address)
 
virtual void slot_gotoTypeChanged (GotoType addressOrLocation)
 
virtual void slot_locationEntryTypeChanged (makArchives::DtDisplayUnitsSettingsRecord::CoordSys newSys)
 
virtual void slot_activate (DtDe *de) override
 
virtual void slot_deactivate (DtDe *de) override
 
bool processPolygon (int type, OGRGeometryH geometry, DtExtent &extent)
 
virtual void slot_coordinateSystemChanged ()
 

Protected Attributes

DtDemyDe
 
DtGotoWidgetInterfacemyInterface
 
DtSignalConnectionManager mySignalConnectionManager
 
OGRGeocodingSessionH mySession
 
double myHeightOffset
 
double myHorizontalOffset
 
GotoType myCurrentGotoType
 
makArchives::DtDisplayUnitsSettingsRecord::CoordSys myLocationInputCoordSys
 
DtCoordinateSystemmyDatabaseCoordinateSystem = nullptr
 

Constructor & Destructor Documentation

makVrv::DtGotoLogic::DtGotoLogic ( DtDe de,
DtGotoWidgetInterface iface 
)
makVrv::DtGotoLogic::DtGotoLogic ( )
delete
makVrv::DtGotoLogic::DtGotoLogic ( const DtGotoLogic orig)
delete

Copy CTOR ( Not implemented )

virtual makVrv::DtGotoLogic::~DtGotoLogic ( )
virtual

Virtual DTOR.

Member Function Documentation

DtGotoLogic& makVrv::DtGotoLogic::operator= ( const DtGotoLogic orig)
delete

Assignment operator ( Not implemented )

virtual void makVrv::DtGotoLogic::initialize ( )
virtual

Initialize the logic module. This method makes connections to all the DtGotoWidget signals of interest.

virtual void makVrv::DtGotoLogic::slot_gotoLocation ( double  lat,
double  lon 
)
protectedvirtual
virtual void makVrv::DtGotoLogic::slot_requestJumpToAddress ( const DtUnicode address)
protectedvirtual
virtual void makVrv::DtGotoLogic::slot_gotoTypeChanged ( GotoType  addressOrLocation)
protectedvirtual
virtual void makVrv::DtGotoLogic::slot_locationEntryTypeChanged ( makArchives::DtDisplayUnitsSettingsRecord::CoordSys  newSys)
protectedvirtual
virtual void makVrv::DtGotoLogic::slot_activate ( DtDe de)
overrideprotectedvirtual

This will be called when the DtDe has been created and initialized. This calls slot_coordinateSystemChanged and then provides the known coordinate systems to the widget. It also sets the starting location input widget to match the current location display system.

virtual void makVrv::DtGotoLogic::slot_deactivate ( DtDe de)
overrideprotectedvirtual

Called when the DtDe is about to be destroyed. This is a no-op here, but required to override.

bool makVrv::DtGotoLogic::processPolygon ( int  type,
OGRGeometryH  geometry,
DtExtent extent 
)
protected

If the geocoding request returns a polygon, the method processes it and finds the extents (the center of which will be used as the location to jump to)

virtual void makVrv::DtGotoLogic::slot_coordinateSystemChanged ( )
protectedvirtual

slot for when the coordinate system changes

Member Data Documentation

DtDe& makVrv::DtGotoLogic::myDe
protected
DtGotoWidgetInterface* makVrv::DtGotoLogic::myInterface
protected
DtSignalConnectionManager makVrv::DtGotoLogic::mySignalConnectionManager
protected
OGRGeocodingSessionH makVrv::DtGotoLogic::mySession
protected
double makVrv::DtGotoLogic::myHeightOffset
protected
double makVrv::DtGotoLogic::myHorizontalOffset
protected
GotoType makVrv::DtGotoLogic::myCurrentGotoType
protected
makArchives::DtDisplayUnitsSettingsRecord::CoordSys makVrv::DtGotoLogic::myLocationInputCoordSys
protected
DtCoordinateSystem* makVrv::DtGotoLogic::myDatabaseCoordinateSystem = nullptr
protected

local clone of the system wide coordinate system. for thread safety.


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

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)