summaryrefslogtreecommitdiff
path: root/src/cargotype.h
diff options
context:
space:
mode:
authorsmatz <smatz@openttd.org>2009-06-25 23:49:59 +0000
committersmatz <smatz@openttd.org>2009-06-25 23:49:59 +0000
commitf2e55319dd165f57e008e0fac355ce294fc98905 (patch)
tree7cb71b2eea39837e4e8ebfb80205ff31367f32ee /src/cargotype.h
parentc0ac230e3ea48e2e640dc74bc257f6f22d37bca3 (diff)
downloadopenttd-f2e55319dd165f57e008e0fac355ce294fc98905.tar.xz
(svn r16661) -Codechange: move definition of few very short functions to header files
Diffstat (limited to 'src/cargotype.h')
-rw-r--r--src/cargotype.h18
1 files changed, 14 insertions, 4 deletions
diff --git a/src/cargotype.h b/src/cargotype.h
index db1a6f0d5..da17c1ada 100644
--- a/src/cargotype.h
+++ b/src/cargotype.h
@@ -22,6 +22,8 @@ enum TownEffect {
};
+static const byte INVALID_CARGO = 0xFF;
+
struct CargoSpec {
uint8 bitnum;
CargoLabel label;
@@ -48,24 +50,32 @@ struct CargoSpec {
const struct GRFFile *grffile; ///< NewGRF where 'group' belongs to
const struct SpriteGroup *group;
- bool IsValid() const;
+ bool IsValid() const
+ {
+ return this->bitnum != INVALID_CARGO;
+ }
};
-
extern uint32 _cargo_mask;
extern CargoSpec _cargo[NUM_CARGO];
/* Set up the default cargo types for the given landscape type */
void SetupCargoForClimate(LandscapeID l);
-/* Retrieve cargo details for the given cargo ID */
-const CargoSpec *GetCargo(CargoID c);
/* Get the cargo icon for a given cargo ID */
SpriteID GetCargoSprite(CargoID i);
/* Get the cargo ID with the cargo label */
CargoID GetCargoIDByLabel(CargoLabel cl);
CargoID GetCargoIDByBitnum(uint8 bitnum);
+/* Retrieve cargo details for the given cargo ID */
+static inline const CargoSpec *GetCargo(CargoID c)
+{
+ assert(c < lengthof(_cargo));
+ return &_cargo[c];
+}
+
+
static inline bool IsCargoInClass(CargoID c, uint16 cc)
{
return (GetCargo(c)->classes & cc) != 0;