Adding test for encrypted cloud storage; Adding preparation timing test for Fidelius...
[iotcloud.git] / version2 / src / C / ByteBuffer.h
index 92d4f16ee8e112015582e5aceed0e9a17bf508b8..06c309bf885a088ff0521f4da6754f0e4f36b86d 100644 (file)
@@ -5,9 +5,25 @@
 class ByteBuffer {
 public:
        void put(char c);
+       void putInt(int32_t l);
        void putLong(int64_t l);
+       void put(Array<char> *array);
        int64_t getLong();
+       int32_t getInt();
        char get();
-private:
+       void get(Array<char> *array);
+       void position(int32_t newPosition);
+       void releaseArray() {buffer = NULL;}
+       Array<char> *array();
+       ~ByteBuffer() {if (buffer != NULL) delete buffer;}
+       
+ private:
+       ByteBuffer(Array<char> *array);
+       friend ByteBuffer *ByteBuffer_wrap(Array<char> *array);
+       friend ByteBuffer *ByteBuffer_allocate(uint size);
+       Array<char> *buffer;
+       uint offset;
 };
+ByteBuffer *ByteBuffer_wrap(Array<char> *array);
+ByteBuffer *ByteBuffer_allocate(uint size);
 #endif