nl.esi.metis.aisparser.AISMessage09 Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of EsiAisParser Show documentation
Show all versions of EsiAisParser Show documentation
This package supports the parsing of AIS messages in Java. AIS, the Automatic Identification System, is a system aiming at improving maritime safety by exchanging messages between ships, other vehicles in particular aircraft involved in search-and-rescue (SAR), and (fixed) base stations. To be precise, this package support the ITU-R M.1371-4 AIS standard.
See our extensive javadoc and in particular the class AISParser for more information on how to use this package.
The parser was used in the Poseidon project, and is improved in the Metis project to better handle uncertain information. Both projects were led by the Embedded Systems Institute. In both projects Thales Nederlands was the carrying industrial partner, and multiple Dutch universities participated.
The newest version!
/* ESI AIS Parser
*
* Copyright 2011/2012 by Pierre van de Laar & Pierre America (Embedded Systems Institute)
* Copyright 2008 by Brian C. Lane
* All Rights Reserved
*
*/
package nl.esi.metis.aisparser;
/** This interface represents an AIS message of type 9: Standard SAR Aircraft Position Report.
*
* @author Pierre van de Laar
* @author Pierre America
* @author Brian C. Lane
*/
public interface AISMessage09 extends AISMessage, PositionInfo {
/** Returns the altitude.
* This is derived from GNSS or barometric, see {@link #getAltitudeSensor}.
* @return an integer value representing the altitude in meters (0-4093)
* 4094 = 4094 m or higher
* 4095 = not available
*/
public int getAltitude();
/** Returns the speed over ground.
* @return an integer value representing the speed over ground in knots (0-1022 knots)
* 1022 = 1022 knots or higher
* 1023 = not available
*/
public int getSpeedOverGround();
/** Returns the course over ground. This value can be analyzed further with utility class {@link UtilsAngle12}.
* @return an integer value representing the course over ground in 1/10° for values in the range of 0 to 3599.
* 3600 (E10 hex) = not available.
* 3601 or higher should not be used
*/
public int getCourseOverGround();
/** Returns the time stamp contained in the message.
* This can be analyzed further using utility class {@link UtilsTimeStamp}.
* @return an integer value representing the UTC second when the report was generated by the electronic position fixing system (EPFS) (0-59)
* 60 if time stamp is not available
* 61 if positioning system is in manual input mode
* 62 if electronic position fixing system operates in estimated (dead reckoning) mode
* 63 if the positioning system is inoperative
*/
public int getTimeStamp();
/** Returns the altitude sensor.
* @return a boolean value representing the altitude sensor:
* false = GNSS (global navigation satellite system)
* true = barometric source
*/
public boolean getAltitudeSensor();
/** Returns the first set of spare bits.
* @return an integer value representing the first set of spare bits. This should be zero.
*/
public int getSpare1();
/** Returns the data terminal equipment (DTE) status.
* @return a boolean value describing whether the data terminal equipment is ready:
* false = available
* true = not available
*/
public boolean getDte();
/** Returns the second set of spare bits.
* @return an integer value representing the second set of spare bits. This should be zero.
*/
public int getSpare2();
/** Returns the assigned mode flag.
* @return a boolean value representing the assigned mode flag:
* false = Station operating in autonomous and continuous mode
* true = Station operating in assigned mode
*/
public boolean getAssignedModeFlag();
/** Returns the RAIM flag, which describes the receiver autonomous integrity monitoring status of the electronic position fixing device.
* @return a boolean value:
* false = RAIM not in use
* true = RAIM in use
*/
public boolean getRaimFlag();
/** Returns the communication state selector flag.
* @return a boolean value representing the communication state selector flag:
* false = SOTDMA communication state: {@link #getCommunicationState()} will return an {@link Sotdma} object.
* true = ITDMA communication state: {@link #getCommunicationState()} will return an {@link Itdma} object.
*/
public boolean getCommunicationStateSelectorFlag();
/** Returns the communication state.
* @return the value of the communication state.
* Depending on the {@linkplain #getCommunicationStateSelectorFlag communication state selector flag},
* this may be {@link Itdma} or {@link Sotdma}.
*/
public CommunicationState getCommunicationState();
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy