--- a/smsprotocols/smsstack/smsprot/Inc/smspenum.h Mon May 03 13:37:20 2010 +0300
+++ b/smsprotocols/smsstack/smsprot/Inc/smspenum.h Thu May 06 15:10:38 2010 +0100
@@ -1,241 +1,241 @@
-// Copyright (c) 2003-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:
-//
-
-/**
- @file
- @internalAll
-*/
-
-
-#ifndef __SMSPENUM_H__
-#define __SMSPENUM_H__
-
-#include <e32base.h>
-#include <etelmm.h>
-#include "gsmuSmsSlot.h"
-#include "smspcomm.h"
-#include "smspproc.h"
-#include "smsuset.h"
-
-#include <mmretrieve.h>
-#include "smsuact.h"
-#include "smspqueue.h"
-
-#include "es_ini.h"
-
-class CSmsSegmentationStore;
-class CFacadeSmsReassemblyStore;
-class CQueuedSmsMessage;
-
-
-/**
- *
- * Class CSmsStoreRead for reading messages from the store. Messages can be read
- * to the list all at once or one by one, depending on capabilities of the Tsy.
- * @internalComponent
- */
-class CSmsStoreRead : public CSmsuActiveBase
- {
-private:
- enum
- {
- KDefaultEnumerateTimeoutSeconds=255000000 //<255 sec
- };
-public:
- static CSmsStoreRead* NewL(MSmsComm& aSmsComm,
- const TSmsSettings& aSmsSettings,
- RMobileSmsMessaging& aSmsMessaging,
- CFacadeSmsReassemblyStore& aReassemblyStore,
- CSmsSegmentationStore& aSegmentationStore,
- TInt aPriority,
- CSmsMonitorDiskSpace& aSmsMonitorDiskSpace);
- ~CSmsStoreRead();
-
- void Start(TRequestStatus& aStatus,TInt aStoreIndex);
-
- void CloseStore();
-
-protected:
- void DoCancel();
- void ReadConfigurableSmsSettingsL();
-private:
- CSmsStoreRead(MSmsComm& aSmsComm,
- const TSmsSettings& aSmsSettings,
- RMobileSmsMessaging& aSmsMessaging,
- CFacadeSmsReassemblyStore& aReassemblyStore,
- CSmsSegmentationStore& aSegmentationStore,
- TInt aPriority,
- CSmsMonitorDiskSpace& aSmsMonitorDiskSpace);
-
- void ConstructL();
- void DoRunL();
-
- void Complete(TInt aStatus);
-
- void ReadNextSlotL();
- void ProcessPduL();
-
-private:
- enum TSmsStoreReadState
- {
- ESmsStoreReadIdle, //< Idle
- ESmsStoreReadGettingStoreInfo, //< Getting message store info
- ESmsStoreReadReadingList, //< Reading message list at once
- ESmsStoreReadReadingSlot, //< Reading message list one message at the time
- ESmsStoreReadReadingSlotCancel //< Reading message list cancel
- };
-
-private:
- TSmsStoreReadState iState; //< The current state of the state machine
- MSmsComm& iSmsComm;
- const TSmsSettings& iSmsSettings;
- RMobileSmsMessaging& iSmsMessaging;
- CFacadeSmsReassemblyStore& iReassemblyStore;
- CSmsSegmentationStore& iSegmentationStore;
- CSmsMonitorDiskSpace& iSmsMonitorDiskSpace;
- RMobileSmsStore iSmsStorage; //< Phone side message store
-
- RMobileSmsStore::TMobilePhoneStoreInfoV1Pckg iStoreInfoPckg;
- RMobilePhoneStore::TMobilePhoneStoreInfoV1 iStoreInfo; //< Capabilities of the current store
- CRetrieveMobilePhoneSmsList* iRetrieveMobilePhoneSmsList; //< Pointer for getting SMS list from TSY
- CMobilePhoneGsmSmsList* iMobilePhoneGsmSmsList; //< Pointer to a SMS list
- RMobileSmsStore::TMobileGsmSmsEntryV1Pckg iEntryV1Pckg;
- RMobileSmsStore::TMobileGsmSmsEntryV1 iSmsEntry; //< Data of a SMS entry
-
- TGsmSmsSlot iSlot; //< Data of a SMS entry including store name
-
- TInt iCurrentSlotIndex; //< Index to a slot, identifies the index of iSlot
- TBool iConfigAutomaticDeletionForClass2;
- TBool iConfigDiscardingType0Class2;
- TBool iConfigDiscardingType0Class0;
- };
-
-
-/**
- * Class CSmsPhoneEnumeration for enumerating all stores.
- * @internalComponent
- */
-class CSmsPhoneEnumeration : public CSmsuActiveBase
- {
-public:
- static CSmsPhoneEnumeration* NewL(MSmsComm& aSmsComm,const TSmsSettings& aSmsSettings, CFacadeSmsReassemblyStore& aReassemblyStore, CSmsSegmentationStore& aSegmentationStore,RMobilePhone& aGsmPhone, TInt aPriority, CSmsMonitorDiskSpace& aSmsMonitorDiskSpace);
- ~CSmsPhoneEnumeration();
-
- void Start();
-
-protected:
-
- void DoRunL();
- void DoCancel();
-
-private:
-
- CSmsPhoneEnumeration(MSmsComm& aSmsComm,const TSmsSettings& aSmsSettings, RMobilePhone& aGsmPhone, TInt aPriority);
- void ConstructL(CFacadeSmsReassemblyStore& aReassemblyStore,CSmsSegmentationStore& aSegmentationStore,CSmsMonitorDiskSpace& aSmsMonitorDiskSpace);
-
- void Complete(TInt aStatus);
-
-private:
- enum TSmsPhoneEnumerationState
- {
- ESmsPhoneEnumerationIdle, //< Idle
- ESmsPhoneEnumerationInitializing, //< Initializing mobile phone
- ESmsPhoneEnumerationReadingStores //< Reading all stores one at the time
- };
-
-private:
- TSmsPhoneEnumerationState iState; //< The current state of the state machine
- MSmsComm& iSmsComm; //< The reference to the observer
- const TSmsSettings& iSmsSettings; //< Global SMS Protocol settings
- RMobilePhone& iGsmPhone; //< Etel phone susession
- RMobileSmsMessaging iSmsMessaging; //< ETEL phone subsession for messaging services
- TInt iNumStores; //< Number of the phone side stores
- TInt iCurrentStore; //< Index to a store
- CSmsStoreRead* iSmsStoreRead; //< Pointer for reading store from the phone side
- };
-
-
-
-
-
-/**
- * Class CSmsMessageWrite for writing messages to the store.
- * @internalComponent
- */
-class CSmsMessageWrite : public CSmsuActiveBase
- {
- friend class CSmspWriteQueue;
-
-private:
-
- static CSmsMessageWrite* NewL(MSmsComm& aSmsComm, const TSmsSettings& aSmsSettings,
- RMobilePhone& aGsmPhone,
- CSmsSegmentationStore& aSegmentationStore
- );
- ~CSmsMessageWrite();
-
- void Start(CSmsMessage* aSmsMessage, TRequestStatus& aStatus);
-
-private:
-
- void DoRunL();
- void DoCancel();
-
-private:
- CSmsMessageWrite(MSmsComm& aSmsComm, const TSmsSettings& aSmsSettings,
- RMobilePhone& aGsmPhone,
- CSmsSegmentationStore& aSegmentationStore
- );
-
- void ConstructL();
- void SegmentMessageL();
- void WriteNextSlot();
- void Complete(TInt aStatus);
-
-private:
- enum TSmsMessageWriteState
- {
- ESmsMessageWriteIdle, //< Idle
- ESmsMessageWriteInitializing, //< Initializing mobile phone
- ESmsMessageWriteGettingStoreInfo, //< Getting message store info
- ESmsMessageWriteWritingPDUs, //< Writing slot to the store
- };
-
-private:
-
- MSmsComm& iSmsComm;
- TSmsMessageWriteState iState; //< The current state of the state machine
- const TSmsSettings& iSmsSettings; //< Global SMS Protocol settings
- RMobilePhone& iGsmPhone; //< Etel phone susession
- RMobileSmsMessaging iSmsMessaging; //< ETEL phone subsession for messaging services
- RMobileSmsStore iSmsStorage; //< Phone side message store
-
- RMobileSmsStore::TMobilePhoneStoreInfoV1Pckg iStoreInfoPckg;
- RMobilePhoneStore::TMobilePhoneStoreInfoV1 iStoreInfo; //< Capabilities of the current store
-
- RMobileSmsStore::TMobileGsmSmsEntryV1Pckg iWriteEntryV1Pckg;
- RMobileSmsStore::TMobileGsmSmsEntryV1 iEntryToWrite; //< Given entry for writing
-
- CSmsSegmentationStore& iSegmentationStore; //< Segmentation store, used to get next 8 or 16bit reference
- CArrayFixFlat<TGsmSms> iSmsArray; //< Array for Pdus
- CSmsMessage* iSmsMessage; //< The Message to write
- TInt iNumStores; //< Number of the phone side stores
- TInt iCurrentStore; //< Index to a store
- TGsmSmsSlot iSlot; //< a slot
- };
-
-
-
-#endif // !defined __SMSPENUM_H__
+// Copyright (c) 2003-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:
+//
+
+/**
+ @file
+ @internalAll
+*/
+
+
+#ifndef __SMSPENUM_H__
+#define __SMSPENUM_H__
+
+#include <e32base.h>
+#include <etelmm.h>
+#include "gsmuSmsSlot.h"
+#include "smspcomm.h"
+#include "smspproc.h"
+#include "smsuset.h"
+
+#include <mmretrieve.h>
+#include "smsuact.h"
+#include "smspqueue.h"
+
+#include "es_ini.h"
+
+class CSmsSegmentationStore;
+class CFacadeSmsReassemblyStore;
+class CQueuedSmsMessage;
+
+
+/**
+ *
+ * Class CSmsStoreRead for reading messages from the store. Messages can be read
+ * to the list all at once or one by one, depending on capabilities of the Tsy.
+ * @internalComponent
+ */
+class CSmsStoreRead : public CSmsuActiveBase
+ {
+private:
+ enum
+ {
+ KDefaultEnumerateTimeoutSeconds=255000000 //<255 sec
+ };
+public:
+ static CSmsStoreRead* NewL(MSmsComm& aSmsComm,
+ const TSmsSettings& aSmsSettings,
+ RMobileSmsMessaging& aSmsMessaging,
+ CFacadeSmsReassemblyStore& aReassemblyStore,
+ CSmsSegmentationStore& aSegmentationStore,
+ TInt aPriority,
+ CSmsMonitorDiskSpace& aSmsMonitorDiskSpace);
+ ~CSmsStoreRead();
+
+ void Start(TRequestStatus& aStatus,TInt aStoreIndex);
+
+ void CloseStore();
+
+protected:
+ void DoCancel();
+ void ReadConfigurableSmsSettingsL();
+private:
+ CSmsStoreRead(MSmsComm& aSmsComm,
+ const TSmsSettings& aSmsSettings,
+ RMobileSmsMessaging& aSmsMessaging,
+ CFacadeSmsReassemblyStore& aReassemblyStore,
+ CSmsSegmentationStore& aSegmentationStore,
+ TInt aPriority,
+ CSmsMonitorDiskSpace& aSmsMonitorDiskSpace);
+
+ void ConstructL();
+ void DoRunL();
+
+ void Complete(TInt aStatus);
+
+ void ReadNextSlotL();
+ void ProcessPduL();
+
+private:
+ enum TSmsStoreReadState
+ {
+ ESmsStoreReadIdle, //< Idle
+ ESmsStoreReadGettingStoreInfo, //< Getting message store info
+ ESmsStoreReadReadingList, //< Reading message list at once
+ ESmsStoreReadReadingSlot, //< Reading message list one message at the time
+ ESmsStoreReadReadingSlotCancel //< Reading message list cancel
+ };
+
+private:
+ TSmsStoreReadState iState; //< The current state of the state machine
+ MSmsComm& iSmsComm;
+ const TSmsSettings& iSmsSettings;
+ RMobileSmsMessaging& iSmsMessaging;
+ CFacadeSmsReassemblyStore& iReassemblyStore;
+ CSmsSegmentationStore& iSegmentationStore;
+ CSmsMonitorDiskSpace& iSmsMonitorDiskSpace;
+ RMobileSmsStore iSmsStorage; //< Phone side message store
+
+ RMobileSmsStore::TMobilePhoneStoreInfoV1Pckg iStoreInfoPckg;
+ RMobilePhoneStore::TMobilePhoneStoreInfoV1 iStoreInfo; //< Capabilities of the current store
+ CRetrieveMobilePhoneSmsList* iRetrieveMobilePhoneSmsList; //< Pointer for getting SMS list from TSY
+ CMobilePhoneGsmSmsList* iMobilePhoneGsmSmsList; //< Pointer to a SMS list
+ RMobileSmsStore::TMobileGsmSmsEntryV1Pckg iEntryV1Pckg;
+ RMobileSmsStore::TMobileGsmSmsEntryV1 iSmsEntry; //< Data of a SMS entry
+
+ TGsmSmsSlot iSlot; //< Data of a SMS entry including store name
+
+ TInt iCurrentSlotIndex; //< Index to a slot, identifies the index of iSlot
+ TBool iConfigAutomaticDeletionForClass2;
+ TBool iConfigDiscardingType0Class2;
+ TBool iConfigDiscardingType0Class0;
+ };
+
+
+/**
+ * Class CSmsPhoneEnumeration for enumerating all stores.
+ * @internalComponent
+ */
+class CSmsPhoneEnumeration : public CSmsuActiveBase
+ {
+public:
+ static CSmsPhoneEnumeration* NewL(MSmsComm& aSmsComm,const TSmsSettings& aSmsSettings, CFacadeSmsReassemblyStore& aReassemblyStore, CSmsSegmentationStore& aSegmentationStore,RMobilePhone& aGsmPhone, TInt aPriority, CSmsMonitorDiskSpace& aSmsMonitorDiskSpace);
+ ~CSmsPhoneEnumeration();
+
+ void Start();
+
+protected:
+
+ void DoRunL();
+ void DoCancel();
+
+private:
+
+ CSmsPhoneEnumeration(MSmsComm& aSmsComm,const TSmsSettings& aSmsSettings, RMobilePhone& aGsmPhone, TInt aPriority);
+ void ConstructL(CFacadeSmsReassemblyStore& aReassemblyStore,CSmsSegmentationStore& aSegmentationStore,CSmsMonitorDiskSpace& aSmsMonitorDiskSpace);
+
+ void Complete(TInt aStatus);
+
+private:
+ enum TSmsPhoneEnumerationState
+ {
+ ESmsPhoneEnumerationIdle, //< Idle
+ ESmsPhoneEnumerationInitializing, //< Initializing mobile phone
+ ESmsPhoneEnumerationReadingStores //< Reading all stores one at the time
+ };
+
+private:
+ TSmsPhoneEnumerationState iState; //< The current state of the state machine
+ MSmsComm& iSmsComm; //< The reference to the observer
+ const TSmsSettings& iSmsSettings; //< Global SMS Protocol settings
+ RMobilePhone& iGsmPhone; //< Etel phone susession
+ RMobileSmsMessaging iSmsMessaging; //< ETEL phone subsession for messaging services
+ TInt iNumStores; //< Number of the phone side stores
+ TInt iCurrentStore; //< Index to a store
+ CSmsStoreRead* iSmsStoreRead; //< Pointer for reading store from the phone side
+ };
+
+
+
+
+
+/**
+ * Class CSmsMessageWrite for writing messages to the store.
+ * @internalComponent
+ */
+class CSmsMessageWrite : public CSmsuActiveBase
+ {
+ friend class CSmspWriteQueue;
+
+private:
+
+ static CSmsMessageWrite* NewL(MSmsComm& aSmsComm, const TSmsSettings& aSmsSettings,
+ RMobilePhone& aGsmPhone,
+ CSmsSegmentationStore& aSegmentationStore
+ );
+ ~CSmsMessageWrite();
+
+ void Start(CSmsMessage* aSmsMessage, TRequestStatus& aStatus);
+
+private:
+
+ void DoRunL();
+ void DoCancel();
+
+private:
+ CSmsMessageWrite(MSmsComm& aSmsComm, const TSmsSettings& aSmsSettings,
+ RMobilePhone& aGsmPhone,
+ CSmsSegmentationStore& aSegmentationStore
+ );
+
+ void ConstructL();
+ void SegmentMessageL();
+ void WriteNextSlot();
+ void Complete(TInt aStatus);
+
+private:
+ enum TSmsMessageWriteState
+ {
+ ESmsMessageWriteIdle, //< Idle
+ ESmsMessageWriteInitializing, //< Initializing mobile phone
+ ESmsMessageWriteGettingStoreInfo, //< Getting message store info
+ ESmsMessageWriteWritingPDUs, //< Writing slot to the store
+ };
+
+private:
+
+ MSmsComm& iSmsComm;
+ TSmsMessageWriteState iState; //< The current state of the state machine
+ const TSmsSettings& iSmsSettings; //< Global SMS Protocol settings
+ RMobilePhone& iGsmPhone; //< Etel phone susession
+ RMobileSmsMessaging iSmsMessaging; //< ETEL phone subsession for messaging services
+ RMobileSmsStore iSmsStorage; //< Phone side message store
+
+ RMobileSmsStore::TMobilePhoneStoreInfoV1Pckg iStoreInfoPckg;
+ RMobilePhoneStore::TMobilePhoneStoreInfoV1 iStoreInfo; //< Capabilities of the current store
+
+ RMobileSmsStore::TMobileGsmSmsEntryV1Pckg iWriteEntryV1Pckg;
+ RMobileSmsStore::TMobileGsmSmsEntryV1 iEntryToWrite; //< Given entry for writing
+
+ CSmsSegmentationStore& iSegmentationStore; //< Segmentation store, used to get next 8 or 16bit reference
+ CArrayFixFlat<TGsmSms> iSmsArray; //< Array for Pdus
+ CSmsMessage* iSmsMessage; //< The Message to write
+ TInt iNumStores; //< Number of the phone side stores
+ TInt iCurrentStore; //< Index to a store
+ TGsmSmsSlot iSlot; //< a slot
+ };
+
+
+
+#endif // !defined __SMSPENUM_H__