00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef __LBSLOCATION_H__
00019 #define __LBSLOCATION_H__
00020
00021 #include <e32base.h>
00022 #include <lbslocatorclasstypes.h>
00023
00035 class TLbsLocation : public TLbsLocatorClassTypeBase
00036 {
00037 public:
00038 IMPORT_C TLbsLocation();
00039
00040
00041 IMPORT_C TBool IsLatLongValid() const;
00042 IMPORT_C TReal64 Latitude() const;
00043 IMPORT_C TReal64 Longitude() const;
00044 IMPORT_C TReal32 Accuracy() const;
00045
00046
00047 IMPORT_C TBool IsAltitudeValid() const;
00048 IMPORT_C TReal32 Altitude() const;
00049 IMPORT_C TReal32 AltitudeAccuracy()const;
00050
00051
00052 IMPORT_C TBool IsSpeedValid() const;
00053 IMPORT_C TReal32 Speed() const;
00054 IMPORT_C TReal32 SpeedAccuracy() const;
00055
00056
00057 IMPORT_C TBool IsCourseValid() const;
00058 IMPORT_C TReal32 Course() const;
00059 IMPORT_C TReal32 CourseAccuracy() const;
00060
00061
00062 IMPORT_C TInt GetMeanSpeed(const TLbsLocation& aOtherLocation, TReal32& aMeanSpeed)const;
00063 IMPORT_C TInt GetDistance(const TLbsLocation& aOtherLocation, TReal32& aDistance) const;
00064 IMPORT_C TInt GetBearingTo(const TLbsLocation& aOtherLocation, TReal32& aBearing) const;
00065
00066
00067 IMPORT_C TInt Move(TReal32 aBearing, TReal32 aDistance);
00068
00069
00070 IMPORT_C TTime SystemTimeStamp() const;
00071
00072
00073 IMPORT_C TInt SetLocation(TReal64 aLatitude, TReal64 aLongitude, TReal32 aAccuracy);
00074 IMPORT_C TInt SetAltitude(TReal32 aAltitude, TReal32 aAccuracy);
00075 IMPORT_C TInt SetSpeed(TReal32 aSpeed, TReal32 aAccuracy);
00076 IMPORT_C TInt SetCourse(TReal32 aCourse, TReal32 aAccuracy);
00077 IMPORT_C TInt SetSystemTimeStamp(TTime aTimeStamp);
00078
00079 private:
00080 TBool iIsLocationValid;
00081 TReal64 iLatitude;
00082 TReal64 iLongitude;
00083 TReal32 iHorizontalAccuracy;
00084
00085 TBool iIsAltitudeValid;
00086 TReal32 iAltitude;
00087 TReal32 iAltitudeAccuracy;
00088
00089 TBool iIsSpeedValid;
00090 TReal32 iSpeed;
00091 TReal32 iSpeedAccuracy;
00092
00093 TBool iIsCourseValid;
00094 TReal32 iCourse;
00095 TReal32 iCourseAccuracy;
00096
00097 TTime iSystemTimeStamp;
00098
00099 TInt iReserved[24];
00100 };
00101
00102
00103 #endif //__LBSLOCATION_H__