epoc32/include/tzupdate.h
branchSymbian2
changeset 2 2fe1408b6811
parent 0 061f57f2323e
equal deleted inserted replaced
1:666f914201fb 2:2fe1408b6811
     1 tzupdate.h
     1 // Copyright (c) 2004-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 //
       
    15 
       
    16 #ifndef __TZUPDATE_H__
       
    17 #define __TZUPDATE_H__
       
    18 
       
    19 #include <e32cmn.h> // TUid.
       
    20 
       
    21 /** UTC Offset update notification constants. When the UTC offset is automatically
       
    22 adjusted for Daylight Saving then it is possible to receive
       
    23 notification using the Publish and Subscribe API with the
       
    24 values defined here. Note that this property is updated by the Time Zone Server
       
    25 as this is the only component that can modify the UTC Offset.
       
    26 
       
    27 @see RProperty in e32property.h
       
    28 @publishedAll
       
    29 @released
       
    30 @since 9.1
       
    31 */
       
    32 namespace NTzUpdate
       
    33     {
       
    34     const TUid KPropertyCategory = { 0x1020383E };
       
    35 
       
    36     enum TPropertyKeys
       
    37         {
       
    38         EUtcOffsetChangeNotification,
       
    39         ECurrentTimeZoneId,
       
    40         EHomeTimeZoneId,
       
    41         ENextDSTChange
       
    42         };
       
    43 
       
    44 	struct TTimeZoneChange
       
    45 		{
       
    46 		TInt iNewTimeZoneId;
       
    47 		TInt iOldTimeZoneId;
       
    48 		};
       
    49 		
       
    50 	/** This struct is used to publish DST Change info in an RProperty.
       
    51 	Subscribers to the property will define a copy of this struct
       
    52 	so that they are not dependant on the tz component.
       
    53 	If this struct changes then the copies must also be changed.
       
    54 	@internalTechnology
       
    55 	*/
       
    56 	struct TDSTChangeInfo
       
    57 		{
       
    58 		/** The version of the struct. Currently always 1 */
       
    59 		TUint8 iVersion;
       
    60 
       
    61 		/** The time of the next offset change in UTC */
       
    62 		TTime iNextDSTChangeUTC;
       
    63 		/** The offset from UTC (in minutes) after the next DST change will take place.*/
       
    64 		TInt iNextUTCOffset;
       
    65 		
       
    66 		/** The time of the previous offset change in UTC. This member is only valid if the version is 2 or above. */
       
    67 		TTime iPreviousDSTChangeUTC;
       
    68 
       
    69 		/** The offset from UTC (in minutes) before the previous DST change took place. This member is only valid
       
    70 		if the version is 2 or above.*/
       
    71 		TInt iPreviousUTCOffset;
       
    72 
       
    73 		/** Reserved for future use. */
       
    74 		TInt iReserved[12];
       
    75 		};
       
    76     }
       
    77 
       
    78 #endif  // __TZUPDATE_H__