72 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/* $Id$ */
 | 
						|
 | 
						|
/** @file station_type.h Types related to stations. */
 | 
						|
 | 
						|
#ifndef STATION_TYPE_H
 | 
						|
#define STATION_TYPE_H
 | 
						|
 | 
						|
typedef uint16 StationID;
 | 
						|
typedef uint16 RoadStopID;
 | 
						|
 | 
						|
struct Station;
 | 
						|
struct RoadStop;
 | 
						|
struct StationSpec;
 | 
						|
 | 
						|
static const StationID INVALID_STATION = 0xFFFF;
 | 
						|
 | 
						|
/** Station types */
 | 
						|
enum StationType {
 | 
						|
	STATION_RAIL,
 | 
						|
	STATION_AIRPORT,
 | 
						|
	STATION_TRUCK,
 | 
						|
	STATION_BUS,
 | 
						|
	STATION_OILRIG,
 | 
						|
	STATION_DOCK,
 | 
						|
	STATION_BUOY
 | 
						|
};
 | 
						|
 | 
						|
/** Types of RoadStops */
 | 
						|
enum RoadStopType {
 | 
						|
	ROADSTOP_BUS,    ///< A standard stop for buses
 | 
						|
	ROADSTOP_TRUCK   ///< A standard stop for trucks
 | 
						|
};
 | 
						|
 | 
						|
enum {
 | 
						|
	FACIL_TRAIN      = 0x01,
 | 
						|
	FACIL_TRUCK_STOP = 0x02,
 | 
						|
	FACIL_BUS_STOP   = 0x04,
 | 
						|
	FACIL_AIRPORT    = 0x08,
 | 
						|
	FACIL_DOCK       = 0x10,
 | 
						|
};
 | 
						|
 | 
						|
enum {
 | 
						|
//	HVOT_PENDING_DELETE = 1 << 0, // not needed anymore
 | 
						|
	HVOT_TRAIN    = 1 << 1,
 | 
						|
	HVOT_BUS      = 1 << 2,
 | 
						|
	HVOT_TRUCK    = 1 << 3,
 | 
						|
	HVOT_AIRCRAFT = 1 << 4,
 | 
						|
	HVOT_SHIP     = 1 << 5,
 | 
						|
	/* This bit is used to mark stations. No, it does not belong here, but what
 | 
						|
	 * can we do? ;-) */
 | 
						|
	HVOT_BUOY     = 1 << 6
 | 
						|
};
 | 
						|
 | 
						|
enum CatchmentArea {
 | 
						|
	CA_NONE            =  0,
 | 
						|
	CA_BUS             =  3,
 | 
						|
	CA_TRUCK           =  3,
 | 
						|
	CA_TRAIN           =  4,
 | 
						|
	CA_DOCK            =  5,
 | 
						|
 | 
						|
	CA_UNMODIFIED      =  4, ///< Used when _settings_game.station.modified_catchment is false
 | 
						|
 | 
						|
	MAX_CATCHMENT      = 10, ///< Airports have a catchment up to this number.
 | 
						|
};
 | 
						|
 | 
						|
enum {
 | 
						|
	MAX_LENGTH_STATION_NAME_BYTES  =  31, ///< The maximum length of a station name in bytes including '\0'
 | 
						|
	MAX_LENGTH_STATION_NAME_PIXELS = 180, ///< The maximum length of a station name in pixels
 | 
						|
};
 | 
						|
 | 
						|
#endif /* STATION_TYPE_H */
 |