diff -r 1fc85118c3ae -r 870918037e16 location_plat/location_data_harvester_api/inc/maptilegeocoderplugin.h --- a/location_plat/location_data_harvester_api/inc/maptilegeocoderplugin.h Tue Aug 31 15:09:25 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,310 +0,0 @@ -/* -* Copyright (c) 2010 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: The header file for MaptileGeocoderPlugin that provides the Geocoding -* and Maptile interfaces. -* -*/ - - -#ifndef __MAPTILEGEOCODERPLUGIN_H__ -#define __MAPTILEGEOCODERPLUGIN_H__ - -// INCLUDES -#include -#include -#include - -//Maptile geocoder plugin uid -const TUid KMaptileGeoCoderPluginUid = { 0x2002E6BE }; - - -/** - * Data class to get the address details. An handle to this type will be given to the - * user through MMaptileGeocoderObserver::GeocodingCompleted callback, through which - * user can retrieve the address details using the following interfaces. - * - */ -class MAddressInfo -{ -public: - - /** - * Gets the latitude information. - * - * @return aLatitude latitude value. - */ - virtual const TReal& GetLatitude( ) = 0; - - - /** - * Gets the longitude information. - * - * @return aLongitude longitude value. - */ - virtual const TReal& GetLongitude( ) = 0; - - /* - * Gets the reference to the country name. Scope of this returned reference is limited to - * this perticular call. User has to store it for their further processing. - * - * @return reference to the String which holds the Country Name. - */ - virtual const TDesC& GetCountryName()= 0; - - /* - * Gets the reference to the State. Scope of this returned reference is limited to - * this perticular call. User has to store it for their further processing. - * - * @return reference to the String which holds the State name. - */ - virtual const TDesC& GetState()= 0; - - /* - * Gets the reference to the City. Scope of this returned reference is limited to - * this perticular call. User has to store it for their further processing. - * - * @return reference to the String which holds the City Name. - */ - virtual const TDesC& GetCity()= 0; - - /* - * Gets the reference to the District name. Scope of this returned reference is limited to - * this perticular call. User has to store it for their further processing. - * - * @return reference to the String which holds the District Name. - */ - virtual const TDesC& GetDistrict()= 0; - - /* - * Gets the reference to the postal code. Scope of this returned reference is limited to - * this perticular call. User has to store it for their further processing. - * - * @return reference to the String which holds the postal code. - */ - virtual const TDesC& GetPincode()= 0; - - /* - * Gets the reference to the thoroughfare name. Scope of this returned reference is limited to - * this perticular call. User has to store it for their further processing. - * - * @return reference to the String which holds the thoroughfare name. - */ - virtual const TDesC& GetThoroughfareName()= 0; - - /* - * Gets the reference to the thoroughfare number. Scope of this returned reference is limited to - * this perticular call. User has to store it for their further processing. - * - * @return reference to the String which holds the thoroughfare number. - */ - virtual const TDesC& GetThoroughfareNumber() = 0; - -}; - - - -/** - * TMapTileParam - * Data class containing the information required for fetching the map tile. - * - */ -class TMapTileParam -{ - -public: - - /** - * Parameterized constructor. - * - * @param aLatitude latitude value - * @param aLongitude longitude value - * @param aZoom maptile zoom level - * @param aSize requested maptile size - * - */ - TMapTileParam( const TReal aLatitude, const TReal aLongitude, - const TInt aZoom, const TInt aWidth, const TInt aHeight ): iLattitude( aLatitude ), - iLongitude( aLongitude ), iZoomLevel( aZoom ), iWidth( aWidth ), iHeight( aHeight ) - { - } - - - /** - * Default constructor - */ - TMapTileParam() - { - } - - -public: - - // Latitude - TReal iLattitude; - //Longitude - TReal iLongitude; - //Zoom level - TInt iZoomLevel; - //Required image width - TInt iWidth; - //Required image height - TInt iHeight; -}; - - -/** - * TConnectionOption - * Data class containing the connection options. - * - */ -enum TConnectionOption -{ - //Interactive connection - EInteractive = 0, - //Silent connection - ESilent -}; - - -/** - * Observer class which exposes callbacks to notify the completion of geocoding - * and maptile fetching events. - * - */ -class MMaptileGeocoderObserver -{ -public: - - /** - * Callback function which notifys the completion of geocoding service. - * This signals the completion of the asynchronous function - * CMaptileGeocoderPlugin::GetCoordinateByAddressL. - * - * @param aErrorcode Error status KErrNone in case of success or other system - * specific errorcodes in case of failures. - * - * @param aAddressInfo refrence to the address stucture, through which user can - * access the coordinate information. - */ - virtual void GeocodingCompleted( TInt aErrorcode, MAddressInfo& aAddressInfo ) = 0; - - - - /** - * Callback function which notifys the completion of Maptile fetching event. - * This signals the completion of the asynchronous function - * CMaptileGeocoderPlugin::GetMapTileByGeoCode. - * - * @param aErrorcode Error status KErrNone in case of success or other system - * specific errorcodes in case of failures. - * - * @param aMapImagePath Maptile image path - * - */ - virtual void MapTileFetchingCompleted( TInt aErrorcode, const TDesC& aMapImagePath ) = 0; - -}; - - - - - -/** - * CMaptileGeocoderPlugin - * - * An interface of the CMaptileGeocoderPlugin encapsulates the goecoding and - * maptile fetching functionality. It acts as a base, for a concrete implementation - * class to provide all the functionality that a client requires from a - * CMaptileGeocoderPlugin implementation. - * - */ - -class CMaptileGeocoderPlugin : public CBase -{ -public: - - /** - * Create instance of CMaptileGeocoderPlugin concrete implementation. - * @return: Instance of this class. - */ - static CMaptileGeocoderPlugin* NewL(); - - /** - * Destructor. - */ - virtual ~CMaptileGeocoderPlugin(); - - -public: - - /** - * Initializes the ReverseGeoCodeObserver - * @param: aObserver The observer class instance that is to be notified when - * geocoding and maptile fetching service completes. - * - */ - virtual void SetMaptileGeocoderObserver( MMaptileGeocoderObserver& aObserver ) = 0; - - /** - * Gets the geo-coordinate information for the given address. This is an - * asynchronous function whose completion will be notified by the - * MMaptileGeocoderObserver::GeocodingCompleted callback. - * - * @param aLandmark Landmark containing the address informations. - * @param aOption OCC setting option - * - */ - virtual void GetCoordinateByAddressL( const CPosLandmark& aLandmark, - const TConnectionOption aOption = EInteractive ) = 0; - - /** - * Gets the geo-coordinate information for the given address. This is an - * asynchronous function whose completion will be notified by the - * MMaptileGeocoderObserver::GeocodingCompleted callback. - * - * @param aAddressDetails , containing the address informations. - * @param aOption OCC setting option - * - */ - virtual void GetCoordinateByAddressL( const TDesC& aAddressDetails, - const TConnectionOption aOption = EInteractive ) = 0; - - /** - * Gets the maptile image path for the given geocordinates. This is an - * asynchronous function whose completion will be notified by the - * MMaptileGeocoderObserver::MapTileFetchingCompleted callback. - * - * @param aMapTileParam Object containing the geocoordinate, zoom level - * informations. - * @param aFilePath Path where the maptile image should be stored. - * - */ - virtual void GetMapTileByGeoCodeL( TMapTileParam& aMapTileParam, - const TDesC& aFilePath ) = 0; - -private: - - /** - * iDtorKey - * Identification of the plugin on cleanup - */ - TUid iDtorKey; -}; - -#include "maptilegeocoderplugin.inl" - -#endif //__MAPTILEGEOCODERPLUGIN_H__ - -//End of file -