Package com.trx.neon.api.neon.model
Class NeonLocation
- java.lang.Object
 - 
- com.trx.neon.api.neon.model.NeonLocation
 
 
- 
- All Implemented Interfaces:
 android.os.Parcelable
public class NeonLocation extends java.lang.Object implements android.os.Parcelable 
- 
- 
Field Summary
Fields Modifier and Type Field Description floataltitudeAn altitude estimate in meters above mean sea level (MSL).floataltitudeErrorAn altitude error estimate in meters.floataltitudeHaeThe height above the Earth ellipsoid in metersfloataltitudeHaeErrorThe error range (in meters) of the height above the Earth ellipsoidjava.lang.FloataltitudeHatThe height above the terrain elevation at this location in meters This value may be null if elevation data is not availablejava.lang.FloataltitudeHatErrorThe error range (in meters) of the height above the terrain elevation at this location This value may be null if elevation data is not availablebytebatteryHHPercent battery life of the android device at the time of this location Valid range 0-100 Outside of range means battery life unknownbytebatteryTUPercent battery life of the tracking unit at the time of this location Valid range 0-100 Outside of range means battery life unknownstatic android.os.Parcelable.Creator<NeonLocation>CREATORUsed for sending data across bindersdoubleerrorLatitudeThe latitude of the center point of the computed error bounds on this position Note that this is not always the same as the estimate of the position itself.doubleerrorLongitudeThe longitude of the center point of the computed error bounds on this position Note that this is not always the same as the estimate of the position itself.floaterrorRadiusThe radius of the computed error bounds on this position (meters) Note that this is around the point specified by ErrorLongitude and ErrorLatitudebooleanhasAbsoluteAltitudeWhether or not an absolute altitude estimate has been found in meters above mean sea level (MSL).floatheadingThe heading of the user (degrees) The heading provided is in the range (-inf, inf) - not limited to the range [0, 360).floatheadingErrorThe heading variance of the user (degrees) 0 represents low variance.booleaninVehicleThe vehicle mode status at the time of this location Defaults to false Sets to true after a vehicle start detection and resets to false after a vehicle stop detectionintiterationThis number represents an internal iteration count within the NeonLocationServices.doublelatitudeThe latitude of the user (degrees)bytelockStatusThe lock status of the tracking unit at the time of this location Valid range 0-4 where 4 indicates a full lockdoublelongitudeThe longitude of the user (degrees)intserialNumberThe serial number represents the tracking device.intsessionIDThe session ID represents turn on to turn off of the tracking device.java.util.UUIDstructureIDjava.lang.StringtypeThis represents the source of the location, example: NEON = fused with Tracker, GPS = Android GPD only no tracker usedlongunixTimeMsThis timestamp represents the time of validity of the location.java.lang.Floatzjava.lang.FloatzError 
- 
Constructor Summary
Constructors Constructor Description NeonLocation(int serial, int session, long unixTimeMs, int navIter, java.lang.String type, double longitude, double latitude, float heading, float headingError, double errorLongitude, double errorLatitude, float errorRadius, boolean hasAbsoluteAltitude, float altitude, float altitudeError, java.util.UUID structureID, java.lang.Float z, java.lang.Float zError, byte batteryAndroid, byte batteryTrackingUnit, byte lockStatus, boolean inVehicle, float altitudeHae, float altitudeHaeError, java.lang.Float altitudeHat, java.lang.Float altitudeHatError)NeonLocation(NeonLocation loc)Copy constructor 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intdescribeContents()java.lang.FloatgetFloor()A convenience method to quickly integrate NeonLocations into applications that understand floating point floor numbersjava.lang.FloatgetFloorError()A convenience method to quickly integrate NeonLocations into applications that understand floating point floor numbersjava.lang.IntegergetNearestFloor()A convenience method to quickly integrate NeonLocations into applications that understand integer floor numbers.android.location.LocationtoLocation()A convenience method to quickly integrate NeonLocations into applications that use the android.location.Location type.java.lang.StringtoString()voidwriteToParcel(android.os.Parcel dest, int flags) 
 - 
 
