CParserPropertyValueMultiDateTime Class Reference

class CParserPropertyValueMultiDateTime : public CParserTimePropertyValue

A property value parser which stores a list of date/time values using an array of TVersitDateTime objects.

The UID for a multiple date/time property value is KVersitPropertyMultiDateTimeUid.

Inherits from

Public Member Functions
CParserPropertyValueMultiDateTime(CArrayPtr< TVersitDateTime > *)
~CParserPropertyValueMultiDateTime()
IMPORT_C voidConvertAllDateTimesToUTCL(const TTimeIntervalSeconds &, const CVersitDaylight *)
IMPORT_C voidConvertAllUTCDateTimesToMachineLocalL(const TTimeIntervalSeconds &)
IMPORT_C voidExternalizeL(RWriteStream &, const Versit::TEncodingAndCharset &, TInt)
CArrayPtr< TVersitDateTime > *Value()
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CParserPropertyValue::Append(TDes16 &,TDesC8 &)
CParserPropertyValue::CParserPropertyValue(const TUid &)
CParserPropertyValue::EncodeL(CBufBase *,const TDesC8 &,const TUid &)const
CParserPropertyValue::FoldAndWriteValueToStreamL(RWriteStream &,const TDesC &,const Versit::TEncodingAndCharset &,TInt &)const
CParserPropertyValue::FoldEncodeAndWriteValueToStreamL(RWriteStream &,const CDesCArray *,const Versit::TEncodingAndCharset &,TInt &)const
CParserPropertyValue::FoldEncodeAndWriteValueToStreamL(RWriteStream &,const TDesC &,const Versit::TEncodingAndCharset &,TInt &)const
CParserPropertyValue::IsAsciiCharacterSetSufficient()
CParserPropertyValue::PlugIn()
CParserPropertyValue::SetPlugIn(MVersitPlugIn *)
CParserPropertyValue::Uid()const
CParserTimePropertyValue::CParserTimePropertyValue(const TUid &)
CParserTimePropertyValue::ConvertDateTime(TDateTime &,const TTimeIntervalSeconds &,const CVersitDaylight *,TBool)
CParserTimePropertyValue::ConvertDateTime(TDateTime *,const TTimeIntervalSeconds &,const CVersitDaylight *)
CParserTimePropertyValue::EncodeTimePeriodL(TDes8 &,const TTime &)const
CParserTimePropertyValue::EncodeVersitDateTimeL(TDes8 &,const TVersitDateTime &,TBool)const
CParserTimePropertyValue::SupportsInterface(const TUid &)const
Protected Attributes
CArrayPtr< TVersitDateTime > *iValue

Constructor & Destructor Documentation

CParserPropertyValueMultiDateTime(CArrayPtr< TVersitDateTime > *)

IMPORT_CCParserPropertyValueMultiDateTime(CArrayPtr< TVersitDateTime > *aValue)

Constructs a multi-date/time property value parser with an array of TVersitDateTimes.

Sets the property value's UID to KVersitPropertyMultiDateTimeUid.

Parameters

CArrayPtr< TVersitDateTime > * aValuePointer to an array of TVersitDateTime objects, each of which specifies a date/time value, and information about the value. The property value takes ownership of the array.

~CParserPropertyValueMultiDateTime()

IMPORT_C~CParserPropertyValueMultiDateTime()

Frees all resources owned by the property value, prior to its destruction.

Member Functions Documentation

ConvertAllDateTimesToUTCL(const TTimeIntervalSeconds &, const CVersitDaylight *)

IMPORT_C voidConvertAllDateTimesToUTCL(const TTimeIntervalSeconds &aIncrement,
const CVersitDaylight *aDaylight
)[virtual]

Converts each of the date/time values owned by the object into universal time.

Each date/time is checked against the daylight saving information provided in aDaylight. If it falls inside the daylight saving period then the daylight saving offset is subtracted from the time to convert it to universal time. Otherwise aIncrement is added to the date/time of the alarm to convert it to universal time.

Note that the daylight savings offset will adjust the time both for the daylight saving and for the time zone.

The function does not effect any date/time value already stored in universal time.

If aDaylight is a NULL pointer then aIncrement is used.

since 9.1

Parameters

const TTimeIntervalSeconds & aIncrementA time interval in seconds which represents the negative of the time zone of the originating machine. For instance, if the time zone is +04:30 (that is 4hr 30mins ahead of UTC), aIncrement should be set to minus the number of seconds in 4hr 30mins.
const CVersitDaylight * aDaylightPointer to the specification for daylight saving. If the time value is within the period for daylight saving, the value is modified by the daylight saving offset (which accounts for both the time zone and daylight saving rule).

ConvertAllUTCDateTimesToMachineLocalL(const TTimeIntervalSeconds &)

IMPORT_C voidConvertAllUTCDateTimesToMachineLocalL(const TTimeIntervalSeconds &aIncrement)[virtual]

Converts the date/time property values into machine-local time.

This process involves adjusting the date/time values by the offset in aIncrement.

The function has no effect on any values already stored in machine-local time.

since 9.1

Parameters

const TTimeIntervalSeconds & aIncrementA time interval which represents the number of seconds which is to be added to the date/time values. This should normally be the universal time offset for the machine's locale.

ExternalizeL(RWriteStream &, const Versit::TEncodingAndCharset &, TInt)

IMPORT_C voidExternalizeL(RWriteStream &aStream,
const Versit::TEncodingAndCharset &,
TIntaLengthOutput
)[virtual]

Externalises the array of date/time property values into aStream.

Parameters

RWriteStream & aStream
const Versit::TEncodingAndCharset &
TInt aLengthOutput

Value()

CArrayPtr< TVersitDateTime > *Value()const [inline]

Gets a pointer to the object's list of date/time property values.

Member Data Documentation

CArrayPtr< TVersitDateTime > * iValue

CArrayPtr< TVersitDateTime > *iValue[protected]