OpenTTD Source: src/vehiclelist.h File Reference

OpenTTD Source 13.2.1

Data Structures | Typedefs | Enumerations | Functions
vehiclelist.h File Reference
`#include "core/smallvec_type.hpp"`
`#include "vehicle_type.h"`
`#include "company_type.h"`
`#include "tile_type.h"`

Go to the source code of this file.

## Data Structures
struct | VehicleListIdentifier
| The information about a vehicle list. More...

## Typedefs
typedef std::vector< const Vehicle * > | VehicleList
| A list of vehicles.

## Enumerations
enum | VehicleListType : byte { VL_STANDARD, VL_SHARED_ORDERS, VL_STATION_LIST, VL_DEPOT_LIST, VL_GROUP_LIST, VLT_END }
| Vehicle List type flags.

## Functions
bool | GenerateVehicleSortList (VehicleList *list, const VehicleListIdentifier &identifier)
| Generate a list of vehicles based on window type. More...
void | BuildDepotVehicleList (VehicleType type, TileIndex tile, VehicleList *engine_list, VehicleList *wagon_list, bool individual_wagons=false)
| Generate a list of vehicles inside a depot. More...
uint | GetUnitNumberDigits (VehicleList &vehicles)
| Get the number of digits the biggest unit number of a set of vehicles has. More...

## Detailed Description

Functions and type for generating vehicle lists.

Definition in file vehiclelist.h.

## Function Documentation

## ◆ BuildDepotVehicleList()

void BuildDepotVehicleList | ( | VehicleType | type,
|  | TileIndex | tile,
|  | VehicleList * | engines,
|  | VehicleList * | wagons,
|  | bool | individual_wagons
| ) |  |

Generate a list of vehicles inside a depot.

Parameters

  type | Type of vehicle
  tile | The tile the depot is located on
  engines | Pointer to list to add vehicles to
  wagons | Pointer to list to add wagons to (can be nullptr)
  individual_wagons | If true add every wagon to wagons which is not attached to an engine. If false only add the first wagon of every row.

Definition at line 69 of file vehiclelist.cpp.

References SpecializedVehicle< T, Type >::First(), SpecializedVehicle< Train, Type >::From(), Vehicle::IsArticulatedPart(), GroundVehicle< T, Type >::IsFreeWagon(), Train::IsInDepot(), Train::IsPrimaryVehicle(), GroundVehicle< T, Type >::IsRearDualheaded(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_vehicle_pool >::Iterate(), and VEH_TRAIN.

Referenced by CmdDepotMassAutoReplace(), CmdDepotSellAllVehicles(), CmdMassStartStopVehicle(), and DepotWindow::OnPaint().

## ◆ GenerateVehicleSortList()

bool GenerateVehicleSortList | ( | VehicleList * | list,
|  | const VehicleListIdentifier & | vli
| ) |  |

Generate a list of vehicles based on window type.

Parameters

  list | Pointer to list to add vehicles to
  vli | The identifier of this vehicle list.

Returns
  false if invalid list is requested

Definition at line 113 of file vehiclelist.cpp.

References VehicleListIdentifier::type.

Referenced by CmdMassStartStopVehicle(), and SendAllVehiclesToDepot().

## ◆ GetUnitNumberDigits()

uint GetUnitNumberDigits | ( | VehicleList & | vehicles | ) |

Get the number of digits the biggest unit number of a set of vehicles has.

Parameters

  vehicles | The list of vehicles.

Returns
  The number of digits to allocate space for.

Definition at line 172 of file vehicle_gui.cpp.

References CountDigitsForAllocatingSpace().