(svn r8901) -Fix
authortron
Sun, 25 Feb 2007 11:59:26 +0000
changeset 6156 827089a6fd23
parent 6155 38e464212f4a
child 6157 ed6db74cdf30
(svn r8901) -Fix

Get rid of DECLARE_ENUM_AS_BIT_INDEX(Trackdir, TrackdirBits) and DECLARE_ENUM_AS_BIT_INDEX() altogether
src/helpers.hpp
src/rail.h
--- a/src/helpers.hpp	Sun Feb 25 11:49:43 2007 +0000
+++ b/src/helpers.hpp	Sun Feb 25 11:59:26 2007 +0000
@@ -70,13 +70,6 @@
 	FORCEINLINE mask_t& operator ^= (mask_t& m1, mask_t m2) {m1 = m1 ^ m2; return m1;} \
 	FORCEINLINE mask_t operator ~(mask_t m) {return (mask_t)(~(int)m);}
 
-/** probably redundant enum combining operators (as we have conversion functions)
- *  but the old code is full of such arithmetics */
-# define DECLARE_ENUM_AS_BIT_INDEX(idx_t, mask_t) \
-	FORCEINLINE mask_t operator << (int m, idx_t i) {return (mask_t)(m << (int)i);} \
-	FORCEINLINE mask_t operator << (mask_t m, int i) {return (mask_t)(((int)m) << i);} \
-	FORCEINLINE mask_t operator >> (mask_t m, int i) {return (mask_t)(((int)m) >> i);}
-
 
 /** Informative template class exposing basic enumeration properties used by several
  *  other templates below. Here we have only forward declaration. For each enum type
--- a/src/rail.h	Sun Feb 25 11:49:43 2007 +0000
+++ b/src/rail.h	Sun Feb 25 11:59:26 2007 +0000
@@ -161,7 +161,6 @@
 template <> struct EnumPropsT<TrackdirBits> : MakeEnumPropsT<TrackdirBits, uint16, TRACKDIR_BIT_NONE, TRACKDIR_BIT_MASK, INVALID_TRACKDIR_BIT> {};
 typedef TinyEnumT<TrackdirBits> TrackdirBitsShort;
 DECLARE_ENUM_AS_BIT_SET(TrackdirBits);
-DECLARE_ENUM_AS_BIT_INDEX(Trackdir, TrackdirBits);
 
 /** This struct contains all the info that is needed to draw and construct tracks.
  */