aboutsummaryrefslogtreecommitdiff
path: root/ByteBuffer.h
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2015-02-10 19:02:57 +0100
committerTrygve Laugstøl <trygvis@inamo.no>2015-02-10 19:02:57 +0100
commit1c97f6df59c825b26ecb18975fd9f62e14fc46ce (patch)
tree0bdd9b909e2f2476d78527d39efc301414048609 /ByteBuffer.h
parent5cb96fd96f51e949c5311db3080c58d851b7c2e1 (diff)
downloadble-toys-1c97f6df59c825b26ecb18975fd9f62e14fc46ce.tar.gz
ble-toys-1c97f6df59c825b26ecb18975fd9f62e14fc46ce.tar.bz2
ble-toys-1c97f6df59c825b26ecb18975fd9f62e14fc46ce.tar.xz
ble-toys-1c97f6df59c825b26ecb18975fd9f62e14fc46ce.zip
o wip.
Diffstat (limited to 'ByteBuffer.h')
-rw-r--r--ByteBuffer.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/ByteBuffer.h b/ByteBuffer.h
new file mode 100644
index 0000000..a7e9f9f
--- /dev/null
+++ b/ByteBuffer.h
@@ -0,0 +1,27 @@
+#ifndef BYTE_STREAM_WRAPPER_H
+#define BYTE_STREAM_WRAPPER_H
+
+#include <cstdint>
+#include <cstdlib>
+
+class ByteBuffer {
+public:
+ ByteBuffer(uint8_t *bytes, ssize_t size, ssize_t zero = 0);
+
+ ByteBuffer &add8(uint8_t value);
+
+ ByteBuffer &add16le(uint16_t value);
+
+ uint8_t get8(ssize_t index);
+
+private:
+ void canAccessNextBytes(ssize_t count);
+ void canAccessIndex(ssize_t count);
+
+ uint8_t *bytes;
+ ssize_t zero;
+ ssize_t size;
+ ssize_t ptr;
+};
+
+#endif