--- a/locationcentre/lcservice/inc/lcasyncoperation.h Wed Apr 14 15:50:30 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,213 +0,0 @@
-/*
-* Copyright (c) 2007 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: Handles all the Asynchronous operations with the Location
-* Centre Client Session
-*
-*/
-
-
-#ifndef C_LCASYNCOPERATION_H
-#define C_LCASYNCOPERATION_H
-
-// SYSTEM INCLUDES
-#include <e32base.h>
-
-// USER INCLUDES
-#include "lclocationappfilter.h"
-
-// FORWARD DECLARATIONS
-class RLcClientSession;
-class CLcBasicAppInfo;
-class CLcLocationAppInfoArray;
-class TLcLocationAppFilter;
-class RLcClientSession;
-class CBufFlat;
-
-/**
- * Observer class to notify the completion of the Asynchronous operation
- * @lib lcservice.lib
- * @since v5.0
- */
-class MLcAsynOperationObserver
- {
-public:
- /**
- * Notification for the Completion of the Asynchronous operation.
- *
- * @param[in] aError Error code for the completion of the Asynchronous
- * Operation.
- */
- virtual void OperationComplete( TInt aError ) =0;
- };
-
-/**
- * Handles all the Asynchronous operations to the Location Centre Server.
- *
- * @lib lcservice.lib
- * @since S60 v5.0
- */
-NONSHARABLE_CLASS( CLcAsyncOperation ) : public CActive
- {
-public:
- /**
- * Constructs a new instance of Location Centre interface.
- *
- * @param[in] aSession Reference to the Location Centre Client Session.
- * @param[in] aObserver Observer to notify the Completion of the Asynchronous
- * Operation.
- * @return The new instance of Location Centre interface object.
- * @leave System wide error code if the object creation fails.
- */
- static CLcAsyncOperation* NewL( RLcClientSession& aSession,
- MLcAsynOperationObserver& aObserver );
-
- /**
- * C++ Destructor.
- * Frees all the resources associated with this Location Centre
- * interface.
- */
- virtual ~CLcAsyncOperation();
-
- /**
- * Gets a filtered list of Location based Applications.
- *
- * @param[in] aLocationAppFilter Filtering parameters.
- * @param[in] CLcLocationAppInfoArray* Array of Location based Applications and
- * Contents/Services.
- */
- void GetLocationApplicationsL(
- const TLcLocationAppFilter& aLocationAppFilter,
- CLcLocationAppInfoArray*& aAppInfoArray );
- /**
- * Cancels an outstanding @ref GetLocationApplications request.
- */
- void CancelGetLocationApplications();
-
-private:
- /**
- * Default Constructor
- */
- CLcAsyncOperation( RLcClientSession& aSession,
- MLcAsynOperationObserver& aObserver );
-
- void ConstructL();
-
- /**
- * Issues a self request to this Active Object.
- */
- void GetLengthL();
-
- /**
- * Re-issues a request to the Location Centre Server. The request which will be re-issued
- * will be the last request which was issued.
- */
- void ReIssueRequestL();
-
-private: // Inherited from Base classes
- /**
- * Inherited from CActive
- */
- void RunL();
-
- /**
- * Inherited from CActive
- */
- void DoCancel();
-
- /**
- * Inherited from CActive
- */
- TInt RunError( TInt aError );
-
-private: // Member Variables
- /**
- * Class declaration for holding the Location Application Information
- * array.
- */
- class TLcAppInfoContainer
- {
- public:
- /**
- * Overloaded constructor which takes the reference of the
- * Application Information array.
- */
- TLcAppInfoContainer( CLcLocationAppInfoArray*& aAppInfoArray );
-
- public:
- /**
- * Reference to the Application Information array.
- */
- CLcLocationAppInfoArray*& iAppInfoArray;
- };
-
- /**
- * Enumeration for the State of Asynchronous operation
- */
- enum TASyncOperation
- {
- ELcNoOperation,
- ELcGetAppLength,
- ELcGetApp
- };
-
- /**
- * Reference to the Client session to the Location Centre Server.
- */
- RLcClientSession& iClientSession;
-
- /**
- * Observer to notify the completion of the Asynchronous request.
- */
- MLcAsynOperationObserver& iObserver;
-
- /**
- * Current State of operation
- */
- TASyncOperation iOperation;
-
- /**
- * Location Application filter for this Application.
- */
- TLcLocationAppFilter iAppFilter;
-
- /**
- * Buffer for exchanging information with the Location Centre Server.
- *
- * Owns
- */
- CBufFlat* iBuffer;
-
- /**
- * Pointer to the above buffer
- */
- TPtr8 iBufferPtr;
-
- /**
- * Place holder for the Location Centre Application Information
- * Array.
- */
- TLcAppInfoContainer* iAppInfoArrayContainer;
-
- /**
- * IPC arguments
- */
- TIpcArgs iIpcArgs;
-
- /**
- * Package buffer containing the Application Filter options.
- */
- TPckg< TLcLocationAppFilter >* iFilterBuffer;
- };
-
-#endif // C_LCASYNCOPERATION_H