--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sysstatemgmt/systemstatemgr/inc/ssmadaptation.h Tue Feb 02 00:53:00 2010 +0200
@@ -0,0 +1,357 @@
+// Copyright (c) 2007-2009 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:
+//
+
+#ifndef __SSMADAPTATION_H__
+#define __SSMADAPTATION_H__
+
+#include <e32base.h>
+
+#include <ssm/ssmstate.h>
+#include <ssm/ssmadaptation.hrh>
+
+/**
+ The UID2 value for SSM State Adaptation DLLs.
+ @publishedPartner
+ @released
+ */
+const TInt KStateAdaptationDllTypeUidValue=0x2000D76A;
+
+/**
+ The UID2 for SSM State Adaptation DLLs.
+ @publishedPartner
+ @released
+ */
+const TUid KStateAdaptationDllTypeUid={KStateAdaptationDllTypeUidValue};
+
+/**
+@publishedPartner
+@released
+*/
+class MStateAdaptation
+ {
+public:
+ /**
+ Request a Cooperating System to change system state.
+ @param aState contains the new System State
+ @param aStatus to complete when the operation has finished
+ @see TSsmState
+ @see TRequestStatus
+ */
+ virtual void RequestCoopSysStateChange(TSsmState aState, TRequestStatus& aStatus) = 0;
+
+ /**
+ Request the Cooperating System to perform a self test.
+ @param aStatus to complete when the operation has finished
+ @see TRequestStatus
+ */
+ virtual void RequestCoopSysSelfTest(TRequestStatus& aStatus) = 0;
+
+ /**
+ Request the Cooperating System to perform any required restart actions, since a device restart is about to be performed.
+ @param aReason reason used by Cooperating System
+ @param aStatus to complete when the operation has finished
+ @see TRequestStatus
+ */
+ virtual void RequestCoopSysPerformRestartActions(TInt aReason, TRequestStatus& aStatus) = 0;
+
+ /**
+ Request the Cooperating System to perform any required shutdown actions, since a device shutdown is about to be performed.
+ @param aReason reason used by Cooperating System
+ @param aStatus to complete when the operation has finished
+ @see TRequestStatus
+ */
+ virtual void RequestCoopSysPerformShutdownActions(TInt aReason, TRequestStatus& aStatus) = 0;
+
+ /**
+ Request the Cooperating System to Restore Factory Settings.
+ @param aRfsType type of factory settings to be restored
+ @param aStatus to complete when the operation has finished
+ @see TSsmRfsType
+ @see TRequestStatus
+ */
+ virtual void RequestCoopSysPerformRfsActions(TSsmRfsType aRfsType, TRequestStatus& aStatus) = 0;
+
+ /**
+ This cancels a previous request from one of the other five Request methods in this class.
+ Only one request is allowed to be outstanding on each connection session.
+ */
+ virtual void RequestCancel() = 0;
+
+ /**
+ Requests notification from the Cooperating system of any events that occur.
+ @param aEvent one of TSsmCoopSysEventType event's for which notification is requested, packaged in a descriptor
+ @param aStatus to complete when the notification request has occurred
+ @see TSsmCoopSysEventType
+ @see TRequestStatus
+ */
+ virtual void NotifyCoopSysEvent(TDes8& aEvent, TRequestStatus& aStatus) = 0;
+
+ /**
+ This cancels the outstanding request for notification of events.
+ Only one request for notification of fatal events is allowed for each connected session.
+ */
+ virtual void NotifyCancel() = 0;
+
+ /**
+ It is expected that Release will usually just call "delete this" on the object,
+ but this will depend on the implementation of each policy.
+ */
+ virtual void Release() = 0;
+ };
+
+/**
+ The UID2 value for SSM RTC Adaptation DLLs.
+ @publishedPartner
+ @released
+ */
+const TInt KRtcAdaptationDllTypeUidValue=0x2000D76C;
+
+/**
+ The UID2 for SSM RTC Adaptation DLLs.
+ @publishedPartner
+ @released
+ */
+const TUid KRtcAdaptationDllTypeUid={KRtcAdaptationDllTypeUidValue};
+
+/**
+@publishedPartner
+@released
+*/
+class MRtcAdaptation
+ {
+public:
+ /**
+ Check that the RTC is valid.
+ @param aValidityPckg on return contains the status of the validity of the RTC as a boolean value
+ @param aStatus to complete when the operation has finished
+ @see TRequestStatus
+ */
+ virtual void ValidateRtc(TDes8& aValidityPckg, TRequestStatus& aStatus) = 0;
+
+ /**
+ Set a device wake-up alarm time, in UTC (coordinated universal time), in the RTC.
+ @param aAlarmTimePckg requested wake up time
+ @param aStatus to complete when the operation has finished
+ @see TRequestStatus
+ */
+
+ virtual void SetWakeupAlarm(TDesC8& aAlarmTimePckg, TRequestStatus& aStatus) = 0;
+
+ /**
+ Delete the current device wake-up alarm time in the RTC.
+ @param aStatus to complete when the operation has finished
+ @see TRequestStatus
+ */
+ virtual void UnsetWakeupAlarm(TRequestStatus& aStatus) = 0;
+
+ /**
+ This cancels a previous request from one of the other three methods in this class.
+ Only one request is allowed to be outstanding on each connection session.
+ */
+ virtual void Cancel() = 0;
+
+ /**
+ It is expected that Release will usually just call "delete this" on the object,
+ but this will depend on the implementation of each policy.
+ */
+ virtual void Release() = 0;
+ };
+
+/**
+ The UID2 value for SSM SIM Adaptation DLLs.
+ @publishedPartner
+ @released
+ */
+const TInt KSimAdaptationDllTypeUidValue=0x2000D76B;
+
+/**
+ The UID2 for SSM RTC Adaptation DLLs.
+ @publishedPartner
+ @released
+ */
+const TUid KSimAdaptationDllTypeUid={KSimAdaptationDllTypeUidValue};
+
+/**
+@publishedPartner
+@released
+*/
+class MSimAdaptation
+ {
+public:
+ /**
+ Check if the current SIM is among the group of recently used (i.e. Owned) SIM cards.
+ @param aOwnedPckg SIM details
+ @param aStatus to complete when the operation has finished
+ @see TRequestStatus
+ */
+ virtual void GetSimOwned(TDes8& aOwnedPckg, TRequestStatus& aStatus) = 0;
+
+ /**
+ This cancels the previous get request for SIM information.
+ Only one request for SIM information (either owned or changed) can be outstanding on each connected session.
+ */
+ virtual void GetCancel() = 0;
+
+ /**
+ Requests notification of SIM events.
+ @param aTypePckg contains the SIM event on notification completion
+ @param aStatus to complete when the operation has finished
+ @see TSsmSimEventType
+ @see TRequestStatus
+ */
+ virtual void NotifySimEvent(TDes8& aTypePckg, TRequestStatus& aStatus) = 0;
+
+ /**
+ This cancels the previous request for notification of SIM events.
+ Only one request for SIM events can be outstanding on each connected session.
+ */
+ virtual void NotifyCancel() = 0;
+
+ /**
+ It is expected that Release will usually just call "delete this" on the object,
+ but this will depend on the implementation of each policy.
+ */
+ virtual void Release() = 0;
+ };
+
+/**
+ The UID2 value for SSM Emergency Call Rf Adaptation DLLs.
+ @publishedPartner
+ @released
+ */
+const TInt KEmergencyCallRfAdaptationDllTypeUidValue=0x2000E657;
+
+/**
+ The UID2 for SSM Emergency Call Rf Adaptation DLLs.
+ @publishedPartner
+ @released
+ */
+const TUid KEmergencyCallRfAdaptationDllTypeUid={KEmergencyCallRfAdaptationDllTypeUidValue};
+
+/**
+@publishedPartner
+@released
+*/
+class MEmergencyCallRfAdaptation
+ {
+public:
+ /**
+ Request RF activation so that an emergency call can be made.
+ @param aStatus to complete when the operation has finished
+ @see TRequestStatus
+ */
+ virtual void ActivateRfForEmergencyCall(TRequestStatus& aStatus) = 0;
+
+ /**
+ Request RF deactivation after an emergency call have been made.
+ @param aStatus to complete when the operation has finished
+ @see TRequestStatus
+ */
+ virtual void DeactivateRfForEmergencyCall(TRequestStatus& aStatus) = 0;
+
+ /**
+ This cancels the previous outstanding request made for Activation/De-activation of emergency calls.
+ Only one request is allowed to be outstanding for each connected session.
+ */
+ virtual void Cancel() = 0;
+
+ /**
+ It is expected that Release will usually just call "delete this" on the object,
+ but this will depend on the implementation of each policy.
+ */
+ virtual void Release() = 0;
+ };
+
+/**
+ The UID2 value for SSM Miscellaneous Adaptation DLLs.
+ @publishedPartner
+ @released
+ */
+const TInt KMiscAdaptationDllTypeUidValue=0x2000E658;
+
+/**
+ The UID2 for SSM Miscellaneous Adaptation DLLs.
+ @publishedPartner
+ @released
+ */
+const TUid KMiscAdaptationDllTypeUid={KMiscAdaptationDllTypeUidValue};
+
+/**
+@publishedPartner
+@released
+*/
+class MMiscAdaptation
+ {
+public:
+ /**
+ Request the next security state.
+ @param aState next security state
+ @param aResponsePckg response to state change request on completion
+ @param aStatus to complete when the operation has finished
+ @see TRequestStatus
+ */
+ virtual void SecurityStateChange(TInt aState, TDes8& aResponsePckg, TRequestStatus& aStatus) = 0;
+
+ /**
+ Get the start-up mode from the Cooperating System.
+ @param aModePckg should contain start-up of the Cooperating System on completion
+ @param aStatus to complete when the operation has finished
+ @see TRequestStatus
+ */
+ virtual void GetGlobalStartupMode(TDes8& aModePckg, TRequestStatus& aStatus) = 0;
+
+ /**
+ Prepare language codes stored in the SIM in preferred language lists.
+ The next call should be GetSimLanguagesL()
+ @param aPriority priority for which the language lists need to be prepared
+ @param aSizePckg on return contains the size of the buffer, which a client should allocate and pass as the one of the parameters (CBufBase* aBuf, TInt aCount) to GetSimLanguagesL()
+ @param aStatus to complete when the operation has finished
+ @see TSsmLanguageListPriority
+ @see TRequestStatus
+ @see GetSimLanguagesL
+ */
+ virtual void PrepareSimLanguages(TSsmLanguageListPriority aPriority, TDes8& aSizePckg, TRequestStatus& aStatus) = 0;
+
+ /**
+ Get language codes stored in the SIM in preferred language lists.
+ PrepareSimLanguages() call should precede this call
+ @param aBuf should contain the language lists on completion
+ @param aCount to contain the count of the languages
+ @see PrepareSimLanguages
+ */
+ virtual void GetSimLanguagesL(CBufBase* aBuf, TInt aCount) = 0;
+
+ /**
+ This cancels the previous request from any of the other four methods in this class.
+ Only one request is allowed to be outstanding for each connected session.
+ */
+ virtual void Cancel() = 0;
+
+ /**
+ It is expected that Release will usually just call "delete this" on the object,
+ but this will depend on the implementation of each policy.
+ */
+ virtual void Release() = 0;
+
+ /**
+ Retrieve information about Hidden reset.
+ @param aHiddenResetPckg Result package (ETrue or EFalse)
+ @param aStatus to complete when the operation has finished
+ @see TRequestStatus
+ */
+ virtual void GetHiddenReset(TDes8& aHiddenResetPckg, TRequestStatus& aStatus) = 0;
+ };
+
+#endif // __SSMADAPTATION_H__