OpenTTD Source 20260531-master-g0e951f3528
CargoLoad Class Reference

Action of loading cargo from a station onto a vehicle. More...

#include <cargoaction.h>

Inheritance diagram for CargoLoad:
CargoMovement< StationCargoList, VehicleCargoList > CargoReservation

Public Member Functions

 CargoLoad (StationCargoList *source, VehicleCargoList *destination, uint max_move, TileIndex current_tile)
bool operator() (CargoPacket *cp)
 Loads some cargo onto a vehicle.
Public Member Functions inherited from CargoMovement< StationCargoList, VehicleCargoList >
 CargoMovement (StationCargoList *source, VehicleCargoList *destination, uint max_move)
 Create the movement.
uint MaxMove ()
 Returns how much more cargo can be moved with this action.

Protected Attributes

TileIndex current_tile
 Current tile cargo loading is happening.
Protected Attributes inherited from CargoMovement< StationCargoList, VehicleCargoList >
StationCargoListsource
 Source of the cargo.
VehicleCargoListdestination
 Destination for the cargo.
uint max_move
 Maximum amount of cargo to be moved with this action.

Additional Inherited Members

Protected Member Functions inherited from CargoMovement< StationCargoList, VehicleCargoList >
CargoPacketPreprocess (CargoPacket *cp)
 Decides if a packet needs to be split.

Detailed Description

Action of loading cargo from a station onto a vehicle.

Definition at line 102 of file cargoaction.h.

Constructor & Destructor Documentation

◆ CargoLoad()

CargoLoad::CargoLoad ( StationCargoList * source,
VehicleCargoList * destination,
uint max_move,
TileIndex current_tile )
inline

Definition at line 106 of file cargoaction.h.

Member Function Documentation

◆ operator()()

bool CargoLoad::operator() ( CargoPacket * cp)

Loads some cargo onto a vehicle.

Parameters
cpPacket to be loaded.
Returns
True if the packet was completely loaded, false if part of it was.

Definition at line 119 of file cargoaction.cpp.

References CargoPacket::Count(), current_tile, CargoMovement< StationCargoList, VehicleCargoList >::destination, CargoMovement< StationCargoList, VehicleCargoList >::Preprocess(), CargoMovement< StationCargoList, VehicleCargoList >::source, and CargoPacket::UpdateLoadingTile().

Field Documentation

◆ current_tile

TileIndex CargoLoad::current_tile
protected

Current tile cargo loading is happening.

Definition at line 104 of file cargoaction.h.

Referenced by operator()(), and CargoReservation::operator()().


The documentation for this class was generated from the following files: