Usermode/AxWin4 - Server implementation runnable
[tpg/acess2.git] / Usermode / Applications / axwin4_src / Common / include / serialisation.hpp
index 32ba465..d680043 100644 (file)
@@ -28,10 +28,11 @@ class CDeserialiser
        size_t  m_offset;
 public:
        CDeserialiser(size_t Length, const uint8_t *Buffer);
+       bool    IsConsumed() const;
        ::uint8_t       ReadU8();
        ::uint16_t      ReadU16();
        ::int16_t       ReadS16();
-       ::std::string   ReadString();
+       const ::std::string     ReadString();
 };
 
 class CSerialiser
@@ -42,6 +43,7 @@ public:
        void WriteU8(::uint8_t val);
        void WriteU16(::uint16_t val);
        void WriteS16(::int16_t val);
+       void WriteBuffer(size_t n, const void* val);
        void WriteString(const char* val, size_t n);
        void WriteString(const char* val) {
                WriteString(val, ::std::char_traits<char>::length(val));
@@ -50,6 +52,8 @@ public:
                WriteString(val.data(), val.size());
        }
        void WriteSub(const CSerialiser& val);
+       
+       const ::std::vector<uint8_t>& Compact();
 };
 
 };

UCC git Repository :: git.ucc.asn.au