00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00026 #ifndef LBS_COORDINATE_INFO_H
00027 #define LBS_COORDINATE_INFO_H
00028
00029
00030 #include <e32std.h>
00031 #include <lbs.h>
00032 #include <lbs/lbslocationcommon.h>
00033
00034
00041 NONSHARABLE_CLASS(CLbsPositionInfo) : public CLbsAreaInfoBase
00042 {
00043
00044 public:
00045
00054 IMPORT_C static CLbsPositionInfo* NewL();
00055
00061 IMPORT_C static CLbsPositionInfo* NewL( const CLbsPositionInfo& aPositionInfo );
00062
00070 IMPORT_C static CLbsPositionInfo* NewL( const TLocality& aLocality );
00071
00075 IMPORT_C virtual ~CLbsPositionInfo();
00076
00089 IMPORT_C void SetLocality( const TLocality& aLocality );
00090
00097 IMPORT_C void GetLocality( TLocality& aLocality ) const;
00098
00099 public:
00100
00106 virtual TLbsAreaInfoClassType Type();
00107
00122 virtual void ValidateDataL() const;
00123
00124 protected:
00125
00129 virtual void DoInternaliseL( RReadStream& aStream );
00130
00134 virtual void DoExternaliseL( RWriteStream& aStream ) const;
00135
00136 private:
00137
00141 CLbsPositionInfo();
00142
00146 CLbsPositionInfo( CLbsPositionInfo& );
00147
00151 CLbsPositionInfo& operator=( CLbsPositionInfo& );
00152
00156 void ConstructL();
00157
00161 void ConstructL( const TLocality& aLocality );
00162
00163 private:
00164
00168 TLocality iLocality;
00169
00170 };
00171
00172 #endif //LBS_COORDINATE_INFO_H