Subversion Repositories HomeAutomation

Rev

Rev 1326 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed

Rev 1326 Rev 1328
Line 17... Line 17...
17
 
17
 
18
using namespace std;
18
using namespace std;
19
 
19
 
20
class BitBuffer {
20
class BitBuffer {
21
public:
21
public:
22
    BitBuffer(unsigned char bytes[], unsigned int length);
-
 
23
    BitBuffer(byte_list bytes);
22
    BitBuffer(byte_list bytes);
24
    BitBuffer();
23
    BitBuffer();
25
    virtual ~BitBuffer();
24
    virtual ~BitBuffer();
26
 
25
 
27
    byte_list getAsBytes();
26
    byte_list getAsBytes();
28
    void setFromBytes(vector<unsigned char> bytes);
27
    void setFromBytes(byte_list bytes);
29
 
28
 
-
 
29
    unsigned int getSize();
-
 
30
    unsigned int getPointer();
30
    void incrementPointer(unsigned int steps);
31
    void incrementPointer(unsigned int steps);
31
    void clear();
32
    void clear();
32
 
33
 
33
    void read(unsigned int length, long & value);
34
    void read(unsigned int length, long & value);
34
    void read(unsigned int length, unsigned long & value);
35
    void read(unsigned int length, unsigned long & value);
Line 37... Line 38...
37
    void write(unsigned int length, long value);
38
    void write(unsigned int length, long value);
38
    void write(unsigned int length, unsigned long value);
39
    void write(unsigned int length, unsigned long value);
39
    void write(unsigned int length, bool value);
40
    void write(unsigned int length, bool value);
40
 
41
 
41
private:
42
private:
42
    byte_list myBuffer;
43
    bit_list myBits;
-
 
44
    unsigned int myPointer;
-
 
45
 
-
 
46
    bool readBit();
-
 
47
    void writeBit(bool value);
43
};
48
};
44
 
49
 
45
}
50
}
46
}
51
}
47
 
52