![]() |
VR-Forces Developer's Guide
|
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.

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 DtAisTrack * | trackInfo (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 &) | |
| DtAisDataServiceInterface & | operator= (const DtAisDataServiceInterface &) |
| using DtAisDataServiceInterface::DtMmsi = int |
| using DtAisDataServiceInterface::DtMmsiSet = std::set<DtMmsi> |
| using DtAisDataServiceInterface::DtPathPoints = std::map<double, DtPathPoint> |
| using DtAisDataServiceInterface::DtPathPointIter = std::map<double, DtPathPoint>::const_iterator |
|
inline |
|
inlinevirtual |
|
private |
Copy constructor not implemented.
|
pure virtual |
Returns true if AIS data has been loaded.
Implemented in DtAisDataManager.
|
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.
|
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.
|
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.
|
pure virtual |
Request ownership of the specified given tracks.
Implemented in DtAisDataManager.
|
pure virtual |
Release ownership of the specified tracks.
Implemented in DtAisDataManager.
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.
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.
|
pure virtual |
Returns the sim time for the last point of AIS data available.
Implemented in DtAisDataManager.
|
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.
|
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.
|
pure virtual |
Returns an iterator to the end of the path (i.e. path.end()).
Implemented in DtAisDataManager.
|
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.
|
pure virtual |
Marks AIS data to be cleared. Data will be completely unloaded.
Implemented in DtAisDataManager.
|
private |
Assignment operator not implemented.