locationsystemui/locationsysui/locverifier/inc/lpdsuplsettingsadapter.h
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Wed, 14 Apr 2010 16:23:43 +0300
branchRCL_3
changeset 17 e000e7e1f1b1
parent 0 667063e416a2
permissions -rw-r--r--
Revision: 201013 Kit: 201015

/*
* 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:  Adapter to the SUPL Settings API
*
*/


#ifndef CLPDSUPLSETTINGSADAPTER_H_
#define CLPDSUPLSETTINGSADAPTER_H_

// System Includes
#include <e32base.h>
#include <epos_csuplsettingparams.h>		// class CServerParams
#include <epos_csuplsettings.h>				// class CSuplSettings
#include <epos_msuplsessionobserver.h>

// User Includes

// Forward Declarations
class MLpdSUPLSettingsAdapterObserver;

// Class Declaration

/**
 * Adapter class for the SUPL settings API. Handles all the interfacing
 * functionality to the SUPL Settings API. It also observes for the Session
 * changes communicated through the MSuplSessionObserver
 */
class CLpdSUPLSettingsAdapter : public CBase, public MSuplSessionObserver
    {             
    public:
        /**
 		 * Static Two phase contructor that instantiates the CLpdSUPLSettingsAdapter
		 * 
		 * @param aObserver				    Observer to the SUPL session change
		 * @return CLpdSUPLSettingsAdapter*	Reference to the object created
		 */
        static CLpdSUPLSettingsAdapter* NewL(
                            MLpdSUPLSettingsAdapterObserver&    aObserver );

        /**
         * Destructor
         */
        virtual ~CLpdSUPLSettingsAdapter();

    private:
        /**
         * Private Constructor
         */
        CLpdSUPLSettingsAdapter( MLpdSUPLSettingsAdapterObserver&    aObserver );

        /**
         * Second phase of the two phase constructor
         */
        void ConstructL();
        
        


              	
	public:
	    /** 
	     * Inherited from MSuplSessionObserver
	     */	
		void HandleSuplSessionChangeL( 
                TSuplSessionEventType aEvent,
                TInt64 aSessionId                         
        		);	
        
         /** 
	     * Gets time period of a trigger based on session id
	     */		
        void GetTriggerPeriodL( TInt64 aSessionId, TUint& aTimePeriod );
    				
        

    private:
        
        /**
         * Observer for the specific SUPL session.
         * Does not own.
         */
		MLpdSUPLSettingsAdapterObserver& iObserver;
		
        /**
         * SUPL Settings UI
         * Owns
         */
        CSuplSettings*                      iSUPLSettings;
                
    };

#endif      // CLPDSUPLSETTINGSADAPTER_H_

// End of File