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 | Private Member Functions
DtAisDataServiceInterface Class Referenceabstract

Abstract interface class to the AIS data service. This service provides access to Automatic Identification System (AIS) data, which is used to track and monitor real world ships. This data can be used to create and simulate clutter entities in a simulation.

Inheritance diagram for DtAisDataServiceInterface:
Inheritance graph
[legend]

Classes

class  DtAisDataJob
 

Public Types

using DtMmsi = int
 
using DtMmsiSet = std::set< DtMmsi >
 
using DtPathPoints = std::map< double, DtPathPoint >
 
using DtPathPointIter = std::map< double, DtPathPoint >::const_iterator
 

Public Member Functions

 DtAisDataServiceInterface ()
 
virtual ~DtAisDataServiceInterface ()
 
virtual bool isDataLoaded () const =0
 
virtual DtAisDataJob::Ptr findTracksInArea (const DtVertexList &areaVertices, bool unownedOnly=true)=0
 
virtual DtAisDataJob::Ptr findTracksInAreaDuringTime (const DtVertexList &areaVertices, double startSimTime, double endSimTime, bool unownedOnly)=0
 
virtual const DtAisTracktrackInfo (DtMmsi trackId) const =0
 
virtual DtAisDataJob::Ptr requestOwnershipOfTracks (const DtMmsiSet &trackIds)=0
 
virtual DtAisDataJob::Ptr releaseOwnershipOfTracks (const DtMmsiSet &trackIds)=0
 
virtual double aisTimeFromSimTime (double simTime) const =0
 
virtual double simTimeFromAisTime (double aisTime) const =0
 
virtual double finalDataSimTime () const =0
 
virtual bool getFirstPointAfterTime (const DtAisTrack &track, double simTime, DtPathPointIter &pathPointIter) const =0
 
virtual bool getLastPointBeforeTime (const DtAisTrack &track, double simTime, DtPathPointIter &pathPointIter) const =0
 
virtual DtPathPointIter getEndOfpath (const DtAisTrack &track) const =0
 
virtual void resetData ()=0
 
virtual void clearData ()=0
 

Private Member Functions

 DtAisDataServiceInterface (const DtAisDataServiceInterface &)
 
DtAisDataServiceInterfaceoperator= (const DtAisDataServiceInterface &)
 

Member Typedef Documentation

Constructor & Destructor Documentation

DtAisDataServiceInterface::DtAisDataServiceInterface ( )
inline
virtual DtAisDataServiceInterface::~DtAisDataServiceInterface ( )
inlinevirtual
DtAisDataServiceInterface::DtAisDataServiceInterface ( const DtAisDataServiceInterface )
private

Copy constructor not implemented.

Member Function Documentation

virtual bool DtAisDataServiceInterface::isDataLoaded ( ) const
pure virtual

Returns true if AIS data has been loaded.

Implemented in DtAisDataManager.

virtual DtAisDataJob::Ptr DtAisDataServiceInterface::findTracksInArea ( const DtVertexList areaVertices,
bool  unownedOnly = true 
)
pure virtual

Starts a query for all tracks in the specified area. If unownedOnly is true (the default) then only unowned tracks are returned.

Implemented in DtAisDataManager.

virtual DtAisDataJob::Ptr DtAisDataServiceInterface::findTracksInAreaDuringTime ( const DtVertexList areaVertices,
double  startSimTime,
double  endSimTime,
bool  unownedOnly 
)
pure virtual

Starts a query for all tracks in the specified area. If unownedOnly is true (the default) then only unowned tracks are returned.

Implemented in DtAisDataManager.

virtual const DtAisTrack* DtAisDataServiceInterface::trackInfo ( DtMmsi  trackId) const
pure virtual

Returns information for the track with the specified MMSI, or nullptr if it could not be found. Will always return nullptr if isDataLoaded() returns false;.

Implemented in DtAisDataManager.

virtual DtAisDataJob::Ptr DtAisDataServiceInterface::requestOwnershipOfTracks ( const DtMmsiSet trackIds)
pure virtual

Request ownership of the specified given tracks.

Implemented in DtAisDataManager.

virtual DtAisDataJob::Ptr DtAisDataServiceInterface::releaseOwnershipOfTracks ( const DtMmsiSet trackIds)
pure virtual

Release ownership of the specified tracks.

Implemented in DtAisDataManager.

virtual double DtAisDataServiceInterface::aisTimeFromSimTime ( double  simTime) const
pure virtual

Converts a sim time to AIS data time. Needed to understand how sim time relates to the timestamps in the AIS track data.

Implemented in DtAisDataManager.

virtual double DtAisDataServiceInterface::simTimeFromAisTime ( double  aisTime) const
pure virtual

Converts the AIS data time to sim time. Needed to understand how sim time relates to the timestamps in the AIS track data.

Implemented in DtAisDataManager.

virtual double DtAisDataServiceInterface::finalDataSimTime ( ) const
pure virtual

Returns the sim time for the last point of AIS data available.

Implemented in DtAisDataManager.

virtual bool DtAisDataServiceInterface::getFirstPointAfterTime ( const DtAisTrack track,
double  simTime,
DtPathPointIter pathPointIter 
) const
pure virtual

Find the first point in the track's path that occurs after (or at) the specified sim time. If no points meet this criteria, returns false and sets pathPointIter to the end of the path. (i.e. path.end()) Otherwise, returns true and pathPointIter parameter is set to the iterator to this point.

Implemented in DtAisDataManager.

virtual bool DtAisDataServiceInterface::getLastPointBeforeTime ( const DtAisTrack track,
double  simTime,
DtPathPointIter pathPointIter 
) const
pure virtual

Find the last point in the track's path that occurs before (or at) the specified sim time. If no points meet this criteria, returns false and sets pathPointIter to the end of the path. (i.e. path.end()) Otherwise, returns true and pathPointIter parameter is set to the iterator to this point.

Implemented in DtAisDataManager.

virtual DtPathPointIter DtAisDataServiceInterface::getEndOfpath ( const DtAisTrack track) const
pure virtual

Returns an iterator to the end of the path (i.e. path.end()).

Implemented in DtAisDataManager.

virtual void DtAisDataServiceInterface::resetData ( )
pure virtual

Marks AIS data to be reset. Data will not be unloaded, but ownership of all tracks will be reset to unowned.

Implemented in DtAisDataManager.

virtual void DtAisDataServiceInterface::clearData ( )
pure virtual

Marks AIS data to be cleared. Data will be completely unloaded.

Implemented in DtAisDataManager.

DtAisDataServiceInterface& DtAisDataServiceInterface::operator= ( const DtAisDataServiceInterface )
private

Assignment operator not implemented.


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)