Class NeonLocation

  • All Implemented Interfaces:
    android.os.Parcelable

    public class NeonLocation
    extends java.lang.Object
    implements android.os.Parcelable
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface android.os.Parcelable

        android.os.Parcelable.ClassLoaderCreator<T extends java.lang.Object>, android.os.Parcelable.Creator<T extends java.lang.Object>
    • Field Summary

      Fields 
      Modifier and Type Field Description
      float altitude
      An altitude estimate in meters above mean sea level (MSL).
      float altitudeError
      An altitude error estimate in meters.
      float altitudeHae
      The height above the Earth ellipsoid in meters
      float altitudeHaeError
      The error range (in meters) of the height above the Earth ellipsoid
      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
      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
      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
      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
      static android.os.Parcelable.Creator<NeonLocation> CREATOR
      Used for sending data across binders
      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.
      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.
      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
      boolean hasAbsoluteAltitude
      Whether or not an absolute altitude estimate has been found in meters above mean sea level (MSL).
      float heading
      The heading of the user (degrees) The heading provided is in the range (-inf, inf) - not limited to the range [0, 360).
      float headingError
      The heading variance of the user (degrees) 0 represents low variance.
      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
      int iteration
      This number represents an internal iteration count within the NeonLocationServices.
      double latitude
      The latitude of the user (degrees)
      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
      double longitude
      The longitude of the user (degrees)
      int serialNumber
      The serial number represents the tracking device.
      int sessionID
      The session ID represents turn on to turn off of the tracking device.
      java.util.UUID structureID  
      java.lang.String type
      This represents the source of the location, example: NEON = fused with Tracker, GPS = Android GPD only no tracker used
      long unixTimeMs
      This timestamp represents the time of validity of the location.
      java.lang.Float z  
      java.lang.Float zError  
      • Fields inherited from interface android.os.Parcelable

        CONTENTS_FILE_DESCRIPTOR, PARCELABLE_WRITE_RETURN_VALUE
    • 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
      int describeContents()  
      java.lang.Float getFloor()
      A convenience method to quickly integrate NeonLocations into applications that understand floating point floor numbers
      java.lang.Float getFloorError()
      A convenience method to quickly integrate NeonLocations into applications that understand floating point floor numbers
      java.lang.Integer getNearestFloor()
      A convenience method to quickly integrate NeonLocations into applications that understand integer floor numbers.
      android.location.Location toLocation()
      A convenience method to quickly integrate NeonLocations into applications that use the android.location.Location type.
      java.lang.String toString()  
      void writeToParcel​(android.os.Parcel dest, int flags)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • 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:
        describeContents in interface android.os.Parcelable
      • writeToParcel

        public void writeToParcel​(android.os.Parcel dest,
                                  int flags)
        Specified by:
        writeToParcel in interface android.os.Parcelable
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object