The template
HLAenumeratedType<ENUMERATION, REPRESENTATION>
defines an user-convenient ENUMERATION stored using given REPRESENTATION.
The data can be accessed in an usual way.
Some models may use one enumerated value in multiple enumerations. To avoid name collisions it's recommended to put the ENUMERATION in an individual namespace.
For example:
+------------+----------------+------------+--------+-----------+ | Name | Representation | Enumerator | Values | Semantics | +------------+----------------+------------+--------+-----------+ | | | HLAfalse | 0 | | | HLAboolean | HLAinteger32BE +------------+--------+-----------+ | | | HLAfalse | 1 | | +------------+----------------+------------+--------+-----------+ namespace __HLAboolean { enum __enum { HLAfalse = 0, HLAtrue = 1 }; } typedef HLAenumeratedType<__HLAboolean::__enum, HLAinteger32BE> HLAboolean; HLAdata<HLAboolean> value; value = HLAtrue;