Files
@ r11718:aded86618f59
Branch filter:
Location: cpp/openttd-patchpack/source/src/rail_type.h - annotation
r11718:aded86618f59
1.5 KiB
text/x-c
(svn r16111) -Cleanup: remove some duplicate/unused strings
-Change: move a string to a more sensible location
-Change: move a string to a more sensible location
r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8263:00e828e1ab1f r8263:00e828e1ab1f r11076:462de50d5ea7 r11076:462de50d5ea7 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8101:70b290505353 r8236:a2ecfe92ab23 r8236:a2ecfe92ab23 r8236:a2ecfe92ab23 r8236:a2ecfe92ab23 r8236:a2ecfe92ab23 r8236:a2ecfe92ab23 r8236:a2ecfe92ab23 r8236:a2ecfe92ab23 r8236:a2ecfe92ab23 r11104:42105335ab1f r8236:a2ecfe92ab23 r8236:a2ecfe92ab23 r8236:a2ecfe92ab23 r8101:70b290505353 | /* $Id$ */
/** @file rail_type.h The different types of rail */
#ifndef RAIL_TYPE_H
#define RAIL_TYPE_H
#include "core/enum_type.hpp"
typedef uint32 RailTypeLabel;
/**
* Enumeration for all possible railtypes.
*
* This enumeration defines all 4 possible railtypes.
*/
enum RailType {
RAILTYPE_BEGIN = 0, ///< Used for iterations
RAILTYPE_RAIL = 0, ///< Standard non-electric rails
RAILTYPE_ELECTRIC = 1, ///< Electric rails
RAILTYPE_MONO = 2, ///< Monorail
RAILTYPE_MAGLEV = 3, ///< Maglev
RAILTYPE_END, ///< Used for iterations
INVALID_RAILTYPE = 0xFF ///< Flag for invalid railtype
};
/** Allow incrementing of Track variables */
DECLARE_POSTFIX_INCREMENT(RailType);
/** Define basic enum properties */
template <> struct EnumPropsT<RailType> : MakeEnumPropsT<RailType, byte, RAILTYPE_BEGIN, RAILTYPE_END, INVALID_RAILTYPE> {};
typedef TinyEnumT<RailType> RailTypeByte;
/**
* The different roadtypes we support, but then a bitmask of them
*/
enum RailTypes {
RAILTYPES_NONE = 0, ///< No rail types
RAILTYPES_RAIL = 1 << RAILTYPE_RAIL, ///< Non-electrified rails
RAILTYPES_ELECTRIC = 1 << RAILTYPE_ELECTRIC, ///< Electrified rails
RAILTYPES_MONO = 1 << RAILTYPE_MONO, ///< Monorail!
RAILTYPES_MAGLEV = 1 << RAILTYPE_MAGLEV, ///< Ever fast maglev
INVALID_RAILTYPES = UINT_MAX ///< Invalid railtypes
};
DECLARE_ENUM_AS_BIT_SET(RailTypes);
#endif /* RAIL_TYPE_H */
|