Functions and type for generating vehicle lists. More...
#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 SmallVector< const Vehicle *, 32 > | VehicleList |
A list of vehicles. | |
Enumerations | |
enum | VehicleListType { 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. | |
void | BuildDepotVehicleList (VehicleType type, TileIndex tile, VehicleList *engine_list, VehicleList *wagon_list, bool individual_wagons=false) |
Generate a list of vehicles inside a depot. |
Functions and type for generating vehicle lists.
Definition in file vehiclelist.h.
typedef SmallVector<const Vehicle *, 32> VehicleList |
A list of vehicles.
Definition at line 57 of file vehiclelist.h.
void BuildDepotVehicleList | ( | VehicleType | type, | |
TileIndex | tile, | |||
VehicleList * | engines, | |||
VehicleList * | wagons, | |||
bool | individual_wagons | |||
) |
Generate a list of vehicles inside a depot.
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 NULL) | |
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 63 of file vehiclelist.cpp.
References SmallVector< T, S >::Append(), SmallVector< T, S >::Clear(), SmallVector< T, S >::Compact(), SpecializedVehicle< T, Type >::First(), FOR_ALL_VEHICLES, SpecializedVehicle< Train, Type >::From(), Vehicle::IsArticulatedPart(), GroundVehicle< T, Type >::IsFreeWagon(), Vehicle::IsInDepot(), Vehicle::IsPrimaryVehicle(), GroundVehicle< T, Type >::IsRearDualheaded(), Vehicle::tile, TRACK_BIT_DEPOT, BaseVehicle::type, and VEH_TRAIN.
Referenced by CmdDepotMassAutoReplace(), CmdDepotSellAllVehicles(), CmdMassStartStopVehicle(), and DepotWindow::OnPaint().
bool GenerateVehicleSortList | ( | VehicleList * | list, | |
const VehicleListIdentifier & | vli | |||
) |
Generate a list of vehicles based on window type.
list | Pointer to list to add vehicles to | |
vli | The identifier of this vehicle list. |
Definition at line 108 of file vehiclelist.cpp.
References ALL_GROUP, SmallVector< T, S >::Append(), SmallVector< T, S >::Clear(), SmallVector< T, S >::Compact(), VehicleListIdentifier::company, FOR_ALL_VEHICLES, Order::GetDepotActionType(), Order::GetDestination(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_vehicle_pool >::GetIfValid(), Vehicle::group_id, VehicleListIdentifier::index, Vehicle::IsPrimaryVehicle(), Order::IsType(), Vehicle::NextShared(), ODATFB_NEAREST_DEPOT, Vehicle::owner, BaseVehicle::type, VehicleListIdentifier::type, and VehicleListIdentifier::vtype.
Referenced by CmdMassStartStopVehicle(), and SendAllVehiclesToDepot().