Qt 6.x
The Qt SDK
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
QDateTimePrivate Class Reference

#include <qdatetime_p.h>

+ Inheritance diagram for QDateTimePrivate:
+ Collaboration diagram for QDateTimePrivate:

Classes

struct  ZoneState
 

Public Types

enum  Spec {
  LocalUnknown = -1 , LocalStandard = 0 , LocalDST = 1 , UTC = 2 ,
  OffsetFromUTC = 3 , TimeZone = 4
}
 
enum  DaylightStatus { UnknownDaylightTime = -1 , StandardTime = 0 , DaylightTime = 1 }
 
enum  StatusFlag {
  ShortData = 0x01 , ValidDate = 0x02 , ValidTime = 0x04 , ValidDateTime = 0x08 ,
  TimeSpecMask = 0x30 , SetToStandardTime = 0x40 , SetToDaylightTime = 0x80 , ValidityMask = ValidDate | ValidTime | ValidDateTime ,
  DaylightMask = SetToStandardTime | SetToDaylightTime
}
 
enum  { TimeSpecShift = 4 }
 
typedef QDateTime::ShortData QDateTimeShortData
 
typedef QDateTime::Data QDateTimeData
 

Static Public Member Functions

static QDateTime::Data create (QDate toDate, QTime toTime, const QTimeZone &timeZone)
 
static ZoneState expressUtcAsLocal (qint64 utcMSecs)
 
static ZoneState localStateAtMillis (qint64 millis, DaylightStatus dst)
 
static QString localNameAtMillis (qint64 millis, DaylightStatus dst)
 

Public Attributes

StatusFlags m_status = StatusFlag(Qt::LocalTime << TimeSpecShift)
 
qint64 m_msecs = 0
 
int m_offsetFromUtc = 0
 
QTimeZone m_timeZone
 
- Public Attributes inherited from QSharedData
QAtomicInt ref
 

Additional Inherited Members

- Public Member Functions inherited from QSharedData
 QSharedData () noexcept
 Constructs a QSharedData object with a reference count of 0.
 
 QSharedData (const QSharedData &) noexcept
 Constructs a QSharedData object with reference count 0.
 
QSharedDataoperator= (const QSharedData &)=delete
 
 ~QSharedData ()=default
 

Detailed Description

Definition at line 34 of file qdatetime_p.h.

Member Typedef Documentation

◆ QDateTimeData

typedef QDateTime::Data QDateTimePrivate::QDateTimeData

Definition at line 39 of file qdatetime_p.h.

◆ QDateTimeShortData

typedef QDateTime::ShortData QDateTimePrivate::QDateTimeShortData

Definition at line 38 of file qdatetime_p.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
TimeSpecShift 

Definition at line 76 of file qdatetime_p.h.

◆ DaylightStatus

Enumerator
UnknownDaylightTime 
StandardTime 
DaylightTime 

Definition at line 53 of file qdatetime_p.h.

◆ Spec

Enumerator
LocalUnknown 
LocalStandard 
LocalDST 
UTC 
OffsetFromUTC 
TimeZone 

Definition at line 43 of file qdatetime_p.h.

◆ StatusFlag

Enumerator
ShortData 
ValidDate 
ValidTime 
ValidDateTime 
TimeSpecMask 
SetToStandardTime 
SetToDaylightTime 
ValidityMask 
DaylightMask 

Definition at line 60 of file qdatetime_p.h.

Member Function Documentation

◆ create()

Q_NEVER_INLINE QDateTime::Data QDateTimePrivate::create ( QDate  toDate,
QTime  toTime,
const QTimeZone timeZone 
)
static

Definition at line 3289 of file qdatetime.cpp.

References QTimeZone::isUtcOrFixedOffset(), refreshSimpleDateTime(), refreshZonedDateTime(), setDateTime(), toDate(), and toTime().

+ Here is the call graph for this function:

◆ expressUtcAsLocal()

QDateTimePrivate::ZoneState QDateTimePrivate::expressUtcAsLocal ( qint64  utcMSecs)
static

Definition at line 2668 of file qdatetime.cpp.

References DaylightTime, QGregorianCalendar::julianFromParts(), millisInSystemRange(), QtPrivate::DateTimeConstants::MSECS_PER_SEC, msecsToJulianDay(), QGregorianCalendar::partsFromJulian(), Q_UNLIKELY, qAddOverflow(), qMulOverflow(), qSubOverflow(), StandardTime, systemTimeYearMatching(), and QLocalTime::utcToLocal().

Referenced by QLocalTime::getUtcOffset(), and QDateTime::setMSecsSinceEpoch().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ localNameAtMillis()

QString QDateTimePrivate::localNameAtMillis ( qint64  millis,
DaylightStatus  dst 
)
static

Definition at line 2731 of file qdatetime.cpp.

References QString::isEmpty(), QLocalTime::localTimeAbbbreviationAt(), millisInSystemRange(), millisToWithinRange(), QtPrivate::DateTimeConstants::MSECS_PER_DAY, QtPrivate::DateTimeConstants::MSECS_PER_SEC, Q_LIKELY, and state.

Referenced by QDateTime::timeZoneAbbreviation().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ localStateAtMillis()

QDateTimePrivate::ZoneState QDateTimePrivate::localStateAtMillis ( qint64  millis,
DaylightStatus  dst 
)
static

Definition at line 2762 of file qdatetime.cpp.

References QLocalTime::mapLocalTime(), millisInSystemRange(), millisToWithinRange(), QtPrivate::DateTimeConstants::MSECS_PER_DAY, Q_LIKELY, Q_UNLIKELY, and qAddOverflow().

Referenced by QDateTime::isDaylightTime(), stateAtMillis(), and QDateTime::toMSecsSinceEpoch().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ m_msecs

qint64 QDateTimePrivate::m_msecs = 0

Definition at line 103 of file qdatetime_p.h.

◆ m_offsetFromUtc

int QDateTimePrivate::m_offsetFromUtc = 0

Definition at line 104 of file qdatetime_p.h.

◆ m_status

StatusFlags QDateTimePrivate::m_status = StatusFlag(Qt::LocalTime << TimeSpecShift)

Definition at line 102 of file qdatetime_p.h.

◆ m_timeZone

QTimeZone QDateTimePrivate::m_timeZone

Definition at line 105 of file qdatetime_p.h.


The documentation for this class was generated from the following files: