epoc32/include/msventryscheduledata.h
author William Roberts <williamr@symbian.org>
Tue, 16 Mar 2010 16:12:26 +0000
branchSymbian2
changeset 2 2fe1408b6811
permissions -rw-r--r--
Final list of Symbian^2 public API header files
     1 /// Copyright (c) 1999-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 /// All rights reserved.
     3 /// This component and the accompanying materials are made available
     4 /// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
     5 /// which accompanies this distribution, and is available
     6 /// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
     7 ///
     8 /// Initial Contributors:
     9 /// Nokia Corporation - initial contribution.
    10 ///
    11 /// Contributors:
    12 ///
    13 /// Description:
    14 /// All rights reserved.
    15 /// This component and the accompanying materials are made available
    16 /// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
    17 /// which accompanies this distribution, and is available
    18 /// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
    19 /// Initial Contributors:
    20 /// Nokia Corporation - initial contribution.
    21 /// Contributors:
    22 ///
    23 
    24 #ifndef MSV_ENTRY_SCHEDULE_DATA_H_
    25 #define MSV_ENTRY_SCHEDULE_DATA_H_
    26 
    27 /////////////////////////////////////////////////////////////////////////////
    28 //
    29 //	Includes
    30 //
    31 /////////////////////////////////////////////////////////////////////////////
    32 
    33 #include <msvstore.h>
    34 #include <schinfo.h>
    35 #include <csch_cli.h>
    36 #include <schtask.h>
    37 
    38 /////////////////////////////////////////////////////////////////////////////
    39 //
    40 //	Constants
    41 //
    42 /////////////////////////////////////////////////////////////////////////////
    43 
    44 const TUid KUidMsvFileScheduleData			= {0x100056A2};	//Used by TMsvEntryScheduleData
    45 const TInt16 KMsvEntryScheduleDataVersion	= 1;
    46 
    47 /////////////////////////////////////////////////////////////////////////////
    48 //
    49 //	TMsvEntryScheduleData Declaration
    50 //
    51 /////////////////////////////////////////////////////////////////////////////
    52 
    53 /**
    54 Stores message-specific data related to scheduling.
    55 
    56 The data is not required by the Client/UI side. This data is stored in a 
    57 stream associated with the TMsvEntry. 
    58 
    59 @publishedAll
    60 @released
    61 */
    62 
    63 class TMsvEntryScheduleData
    64 	{
    65 public:
    66 	IMPORT_C TMsvEntryScheduleData();
    67 
    68 	IMPORT_C void RestoreL(CMsvStore& aStore);
    69 	IMPORT_C void StoreL(CMsvStore& aStore) const;
    70 	IMPORT_C void RemoveL(CMsvStore& aStore) const;
    71 
    72 	IMPORT_C void Reset();
    73 	IMPORT_C TBool IsReset() const;
    74 
    75 	IMPORT_C TInt Retries() const;
    76 	IMPORT_C void IncreaseRetries();
    77 	IMPORT_C void ResetRetries();
    78 
    79 	/**
    80 	The Task ID returned by the Task Scheduler when the message is 
    81 	scheduled.
    82 	*/
    83 	TInt				iTaskId;
    84 	
    85 	/**
    86 	The TSchedulerItemRef returned by the Task Scheduler when the schedule 
    87 	on which the message is scheduled is created.
    88 	*/
    89 	TSchedulerItemRef	iRef;
    90 
    91 protected:
    92 	/** The number of retries that have been made to send this message. */
    93 	TInt				iRetryCount;
    94 	/** Structure version. */
    95 	TInt16				iVersion;
    96 
    97 	void ExternalizeL(RWriteStream& aWriteStream) const;
    98 	void InternalizeL(RReadStream& aReadStream);
    99 	};
   100 
   101 #endif