Exemplo n.º 1
0
        public override void Write(BinaryWriter file)
        {
            file.Write(Variant.typeId);

            byte[] buffer = System.Array.Empty <byte>();
            using (var ms = new MemoryStream())
                using (var bw = new BinaryWriter(ms))
                {
                    Variant.Write(bw);
                    buffer = ms.ToArray();
                }
            file.Write(buffer.Length + 4);
            file.Write(buffer);

            //var pos = file.BaseStream.Position;
            //file.Write((uint) 0); // size placeholder

            //Variant.Write(file);
            //var endpos = file.BaseStream.Position;

            //file.Seek((int) pos, SeekOrigin.Begin);
            //var actualsize = (uint) (endpos - pos);
            //file.Write(actualsize); // Write size
            //file.Seek((int) endpos, SeekOrigin.Begin);
        }
Exemplo n.º 2
0
        public override void Write(BinaryWriter file)
        {
            base.Write(file);

            if (packedObject != null)
            {
                packedObject.Write(file);
            }
        }
Exemplo n.º 3
0
        public override void Write(BinaryWriter file)
        {
            file.Write(var.typeId);

            var pos = file.BaseStream.Position;

            file.Write((uint)0);  // size placeholder


            var.Write(file);
            var endpos = file.BaseStream.Position;

            file.Seek((int)pos, SeekOrigin.Begin);
            var actualsize = (uint)(endpos - pos);

            file.Write(actualsize); // Write size
            file.Seek((int)endpos, SeekOrigin.Begin);
        }