| author | miham | 
| Mon, 03 Jul 2006 08:40:17 +0000 | |
| changeset 4109 | 82b2a2ebc8a5 | 
| parent 3689 | db67c356f44b | 
| child 4277 | 3539bd14f023 | 
| permissions | -rw-r--r-- | 
| 2186 | 1  | 
/* $Id$ */  | 
2  | 
||
| 0 | 3  | 
#ifndef INDUSTRY_H  | 
4  | 
#define INDUSTRY_H  | 
|
5  | 
||
| 
1267
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
6  | 
#include "pool.h"  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
7  | 
|
| 
3689
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
8  | 
typedef byte IndustryGfx;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
9  | 
typedef uint8 IndustryType;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
10  | 
|
| 0 | 11  | 
struct Industry {
 | 
12  | 
TileIndex xy;  | 
|
13  | 
byte width; /* swapped order of w/h with town */  | 
|
14  | 
byte height;  | 
|
| 2630 | 15  | 
const Town* town;  | 
| 
3344
 
d86c852715fa
(svn r4128) - CodeChange: Add proper semantics for CargoID for such variables instead of using the general byte-type.
 
Darkvater 
parents: 
2630 
diff
changeset
 | 
16  | 
CargoID produced_cargo[2];  | 
| 0 | 17  | 
uint16 cargo_waiting[2];  | 
18  | 
byte production_rate[2];  | 
|
| 
3344
 
d86c852715fa
(svn r4128) - CodeChange: Add proper semantics for CargoID for such variables instead of using the general byte-type.
 
Darkvater 
parents: 
2630 
diff
changeset
 | 
19  | 
CargoID accepts_cargo[3];  | 
| 0 | 20  | 
byte prod_level;  | 
21  | 
uint16 last_mo_production[2];  | 
|
22  | 
uint16 last_mo_transported[2];  | 
|
23  | 
byte pct_transported[2];  | 
|
24  | 
uint16 total_production[2];  | 
|
25  | 
uint16 total_transported[2];  | 
|
26  | 
uint16 counter;  | 
|
27  | 
||
28  | 
byte type;  | 
|
| 
3350
 
7713360a51ad
(svn r4134) Revert part of r4133: Replacing a byte which gets written to savegames by an enum is a very bad idea
 
tron 
parents: 
3349 
diff
changeset
 | 
29  | 
byte owner;  | 
| 0 | 30  | 
byte color_map;  | 
31  | 
byte last_prod_year;  | 
|
32  | 
byte was_cargo_delivered;  | 
|
| 
919
 
b0d6c7642f99
(svn r1407) -Codechange: changed a lot around _stations, _vehicles, _towns and _industries
 
truelight 
parents: 
830 
diff
changeset
 | 
33  | 
|
| 
 
b0d6c7642f99
(svn r1407) -Codechange: changed a lot around _stations, _vehicles, _towns and _industries
 
truelight 
parents: 
830 
diff
changeset
 | 
34  | 
uint16 index;  | 
| 0 | 35  | 
};  | 
36  | 
||
| 
3689
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
37  | 
typedef struct IndustryTileTable {
 | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
38  | 
TileIndexDiffC ti;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
39  | 
IndustryGfx gfx;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
40  | 
} IndustryTileTable;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
41  | 
|
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
42  | 
typedef struct IndustrySpec {
 | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
43  | 
/** Tables with the 'layout' of different composition of GFXes */  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
44  | 
const IndustryTileTable *const *table;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
45  | 
/** Number of elements in the table */  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
46  | 
byte num_table;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
47  | 
/** Base cost multiplier*/  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
48  | 
byte cost_multiplier;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
49  | 
/** Industries this industry cannot be close to */  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
50  | 
IndustryType conflicting[3];  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
51  | 
/** index to a procedure to check for conflicting circumstances */  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
52  | 
byte check_proc;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
53  | 
|
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
54  | 
CargoID produced_cargo[2];  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
55  | 
byte production_rate[2];  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
56  | 
/** The minimum amount of cargo transported to the stations; if the  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
57  | 
* waiting cargo is less than this number, no cargo is moved to it*/  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
58  | 
byte minimal_cargo;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
59  | 
CargoID accepts_cargo[3];  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
60  | 
|
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
61  | 
StringID closure_text;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
62  | 
StringID production_up_text;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
63  | 
StringID production_down_text;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
64  | 
} IndustrySpec;  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
65  | 
|
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
66  | 
const IndustrySpec *GetIndustrySpec(IndustryType thistype);  | 
| 
 
db67c356f44b
(svn r4614) CodeChange : Cleanup of industry_cmd (Step-4).
 
belugas 
parents: 
3499 
diff
changeset
 | 
67  | 
|
| 
1267
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
68  | 
extern MemoryPool _industry_pool;  | 
| 
919
 
b0d6c7642f99
(svn r1407) -Codechange: changed a lot around _stations, _vehicles, _towns and _industries
 
truelight 
parents: 
830 
diff
changeset
 | 
