author | rubidium |
Sun, 06 Apr 2008 23:07:42 +0000 | |
branch | noai |
changeset 9869 | 6404afe43575 |
parent 9837 | c9ec4f82e0d0 |
child 10181 | 54df587fef5d |
permissions | -rw-r--r-- |
9837 | 1 |
/* $Id$ */ |
2 |
||
3 |
/** @file order_func.h Functions related to orders. */ |
|
4 |
||
5 |
#ifndef ORDER_FUNC_H |
|
6 |
#define ORDER_FUNC_H |
|
7 |
||
8 |
#include "order_type.h" |
|
9 |
#include "vehicle_type.h" |
|
10 |
#include "tile_type.h" |
|
11 |
#include "group_type.h" |
|
12 |
#include "date_type.h" |
|
13 |
||
14 |
struct BackuppedOrders { |
|
15 |
BackuppedOrders() : order(NULL), name(NULL) { } |
|
16 |
~BackuppedOrders() { free(order); free(name); } |
|
17 |
||
18 |
VehicleID clone; |
|
19 |
VehicleOrderID orderindex; |
|
20 |
GroupID group; |
|
21 |
Order *order; |
|
22 |
uint16 service_interval; |
|
23 |
char *name; |
|
24 |
}; |
|
25 |
||
26 |
extern TileIndex _backup_orders_tile; |
|
27 |
extern BackuppedOrders _backup_orders_data; |
|
28 |
||
29 |
void BackupVehicleOrders(const Vehicle *v, BackuppedOrders *order = &_backup_orders_data); |
|
30 |
void RestoreVehicleOrders(const Vehicle *v, const BackuppedOrders *order = &_backup_orders_data); |
|
31 |
||
32 |
/* Functions */ |
|
33 |
void RemoveOrderFromAllVehicles(OrderType type, DestinationID destination); |
|
34 |
void InvalidateVehicleOrder(const Vehicle *v); |
|
35 |
bool VehicleHasDepotOrders(const Vehicle *v); |
|
36 |
void CheckOrders(const Vehicle*); |
|
37 |
void DeleteVehicleOrders(Vehicle *v); |
|
9869
6404afe43575
(svn r12597) [NoAI] -Sync: with trunk r12501:12596.
rubidium
parents:
9837
diff
changeset
|
38 |
bool ProcessOrders(Vehicle *v); |
9837 | 39 |
|
40 |
#define MIN_SERVINT_PERCENT 5 |
|
41 |
#define MAX_SERVINT_PERCENT 90 |
|
42 |
#define MIN_SERVINT_DAYS 30 |
|
43 |
#define MAX_SERVINT_DAYS 800 |
|
44 |
||
45 |
/** |
|
46 |
* Get the service interval domain. |
|
47 |
* Get the new proposed service interval for the vehicle is indeed, clamped |
|
48 |
* within the given bounds. @see MIN_SERVINT_PERCENT ,etc. |
|
49 |
* @param index proposed service interval |
|
50 |
* @return service interval |
|
51 |
*/ |
|
52 |
Date GetServiceIntervalClamped(uint index); |
|
53 |
||
54 |
#endif /* ORDER_FUNC_H */ |