diff -r 000000000000 -r ff3b6d0fd310 satengine/SatServer/SystemState/inc/CSatSystemState.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/satengine/SatServer/SystemState/inc/CSatSystemState.h Tue Feb 02 01:11:09 2010 +0200 @@ -0,0 +1,215 @@ +/* +* Copyright (c) 2002-2008 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: Provides system state information to SAT Server +* +*/ + + + +#ifndef CSATSYSTEMSTATE_H +#define CSATSYSTEMSTATE_H + +// INCLUDES +#include +#include +#include +#include "MSatSystemState.h" +#include "csatnetworkregstatusmonitor.h" + +// PREDEFINED CLASS +class MSatMultiModeApi; + +// CONSTANTS +const TInt KMaxSCANumberSize = 251; + +/** +* Accessors for system state information. +* +* @lib SatSystemState +* @since Series 60 3.0 +*/ +class CSatSystemState : public CBase, + public MSatSystemState, + public MMsvSessionObserver + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + * @param aPhone Reference to mobile phone + */ + static MSatSystemState* NewL( MSatMultiModeApi& aPhone ); + + /** + * Destructor. + */ + virtual ~CSatSystemState(); + + public: // Functions from base classes + + /** + * From MSatSystemState Gets the network registrtaion status + * @return Mobile phone's registration status + */ + RMobilePhone::TMobilePhoneRegistrationStatus + GetNetworkRegistrationStatus(); + + /** + * From MSatSystemState Checks is call active. + * @return TBool indicating wether call is active or not + */ + TBool IsCallActive(); + + /** + * From MSatSystemState Checks is call active. + * @return TBool indicating wether call is coming or not + */ + TBool IsCallIncoming(); + + /** + * From MSatSystemState Gets SCA number from CommsDB and + * returns it. + * @return SCANumber from CommsDB. + */ + const TDesC& SCANumber(); + + /** + * From MSatSystemState Checks is phone in silent mode. + * @return TBool indicating wether phone is in silent mode + */ + TBool IsSilentMode(); + + /** + * From MSatSystemState Checks is phone in idle state. + * @return TBool indicating wether phone is in idle mode + */ + TBool IsPhoneInIdleStateL(); + + /** + * From MSatSystemState Checks is screen saver actived from idle. + * @return TBool indicating whether screen saver is actived from idle. + */ + TBool IsScreenSaverActivedFromIdle(); + + /** + * From MSatSystemState Sets time between language selection and reboot. + * @param aTime Time before reboot. + * @return KErrNone if time is set successfully. + */ + TInt WriteLanguageSelectionTime( + TInt aTime ); + + /** + * From MSatSystemState Puts proactive Idle Mode Text command data to + * shared data. + * @param aString Idle mode text string + * @param aIconId Idle mode text icon ID + * @param aIconQualifier Idle mode text icon qualifier + * @return KErrNone if setting data is OK + */ + TInt WriteSetIdleModeText( + const TDesC& aString, + TInt aIconId, + RSat::TIconQualifier aIconQualifier ); + + /** + * From MSatSystemState Checks is backup / restore process ongoing. + * @return TBool indicating is process ongoing or not. + */ + TBool IsBackupProcessOngoing(); + + /** + * From MSatSystemState Checks is ConfirmSatOperations on. + * @return TBool indicating is confirmation on or off. + */ + TBool IsConfirmSatOperationsOn(); + + /** + * From MSatSystemState Gets the display language from + * CentRep and returns it. + * @return ID indicating the selected language. + */ + TInt DisplayTextLanguage(); + + /** + * Checks is Bluetooth SIM Access Profile active + * @return ETrue if BT SAP is active + */ + TBool IsBtSapActive(); + + /** + * From MMsvSessionObserver Indicates an event has occurred from a + * Message Server session. + * @param aEvent Indicates the event type + * @param aArg1 Event type-specific argument value + * @param aArg2 Event type-specific argument value + * @param aArg3 Event type-specific argument value + */ + virtual void HandleSessionEventL( + TMsvSessionEvent /*aEvent*/, + TAny* /*aArg1*/, + TAny* /*aArg2*/, + TAny* /*aArg3*/) {}; + + /** + * From MSatSystemState Checks are phone warnings and game tones on. + * @return TBool indicating wether phone are warnings and game tone on. + */ + TBool IsWarningAndGameTonesOn(); + + private: + + /** + * C++ default constructor. + * @param aPhone Reference to mobile phone + */ + CSatSystemState( MSatMultiModeApi& aPhone ); + + /** + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL( MSatMultiModeApi& aPhone ); + + /** + * Reads current Short Message Service Center Address. + * @param aAddress The reference for SCA number. + */ + void ReadCurrentSMSCL( TDes& aAddress ); + + /** + * Specifies an entry in the Message Server index. + * @param aSession The current message server session. + * @param aMtm The SMS messaging type module UID. + * @return The entry in the Message Server index. + */ + TMsvId ServiceForMTML( + CMsvSession& aSession, + const TUid& aMtm ) const; + + private: // Data + + // Network registration status monitor + CSatNetworkRegStatusMonitor* iNetworkRegStatusMonitor; + + // Descriptor for SCA number + TBuf iScaAddress; + + // Reference for MSatMultiModeApi + MSatMultiModeApi& iPhone; + + }; + +#endif // CSATSYSTEMSTATE_H + +// End of File