15typedef uint32_t RoadTypeLabel;
17static const RoadTypeLabel ROADTYPE_LABEL_ROAD =
'ROAD';
18static const RoadTypeLabel ROADTYPE_LABEL_TRAM =
'ELRL';
Type (helpers) for enums.
#define DECLARE_ENUM_AS_BIT_SET(enum_type)
Operators to allow to work with enum as with type safe bit set in C++.
#define DECLARE_POSTFIX_INCREMENT(enum_type)
Some enums need to have allowed incrementing (i.e.
RoadBits
Enumeration for the road parts on a tile.
@ ROAD_SW
South-west part.
@ ROAD_ALL
Full 4-way crossing.
@ ROAD_NONE
No road-part is build.
@ ROAD_E
Road at the two eastern edges.
@ ROAD_NE
North-east part.
@ ROAD_N
Road at the two northern edges.
@ ROAD_SE
South-east part.
@ ROAD_Y
Full road along the y-axis (north-west + south-east)
@ ROAD_S
Road at the two southern edges.
@ ROAD_W
Road at the two western edges.
@ ROAD_NW
North-west part.
@ ROAD_X
Full road along the x-axis (south-west + north-east)
@ ROAD_END
Out-of-range roadbits, used for iterations.
RoadTypes
The different roadtypes we support, but then a bitmask of them.
@ INVALID_ROADTYPES
Invalid roadtypes.
@ ROADTYPES_NONE
No roadtypes.
RoadType
The different roadtypes we support.
@ INVALID_ROADTYPE
flag for invalid roadtype
@ ROADTYPE_ROAD
Basic road type.
@ ROADTYPE_END
Used for iterations.
@ ROADTYPE_BEGIN
Used for iterations.
DisallowedRoadDirections
Which directions are disallowed ?
@ DRD_NORTHBOUND
All northbound traffic is disallowed.
@ DRD_BOTH
All directions are disallowed.
@ DRD_NONE
None of the directions are disallowed.
@ DRD_SOUTHBOUND
All southbound traffic is disallowed.