--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/locationcentre/lcservice/inc/lcsyncoperation.h Tue Feb 02 00:16:03 2010 +0200
@@ -0,0 +1,100 @@
+/*
+* 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 Synchronous operations with the Location
+* Centre Client Session
+*
+*/
+
+
+#ifndef LCSYNCOPERATION_H
+#define LCSYNCOPERATION_H
+
+// SYSTEM INCLUDES
+#include <e32base.h>
+
+// USER INCLUDES
+
+// FORWARD DECLARATIONS
+class RLcClientSession;
+class CLcBasicAppInfo;
+class CLcLocationAppInfoArray;
+class TLcLocationAppFilter;
+
+/**
+ * Handles all the Synchronous operations to the Location Centre Server.
+ *
+ * @lib lcservice.lib
+ * @since S60 v5.0
+ */
+NONSHARABLE_CLASS( LcSyncOperation )
+ {
+public:
+ /**
+ * Gets a filtered list of Location based Applications.
+ *
+ * @param[in] aSession Reference to the Location Centre Client Session.
+ * @param[in] aLocationAppFilter Filtering parameters.
+ * @return CLcLocationAppInfoArray* Array of Location based Applications and
+ * Contents/Services.
+ */
+ static CLcLocationAppInfoArray* GetLocationApplicationsL(
+ RLcClientSession& aSession,
+ const TLcLocationAppFilter& aLocationAppFilter );
+
+ /**
+ * Gets a filtered list of Location based Applications.
+ *
+ * The Client application can configure the list of Location based
+ * Applications returned. This can be achieved by passing the list of Location
+ * based Applications which the Client wants to be included/excluded in the
+ * list.
+ *
+ * The ownership of the array of identifiers is not transferred.
+ *
+ * @param[in] aSession Reference to the Location Centre Client Session.
+ * @param[in] aAppArray Array of Location based Applications and Contents
+ * or Services which need to be included or excluded.
+ * @param[in] aIncludeFlag Boolean flag which defines whether the set of
+ * Location based Applications should be included or
+ * excluded.
+ * @return CLcLocationAppInfoArray object containing a list
+ * of applications registered with Location Centre.
+ */
+ static CLcLocationAppInfoArray* GetLocationApplicationsL(
+ RLcClientSession& aSession,
+ const RArray<TPtrC>& aAppArray,
+ TBool aIncludeFlag );
+
+ /**
+ * Gets the Location Application Information corresponding to the Location
+ * based Application or Content/Service based on the Identifer name.
+ *
+ * @param[in] aSession Reference to the Location Centre Client Session.
+ * @param[in] aIdentifier Name of the Location based Identifier whose
+ * information is requested.
+ */
+ static CLcBasicAppInfo* GetLocationAppInfoL(
+ RLcClientSession& aSession,
+ const TDesC& aIdentifier );
+
+ /**
+ * Parses the Location Application information present in the Read stream.
+ *
+ * Other documentation present in the corresponding function for
+ * CLcService class.
+ */
+ static CLcLocationAppInfoArray* ParseLocAppBufferL( RReadStream& aReadStream );
+ };
+
+#endif // LCSYNCOPERATION_H