#include <FXGenericTools.h>
This generates customised code at compile-time mapping a series of bool's
to an unsigned integer suitable for serialisation and deserialisation through a FX::FXStream. The correct integer (8, 16, 32 or 64 bit) is chosen automatically. To use simply do:
struct Foo { bool a,b,c; } foo; FX::FXStream s; FX::Generic::MapBools<3> boolmap(&foo.a); s << boolmap; s >> boolmap;
Public Types | |
typedef Generic::select<(len > Generic::select<(len > Generic::select<(len > | FXulong |
typedef Generic::select<(len > Generic::select<(len > Generic::select<(len > FXuint FXushort FXuchar::value | holdtype |
Public Member Functions | |
FXSTATIC_ASSERT2 (len<=sizeof(FXulong)*8, ERROR_Too_Many_Bools_To_Fit_Into_Integral_Type) | |
typedef Generic::select<(len > | sizeof (FXuchar)*8) |
typedef Generic::select<(len > Generic::select<(len > | sizeof (FXushort)*8) |
typedef Generic::select<(len > Generic::select<(len > Generic::select<(len > | sizeof (FXuint)*8) |
MapBools (const bool *_base) throw () | |
Public Attributes | |
bool * | base |
Friends | |
FXStream & | operator<< (FXStream &s, const MapBools< len > i) throw () |
FXStream & | operator>> (FXStream &s, MapBools< len > i) throw () |