vehiclelist.h File Reference

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.

Typedefs

typedef SmallVector< const
Vehicle *, 32 > 
VehicleList

Functions

bool GenerateVehicleSortList (VehicleList *list, VehicleType type, Owner owner, uint32 index, uint16 window_type)
 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.

Detailed Description

Functions and type for generating vehicle lists.

Definition in file vehiclelist.h.


Function Documentation

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 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 25 of file vehiclelist.cpp.

References SmallVector< T, S >::Append(), SmallVector< T, S >::Clear(), SmallVector< T, S >::Compact(), SpecializedVehicle< T, Type >::First(), SpecializedVehicle< Train, VEH_TRAIN >::From(), Train::IsArticulatedPart(), Train::IsFreeWagon(), Vehicle::IsInDepot(), Vehicle::IsPrimaryVehicle(), Train::IsRearDualheaded(), Vehicle::tile, TRACK_BIT_DEPOT, BaseVehicle::type, and VEH_TRAIN.

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

bool GenerateVehicleSortList ( VehicleList list,
VehicleType  type,
Owner  owner,
uint32  index,
uint16  window_type 
)

Generate a list of vehicles based on window type.

Parameters:
list Pointer to list to add vehicles to
type Type of vehicle
owner Company to generate list for
index This parameter has different meanings depending on window_type

  • VLW_STATION_LIST: index of station to generate a list for
  • VLW_SHARED_ORDERS: index of order to generate a list for
  • VLW_STANDARD: not used
  • VLW_DEPOT_LIST: TileIndex of the depot/hangar to make the list for
  • VLW_GROUP_LIST: index of group to generate a list for
  • VLW_WAYPOINT_LIST: index of waypoint to generate a list for
window_type The type of window the list is for, using the VLW_ flags in vehicle_gui.h
Returns:
false if invalid list is requested

Definition at line 81 of file vehiclelist.cpp.

References SmallVector< T, S >::Append(), SmallVector< T, S >::Clear(), SmallVector< T, S >::Compact(), Order::GetDepotActionType(), Order::GetDestination(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem<&_vehicle_pool >::GetIfValid(), Vehicle::group_id, Vehicle::IsPrimaryVehicle(), Order::IsType(), Vehicle::NextShared(), ODATFB_NEAREST_DEPOT, and BaseVehicle::type.

Referenced by CmdMassStartStopVehicle(), and SendAllVehiclesToDepot().


Generated on Sat Jun 5 21:52:31 2010 for OpenTTD by  doxygen 1.6.1