69  | 
|
| 
1267
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
70  | 
/**  | 
| 
1330
 
8a67d04016ce
(svn r1834) - Fix: NPF does not check the owner of its target, busses try to enter other players' depots. TODO
 
matthijs 
parents: 
1267 
diff
changeset
 | 
71  | 
* Check if an Industry really exists.  | 
| 
 
8a67d04016ce
(svn r1834) - Fix: NPF does not check the owner of its target, busses try to enter other players' depots. TODO
 
matthijs 
parents: 
1267 
diff
changeset
 | 
72  | 
*/  | 
| 
 
8a67d04016ce
(svn r1834) - Fix: NPF does not check the owner of its target, busses try to enter other players' depots. TODO
 
matthijs 
parents: 
1267 
diff
changeset
 | 
73  | 
static inline bool IsValidIndustry(Industry* industry)  | 
| 
 
8a67d04016ce
(svn r1834) - Fix: NPF does not check the owner of its target, busses try to enter other players' depots. TODO
 
matthijs 
parents: 
1267 
diff
changeset
 | 
74  | 
{
 | 
| 
 
8a67d04016ce
(svn r1834) - Fix: NPF does not check the owner of its target, busses try to enter other players' depots. TODO
 
matthijs 
parents: 
1267 
diff
changeset
 | 
75  | 
return industry->xy != 0; /* XXX: Replace by INVALID_TILE someday */  | 
| 
 
8a67d04016ce
(svn r1834) - Fix: NPF does not check the owner of its target, busses try to enter other players' depots. TODO
 
matthijs 
parents: 
1267 
diff
changeset
 | 
76  | 
}  | 
| 
 
8a67d04016ce
(svn r1834) - Fix: NPF does not check the owner of its target, busses try to enter other players' depots. TODO
 
matthijs 
parents: 
1267 
diff
changeset
 | 
77  | 
|
| 
 
8a67d04016ce
(svn r1834) - Fix: NPF does not check the owner of its target, busses try to enter other players' depots. TODO
 
matthijs 
parents: 
1267 
diff
changeset
 | 
78  | 
/**  | 
| 
1267
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
79  | 
* Get the pointer to the industry with index 'index'  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
80  | 
*/  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
81  | 
static inline Industry *GetIndustry(uint index)  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
82  | 
{
 | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
83  | 
return (Industry*)GetItemFromPool(&_industry_pool, index);  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
84  | 
}  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
85  | 
|
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
86  | 
/**  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
87  | 
* Get the current size of the IndustryPool  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
88  | 
*/  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
89  | 
static inline uint16 GetIndustryPoolSize(void)  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
90  | 
{
 | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
91  | 
return _industry_pool.total_items;  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
92  | 
}  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
93  | 
|
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
94  | 
#define FOR_ALL_INDUSTRIES_FROM(i, start) for (i = GetIndustry(start); i != NULL; i = (i->index + 1 < GetIndustryPoolSize()) ? GetIndustry(i->index + 1) : NULL)  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
95  | 
#define FOR_ALL_INDUSTRIES(i) FOR_ALL_INDUSTRIES_FROM(i, 0)  | 
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
96  | 
|
| 
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
97  | 
VARDEF int _total_industries; // For the AI: the amount of industries active  | 
| 
919
 
b0d6c7642f99
(svn r1407) -Codechange: changed a lot around _stations, _vehicles, _towns and _industries
 
truelight 
parents: 
830 
diff
changeset
 | 
98  | 
|
| 
 
b0d6c7642f99
(svn r1407) -Codechange: changed a lot around _stations, _vehicles, _towns and _industries
 
truelight 
parents: 
830 
diff
changeset
 | 
99  | 
VARDEF uint16 *_industry_sort;  | 
| 
1267
 
cbd68e5e31ac
(svn r1771) -Add: Industries are now dynamic (up to 64k industries). Generating
 
truelight 
parents: 
1220 
diff
changeset
 | 
100  | 
VARDEF bool _industry_sort_dirty;  | 
| 
919
 
b0d6c7642f99
(svn r1407) -Codechange: changed a lot around _stations, _vehicles, _towns and _industries
 
truelight 
parents: 
830 
diff
changeset
 | 
101  | 
|
| 
3496
 
2775485abdf6
(svn r4347) CodeChange : Renamed IndustryType to IndustryLifeType.  Cleanup step toward bringing accessors [G|S]etIndustrype
 
belugas 
parents: 
3350 
diff
changeset
 | 
