TinyEnumT< Tenum_t > Struct Template Reference

The general declaration of TinyEnumT<> (above). More...

#include <enum_type.hpp>


Public Types

typedef Tenum_t enum_type
 expose our enumeration type (i.e. Trackdir) to outside
typedef EnumPropsT< Tenum_t > Props
 make easier access to our enumeration propeties
typedef Props::storage storage_type
 small storage type

Public Member Functions

FORCEINLINE operator enum_type () const
 Cast operator - invoked then the value is assigned to the Tenum_t type.
FORCEINLINE TinyEnumToperator= (enum_type e)
 Assignment operator (from Tenum_t type).
FORCEINLINE TinyEnumToperator= (uint u)
 Assignment operator (from Tenum_t type).
FORCEINLINE TinyEnumT operator++ (int)
 postfix ++ operator on tiny type
FORCEINLINE TinyEnumToperator++ ()
 prefix ++ operator on tiny type

Data Fields

storage_type m_val
 here we hold the actual value in small (i.e. byte) form

Static Public Attributes

static const enum_type begin = Props::begin
 enum beginning (i.e. TRACKDIR_BEGIN)
static const enum_type end = Props::end
 enum end (i.e. TRACKDIR_END)
static const enum_type invalid = Props::invalid
 invalid value (i.e. INVALID_TRACKDIR)


Detailed Description

template<typename Tenum_t>
struct TinyEnumT< Tenum_t >

The general declaration of TinyEnumT<> (above).

Definition at line 77 of file enum_type.hpp.


The documentation for this struct was generated from the following file:

Generated on Mon Mar 23 00:25:54 2009 for OpenTTD by  doxygen 1.5.6