• Skip to content
  • Skip to link menu
KDE 4.1 API Reference
  • KDE API Reference
  • kdelibs
  • Sitemap
  • Contact Us
 

KDECore

KTimeZoneData Class Reference
[Time zone classes]

#include <ktimezone.h>

Inheritance diagram for KTimeZoneData:

Inheritance graph
[legend]

List of all members.


Detailed Description

Base class for the parsed data returned by a KTimeZoneSource class.

It contains all the data available from the KTimeZoneSource class, including, when available, a complete list of daylight savings time changes and leap seconds adjustments.

This base class can be instantiated, but contains no data.

Base class for parsed time zone data

See also:
KTimeZone, KTimeZoneSource
Author:
David Jarvie <djarvie@kde.org>.

Definition at line 1295 of file ktimezone.h.


Public Member Functions

virtual QByteArray abbreviation (const QDateTime &utcDateTime) const
virtual QList< QByteArray > abbreviations () const
virtual KTimeZoneData * clone () const
virtual bool hasTransitions () const
 KTimeZoneData (const KTimeZoneData &c)
 KTimeZoneData ()
KTimeZone::LeapSeconds leapSecondChange (const QDateTime &utc) const
QList< KTimeZone::LeapSeconds > leapSecondChanges () const
KTimeZoneData & operator= (const KTimeZoneData &c)
QList< KTimeZone::Phase > phases () const
int previousUtcOffset () const
const KTimeZone::Transition * transition (const QDateTime &dt, const KTimeZone::Transition **secondTransition=0, bool *validTime=0) const
int transitionIndex (const QDateTime &dt, int *secondIndex=0, bool *validTime=0) const
QList< KTimeZone::Transition > transitions (const QDateTime &start=QDateTime(), const QDateTime &end=QDateTime()) const
QList< QDateTime > transitionTimes (const KTimeZone::Phase &phase, const QDateTime &start=QDateTime(), const QDateTime &end=QDateTime()) const
virtual QList< int > utcOffsets () const
virtual ~KTimeZoneData ()

Protected Member Functions

void setLeapSecondChanges (const QList< KTimeZone::LeapSeconds > &adjusts)
void setPhases (const QList< KTimeZone::Phase > &phases, int previousUtcOffset)
void setTransitions (const QList< KTimeZone::Transition > &transitions)

Constructor & Destructor Documentation

KTimeZoneData::KTimeZoneData (  ) 

Definition at line 1075 of file ktimezone.cpp.

KTimeZoneData::KTimeZoneData ( const KTimeZoneData &  c  ) 

Definition at line 1079 of file ktimezone.cpp.

KTimeZoneData::~KTimeZoneData (  )  [virtual]

Definition at line 1090 of file ktimezone.cpp.


Member Function Documentation

QByteArray KTimeZoneData::abbreviation ( const QDateTime &  utcDateTime  )  const [virtual]

Returns the time zone abbreviation current at a specified time.

Parameters:
utcDateTime UTC date/time. An error occurs if utcDateTime.timeSpec() is not Qt::UTC.
Returns:
time zone abbreviation, or empty string if error
See also:
abbreviations()

Reimplemented in KSystemTimeZoneData.

Definition at line 1128 of file ktimezone.cpp.

QList< QByteArray > KTimeZoneData::abbreviations (  )  const [virtual]

Returns the complete list of time zone abbreviations.

This may include translations.

Returns:
the list of abbreviations. In this base class, it consists of the single string "UTC".
See also:
abbreviation()

Reimplemented in KSystemTimeZoneData.

Definition at line 1111 of file ktimezone.cpp.

KTimeZoneData * KTimeZoneData::clone (  )  const [virtual]

Creates a new copy of this object.

The caller is responsible for deleting the copy. Derived classes must reimplement this method to return a copy of the calling instance.

Returns:
copy of this instance

Reimplemented in KSystemTimeZoneData, and KTzfileTimeZoneData.

Definition at line 1106 of file ktimezone.cpp.

bool KTimeZoneData::hasTransitions (  )  const [virtual]

Return whether daylight saving transitions are available for the time zone.

The base class returns false.

Returns:
true if transitions are available, false if not
See also:
transitions(), transition()

Reimplemented in KTzfileTimeZoneData.

Definition at line 1170 of file ktimezone.cpp.

KTimeZone::LeapSeconds KTimeZoneData::leapSecondChange ( const QDateTime &  utc  )  const

Find the leap second adjustment which is applicable at a given UTC time.

Parameters:
utc UTC date/time. An error occurs if utc.timeSpec() is not Qt::UTC.
Returns:
leap second adjustment, or invalid if utc is earlier than the first leap second adjustment or utc is a local time

Definition at line 1311 of file ktimezone.cpp.

QList< KTimeZone::LeapSeconds > KTimeZoneData::leapSecondChanges (  )  const

Return all leap second adjustments, in time order.

Note that some time zone data sources (such as system time zones accessed via the system libraries) may not provide information on leap second adjustments. In such cases, this method will return an empty list.

Returns:
list of adjustments

Definition at line 1301 of file ktimezone.cpp.

KTimeZoneData & KTimeZoneData::operator= ( const KTimeZoneData &  c  ) 

Definition at line 1095 of file ktimezone.cpp.

QList< KTimeZone::Phase > KTimeZoneData::phases (  )  const

Return all daylight savings time phases.

Note that some time zone data sources (such as system time zones accessed via the system libraries) may not allow a list of daylight savings time changes to be compiled easily. In such cases, this method will return an empty list.

Returns:
list of phases

Definition at line 1159 of file ktimezone.cpp.

int KTimeZoneData::previousUtcOffset (  )  const

