+
+ /**
+ Endianess of the system
+
+ @result Returns true when the system is little endian, false if big endian
+ */
+ static bool littleEndian() throw();
+
+ /**
+ Encodes an integer number with 32 bits over a buffer with at least 4 bytes of length.
+ @param result Buffer where the number is encoded.
+ @param n Number to encode.
+ \return Buffer with the encoded number.
+ */
+ static const char* codeInteger(char* result, const int n) throw();
+
+ /**
+ Encodes an integer number with 16 bits over a buffer with at least 2 bytes of length.
+ @param result Buffer where the number is encoded.
+ @param n Number to encode.
+ \return Buffer with the encoded number.
+ */
+ static const char* codeShort(char* result, const short int n) throw();
+
+ /**
+ Encodes an integer number with 64 bits over a buffer with at least 8 bytes of length.
+ @param result Buffer where the number is encoded.
+ @param n Number to encode.
+ \return Buffer with the encoded number.
+ */
+ static const char* codeInteger64(char* result, const S64 n) throw();
+
+ /**
+ Encodes a floating number with 32 bits (according to the standard IEEE-754) over a buffer with at least 4 bytes of length.
+ @param result Buffer where the number is encoded.
+ @param n Number to encode.
+ \return Buffer with the encoded number.
+ */
+ static const char* codeFloat(char* result, const float n) throw();
+
+ /**
+ Encodes a floating number with 64 bits (according to the standard IEEE-754) over a buffer with at least 8 bytes of length.
+ @param result Buffer where the number is encoded.
+ @param n Number to encode.
+ \return Buffer with the encoded number.
+ */
+ static const char* codeDouble(char* result, const double n) throw();
+
+ /**
+ Decodes an 32 bits integer number contained in a 4-bytes buffer.
+ @param data Buffer with the encoded number.
+ @return Value for the number contained in the buffer.
+ */
+ static int decodeInteger(const char* data) throw();
+
+ /**
+ Decodes an 16 bits integer number contained in a 2-bytes buffer.
+ @param data Buffer with the encoded number.
+ @return Value for the number contained in the buffer.
+ */
+ static short int decodeShort(const char* data) throw();
+
+ /**
+ Decodes an 64 bits integer number contained in a 8-bytes buffer.
+ @param data Buffer with the encoded number.
+ @return Value for the number contained in the buffer.
+ */
+ static S64 decodeInteger64(const char* data) throw();
+
+ /**
+ Decodes an 32 bits floating number (according to the standard IEEE-754) contained in a 4-bytes buffer.
+ @param data Buffer with the encoded number.
+ @return Value for the number contained in the buffer.
+ */
+ static float decodeFloat(const char* data) throw();
+
+ /**
+ Decodes an 64 bits floating number (according to the standard IEEE-754) contained in a 8-bytes buffer.
+ @param data Buffer with the encoded number.
+ @return Value for the number contained in the buffer.
+ */
+ static double decodeDouble(const char* data) throw();
+
+