- 
- 
Field Detail
- 
serialNumber
public final int serialNumber
The serial number represents the tracking device. 
- 
sessionID
public final int sessionID
The session ID represents turn on to turn off of the tracking device. A new session ID will be generated each time the tracking unit is restarted, or in the case of tracking on the phone itself, every time the NeonLocationService is bound and then fully unbound by all client applications. 
- 
unixTimeMs
public final long unixTimeMs
This timestamp represents the time of validity of the location. It is a UTC time in milliseconds. (This is generally the same frame of reference as System.currentTimeMillis()) 
- 
iteration
public final int iteration
This number represents an internal iteration count within the NeonLocationServices. In the case of receiving two device locations with the same time stamp, this value should be used as a tie breaker. Of two NeonLocations with the same time stamp, the one with the higher iteration is a correction to the previously calculated position, based on the newly received constraint input data. Only systems that display paths/trails are likely to care about this number. 
- 
type
public final java.lang.String type
This represents the source of the location, example: NEON = fused with Tracker, GPS = Android GPD only no tracker used 
- 
longitude
public final double longitude
The longitude of the user (degrees) 
- 
latitude
public final double latitude
The latitude of the user (degrees) 
- 
heading
public final float heading
The heading of the user (degrees) The heading provided is in the range (-inf, inf) - not limited to the range [0, 360). To obtain compass heading the user can perform a mod 360 operation. clockwise. 0 represents north. 90 represents east. 
- 
headingError
public final float headingError
The heading variance of the user (degrees) 0 represents low variance. 180 represents high variance. 
- 
errorLongitude
public final double errorLongitude
The longitude of the center point of the computed error bounds on this position Note that this is not always the same as the estimate of the position itself. 
- 
errorLatitude
public final double errorLatitude
The latitude of the center point of the computed error bounds on this position Note that this is not always the same as the estimate of the position itself. 
- 
errorRadius
public final float errorRadius
The radius of the computed error bounds on this position (meters) Note that this is around the point specified by ErrorLongitude and ErrorLatitude 
- 
hasAbsoluteAltitude
public final boolean hasAbsoluteAltitude
Whether or not an absolute altitude estimate has been found in meters above mean sea level (MSL). Altitude will always be set, but in the absence of constraint data, hasAbsoluteAltitude will be false and only deltas will be valid. 
- 
altitude
public final float altitude
An altitude estimate in meters above mean sea level (MSL). Altitude will always be set, but in the absence of constraint data, hasAbsoluteAltitude will be false and only deltas will be valid.. Client applications should check that the AltitudeError is reasonable for their purposes before displaying the Altitude to the user. 
- 
altitudeError
public final float altitudeError
An altitude error estimate in meters. The error should be read as a CEP bounds in either direction about the Altitude ie: With 50% probability, [Altitude-AltitudeError, Altitude+AltitudeError] contains the user's current altitude. Client applications should check that this number looks reasonable for their purposes before displaying Altitude to end users. As a rough order of magnitude, a standard building's floor height is around 3.2 meters. 
- 
structureID
public final java.util.UUID structureID
 
- 
z
public final java.lang.Float z
 
- 
zError
public final java.lang.Float zError
 
- 
batteryHH
public final byte batteryHH
Percent battery life of the android device at the time of this location Valid range 0-100 Outside of range means battery life unknown 
- 
batteryTU
public final byte batteryTU
Percent battery life of the tracking unit at the time of this location Valid range 0-100 Outside of range means battery life unknown 
- 
lockStatus
public final byte lockStatus
The lock status of the tracking unit at the time of this location Valid range 0-4 where 4 indicates a full lock 
- 
inVehicle
public final boolean inVehicle
The vehicle mode status at the time of this location Defaults to false Sets to true after a vehicle start detection and resets to false after a vehicle stop detection 
- 
altitudeHae
public final float altitudeHae
The height above the Earth ellipsoid in meters 
- 
altitudeHaeError
public final float altitudeHaeError
The error range (in meters) of the height above the Earth ellipsoid 
- 
altitudeHat
public final java.lang.Float altitudeHat
The height above the terrain elevation at this location in meters This value may be null if elevation data is not available 
- 
altitudeHatError
public final java.lang.Float altitudeHatError
The error range (in meters) of the height above the terrain elevation at this location This value may be null if elevation data is not available 
- 
CREATOR
public static final android.os.Parcelable.Creator<NeonLocation> CREATOR
Used for sending data across binders 
 - 
 
- 
Constructor Detail
- 
NeonLocation
public NeonLocation(int serial, int session, long unixTimeMs, int navIter, java.lang.String type, double longitude, double latitude, float heading, float headingError, double errorLongitude, double errorLatitude, float errorRadius, boolean hasAbsoluteAltitude, float altitude, float altitudeError, java.util.UUID structureID, java.lang.Float z, java.lang.Float zError, byte batteryAndroid, byte batteryTrackingUnit, byte lockStatus, boolean inVehicle, float altitudeHae, float altitudeHaeError, java.lang.Float altitudeHat, java.lang.Float altitudeHatError) 
- 
NeonLocation
public NeonLocation(NeonLocation loc)
Copy constructor 
 - 
 
- 
Method Detail
- 
getFloor
public java.lang.Float getFloor()
A convenience method to quickly integrate NeonLocations into applications that understand floating point floor numbers 
- 
getFloorError
public java.lang.Float getFloorError()
A convenience method to quickly integrate NeonLocations into applications that understand floating point floor numbers 
- 
getNearestFloor
public java.lang.Integer getNearestFloor()
A convenience method to quickly integrate NeonLocations into applications that understand integer floor numbers. 
- 
toLocation
public android.location.Location toLocation()
A convenience method to quickly integrate NeonLocations into applications that use the android.location.Location type. 
- 
describeContents
public int describeContents()
- Specified by:
 describeContentsin interfaceandroid.os.Parcelable
 
- 
writeToParcel
public void writeToParcel(android.os.Parcel dest, int flags)- Specified by:
 writeToParcelin interfaceandroid.os.Parcelable
 
- 
toString
public java.lang.String toString()
- Overrides:
 toStringin classjava.lang.Object
 
 - 
 
 -