Returns the UTC offset to use before the start of data for the time zone.

Returns:
UTC offset

Definition at line 1192 of file ktimezone.cpp.

void KTimeZoneData::setLeapSecondChanges ( const QList< KTimeZone::LeapSeconds > &  adjusts  )  [protected]

Initialise the leap seconds adjustment list.

Parameters:
adjusts list of adjustments
See also:
leapSecondChanges()

Definition at line 1306 of file ktimezone.cpp.

void KTimeZoneData::setPhases ( const QList< KTimeZone::Phase > &  phases,
int  previousUtcOffset 
) [protected]

Initialise the daylight savings time phase list.

Parameters:
phases list of phases
previousUtcOffset UTC offset to use before the start of the first phase
See also:
phases()

Definition at line 1164 of file ktimezone.cpp.

void KTimeZoneData::setTransitions ( const QList< KTimeZone::Transition > &  transitions  )  [protected]

Initialise the daylight savings time transition list.

Parameters:
transitions list of transitions
See also:
transitions()

Definition at line 1187 of file ktimezone.cpp.

const KTimeZone::Transition * KTimeZoneData::transition ( const QDateTime &  dt,
const KTimeZone::Transition **  secondTransition = 0,
bool *  validTime = 0 
) const

Find the last daylight savings time transition at or before a given UTC or local time.

Because of daylight savings time shifts, a local time may occur twice or may not occur at all. In the former case, the transitions at or before both occurrences of dt may optionally be calculated and returned in secondTransition. The latter case may optionally be detected by use of validTime.

Parameters:
dt date/time. dt.timeSpec() may be set to Qt::UTC or Qt::LocalTime.
secondTransition if non-null, and the dt occurs twice, receives the transition for the second occurrence. Otherwise, it is set the same as the return value.
validTime if non-null, is set to false if dt does not occur, or to true otherwise
Returns:
time zone transition, or null either if dt is either outside the defined range of the transition data or if dt does not occur
See also:
transitionIndex(), hasTransitions(), transitions()

Definition at line 1197 of file ktimezone.cpp.

int KTimeZoneData::transitionIndex ( const QDateTime &  dt,
int *  secondIndex = 0,
bool *  validTime = 0 
) const

Find the index to the last daylight savings time transition at or before a given UTC or local time.

The return value is the index into the transition list returned by transitions().

Because of daylight savings time shifts, a local time may occur twice or may not occur at all. In the former case, the transitions at or before both occurrences of dt may optionally be calculated and returned in secondIndex. The latter case may optionally be detected by use of validTime.

Parameters:
dt date/time. dt.timeSpec() may be set to Qt::UTC or Qt::LocalTime.
secondIndex if non-null, and the dt occurs twice, receives the index to the transition for the second occurrence. Otherwise, it is set the same as the return value.
validTime if non-null, is set to false if dt does not occur, or to true otherwise
Returns:
index into the time zone transition list, or -1 either if dt is either outside the defined range of the transition data or if dt does not occur
See also:
transition(), transitions(), hasTransitions()

Definition at line 1207 of file ktimezone.cpp.

QList< KTimeZone::Transition > KTimeZoneData::transitions ( const QDateTime &  start = QDateTime(),
const QDateTime &  end = QDateTime() 
) const

Return all daylight saving transitions, in time order.

If desired, the transitions returned may be restricted to a specified time range.

Note that some time zone data sources (such as system time zones accessed via the system libraries) may not allow a list of daylight saving time changes to be compiled easily. In such cases, this method will return an empty list.

Parameters:
start start date/time, or invalid date/time to return all transitions up to end. start.timeSpec() must be Qt::UTC, else start will be considered invalid.
end end date/time, or invalid date/time for no end. end.timeSpec() must be Qt::UTC, else end will be considered invalid.
Returns:
list of transitions, in time order
See also:
hasTransitions(), transition(), transitionTimes()

Definition at line 1175 of file ktimezone.cpp.

QList< QDateTime > KTimeZoneData::transitionTimes ( const KTimeZone::Phase &  phase,
const QDateTime &  start = QDateTime(),
const QDateTime &  end = QDateTime() 
) const

Return the times of all daylight saving transitions to a given time zone phase, in time order.

If desired, the times returned may be restricted to a specified time range.

Note that some time zone data sources (such as system time zones accessed via the system libraries) may not allow a list of daylight saving time changes to be compiled easily. In such cases, this method will return an empty list.

Parameters:
phase time zone phase
start start UTC date/time, or invalid date/time to return all transitions up to end. start.timeSpec() must be Qt::UTC, else start will be considered invalid.
end end UTC date/time, or invalid date/time for no end. end.timeSpec() must be Qt::UTC, else end will be considered invalid.
Returns:
ordered list of transition times
See also:
hasTransitions(), transition(), transitions()

Definition at line 1284 of file ktimezone.cpp.

QList< int > KTimeZoneData::utcOffsets (  )  const [virtual]

Returns the complete list of UTC offsets for the time zone, if the time zone's source makes such information readily available.

If compiling a complete list would require significant processing, an empty list is returned instead.

Returns:
sorted list of UTC offsets, or empty list if not readily available. In this base class, it consists of the single value 0.

Reimplemented in KSystemTimeZoneData.

Definition at line 1141 of file ktimezone.cpp.


The documentation for this class was generated from the following files:
  • ktimezone.h
  • ktimezone.cpp

KDECore

Skip menu "KDECore"
  • Main Page
  • Modules
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

kdelibs

Skip menu "kdelibs"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • Kate
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • KIO
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • Kross
  • KUtils
  • Nepomuk
  • Solid
  • Sonnet
  • ThreadWeaver
Generated for kdelibs by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal