aboutsummaryrefslogtreecommitdiff
path: root/zencore/stream.cpp
diff options
context:
space:
mode:
authorPer Larsson <[email protected]>2022-02-16 12:32:27 +0100
committerPer Larsson <[email protected]>2022-02-16 12:32:27 +0100
commit87bb9700722e8319aa58484bba03e398dedede87 (patch)
tree1a82ce932f0a729f48bf8472d5f88fa897679a8f /zencore/stream.cpp
parentRenamed asio web socket impl. (diff)
downloadzen-87bb9700722e8319aa58484bba03e398dedede87.tar.xz
zen-87bb9700722e8319aa58484bba03e398dedede87.zip
Added websocket message parser.
Diffstat (limited to 'zencore/stream.cpp')
-rw-r--r--zencore/stream.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/zencore/stream.cpp b/zencore/stream.cpp
index aa9705764..361858b66 100644
--- a/zencore/stream.cpp
+++ b/zencore/stream.cpp
@@ -25,6 +25,30 @@ BinaryWriter::Write(const void* data, size_t ByteCount, uint64_t Offset)
memcpy(m_Buffer.data() + Offset, data, ByteCount);
}
+void
+SimpleBinaryWriter::Write(const void* Data, size_t Size)
+{
+ const size_t NeededSize = m_Offset + Size;
+
+ if (NeededSize > m_Buffer.size())
+ {
+ const size_t NewCapacity = RoundUp(NeededSize, m_BlockSize);
+
+ m_Buffer.resize(NewCapacity);
+ }
+
+ memcpy(m_Buffer.data() + m_Offset, Data, Size);
+
+ m_Offset += Size;
+}
+
+void
+SimpleBinaryWriter::Clear()
+{
+ m_Buffer.clear();
+ m_Offset = 0;
+}
+
//////////////////////////////////////////////////////////////////////////
//
// Testing related code follows...