--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/locsrv_plat/oma_supl_asn_codec_plugin_api/inc/epos_comasupllocationidver2.h Tue Feb 02 01:06:48 2010 +0200
@@ -0,0 +1,258 @@
+/*
+* Copyright (c) 2002-2005 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Header file for providing SUPL 2.0 location id
+*
+*/
+
+#ifndef C_COMASuplLocationIdVer2_H
+#define C_COMASuplLocationIdVer2_H
+
+#include<e32def.h>
+#include<e32std.h>
+#include<e32base.h>
+
+#include "epos_suplconstants.h"
+#include "epos_comasupllocationid.h"
+
+/**
+ * Class for providing holding location data
+ * @lib epos_comasuplasnplugin.lib
+ * @since S60 S60_5.2
+ */
+class TOMASuplLocationData
+ {
+ public:
+
+ IMPORT_C TOMASuplLocationData();
+
+ /**
+ * Getter method for location accuracy
+ * @since S60 S60_5.2
+ * @param aLocationAccuracy location accuracy value is returned in this
+ * @return Returns KErrNone if parameter was set before and are retrieved successfully
+ * KErrOMASuplParamNotSet otherwise
+ */
+ IMPORT_C TInt GetLocationAccuracy(TInt& aLocationAccuracy)const ;
+
+ /**
+ * Setter method for location accuracy
+ * @since S60 S60_5.2
+ * @param aLocationAccuracy location accuracy value to be set
+ * @return none
+ */
+ IMPORT_C void SetLocationAccuracy(TInt aLocationAccuracy);
+ /**
+ * Getter method for location value
+ * @since S60 S60_5.2
+ * @param aLocationValue location accuracy value is returned in this
+ * @return none
+ */
+ IMPORT_C void GetLocationValue(TDes8& aLocationValue) const ;
+ /**
+ * Setter method for location accuracy
+ * @since S60 S60_5.2
+ * @param aLocationAccuracy location accuracy value to be set
+ * @return none
+ */
+ IMPORT_C void SetLocationValue(TDes8& aLocationValue);
+
+ private:
+ //flag to indicate if location accuracy is set or not
+ TBool iIsLocationAccSet;
+ // holds location accuracy value
+ TInt iLocationAccuracy;
+ //holds location values
+ TBuf8<KMaxLocDataValueLen> iLocationValue;
+ };
+
+/**
+ * Class for holding reported location
+ * @lib epos_comasuplasnplugin.lib
+ * @since S60 S60_5.2
+ */
+class TOMASuplReportedLocation
+ {
+ public:
+
+ /**
+ * enum to indicate the type of location descriptor encoding present
+ */
+ enum TOMASuplLocEncDescriptor
+ {
+ EOMASupLocEncDescUnknown = -1,
+ EOMASupLocEncDescLCI = 0 ,
+ EOMASupLocEncDescASN1 = 1,
+ };
+ /**
+ * Getter method for location descriptor encoding type
+ * @since S60 S60_5.2
+ * @param aLocationEncodingDescriptor location descriptor encoding type is returned in this
+ * @return none
+ */
+ IMPORT_C void GetLocationEncDescriptor(TOMASuplLocEncDescriptor& aLocationEncodingDescriptor) const ;
+
+ /**
+ * Getter method for location data
+ * @since S60 S60_5.2
+ * @param aLocationData location data is returned in this
+ * @return none
+ */
+ IMPORT_C void GetLocationData(TOMASuplLocationData& aLocationData) const ;
+
+ /**
+ * Setter method for location descriptor encoding type
+ * @since S60 S60_5.2
+ * @param aLocationEncodingDescriptor location descriptor encoding type to be set
+ * @return none
+ */
+ IMPORT_C void SetLocationEncDescriptor(const TOMASuplLocEncDescriptor aLocationEncodingDescriptor) ;
+
+ /**
+ * Setter method for location data
+ * @since S60 S60_5.2
+ * @param aLocationData location data to be set
+ * @return none
+ */
+ IMPORT_C void SetLocationData(const TOMASuplLocationData aLocationData);
+
+ private:
+
+ TOMASuplLocEncDescriptor iLocationEncodingDescriptor;
+
+ //location data field
+ TOMASuplLocationData iLocationData;
+ };
+
+
+/**
+ * Class containing cell info extension
+ *
+ * @lib eposomasuplasnconverter.lib
+ * @since S60 S60_5.2
+ */
+class TOMASuplVer2CellInfoExtn
+ {
+ public:
+ /**
+ * enum to indicate type present in the cell info extension
+ */
+ enum TOMASuplCellInfoExtnType
+ {
+ EOMASuplCellInfoUnknown = -1,
+ EOMASuplCellInfoHrpd = 0,
+ EOMASuplCellInfoUmb,
+ EOMASuplCellInfoLte,
+ EOMASuplCellInfoWLANAP,
+ EOMASuplCellInfoWimaxBiz
+ };
+ /**
+ * Constructor for TOMASuplVer2CellInfoExtn
+ *
+ */
+ IMPORT_C TOMASuplVer2CellInfoExtn();
+
+ /**
+ * Getter method for Cell Info Extn Type
+ * @since S60 S60_5.2
+ * @param aTypePresent Cell Info Extn Type is retrieved in this
+ * @return none
+ */
+ IMPORT_C void GetCellInfoExtnType(TOMASuplCellInfoExtnType& aTypePresent) const ;
+ /**
+ * Setter method for Cell Info Extn Type
+ * @since S60 S60_5.2
+ * @param aTypePresent Cell Info Extn Type is retrieved in this
+ * @return none
+ */
+ IMPORT_C void SetCellInfoExtnType(TOMASuplCellInfoExtnType aTypePresent) ;
+
+ private:
+ //TOMASuplHrpdCellInformation iHrpdCellInfo;
+ //TOMASuplUmbCellInformation iUmbCellInfo;
+ //TOMASuplLteCellInformation iLteCellInfo;
+ //TOMASuplWlanAPInformation iWLANAPInfo;
+ //TOMASuplWimaxBSInfo iWimaxBSInfo;
+ TOMASuplCellInfoExtnType iTypePresent;
+ };
+
+
+enum TOMASuplLocEncDescriptor
+ {
+ EOMASupLocEncDescUnknown = -1,
+ EOMASupLocEncDescLCI = 0,
+ EOMASupLocEncDescASN1 = 1,
+ };
+
+/**
+ * Class containing location information
+ *
+ * @lib eposomasuplasnconverter.lib
+ * @since S60 S60_5.2
+ */
+
+class COMASuplLocationIdVer2 : public COMASuplLocationId
+ {
+ public:
+ /**
+ * Two phased constructor
+ * @since S60 S60_5.2
+ * @param None
+ * @return instance of COMASuplLocationIdVer2
+ */
+
+ IMPORT_C static COMASuplLocationIdVer2* NewL();
+
+ /**
+ * Destructor
+ * @since S60 S60_5.2
+ * @param None
+ * @return None
+ */
+ IMPORT_C ~COMASuplLocationIdVer2();
+ /**
+ * Getter method Version 2 Cell Extension in E-CellID
+ * @since S60 S60_5.2
+ * @param aTOMASuplVer2CellInfo, TOMASuplVer2CellInfoExtn
+ * @return None
+ */
+ IMPORT_C TInt Ver2CellInfo(TOMASuplVer2CellInfoExtn& aTOMASuplVer2CellInfo) const;
+ /**
+ * Setter method for GSM in E-CellID
+ * @since S60 S60_5.2
+ * @param aTOMASuplVer2CellInfo TOMASuplVer2CellInfoExtn
+ * @return None
+ */
+ void SetVer2CellInfo(TOMASuplVer2CellInfoExtn aTOMASuplVer2CellInfo);
+
+ /**
+ * Clone Method for COMASuplLocationIdVer2
+ * @since S60 S60_5.2
+ * @return A clone of this location id object is returned
+ * ownership of returned object is not with this object
+ */
+ IMPORT_C COMASuplLocationIdVer2* CloneL();
+
+private: // Construction
+
+ IMPORT_C COMASuplLocationIdVer2();
+
+ void ConstructL();
+
+private:
+
+ TOMASuplVer2CellInfoExtn iOMASuplVer2CellInfoExtn;
+ TBool iIsV2ExtnSet;
+ };
+
+#endif // C_COMASUPLLOCATIONID_H