OpenTTD Source: src/date_func.h File Reference

OpenTTD Source 12.0-beta1

Functions | Variables
date_func.h File Reference
`#include "date_type.h"`

Go to the source code of this file.

## Functions
void | SetDate (Date date, DateFract fract)
| Set the date. More...
void | ConvertDateToYMD (Date date, YearMonthDay *ymd)
| Converts a Date to a Year, Month & Day. More...
Date | ConvertYMDToDate (Year year, Month month, Day day)
| Converts a tuple of Year, Month and Day to a Date. More...
static bool | IsLeapYear (Year yr)
| Checks whether the given year is a leap year or not. More...

## Variables
Year | _cur_year
| Current year, starting at 0.
Month | _cur_month
| Current month (0..11)
Date | _date
| Current date in days (day counter)
DateFract | _date_fract
| Fractional part of the day.
uint16 | _tick_counter
| Ever incrementing (and sometimes wrapping) tick counter for setting off various events.

## Detailed Description

Functions related to dates.

Definition in file date_func.h.

## Function Documentation

## ◆ ConvertDateToYMD()

void ConvertDateToYMD | ( | Date | date,
|  | YearMonthDay * | ymd
| ) |  |

Converts a Date to a Year, Month & Day.

Parameters

  date | the date to convert from
  ymd | the year, month and day to write to

Definition at line 94 of file date.cpp.

References DAYS_IN_YEAR.

Referenced by ClickChangeDateCheat(), SubsidyListWindow::DrawWidget(), CrashLog::FillCrashLog(), GetGlobalVariable(), GetSnowLine(), CrashLog::LogRecentNews(), SetDate(), SetDateWindow::SetDateWindow(), and SetYearEngineAgingStops().

## ◆ ConvertYMDToDate()

Date ConvertYMDToDate | ( | Year | year,
|  | Month | month,
|  | Day | day
| ) |  |

Converts a tuple of Year, Month and Day to a Date.

Parameters

  year | is a number between 0..MAX_YEAR
  month | is a number between 0..11
  day | is a number between 1..31

Definition at line 149 of file date.cpp.

References _accum_days_for_month, and IsLeapYear().

Referenced by ClickChangeDateCheat(), DeserializeNetworkGameInfo(), ScenarioEditorToolbarWindow::DrawWidget(), FillStaticNetworkServerGameInfo(), GetGlobalVariable(), LoadNewGRF(), SetDateWindow::OnClick(), ServerNetworkAdminSocketHandler::SendWelcome(), SetStartingYear(), GenerateLandscapeWindow::SetStringParameters(), CreateScenarioWindow::SetStringParameters(), StartupEngines(), GenerateLandscapeWindow::UpdateWidgetSize(), CreateScenarioWindow::UpdateWidgetSize(), MessageHistoryWindow::UpdateWidgetSize(), and ScenarioEditorToolbarWindow::UpdateWidgetSize().

## ◆ IsLeapYear()

static bool IsLeapYear | ( | Year | yr | ) |
| inlinestatic

Checks whether the given year is a leap year or not.

Parameters

  yr | The year to check.

Returns
  True if `yr` is a leap year, otherwise false.

Definition at line 30 of file date_func.h.

Referenced by ConvertYMDToDate(), and GetGlobalVariable().

## ◆ SetDate()

void SetDate | ( | Date | date,
|  | DateFract | fract
| ) |  |

Set the date.

Parameters

  date | New date
  fract | The number of ticks that have passed on this date.

Definition at line 37 of file date.cpp.

References _cur_month, _cur_year, _date, _date_fract, ConvertDateToYMD(), DAY_TICKS, YearMonthDay::month, and YearMonthDay::year.

Referenced by ClickChangeDateCheat(), and SetStartingYear().