--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/loc_plat/location_centre_api/inc/lcnotification.h Tue Feb 02 00:16:03 2010 +0200
@@ -0,0 +1,92 @@
+/*
+* 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: Observer class defintion to notify any changes to the
+* state of Location Applications.
+*
+*/
+
+#ifndef M_LCNOTIFICATION_H
+#define M_LCNOTIFICATION_H
+
+/**
+ * @file lcnotification.h
+ *
+ * This file provides the definitions for the observer class which enables
+ * the client application to listen to notifications from Location Centre.
+ *
+ * @lib lcservice.lib
+ * @since S60 v5.0
+ */
+
+// SYSTEM INCLUDES
+#include <e32base.h>
+
+/**
+ * @class MLcNotification
+ * Observer class to notify the changes to the applications registered with
+ * Location Centre.
+ *
+ * This client application needs to pass an instance of this class when calling
+ * @ref CLcService::StartNotificationL
+ *
+ * @lib lcservice.lib
+ * @since S60 v5.0
+ */
+class MLcNotification
+ {
+public:
+ /**
+ * Notification for the termination of the chained Location based Application.
+ *
+ * The notification can occur under the following conditions
+ * - When a new Location based Application registers into Location
+ * Centre. In this case, the Location based Application would be
+ * immediately available for all Location Centre operations.
+ * - When an already registered Location based Application de-registers.
+ * In this case, the Location based Application will be removed from
+ * Location Centre. Hence, it would not be available for any further Location
+ * Centre operations.
+ * - When a Location based Application is present on a removable media (like
+ * Memory card)and the media is removed. In this case, for all practical
+ * purposes the Location based Application behaves as in the previous context.
+ * The difference being that the application does not get removed from
+ * Location Centre but is marked as an Absent application. When the
+ * removable media is re-inserted, the application immediately becomes
+ * available for all Location Centre operations.
+ * - When an removable media containing an Absent Location based Application
+ * is re-inserted. In this case, the Location based Application would be
+ * immediately available for all Location Centre operations.
+ * - When the Location Centre server terminates pre-maturely. In this case, no
+ * further notifications would be given to the Client application and all
+ * further requests to the Location Centre server would fail with
+ * @p KErrServerTerminated.
+ *
+ * @since S60 v5.0
+ * @param[in] aErrorCode Error code for the notification completion.
+ * The following are the values which the variable
+ * can assume on completion of the request.
+ * - KErrNone If there is an new Location based
+ * Application registered to Location Centre, when
+ * an existing Location based Application is removed
+ * from Location Centre or when an Location based
+ * Application becomes absent or present.
+ * - KErrCancel If an outstanding request is Cancelled.
+ * - KErrServerTerminated If the Location Centre server
+ * is pre-maturely terminated.
+ * - System wide error codes in other error conditions.
+ */
+ virtual void LcStatusChangedL( TInt aErrorCode ) = 0;
+ };
+
+#endif // M_LCNOTIFICATION_H