# station_type.h

Go to the documentation of this file.

    00001 /* $Id: station_type.h 14491 2008-10-19 15:39:12Z rubidium $ */
    00002
    00005 #ifndef STATION_TYPE_H
    00006 #define STATION_TYPE_H
    00007
    00008 typedef uint16 StationID;
    00009 typedef uint16 RoadStopID;
    00010
    00011 struct Station;
    00012 struct RoadStop;
    00013 struct StationSpec;
    00014
    00015 static const StationID INVALID_STATION = 0xFFFF;
    00016
    00018 enum StationType {
    00019   STATION_RAIL,
    00020   STATION_AIRPORT,
    00021   STATION_TRUCK,
    00022   STATION_BUS,
    00023   STATION_OILRIG,
    00024   STATION_DOCK,
    00025   STATION_BUOY
    00026 };
    00027
    00029 enum RoadStopType {
    00030   ROADSTOP_BUS,
    00031   ROADSTOP_TRUCK
    00032 };
    00033
    00034 enum {
    00035   FACIL_TRAIN      = 0x01,
    00036   FACIL_TRUCK_STOP = 0x02,
    00037   FACIL_BUS_STOP   = 0x04,
    00038   FACIL_AIRPORT    = 0x08,
    00039   FACIL_DOCK       = 0x10,
    00040 };
    00041
    00042 enum {
    00043 //  HVOT_PENDING_DELETE = 1 << 0, // not needed anymore
    00044   HVOT_TRAIN    = 1 << 1,
    00045   HVOT_BUS      = 1 << 2,
    00046   HVOT_TRUCK    = 1 << 3,
    00047   HVOT_AIRCRAFT = 1 << 4,
    00048   HVOT_SHIP     = 1 << 5,
    00049   /* This bit is used to mark stations. No, it does not belong here, but what
    00050    * can we do? ;-) */
    00051   HVOT_BUOY     = 1 << 6
    00052 };
    00053
    00054 enum CatchmentArea {
    00055   CA_NONE            =  0,
    00056   CA_BUS             =  3,
    00057   CA_TRUCK           =  3,
    00058   CA_TRAIN           =  4,
    00059   CA_DOCK            =  5,
    00060
    00061   CA_UNMODIFIED      =  4,
    00062
    00063   MAX_CATCHMENT      = 10,
    00064 };
    00065
    00066 enum {
    00067   MAX_LENGTH_STATION_NAME_BYTES  =  31,
    00068   MAX_LENGTH_STATION_NAME_PIXELS = 180,
    00069 };
    00070
    00071 #endif /* STATION_TYPE_H */