コード例 #1
0
        public void ResetSet()
        {
            var writer = new BitBufferWriter <SevenBitEncoding <u32ArrayMemory> >(8);

            writer.i32(666);
            var bitsWritten   = writer.BitsWritten;
            var bitsAvailable = writer.BitsAvailable;

            writer.Reset();
            Assert.AreEqual(0, writer.BitsWritten);

            writer.i32(666);
            Assert.AreEqual(bitsWritten, writer.BitsWritten);
            Assert.AreEqual(bitsAvailable, writer.BitsAvailable);
            writer.i32(-273);
            writer.b(true);
            writer.i64(1234567890);
            var reader = new BitBufferReader <SevenBitDecoding <u32ArrayMemory> >();

            reader.CopyFrom(writer.ToArray());
            Assert.AreEqual(666, reader.i32());
            var bitsRead = reader.BitsRead;

            reader.i32();
            reader.SetPosition(bitsRead);
            Assert.AreEqual(-273, reader.i32());
            var bitPosition = reader.BitsRead;

            reader.b();
            reader.SetPosition(bitPosition);
            Assert.True(reader.b());
        }