public class MaidenheadLocatorBeacon extends PositionMessage implements SendableMessage
AX25Message.Precedenceabc, altitude, altitudeUnit, COMPRESSED_LAT_SCALING, CONV_MPH_TO_METERS_PER_SEC, DHM, enabledForTransmit, encodeCompressed, fLatitude, fLatPrecision, fLongitude, fmtMonitorFreq, HMS, HUNDREDTH_MINUTE_F, isCustom, latitude, LN_BASE1_08, longitude, ONE_DEGREE_F, ONE_MINUTE_F, TEN_MINUTES_F, TENTH_MINUTE_FappendCR, APRS_AND_OPENTRAC_AND_RAW, APRS_AND_RAW, comment, msgType, S_PERMANENT, S_PERMANENT_UC, symbolCode, symTableIdAPRS_AND_OPENTRAC, ax25Frame, extensions, invalid, originatingCallsign, originatingDest, PERMANENT, rcptTime, thirdParty, timestamp, UTC| Constructor and Description |
|---|
MaidenheadLocatorBeacon(byte[] body,
int offset,
java.lang.String tp,
long rcvTimestamp)
Decode a Maidenhead locator beacon message from the specified AX.25 frame body.
|
MaidenheadLocatorBeacon(long now,
byte msgType,
double latitude,
double longitude,
java.lang.String comment)
Alternate constructor for making a transmittable MaidenheadLocatorBeacon message
(including one that looks like a StatusMessage with Maidenhead location).
|
| Modifier and Type | Method and Description |
|---|---|
void |
disableForTransmit()
Specify that message should no longer be transmitted.
|
static java.lang.String |
encodeMaidenheadIdentifier(double latitude,
double longitude)
Convert a lat/lon pair in decimal degrees North/East into a Maidenhead location.
|
byte[] |
getBody(boolean countTransmission,
ProtocolFamily protocolId,
AX25Frame frame)
Get an instance of this message, suitable for transmitting.
|
java.util.Set<ProtocolFamily> |
getProtocols()
Get the protocol family or families that this message corresponds to, so
ports that don't support all protocols will not forward inappropriate packets.
|
java.lang.String |
paramString()
Descriptive text about this message, to be included in the toString() method's response.
|
static boolean |
testIfMaidenheadIdentifier(byte[] body,
int offset)
Test if the specified message body contains a string that looks like a
Maidenhead location identifier.
|
appendAreaParameters, appendRepeaterParameters, appendSignpostParameters, bodyEquals, createObjectFromThisPosition, decodeDataExtension, decodeLatitude, decodeLongitude, decodeOnlyLatitude, decodeOnlyLongitude, encodeLatitudeCompressed, encodeLatitudePlainText, encodeLongitudeCompressed, encodeLongitudePlainText, extractCompressedLatitude, extractCompressedLongitude, extractLatitude, extractLongitude, getAbc, getAltitude, getAltitudeUnit, getHorizontalAccuracy, getLatitude, getLatitudeAccuracy, getLongitude, getPositionAltitude, getPositionLatitude, getPositionLongitude, getPositionTime, hasPosition, isCustom, isEnabled, isShowDate, isUsingCompressedFormat, looksLikeFrequency, looksLikeFrequency, setAbc, setAmbiguity, setCustom, setLatitude, setLocation, setLongitude, setShowDate, testIfValidCompressedLocationcompareTo, decodeDatestamp, decodeHurricaneParams, decodeTimestamp, decodeWeatherParams, decodeWeatherParams, dup, encodeTimestamp, extractComment, extractComment, extractSymbol, formatBody, getComment, getExtensionString, getMsgType, getPrecedence, getSymbolCode, getSymTableId, hasWeather, inferSymbol, isAppendCR, isSymbolInferred, looksLikeLongFormatLatitude, setAppendCR, setComment, setSymbolCode, setSymTableId, toStringequals, extractSource, getAx25Frame, getExtension, getFirstDigipeat, getLastDigipeat, getNthDigipeat, getOriginalDestination, getOriginalSource, getOriginatingCallsign, getOriginatingDest, getRcptTime, getReadOnlyExtensionMap, getTimestamp, hashCode, hasThisFirstDigi, indexOf, indexOf, isDirect, isInvalid, isRf, onlyDigits, onlyDigits, onlyDigitsOrMinus, onlyDigitsOrPeriod, onlyDigitsOrSpace, onlyDigitsPlus, onlyPeriods, setAx25Frame, setInvalid, setOriginatingCallsign, setRcptTime, setTimestamp, split, storeExtensionclone, finalize, getClass, notify, notifyAll, wait, wait, waitdup, isEnabledpublic MaidenheadLocatorBeacon(byte[] body,
int offset,
java.lang.String tp,
long rcvTimestamp)
body - byte array of frame bodyoffset - zero-based index into array where the message starts (after any third-party data)tp - String of third-party header, or null if not routed by another networkrcvTimestamp - Unix time in milliseconds since midnight 1 January 1970 UTC when message was receivedpublic MaidenheadLocatorBeacon(long now,
byte msgType,
double latitude,
double longitude,
java.lang.String comment)
now - current time in Java milliseconds since midnight Jan 1 1970 UTCmsgType - APRS message type character (either '[' or '>')latitude - latitude in fractional degrees Northlongitude - longitude in fractional degrees Eastcomment - free-text comment StringStatusMessagepublic static boolean testIfMaidenheadIdentifier(byte[] body,
int offset)
body - byte array presumably containing an ASCII APRS messageoffset - position in the byte array where a Maidenhead identifier might startpublic static java.lang.String encodeMaidenheadIdentifier(double latitude,
double longitude)
latitude - latitude in decimal degrees Northlongitude - longitude in decimal degrees Eastpublic byte[] getBody(boolean countTransmission,
ProtocolFamily protocolId,
AX25Frame frame)
getBody in interface SendableMessagecountTransmission - number of times the message has been transmitted.protocolId - ProtocolFamily to generate the message inframe - AX25Frame into which the message will be placed; the decoded message (as opposed to the byte
array encoding) should be stored into the field frame.parsedAX25MsgAX25Frame.parsedAX25Msgpublic java.lang.String paramString()
paramString in class PositionMessageMessage.toString()public void disableForTransmit()
disableForTransmit in interface SendableMessagepublic java.util.Set<ProtocolFamily> getProtocols()
getProtocols in class Message