locationmanager/geoconverter/src/cgeoconverter.cpp
branchRCL_3
changeset 63 e538444823de
parent 57 2872ae438bf7
--- a/locationmanager/geoconverter/src/cgeoconverter.cpp	Wed Sep 15 12:40:59 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,213 +0,0 @@
-/*
-* Copyright (c) 2009 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:  A class for creating country and city tags for media files
-*
-*/
-
-//#include "locationmanagerdebug.h"
-#include "cgeoconverter.h"
-#include "locationmanagerdebug.h"
-
-
-
-// --------------------------------------------------------------------------
-// CGeoConverter::NewL
-// --------------------------------------------------------------------------
-//
-EXPORT_C CGeoConverter* CGeoConverter::NewL( MGeoConverterObserver& aObserver )
-    {
-    LOG("CGeoConverter::NewL");
-    CGeoConverter* self = new( ELeave ) CGeoConverter( aObserver );
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop(); // self
-    return self;
-    }
-
-// --------------------------------------------------------------------------
-// CGeoConverter::CGeoConverter()
-// --------------------------------------------------------------------------
-//    
-CGeoConverter::CGeoConverter( MGeoConverterObserver& aObserver )
-    :iObserver( aObserver ) 
-#ifdef LOC_GEOTAGGING_CELLID    
-    ,iLocConverter(NULL),
-    iLocInfo(NULL),
-    iGsmCellInfo(NULL),
-    iWcdmaCellInfo(NULL)
-#endif
-    {
-    }
-
-// --------------------------------------------------------------------------
-// CGeoConverter::~CGeoConverter
-// --------------------------------------------------------------------------
-//  
-EXPORT_C CGeoConverter::~CGeoConverter()
-    {
-    LOG("CGeoConverter::~CGeoConverter, begin");
-#ifdef LOC_GEOTAGGING_CELLID    
-    delete iGsmCellInfo;
-    iGsmCellInfo = NULL;    
-    delete iWcdmaCellInfo;
-    iWcdmaCellInfo = NULL;
-    delete iLocInfo;
-    iLocInfo = NULL;
-    delete iLocConverter;
-    iLocConverter = NULL;
-#endif    
-    LOG("CGeoConverter::~CGeoConverter, end");
-    }
-
-// --------------------------------------------------------------------------
-// CGeoConverter::OnConversionComplete()
-// --------------------------------------------------------------------------
-//  
-void CGeoConverter::OnConversionComplete( TInt aStatusCode )
-    {
-    LOG("CGeoConverter::OnConversionComplete, begin");
-#ifdef LOC_GEOTAGGING_CELLID    
-    //16. Retrieve position estimate that is updated by Location Monitor server
-    //after a conversion operation is completed successfully.
-    RLbsAreaInfoBaseArray posInfoList;
-    TLocality position;
-    
-    
-    LOG1("Status Code - %d",aStatusCode);
-    
-    if( KErrNone == aStatusCode )
-        {
-        TRAP_IGNORE(iLocInfo->GetAreaInfoL( posInfoList, CLbsLocationInfo::ELbsPosInfo );)
-        
-        //Get geo-coordinates. 
-        
-        LOG1("PposInfoList Count - %d",posInfoList.Count());
-        if ( posInfoList.Count() )
-            {
-            static_cast<CLbsPositionInfo*>(posInfoList[0])->GetLocality(position);
-            }
-        else
-            {
-            aStatusCode = KErrNotFound;
-            }     
-        }
-    TRAPD(err,iObserver.ConversionCompletedL( aStatusCode, position);)
-    if(err != KErrNone)
-    	{
-		iObserver.HandleConversionError(err);
-    	}
-    posInfoList.Close();
-#endif    
-    LOG("CGeoConverter::OnConversionComplete, end");
-    }
-
-// --------------------------------------------------------------------------
-// CGeoConverter::ConstructL()
-// --------------------------------------------------------------------------
-//  
-void CGeoConverter::ConstructL()
-    {
-    LOG("CGeoConverter::ConstructL, begin");
-#ifdef LOC_GEOTAGGING_CELLID    
-    iLocInfo = CLbsLocationInfo::NewL();
-    TUid pluginUid = TUid::Uid( 0x20027011 );   
-    LOG("CGeoConverter::ConstructL");
-    iLocConverter = CLbsLocationInfoConverter::NewL( *this, pluginUid );
-#endif    
-    LOG("CGeoConverter::ConstructL, end");
-    }
-
-// --------------------------------------------------------------------------
-// CGeoConverter::ConvertL()
-// --------------------------------------------------------------------------
-//  
-EXPORT_C void CGeoConverter::ConvertL( const CTelephony::TNetworkInfoV1& aNetworkInfo )
-    {
-    LOG("CGeoConverter::ConvertL, begin");
-#ifdef LOC_GEOTAGGING_CELLID    
-    
-    //Set mobile country code
-    TLex lexer( aNetworkInfo.iCountryCode );
-    TUint countryCode = 0;
-    
-    User::LeaveIfError( lexer.Val( countryCode, EDecimal) );
-    //Set mobile network code
-    lexer = aNetworkInfo.iNetworkId;
-    TUint networkCode = 0;
-    User::LeaveIfError( lexer.Val( networkCode, EDecimal) );
-    LOG1("Network mode - %d", aNetworkInfo.iMode);
-    CLbsAreaInfoBase* areaInfoBase = NULL;
-    switch(aNetworkInfo.iAccess)
-        {
-        case CTelephony::ENetworkAccessGsm:
-        case CTelephony::ENetworkAccessGsmCompact:
-            {
-            LOG("2G network.");
-            if(iGsmCellInfo == NULL)
-                {
-                iGsmCellInfo = CLbsGsmCellInfo::NewL();
-                }
-            iGsmCellInfo->SetMobileCountryCode( countryCode );
-            
-            iGsmCellInfo->SetMobileNetworkCode( networkCode );
-            //Set cell id 
-            iGsmCellInfo->SetCellId( aNetworkInfo.iCellId ); 
-
-            if(aNetworkInfo.iAreaKnown)
-                {
-                //Set location area code
-                iGsmCellInfo->SetLocationAreaCode( aNetworkInfo.iLocationAreaCode );
-                }            
-        
-            areaInfoBase = iGsmCellInfo;
-            }        
-            break;
-        case CTelephony::ENetworkAccessUtran:
-            {
-            LOG("3G network.");
-            if(iWcdmaCellInfo == NULL)
-                {
-                iWcdmaCellInfo = CLbsWcdmaCellInfo::NewL();
-                }
-            iWcdmaCellInfo->SetMobileCountryCode(countryCode);
-            iWcdmaCellInfo->SetMobileNetworkCode(networkCode);
-            iWcdmaCellInfo->SetUniqueCellId(aNetworkInfo.iCellId);
-            areaInfoBase = iWcdmaCellInfo;
-            }
-            break;
-        default:
-            LOG("Unknown network mode");
-            User::Leave(KErrNotSupported);
-        }
-    //Add the cell information to the location info class. This class
-    //would be sent to the Location Monitor server that would perform the
-    //requested conversion and update the position estimate
-    if(areaInfoBase != NULL) // self check
-        {
-        // reset previous one.. to clear the local info.
-        iLocInfo->ResetAreaInfo(CLbsLocationInfo::ELbsAreaInfoAll);
-        iLocInfo->AddAreaInfoL( areaInfoBase ); 
-        //ownership is transferred.
-        iWcdmaCellInfo = NULL;
-        iGsmCellInfo = NULL;
-        //Request conversion of GSM cell information to corresponding coordinate information
-        iLocConverter->ConvertLocationInfoL( *iLocInfo, ELbsConversionSilent, 
-                                                ELbsConversionOutputPosition  );
-        }
-#endif    
-    LOG("CGeoConverter::ConvertL, end");
-    }
-
-// End of file
-