| OpenTTD
    | 
Helper class to perform the cargo payment. More...
#include <economy_base.h>
 
  
 | Public Member Functions | |
| CargoPayment () | |
| Constructor for pool saveload. | |
| CargoPayment (Vehicle *front) | |
| Makes us a new cargo payment helper. | |
| Money | PayTransfer (const CargoPacket *cp, uint count) | 
| Handle payment for transfer of the given cargo packet. | |
| void | PayFinalDelivery (const CargoPacket *cp, uint count) | 
| Handle payment for final delivery of the given cargo packet. | |
| void | SetCargo (CargoID ct) | 
| Sets the currently handled cargo type. | |
|  Public Member Functions inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_cargo_payment_pool > | |
| void * | operator new (size_t size) | 
| Allocates space for new Titem. | |
| void * | operator new (size_t size, size_t index) | 
| Allocates space for new Titem with given index. | |
| void * | operator new (size_t size, void *ptr) | 
| Allocates space for new Titem at given memory address. | |
| void | operator delete (void *p) | 
| Marks Titem as free. | |
| Data Fields | |
| Vehicle * | front | 
| The front vehicle to do the payment of. | |
| Money | route_profit | 
| The amount of money to add/remove from the bank account. | |
| Money | visual_profit | 
| The visual profit to show. | |
| Money | visual_transfer | 
| The transfer credits to be shown. | |
| Company * | owner | 
| The owner of the vehicle. | |
| StationID | current_station | 
| The current station. | |
| CargoID | ct | 
| The currently handled cargo type. | |
|  Data Fields inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_cargo_payment_pool > | |
| Tindex | index | 
| Index of this pool item. | |
| Additional Inherited Members | |
|  Static Public Member Functions inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_cargo_payment_pool > | |
| static bool | CanAllocateItem (size_t n=1) | 
| Helper functions so we can use PoolItem::Function() instead of _poolitem_pool.Function() | |
| static bool | CleaningPool () | 
| Returns current state of pool cleaning - yes or no. | |
| static bool | IsValidID (size_t index) | 
| Tests whether given index can be used to get valid (non-NULL) Titem. | |
| static Titem * | Get (size_t index) | 
| Returns Titem with given index. | |
| static Titem * | GetIfValid (size_t index) | 
| Returns Titem with given index. | |
| static size_t | GetPoolSize () | 
| Returns first unused index. | |
| static size_t | GetNumItems () | 
| Returns number of valid items in the pool. | |
| static void | PostDestructor (size_t index) | 
| Dummy function called after destructor of each member. | |
Helper class to perform the cargo payment.
Definition at line 26 of file economy_base.h.
| CargoPayment::CargoPayment | ( | Vehicle * | front | ) | 
Makes us a new cargo payment helper.
| front | The front of the train | 
Definition at line 1169 of file economy.cpp.
| void CargoPayment::PayFinalDelivery | ( | const CargoPacket * | cp, | 
| uint | count | ||
| ) | 
Handle payment for final delivery of the given cargo packet.
| cp | The cargo packet to pay for. | 
| count | The number of packets to pay for. | 
Definition at line 1208 of file economy.cpp.
References ct, current_station, CargoPacket::DaysInTransit(), DeliverGoods(), CargoPacket::FeederShare(), front, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_cargo_payment_pool >::Get(), owner, Vehicle::owner, route_profit, CargoPacket::SourceStationXY(), CargoPacket::SourceSubsidyID(), CargoPacket::SourceSubsidyType(), and visual_profit.
Referenced by CargoDelivery::operator()().
| Money CargoPayment::PayTransfer | ( | const CargoPacket * | cp, | 
| uint | count | ||
| ) | 
Handle payment for transfer of the given cargo packet.
| cp | The cargo packet to pay for; actual payment won't be made!. | 
| count | The number of packets to pay for. | 
Definition at line 1228 of file economy.cpp.
References _settings_game, ct, current_station, CargoPacket::DaysInTransit(), DistanceManhattan(), GameSettings::economy, EconomySettings::feeder_payment_share, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_cargo_payment_pool >::Get(), CargoPacket::LoadedAtXY(), and visual_transfer.
Referenced by VehicleCargoList::Stage().
| 
 | inline | 
Sets the currently handled cargo type.
| ct | the cargo type to handle from now on. | 
Definition at line 49 of file economy_base.h.
References ct.
Referenced by LoadUnloadVehicle().
 1.8.1.2
 1.8.1.2