OpenTTD Source 20241224-master-gf74b0cf984
|
Base class for orders. More...
#include "order_type.h"
#include "core/pool_type.hpp"
#include "core/bitmath_func.hpp"
#include "cargo_type.h"
#include "depot_type.h"
#include "station_type.h"
#include "vehicle_type.h"
#include "timer/timer_game_tick.h"
#include "saveload/saveload.h"
Go to the source code of this file.
Data Structures | |
struct | Order |
struct | OrderList |
Shared order list linking together the linked list of orders and the list of vehicles sharing this order list. More... | |
Typedefs | |
typedef Pool< Order, OrderID, 256, 0xFF0000 > | OrderPool |
typedef Pool< OrderList, OrderListID, 128, 64000 > | OrderListPool |
Functions | |
void | InsertOrder (Vehicle *v, Order *new_o, VehicleOrderID sel_ord) |
Insert a new order but skip the validation. | |
void | DeleteOrder (Vehicle *v, VehicleOrderID sel_ord) |
Delete an order but skip the parameter validation. | |
Variables | |
OrderPool | _order_pool |
OrderListPool | _orderlist_pool |
Base class for orders.
Definition in file order_base.h.
typedef Pool<OrderList, OrderListID, 128, 64000> OrderListPool |
Definition at line 24 of file order_base.h.
Definition at line 23 of file order_base.h.
void DeleteOrder | ( | Vehicle * | v, |
VehicleOrderID | sel_ord | ||
) |
Delete an order but skip the parameter validation.
v | The vehicle to delete the order from. |
sel_ord | The id of the order to be deleted. |
Definition at line 1037 of file order_cmd.cpp.
References CancelLoadingDueToDeletedOrder(), BaseConsist::cur_implicit_order_index, BaseConsist::cur_real_order_index, Vehicle::current_order, OrderList::DeleteOrderAt(), DeleteOrderWarnings(), Vehicle::FirstShared(), Vehicle::GetNumOrders(), Vehicle::GetOrder(), GetWindowClassForVehicleType(), INVALID_VEH_ORDER_ID, InvalidateVehicleOrder(), InvalidateWindowClassesData(), Order::IsType(), Vehicle::NextShared(), Vehicle::orders, Vehicle::Orders(), BaseConsist::ResetDepotUnbunching(), BaseVehicle::type, and Vehicle::UpdateRealOrderIndex().
Referenced by Vehicle::BeginLoading(), CmdDeleteOrder(), Vehicle::DeleteUnreachedImplicitOrders(), and RemoveOrderFromAllVehicles().
void InsertOrder | ( | Vehicle * | v, |
Order * | new_o, | ||
VehicleOrderID | sel_ord | ||
) |
Insert a new order but skip the validation.
v | The vehicle to insert the order to. |
new_o | The new order. |
sel_ord | The position the order should be inserted at. |
Definition at line 912 of file order_cmd.cpp.
References BaseConsist::cur_implicit_order_index, BaseConsist::cur_real_order_index, DeleteOrderWarnings(), Vehicle::FirstShared(), Vehicle::GetGroundVehicleFlags(), Vehicle::GetNumOrders(), GetWindowClassForVehicleType(), GVF_SUPPRESS_IMPLICIT_ORDERS, OrderList::InsertOrderAt(), INVALID_VEH_ORDER_ID, InvalidateVehicleOrder(), InvalidateWindowClassesData(), Vehicle::IsGroundVehicle(), Vehicle::NextShared(), Vehicle::orders, Vehicle::Orders(), BaseConsist::ResetDepotUnbunching(), SetBit(), and BaseVehicle::type.
Referenced by Vehicle::BeginLoading(), and CmdInsertOrder().