102  | 
|
| 0 | 103  | 
void DeleteIndustry(Industry *is);  | 
104  | 
||
105  | 
enum {
 | 
|
106  | 
IT_COAL_MINE = 0,  | 
|
107  | 
IT_POWER_STATION = 1,  | 
|
108  | 
IT_SAWMILL = 2,  | 
|
109  | 
IT_FOREST = 3,  | 
|
110  | 
IT_OIL_REFINERY = 4,  | 
|
111  | 
IT_OIL_RIG = 5,  | 
|
112  | 
IT_FACTORY = 6,  | 
|
113  | 
IT_PRINTING_WORKS = 7,  | 
|
114  | 
IT_STEEL_MILL = 8,  | 
|
115  | 
IT_FARM = 9,  | 
|
116  | 
IT_COPPER_MINE = 10,  | 
|
117  | 
IT_OIL_WELL = 11,  | 
|
| 
3499
 
e95d6e5f66ae
(svn r4350) CodeChange : Add and use accessors [G|S]etIndustrype. Define and use IndustryGfx type instead of uint
 
belugas 
parents: 
3496 
diff
changeset
 | 
118  | 
IT_BANK_TEMP = 12,  | 
| 0 | 119  | 
IT_FOOD_PROCESS = 13,  | 
120  | 
IT_PAPER_MILL = 14,  | 
|
121  | 
IT_GOLD_MINE = 15,  | 
|
| 
3499
 
e95d6e5f66ae
(svn r4350) CodeChange : Add and use accessors [G|S]etIndustrype. Define and use IndustryGfx type instead of uint
 
belugas 
parents: 
3496 
diff
changeset
 | 
122  | 
IT_BANK_TROPIC_ARCTIC = 16,  | 
| 0 | 123  | 
IT_DIAMOND_MINE = 17,  | 
124  | 
IT_IRON_MINE = 18,  | 
|
125  | 
IT_FRUIT_PLANTATION = 19,  | 
|
126  | 
IT_RUBBER_PLANTATION = 20,  | 
|
127  | 
IT_WATER_SUPPLY = 21,  | 
|
128  | 
IT_WATER_TOWER = 22,  | 
|
129  | 
IT_FACTORY_2 = 23,  | 
|
130  | 
IT_FARM_2 = 24,  | 
|
131  | 
IT_LUMBER_MILL = 25,  | 
|
132  | 
IT_COTTON_CANDY = 26,  | 
|
133  | 
IT_CANDY_FACTORY = 27,  | 
|
134  | 
IT_BATTERY_FARM = 28,  | 
|
135  | 
IT_COLA_WELLS = 29,  | 
|
136  | 
IT_TOY_SHOP = 30,  | 
|
137  | 
IT_TOY_FACTORY = 31,  | 
|
138  | 
IT_PLASTIC_FOUNTAINS = 32,  | 
|
139  | 
IT_FIZZY_DRINK_FACTORY = 33,  | 
|
140  | 
IT_BUBBLE_GENERATOR = 34,  | 
|
141  | 
IT_TOFFEE_QUARRY = 35,  | 
|
142  | 
IT_SUGAR_MINE = 36,  | 
|
| 
3499
 
e95d6e5f66ae
(svn r4350) CodeChange : Add and use accessors [G|S]etIndustrype. Define and use IndustryGfx type instead of uint
 
belugas 
parents: 
3496 
diff
changeset
 | 
143  | 
IT_END,  | 
| 
 
e95d6e5f66ae
(svn r4350) CodeChange : Add and use accessors [G|S]etIndustrype. Define and use IndustryGfx type instead of uint
 
belugas 
parents: 
3496 
diff
changeset
 | 
144  | 
IT_INVALID = 255,  | 
| 0 | 145  | 
};  | 
146  | 
||
| 
3496
 
2775485abdf6
(svn r4347) CodeChange : Renamed IndustryType to IndustryLifeType.  Cleanup step toward bringing accessors [G|S]etIndustrype
 
belugas 
parents: 
3350 
diff
changeset
 | 
147  | 
typedef enum IndustryLifeTypes {
 | 
| 
 
2775485abdf6
(svn r4347) CodeChange : Renamed IndustryType to IndustryLifeType.  Cleanup step toward bringing accessors [G|S]etIndustrype
 
belugas 
parents: 
3350 
diff
changeset
 | 
148  | 
INDUSTRYLIFE_NOT_CLOSABLE, ///< Industry can never close  | 
| 
 
2775485abdf6
(svn r4347) CodeChange : Renamed IndustryType to IndustryLifeType.  Cleanup step toward bringing accessors [G|S]etIndustrype
 
belugas 
parents: 
3350 
diff
changeset
 | 
149  | 
INDUSTRYLIFE_PRODUCTION, ///< Industry can close and change of production  | 
| 
 
2775485abdf6
(svn r4347) CodeChange : Renamed IndustryType to IndustryLifeType.  Cleanup step toward bringing accessors [G|S]etIndustrype
 
belugas 
parents: 
3350 
diff
changeset
 | 
150  | 
INDUSTRYLIFE_CLOSABLE, ///< Industry can only close (no production change)  | 
| 
 
2775485abdf6
(svn r4347) CodeChange : Renamed IndustryType to IndustryLifeType.  Cleanup step toward bringing accessors [G|S]etIndustrype
 
belugas 
parents: 
3350 
diff
changeset
 | 
151  | 
} IndustryLifeType;  | 
| 
 
2775485abdf6
(svn r4347) CodeChange : Renamed IndustryType to IndustryLifeType.  Cleanup step toward bringing accessors [G|S]etIndustrype
 
belugas 
parents: 
3350 
diff
changeset
 | 
152  | 
|
| 
2436
 
177cb6a8339f
(svn r2962) - const correctness for all Get* functions and most Draw* functions that don't change their pointer parameters
 
Darkvater 
parents: 
2186 
diff
changeset
 | 
153  | 
#endif /* INDUSTRY_H */  |