OpenTTD Source
20241121-master-g67a0fccfad
|
Action of rerouting cargo staged for transfer in a vehicle. More...
#include <cargoaction.h>
Public Member Functions | |
VehicleCargoReroute (VehicleCargoList *source, VehicleCargoList *dest, uint max_move, StationID avoid, StationID avoid2, const GoodsEntry *ge) | |
bool | operator() (CargoPacket *cp) |
Reroutes some cargo in a VehicleCargoList. More... | |
Public Member Functions inherited from CargoReroute< VehicleCargoList > | |
CargoReroute (VehicleCargoList *source, VehicleCargoList *dest, uint max_move, StationID avoid, StationID avoid2, const GoodsEntry *ge) | |
Public Member Functions inherited from CargoMovement< VehicleCargoList, VehicleCargoList > | |
CargoMovement (VehicleCargoList *source, VehicleCargoList *destination, uint max_move) | |
uint | MaxMove () |
Returns how much more cargo can be moved with this action. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from CargoMovement< VehicleCargoList, VehicleCargoList > | |
CargoPacket * | Preprocess (CargoPacket *cp) |
Decides if a packet needs to be split. More... | |
Protected Attributes inherited from CargoReroute< VehicleCargoList > | |
StationID | avoid |
StationID | avoid2 |
const GoodsEntry * | ge |
Protected Attributes inherited from CargoMovement< VehicleCargoList, VehicleCargoList > | |
VehicleCargoList * | source |
Source of the cargo. | |
VehicleCargoList * | destination |
Destination for the cargo. | |
uint | max_move |
Maximum amount of cargo to be moved with this action. | |
Action of rerouting cargo staged for transfer in a vehicle.
Definition at line 140 of file cargoaction.h.
bool VehicleCargoReroute::operator() | ( | CargoPacket * | cp | ) |
Reroutes some cargo in a VehicleCargoList.
cp | Packet to be rerouted. |
Definition at line 220 of file cargoaction.cpp.
References VehicleCargoList::AddToMeta(), CargoPacket::Count(), CargoMovement< VehicleCargoList, VehicleCargoList >::destination, CargoPacket::GetFirstStation(), CargoPacket::GetNextHop(), GoodsEntry::GetVia(), CargoList< VehicleCargoList, CargoPacketList >::MTA_TRANSFER, CargoList< Tinst, Tcont >::packets, CargoMovement< VehicleCargoList, VehicleCargoList >::Preprocess(), VehicleCargoList::RemoveFromMeta(), CargoPacket::SetNextHop(), and CargoMovement< VehicleCargoList, VehicleCargoList >::source.