 |
NAVTOR SDK
v.3.0
Software Development Kit for fast and efficient development of ECDIS, ECS and generic marine applications
|
|
Go to the documentation of this file. 1 #ifndef SDK_ECDIS_AIS_TARGETS_INTERFACE_H_
11 #define SDK_ECDIS_AIS_TARGETS_INTERFACE_H_
27 SDK_VESSELS_BEGIN_NAMESPACE
88 {
return static_cast<SDKUInt32
>(foid & 0x000000003FFFFFFF); }
93 {
return target_foid | 0x8000000000000000; }
98 {
return past_track_foid & ~0x8000000000000000; }
103 {
return (0ULL != (foid & 0x8000000000000000)); }
108 const SDKUInt32& mmsi,
const SDKUInt32& msg_link_id,
const SDKUInt32& site_id)
111 msg_link_id & 0x0000FFFF);
113 site_id & 0x0000007F);
114 return mmsi | (link_id << 32UL) | (s_id << 48UL) | 0x4000000000000000;
117 inline AISTargetFOID MMSI2AisSynthTargetFoid(
const SDKUInt32& mmsi)
118 {
return static_cast<AISTargetFOID>((mmsi & 0x3FFFFFFF) | 0x2000000000000000); }
120 inline AISTargetFOID IMO2AisSynthTargetFoid(
const SDKUInt32& src_mmsi,
const SDKUInt32& imo)
123 return static_cast<AISTargetFOID>((src_mmsi & 0x3FFFFFFF) | (s_imo << 32UL) | (1UL << 56UL) | 0x2000000000000000);
125 inline AISTargetFOID ASMTargetID2AisSynthTargetFoid(
const SDKUInt32& mmsi,
const SDKUInt32& msg_link_id,
const SDKUInt32& site_id)
128 msg_link_id & 0x0000FFFF);
130 site_id & 0x0000007F);
131 return mmsi | (link_id << 32UL) | (s_id << 48UL) |(2UL << 56UL) | 0x2000000000000000;
138 {
return (0ULL != (foid & 0x4000000000000000)); }
141 {
return (0ULL != (foid & 0x2000000000000000)); }
144 enum GetAISTargetsParameter {
145 kGetAISTargetsParameter_FindContext = 0,
146 kGetAISTargetsParameter_OrderBy,
147 kGetAISTargetsParameter_TargetType,
150 enum GetAISTargets_OrderBy_Parameter {
151 kGetAISTargets_OrderBy_None = 0,
152 kGetAISTargets_OrderBy_Name,
153 kGetAISTargets_OrderBy_MMSI,
154 kGetAISTargets_OrderBy_IMO,
155 kGetAISTargets_OrderBy_Distance,
156 kGetAISTargets_OrderBy_DCPA,
157 kGetAISTargets_OrderBy_TCPA
160 enum GetAISTargets_TargetType_Parameter
162 kGetAISTargets_TargetType_None,
163 kGetAISTargets_TargetType_RegularTarget,
164 kGetAISTargets_TargetType_SynthTarget,
165 kGetAISTargets_TargetType_AsmTarget,
186 IAISTargetsDatasetSP& targets_dataset)
throw() = 0;
190 IAISTargetSP& target)
const throw() = 0;
193 IAISTargetSP& target)
const throw() = 0;
198 IAISTargetPastTrackSP& target_past_track)
const throw() = 0;
201 const sdk::gdb::ObjectID& target_oid,
202 IAISTargetPastTrackSP& target_past_track)
const throw() = 0;
209 const sdk::gdb::ObjectID& oid)
throw() = 0;
213 const SDK_VESSELS_NAMESPACE::IOwnShipDatasetSP& own_ship_ds)
throw() = 0;
217 const IAISTargetsManagerSP& manager)
throw() = 0;
220 IAISTargetsManagerSP& manager)
const throw() = 0;
267 const SDK_NMEA_NAMESPACE::IParsedNMEASentenceDataSP& parsed_nmea_data,
268 IUpdatedAISTargetsSP& updated_targets)
throw() = 0;
274 IUpdatedAISTargetsSP& updated_targets)
throw() = 0;
278 IAISTargetSP& target)
const throw() = 0;
281 IAISTargetSP& target)
const throw() = 0;
286 IAISTargetPastTrackSP& target_past_track)
const throw() = 0;
289 const sdk::gdb::ObjectID& target_oid,
290 IAISTargetPastTrackSP& target_past_track)
const throw() = 0;
294 IAISTargetsCollectionSP& targets_collection,
295 const ISDKParametersSP& params)
const throw() = 0;
302 const sdk::gdb::ObjectID& oid)
throw() = 0;
308 const SDK_VESSELS_NAMESPACE::IOwnShipDatasetSP& own_ship_ds)
throw() = 0;
311 SDK_VESSELS_NAMESPACE::IOwnShipDatasetSP& own_ship_ds)
const throw() = 0;
329 IUpdatedAISTargetsSP& updated_targets)
throw() = 0;
345 virtual SDKResult SDK_CALLTYPE EditTarget(SDKUInt32 mmsi,
347 IAISTargetEditSP& target_edit)
throw() = 0;
351 IAISTargetEditSP& target_edit)
throw() = 0;
367 virtual SDKResult SDK_CALLTYPE GetTargetPosition(
372 virtual SDKResult SDK_CALLTYPE ResetPastTrack() throw() = 0;
387 virtual SDKResult SetTargetAttributeValue(
404 virtual SDKResult SDK_CALLTYPE GetVisiblePastTrack(
405 const SDKUInt32& past_track_interval,
const SDKUInt32& past_track_length,
406 sdk::geometry::IPointCollectionSP& past_track)
throw() = 0;
409 virtual SDKResult SDK_CALLTYPE ResetPastTrack() throw() = 0;
422 virtual SDKResult SDK_CALLTYPE Next(IAISTargetSP& target)
const throw() = 0;
425 virtual SDKResult SDK_CALLTYPE Reset()
throw() = 0;
439 SDKUInt32& targets_count)
const throw() = 0;
443 IAISTargetSP& target)
const throw() = 0;
450 SDK_VESSELS_END_NAMESPACE
452 #endif // SDK_ECDIS_AIS_TARGETS_INTERFACE_H_
A container for parsed NMEA sentence(s) data fields.
virtual SDKResult SDK_CALLTYPE SetManager(const IAISTargetsManagerSP &manager)=0
Sets new instance of AIS targets manager.
virtual SDKResult SDK_CALLTYPE GetSelectedTarget(AISTargetFOID &target_foid)=0
Returns selected AIS target FOID Implementation depends of currently used targets manager.
A list of SDK error/return results.
Describes interfaces that manages a geometry objects.
AIS targets dataset.
Definition: ais_targets_interface.h:341
virtual SDKResult SDK_CALLTYPE SetOwnShip(const SDK_VESSELS_NAMESPACE::IOwnShipDatasetSP &own_ship_ds)=0
Sets the own ship dataset instance.
AIS targets collection.
Definition: ais_targets_interface.h:434
AIS targets enumerator.
Definition: ais_targets_interface.h:418
Set of updated target's.
Definition: updated_targets_interface.h:46
virtual SDKResult SDK_CALLTYPE GetTarget(const AISTargetFOID &foid, IAISTargetSP &target) const =0
Returns the AIS target record by it's FOID.
virtual SDKResult SDK_CALLTYPE UpdateTargetData(const SDK_NMEA_NAMESPACE::IParsedNMEASentenceDataSP &parsed_nmea_data, IUpdatedAISTargetsSP &updated_targets)=0
Updates AIS target information or creates new target Valid source data is a result of INMEAParser::Pa...
SDKUInt32 TargetAlarmIDs
AIS/Radar/Sonar target alarm IDs (see the TargetAlarmType description below)
Definition: vessels_const.h:60
Set of updated AIS targets.
Definition: ais_targets_interface.h:170
Updated targets interface.
Single AIS target editor.
Definition: ais_targets_interface.h:380
Provides access to members that manage the vessels workspace.
Definition: vessels_interface.h:32
virtual SDKResult SDK_CALLTYPE SetOwnShip(const SDK_VESSELS_NAMESPACE::IOwnShipDatasetSP &own_ship_ds)=0
Sets the own ship dataset instance.
Set of specific for AIS targets constants.
SDKUInt32 AISTargetFOID2AISTargetMMSI(const AISTargetFOID &foid)
Converts AIS target FOID to appropriate AIS target MMSI.
Definition: ais_targets_interface.h:87
Provides access to members that provide information about a VesselDataset.
Definition: vessels_interface.h:68
An interface for high-level managing of AIS targets over the database Allows to controls the target's...
Definition: ais_targets_manager_interface.h:57
bool IsPastTrackFoid(const AISTargetFOID &foid)
Checks, if given FOID belongs to Past Track Feature.
Definition: ais_targets_interface.h:102
Provides access to members for managing a parameter set.
virtual SDKResult SDK_CALLTYPE GetTargetPastTrack(const AISTargetFOID &target_foid, IAISTargetPastTrackSP &target_past_track) const =0
Returns the AIS target past track record by AIS target FOID.
virtual SDKResult SDK_CALLTYPE RemoveTarget(const AISTargetFOID &foid)=0
Removes one AIS target entry from dataset by target's FOID.
The ecdislayer constants.
SDKInt32 SDKResult
Type of all error or return codes which SDK functions can end with.
Definition: sdk_results.h:17
AISTargetFOID AISTargetFoid2PastTrackFoid(const AISTargetFOID &target_foid)
Converts AIS target FOID to appropriate AIS target past track FOID.
Definition: ais_targets_interface.h:92
Single AIS target.
Definition: ais_targets_interface.h:360
Geo point in degree units.
Definition: geometry_base_types.h:1727
virtual SDKResult SDK_CALLTYPE AcknowledgeTargetAlarms(const AISTargetFOID &target_foid, const TargetAlarmIDs &alarms, IUpdatedAISTargetsSP &updated_targets)=0
Notification about some of AIS target's alarms were acknowledged.
virtual SDKResult SDK_CALLTYPE OwnShipParametersChanged(IUpdatedAISTargetsSP &updated_targets)=0
Notification about own ship parameters changed (position/COG/SOG etc) This will initiate the status/a...
Common base SDK interfaces.
Common interface for all of vessel objects.
Definition: vessels_interface.h:96
bool IsASMFoid(const AISTargetFOID &foid)
Checks, if given FOID belongs to AIS ASM feature.
Definition: ais_targets_interface.h:137
AISTargetFOID ASMTargetID2AisTargetFoid(const SDKUInt32 &mmsi, const SDKUInt32 &msg_link_id, const SDKUInt32 &site_id)
Converts AIS ASM target MMSI/Message link ID to target FOID.
Definition: ais_targets_interface.h:107
virtual SDKResult SDK_CALLTYPE GetTargetPastTrack(const AISTargetFOID &target_foid, IAISTargetPastTrackSP &target_past_track) const =0
Returns the AIS target past track record by AIS target FOID.
AISTargetFOID AISTargetMMSI2AISTargetFOID(const SDKUInt32 &mmsi)
Structure of AIS target FOID Bit 63: If set - FOID for Past Track feature Bit 62: If set - FOID for A...
Definition: ais_targets_interface.h:82
Describes the own ship devices configuration.
Own Ship dataset/object interface.
Single AIS target past track.
Definition: ais_targets_interface.h:397
virtual SDKResult SDK_CALLTYPE GetTargets(IAISTargetsCollectionSP &targets_collection, const ISDKParametersSP ¶ms) const =0
Returns the AIS targets collection/enumerator.
Base interface for all SDK interfaces.
Definition: sdk_component_interface.h:41
AISTargetFOID PastTrackFoid2AISTargetFoid(const AISTargetFOID &past_track_foid)
Converts AIS target past track FOID to appropriate AIS target FOID.
Definition: ais_targets_interface.h:97
virtual SDKResult SDK_CALLTYPE GetManager(IAISTargetsManagerSP &manager) const =0
Returns current instance of AIS targets manager.
ClassCode AttributeClassCode
Attribute class code type.
Definition: gdb_const.h:247
virtual SDKResult SDK_CALLTYPE ResetTargetsPastTrack()=0
Resets past track for all of AIS targets.
AIS targets dataset.
Definition: ais_targets_interface.h:229
virtual SDKResult SDK_CALLTYPE GetTargetsDataset(const DatasetID &dsid, IAISTargetsDatasetSP &targets_dataset)=0
Returns appropriate AIS targets dataset instance.
virtual SDKResult SDK_CALLTYPE RemoveTarget(const AISTargetFOID &foid)=0
Removes one target entry from dataset by target's FOID.
AISTargetFeatureClassCode
AIS target feature class codes.
Definition: ais_targets_const.h:166
AIS targets workspace.
Definition: ais_targets_interface.h:181
virtual SDKResult SDK_CALLTYPE GetTarget(const AISTargetFOID &foid, IAISTargetSP &target) const =0
Returns the AIS target record by it's FOID.
FWD_DECL_INTERFACE(ILWEParserWrapper)
Provides a wrapper around the message parser to get, add or remove the.
virtual SDKResult SDK_CALLTYPE GetOwnShip(SDK_VESSELS_NAMESPACE::IOwnShipDatasetSP &own_ship_ds) const =0
Returns current own ship dataset instance.
TargetFOID AISTargetFOID
AIS target FOID definition.
Definition: ais_targets_const.h:31
virtual SDKResult SDK_CALLTYPE SelectTarget(const AISTargetFOID &target_foid)=0
Selects AIS target in dataset Implementation depends of currently used AIS targets manager.