# Timezone

<a id="timezone"></a>

# Timezone

```cpp
#include <icy/datetime.h>

class Timezone
```

[Defined in src/base/include/icy/datetime.h:641](https://github.com/auscaster/icey/blob/main/src/base/include/icy/datetime.h#L641)

This class provides information about the current timezone.

## Public Static Methods

| Return | Name | Description |
|--------|------|-------------|
| `int` | [`utcOffset`](#utcoffset) `static` | Returns the offset of local time to UTC, in seconds. local time = UTC + [utcOffset()](#utcoffset) + [dst()](#dst). |
| `int` | [`dst`](#dst) `static` | Returns the daylight saving time offset in seconds if daylight saving time is in use. local time = UTC + [utcOffset()](#utcoffset) + [dst()](#dst). |
| `bool` | [`isDst`](#isdst) `static` | Returns true if daylight saving time is in effect for the given time. Depending on the operating system platform this might only work reliably for certain date ranges, as the C library's localtime() function is used. |
| `int` | [`tzd`](#tzd-1) `static` | Returns the time zone differential for the current timezone. The timezone differential is computed as [utcOffset()](#utcoffset) + [dst()](#dst) /// and is expressed in seconds. |
| `std::string` | [`name`](#name-3) `static` | Returns the timezone name currently in effect. |
| `std::string` | [`standardName`](#standardname) `static` | Returns the timezone name if not daylight saving time is in effect. |
| `std::string` | [`dstName`](#dstname) `static` | Returns the timezone name if daylight saving time is in effect. |

---

<a id="utcoffset"></a>

### utcOffset

`static`

```cpp
static int utcOffset()
```

[Defined in src/base/include/icy/datetime.h:646](https://github.com/auscaster/icey/blob/main/src/base/include/icy/datetime.h#L646)

Returns the offset of local time to UTC, in seconds. local time = UTC + [utcOffset()](#utcoffset) + [dst()](#dst).

---

<a id="dst"></a>

### dst

`static`

```cpp
static int dst()
```

[Defined in src/base/include/icy/datetime.h:651](https://github.com/auscaster/icey/blob/main/src/base/include/icy/datetime.h#L651)

Returns the daylight saving time offset in seconds if daylight saving time is in use. local time = UTC + [utcOffset()](#utcoffset) + [dst()](#dst).

---

<a id="isdst"></a>

### isDst

`static`

```cpp
static bool isDst(const Timestamp & timestamp)
```

[Defined in src/base/include/icy/datetime.h:658](https://github.com/auscaster/icey/blob/main/src/base/include/icy/datetime.h#L658)

Returns true if daylight saving time is in effect for the given time. Depending on the operating system platform this might only work reliably for certain date ranges, as the C library's localtime() function is used.

---

<a id="tzd-1"></a>

### tzd

`static`

```cpp
static int tzd()
```

[Defined in src/base/include/icy/datetime.h:663](https://github.com/auscaster/icey/blob/main/src/base/include/icy/datetime.h#L663)

Returns the time zone differential for the current timezone. The timezone differential is computed as [utcOffset()](#utcoffset) + [dst()](#dst) /// and is expressed in seconds.

---

<a id="name-3"></a>

### name

`static`

```cpp
static std::string name()
```

[Defined in src/base/include/icy/datetime.h:666](https://github.com/auscaster/icey/blob/main/src/base/include/icy/datetime.h#L666)

Returns the timezone name currently in effect.

---

<a id="standardname"></a>

### standardName

`static`

```cpp
static std::string standardName()
```

[Defined in src/base/include/icy/datetime.h:669](https://github.com/auscaster/icey/blob/main/src/base/include/icy/datetime.h#L669)

Returns the timezone name if not daylight saving time is in effect.

---

<a id="dstname"></a>

### dstName

`static`

```cpp
static std::string dstName()
```

[Defined in src/base/include/icy/datetime.h:672](https://github.com/auscaster/icey/blob/main/src/base/include/icy/datetime.h#L672)

Returns the timezone name if daylight saving time is in effect.
