Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/shared_lib/src/lib/network/converter.h @ 9640

Last change on this file since 9640 was 7230, checked in by bensch, 19 years ago

orxonox/trunk: merged the std::branche back

File size: 1.7 KB
Line 
1/*!
2 * @file converter.h
3 *  Is able to convert int to byte-array and vice versa
4 */
5
6#ifndef _CONVERTER
7#define _CONVERTER
8
9/* include this file, it contains some default definitions */
10#include "netdefs.h"
11
12
13/* include base_object.h since all classes are derived from this one */
14#include "base_object.h"
15
16/* The size of an int in byte */
17#define INTSIZE 4
18/* The size of a float in byte */
19#define FLOATSIZE 4
20
21/*!
22 * a class that can convert int to byte-array and vice versa
23 */
24class Converter : public BaseObject
25{
26  public:
27    static byte* intToByteArray(int x);
28    static int byteArrayToInt(const byte* a);
29
30    static int intToByteArray(int x, byte* a, int length);
31    static int byteArrayToInt(const byte* a, int* x);
32
33    static int _intToByteArray(int x, byte* a, int length);
34    static int _byteArrayToInt(const byte* a, int* x);
35
36    static int stringToByteArray(const std::string & s, byte* a, int maxLength);
37    static int byteArrayToString(const byte* a, std::string&s, int maxLength);
38//    static int byteArrayToStringM(const byte* a, char*& s );
39
40    //Test
41    static char* floatToBinString(float x);
42
43//     static byte* floatToByteArray(float x);
44//     static float byteArrayToFloat(byte* a);
45
46    static int floatToByteArray(float x, byte* a, int length);
47    static int byteArrayToFloat(const byte* a, float* x);
48
49    static int _floatToByteArray(float x, byte* a, int length);
50    static int _byteArrayToFloat(const byte* a, float* x);
51
52
53
54    static void debug();
55    static void floatTest(float x);
56    static void ArrayfloatTest(float x);
57    static float getDenormConst();
58
59
60  private:
61    Converter();
62    virtual ~Converter();
63};
64
65#undef byte
66
67#endif /*_CONVERTER*/
Note: See TracBrowser for help on using the repository browser.