logsui/EngineInc/MLogsSharedData.h
changeset 0 e686773b3f54
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/logsui/EngineInc/MLogsSharedData.h	Tue Feb 02 10:12:17 2010 +0200
@@ -0,0 +1,194 @@
+/*
+* Copyright (c) 2002 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: 
+*     Defines abstract interface for accessing Logs SD
+*
+*/
+
+
+#ifndef __MLogsSharedData_H_
+#define __MLogsSharedData_H_
+
+// INCLUDES
+#include "LogsEng.hrh"
+#include "LogsAlsEnum.hrh"
+
+// MACROS
+
+// DATA TYPES
+
+// FUNCTION PROTOTYPES
+
+// FORWARD DECLARATIONS
+class MLogsObserver;
+
+// CLASS DECLARATION
+
+/**
+ *	Defines abstract interface for accessing Logs SD
+ */
+class MLogsSharedData
+    {
+    public:
+    
+        virtual ~MLogsSharedData() {};
+
+    public:
+        
+        /**
+         *  Last Call Timer's value getter. 
+         *
+         *  @param  aLine   Line to fetch, default EAllLines
+         *  @param  aVoip   Whether or voip line is to be fetched
+         *  @return Last Call Timer value
+         */
+        virtual TInt LastCallTimer( TAlsEnum aLine, TVoipEnum aVoip ) = 0; 
+
+        /**
+         *  Dialled Call Timer's value getter
+         *
+         *  @param  aLine   Line, to fetch
+         *  @param  aVoip   Whether or voip line is to be included 
+         *  @return Dialled Call Timer value
+         */
+        virtual TInt DialledCallsTimer( TAlsEnum aLine, TVoipEnum aVoip ) = 0;
+
+        /**
+         *  Received Call Timer's value getter
+         *
+         *  @param  aLine   Line to fetch
+         *  @param  aVoip   Whether or voip line is to be included          
+         *  @return Received Call Timer value
+         */
+        virtual TInt ReceivedCallsTimer( TAlsEnum aLine, TVoipEnum aVoip )  = 0;
+
+        /**
+         *  All Calls Timer's value getter, 
+         *
+         *  @param  aLine   Line to fetch
+         *  @param  aVoip   Whether or voip line is to be included          
+         *  @return All Calls Timer value
+         */
+        virtual TInt AllCallsTimer( TAlsEnum aLine, TVoipEnum aVoip ) = 0;
+
+        /**
+         *  Clears Call Timers
+         */
+        virtual void ClearCallTimers() = 0;
+        
+        /**
+         *  Returns whether Logging is enabled 
+         *  (Log length is != "no log")
+         *
+         *  @return LoggingEnabled true/false
+         */        
+        virtual TBool IsLoggingEnabled() = 0;
+
+        /**
+         *  Logging ON/OFF switch
+         *
+         *  @param  aSwitch    ETrue - ON, EFalse - OFF
+         */
+        virtual void SetLoggingEnabled( TBool aSwitch ) = 0;
+
+        /**
+         *  GPRS sent value getter
+         *
+         *  @return The value of the GPRS sent counter
+         */
+        virtual TInt64 GprsSentCounter() = 0;
+
+        /**
+         *  GPRS received value getter
+         *
+         *  @return The value of the GPRS received counter
+         */
+        virtual TInt64 GprsReceivedCounter() = 0;
+
+        /**
+         *  Clears GPRS counters
+         */
+        virtual void ClearGprsCounters() = 0;
+
+        /**
+         *  Flag getter for Show call duration in Logs application.
+         *
+         *  @return ETrue if call duration is to be shown,
+         *          otherwise EFalse
+         */
+        virtual TBool ShowCallDurationLogsL() = 0;    
+
+        //For ring duation feature
+        /**
+         *  Show Ring duration for missed calls
+         *  @return ETrue if value must be shown,
+         *          EFalse otherwise.
+         */        
+        virtual TBool ShowRingDuration() const = 0;
+        
+        /*******************************************************************************
+        FIXME: Toolbar is currently always on - keeping the toolbar visibility handling 
+        sources in comments for now - remove later.*/
+  
+        /**
+         *  Show Toolbar status getter
+         *  @return 0   Don't show toolbar.
+         *          !0  Show toolbar.
+         */        
+        //virtual TInt ToolbarVisibility() const = 0;
+
+        /**
+         *  Show Toolbar status setter
+         *  @param aShow !0 (use 1) Show toolbar,
+         *               0  Don't show toolbar.
+         */        
+         //virtual void SetToolbarVisibility( TInt aToolbarVisibility ) = 0; 
+          
+        /*******************************************************************************/
+     
+        
+        /**
+         *  New Missed Calls getter
+         *
+         *  @param aClear clear counter if true, default EFalse
+         *  @return Amount of new missed calls
+         */
+        virtual TInt NewMissedCalls( const TBool aClear = EFalse ) = 0;
+
+        /**
+         *   Set UI observer for notifications
+         * 
+         *   @param aObserver pointer to observer.
+         */
+        virtual void SetObserver( MLogsObserver* aObserver ) = 0;
+        
+        /**
+         *  Returns whether MSK is enabled in platform
+         *
+         *  @return MSKEnabled true/false
+         */            
+        virtual TBool IsMSKEnabledInPlatform() = 0;
+         
+         /**
+         *  Returns whether VoIP is enabled in platform
+         *
+         *  @return VoIPEnabled true/false
+         */            
+        virtual TBool IsVoIPEnabledInPlatform() = 0;  
+    };
+
+            
+#endif
+
+// End of File  __MLogsSharedData_H_