OpenTTD

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files

- File List
- Globals

Macros | Functions
airport.cpp File Reference

Functions related to airports. More...

`#include "stdafx.h"`
`#include "station_base.h"`
`#include "table/strings.h"`
`#include "table/airport_movement.h"`
`#include "table/airporttile_ids.h"`
`#include "safeguards.h"`
`#include "table/airport_defaults.h"`

Go to the source code of this file.

## Macros
#define | AIRPORT_GENERIC(name, terminals, num_helipads, flags, delta_z)
| Define a generic airport.
#define | AIRPORT(name, num_helipads, short_strip) AIRPORT_GENERIC(name, _airport_terminal_ ## name, num_helipads, AirportFTAClass::ALL | (short_strip ? AirportFTAClass::SHORT_STRIP : (AirportFTAClass::Flags)0), 0)
| Define an airport.
#define | HELIPORT(name, num_helipads, delta_z) AIRPORT_GENERIC(name, NULL, num_helipads, AirportFTAClass::HELICOPTERS, delta_z)
| Define a heliport.

## Functions
static uint16 | AirportGetNofElements (const AirportFTAbuildup *apFA)
| Get the number of elements of a source Airport state automata Since it is actually just a big array of AirportFTA types, we only know one element from the other by differing 'position' identifiers.
static AirportFTA * | AirportBuildAutomata (uint nofelements, const AirportFTAbuildup *apFA)
| Construct the FTA given a description.
AirportMovingData | RotateAirportMovingData (const AirportMovingData *orig, Direction rotation, uint num_tiles_x, uint num_tiles_y)
| Rotate the airport moving data to another rotation.
const AirportFTAClass * | GetAirport (const byte airport_type)
| Get the finite state machine of an airport type.
byte | GetVehiclePosOnBuild (TileIndex hangar_tile)
| Get the vehicle position when an aircraft is build at the given tile.

## Detailed Description

Functions related to airports.

Definition in file airport.cpp.

## Macro Definition Documentation

#define AIRPORT | ( |  | name,
|  |  | num_helipads,
|  |  | short_strip
| ) |  | AIRPORT_GENERIC(name, _airport_terminal_ ## name, num_helipads, AirportFTAClass::ALL | (short_strip ? AirportFTAClass::SHORT_STRIP : (AirportFTAClass::Flags)0), 0)

Define an airport.

Parameters

  name | Suffix of the names of the airport data.
  num_helipads | Number of heli pads.
  short_strip | Airport has a short land/take-off strip.

Definition at line 39 of file airport.cpp.

#define AIRPORT_GENERIC | ( |  | name,
|  |  | terminals,
|  |  | num_helipads,
|  |  | flags,
|  |  | delta_z
| ) |  |

Value:
static AirportFTAClass _airportfta_ ## name(_airport_moving_data_ ## name, terminals, \
num_helipads, _airport_entries_ ## name, flags, _airport_fta_ ## name, delta_z);

Define a generic airport.

Parameters

  name | Suffix of the names of the airport data.
  terminals | The terminals.
  num_helipads | Number of heli pads.
  flags | Information about the class of FTA.
  delta_z | Height of the airport above the land.

Definition at line 29 of file airport.cpp.

#define HELIPORT | ( |  | name,
|  |  | num_helipads,
|  |  | delta_z
| ) |  | AIRPORT_GENERIC(name, NULL, num_helipads, AirportFTAClass::HELICOPTERS, delta_z)

Define a heliport.

Parameters

  name | Suffix of the names of the helipad data.
  num_helipads | Number of heli pads.
  delta_z | Height of the airport above the land.

Definition at line 48 of file airport.cpp.

## Function Documentation

static AirportFTA * AirportBuildAutomata | ( | uint | nofelements,
|  | const AirportFTAbuildup * | apFA
| ) |  |
| static

Construct the FTA given a description.

Parameters

  nofelements | The number of elements in the FTA.
  apFA | The description of the FTA.

Returns
  The FTA describing the airport.

Definition at line 173 of file airport.cpp.

References AirportFTAbuildup::block, AirportFTA::block, AirportFTAbuildup::heading, AirportFTA::heading, AirportFTAbuildup::next, AirportFTA::next, AirportFTA::next_position, AirportFTAbuildup::position, and AirportFTA::position.

const AirportFTAClass* GetAirport | ( | const byte | airport_type | ) |

Get the finite state machine of an airport type.

Parameters

  airport_type | Airport type to query FTA from.

See Also
  AirportTypes

Returns
  Finite state machine of the airport.

Definition at line 209 of file airport.cpp.

References AT_DUMMY, AirportSpec::fsm, and AirportSpec::Get().

Referenced by AircraftController(), AircraftNextAirportPos_and_Order(), and CmdBuildAirport().

byte GetVehiclePosOnBuild | ( | TileIndex | hangar_tile | ) |

Get the vehicle position when an aircraft is build at the given tile.

Parameters

  hangar_tile | The tile on which the vehicle is build

Returns
  The position (index in airport node array) where the aircraft ends up

Definition at line 220 of file airport.cpp.

References Station::airport, SpecializedStation< Station, false >::GetByTile(), Airport::GetFTA(), Airport::GetHangarTile(), HANGAR, AirportFTA::heading, AirportFTAClass::layout, and AirportFTA::position.

Referenced by CmdBuildAircraft().

AirportMovingData RotateAirportMovingData | ( | const AirportMovingData * | orig,
|  | Direction | rotation,
|  | uint | num_tiles_x,
|  | uint | num_tiles_y
| ) |  |

Rotate the airport moving data to another rotation.

Parameters

  orig | Pointer to the moving data to rotate.
  rotation | How to rotate the moving data.
  num_tiles_x | Number of tiles in x direction.
  num_tiles_y | Number of tiles in y direction.

Returns
  The rotated moving data.

Definition at line 82 of file airport.cpp.

References ChangeDir(), DIR_E, DIR_N, DIR_S, DIR_W, AirportMovingData::direction, AirportMovingData::flag, TILE_SIZE, AirportMovingData::x, and AirportMovingData::y.

Referenced by AircraftController().